malemkhoang
Rìu Chiến
IDM thì luôn luôn cập nhật, bởi vậy, việc soạn thảo IDM cũng là thường xuyên.
Muốn soạn thảo IDM thành công, bạn nên tham khảo hướng dẫn sau đây.
Bộ mã thứ nhất:
03 00 00 00 8B 4D F4 64 89 0D 00 00 00 00 5F 5E 5B 8B E5 5D C3
Đổi 03 thành 00
Được:
00 00 00 00 8B 4D F4 64 89 0D 00 00 00 00 5F 5E 5B 8B E5 5D C3
Bộ mã thứ hai:
85 06 02 00 00 A1
Đổi 85 thành 84
Đổi 06 thành 73
Được:
84 73 02 00 00 A1
(bộ mã thứ nhất và bộ mã thứ hai chưa có sự thay đổi gì)
Bộ mã thứ ba:
(đã có sự thay đổi)
(1). Trước 6.30b8 là:
87 F9 0C 00 00 0F
(đổi 87 thành 86)
(2). Bản 6.30b8 đến 6.30b10 là:
87 36 0D 00 00 0F
(đổi 87 36 0D thành 86 92 0F)
(3). Bản 6.31b1:
Mực với ngò - mực ngò, tức là phải đi mò... cái đã.
Bắt đầu từ (1), lùi lại 1 mã hex, ta có: 0F 87 F9 0C 00 00 0F. Mã lệnh: ja ...
Đổi xong, ta có: 0F 86 F9 0C 00 00 0F. Mã lệnh: jna dword $00000CFF
Với (2), lùi lại 1 mã hex, ta có: 0F 87 36 0D 00 00 0F. Mã lệnh: ja ...
Đổi xong, ta có: 0F 86 92 0F 00 00 0F. Mã lệnh: jna dword $00000F98
Làm sao tìm được chính xác bộ mã thứ ba?
Mở rộng bộ mã (1), ta có: (0F) 87 F9 0C 00 00 0F 84 (C6 0C 00 00)
Mở rộng bộ mã (2), ta có: (0F) 87 36 0D 00 00 0F 84 (F3 0C 00 00)
Vì vậy, đầu tiên phải tìm tất cả các cụm mã: 0F 87.
Tiếp đến, duyệt kết quả từ trên xuống dưới để tìm một chuỗi có dạng:
0F 87 xx xx 00 00 0F 84 xx xx 00 00
Kết quả tìm được: 0F 87 30 0D 00 00 0F 84 ED 0C 00 00
(đã mò... được rồi)
87 30 0D 00 00 0F
Bây giờ, đổi như sau: 87 30 0D thành 86 92 0F.
Sau khi đổi xong:
86 92 0F 00 00 0F
XONG
Cả "jna dword $00000CFF" và "jna dword $00000F98" đều là tới một khu vực trống rỗng.
Do đó, sử dụng cái nào cũng được, song cái gần nhất thành công là "jna dword $00000F98", tức là "(0F) 86 92 0F 00 00".
Muốn soạn thảo IDM thành công, bạn nên tham khảo hướng dẫn sau đây.
Bộ mã thứ nhất:
03 00 00 00 8B 4D F4 64 89 0D 00 00 00 00 5F 5E 5B 8B E5 5D C3
Đổi 03 thành 00
Được:
00 00 00 00 8B 4D F4 64 89 0D 00 00 00 00 5F 5E 5B 8B E5 5D C3
Bộ mã thứ hai:
85 06 02 00 00 A1
Đổi 85 thành 84
Đổi 06 thành 73
Được:
84 73 02 00 00 A1
(bộ mã thứ nhất và bộ mã thứ hai chưa có sự thay đổi gì)
Bộ mã thứ ba:
(đã có sự thay đổi)
(1). Trước 6.30b8 là:
87 F9 0C 00 00 0F
(đổi 87 thành 86)
(2). Bản 6.30b8 đến 6.30b10 là:
87 36 0D 00 00 0F
(đổi 87 36 0D thành 86 92 0F)
(3). Bản 6.31b1:
Mực với ngò - mực ngò, tức là phải đi mò... cái đã.
Bắt đầu từ (1), lùi lại 1 mã hex, ta có: 0F 87 F9 0C 00 00 0F. Mã lệnh: ja ...
Đổi xong, ta có: 0F 86 F9 0C 00 00 0F. Mã lệnh: jna dword $00000CFF
Với (2), lùi lại 1 mã hex, ta có: 0F 87 36 0D 00 00 0F. Mã lệnh: ja ...
Đổi xong, ta có: 0F 86 92 0F 00 00 0F. Mã lệnh: jna dword $00000F98
Làm sao tìm được chính xác bộ mã thứ ba?
Mở rộng bộ mã (1), ta có: (0F) 87 F9 0C 00 00 0F 84 (C6 0C 00 00)
Mở rộng bộ mã (2), ta có: (0F) 87 36 0D 00 00 0F 84 (F3 0C 00 00)
Vì vậy, đầu tiên phải tìm tất cả các cụm mã: 0F 87.
Tiếp đến, duyệt kết quả từ trên xuống dưới để tìm một chuỗi có dạng:
0F 87 xx xx 00 00 0F 84 xx xx 00 00
Kết quả tìm được: 0F 87 30 0D 00 00 0F 84 ED 0C 00 00
(đã mò... được rồi)
87 30 0D 00 00 0F
Bây giờ, đổi như sau: 87 30 0D thành 86 92 0F.
Sau khi đổi xong:
86 92 0F 00 00 0F
XONG
Cả "jna dword $00000CFF" và "jna dword $00000F98" đều là tới một khu vực trống rỗng.
Do đó, sử dụng cái nào cũng được, song cái gần nhất thành công là "jna dword $00000F98", tức là "(0F) 86 92 0F 00 00".