Nhưng do ta cần Correct Serials nên sẽ trace into vào CALL ở 0052B407... Khi vào trong hàm này Olly sẽ không Anlzy được...Do đó Zombie chơi cách hơi “ma” chút...Select hết các đoạn code
Trang 1em 12EBF4 luôn bằng 1 Nhưng do ta cần Correct Serials nên sẽ trace into vào CALL ở 0052B407
CODE
005208B0 64 DB 64 ; CHAR 'd'
005208B1 A1 DB A1
005208B2 00 DB 00
005208B3 00 DB 00
005208B4 00 DB 00
005208B5 00 DB 00
005208B6 6A DB 6A ; CHAR 'j'
005208B7 FF DB FF
005208B8 68 DB 68 ; CHAR 'h'
005208B9 284B6E00 DD MindMana.006E4B28 ; Entry address
005208BD 50 DB 50 ; CHAR 'P'
005208BE 64 DB 64 ; CHAR 'd'
005208BF 89 DB 89
005208C0 25 DB 25 ; CHAR '%'
005208C1 00 DB 00
005208C2 00 DB 00
005208C3 00 DB 00
005208C4 00 DB 00
005208C5 53 DB 53 ; CHAR 'S'
005208C6 56 DB 56 ; CHAR 'V'
005208C7 8B DB 8B
005208C8 74 DB 74 ; CHAR 't'
005208C9 24 DB 24 ; CHAR '$'
005208CA 18 DB 18
005208CB 56 DB 56 ; CHAR 'V'
005208CC 8D DB 8D
Trang 2005208CD 4C DB 4C ; CHAR 'L'
005208CE 24 DB 24 ; CHAR '$'
005208CF 1C DB 1C
005208D0 E8 DB E8
005208D1 AB DB AB
005208D2 3D DB 3D ; CHAR '='
005208D3 EE DB EE
005208D4 FF DB FF
005208D5 8B DB 8B
005208D6 44 DB 44 ; CHAR 'D'
005208D7 24 DB 24 ; CHAR '$'
005208D8 18 DB 18
005208D9 8B DB 8B
005208DA 48 DB 48 ; CHAR 'H'
005208DB F4 DB F4
005208DC 85 DB 85
005208DD C9 DB C9
005208DE C7 DB C7
005208DF 44 DB 44 ; CHAR 'D'
005208E0 24 DB 24 ; CHAR '$'
005208E1 10 DB 10
005208E2 00 DB 00
005208E3 00 DB 00
005208E4 00 DB 00
005208E5 00 DB 00
005208E6 74 DB 74 ; CHAR 't'
005208E7 5D DB 5D ; CHAR ']'
005208E8 68 DB 68 ; CHAR 'h'
005208E9 985B7200 DD
MindMana.00725B98 ; UNICODE "0000-000-0000-0000-0000"
Khi vào trong hàm này Olly sẽ không Anlzy được Do đó Zombie chơi cách hơi
“ma” chút Select hết các đoạn code mà chưa Anlzy được, NOP hết rồi undo
Trang 3lại Sẽ có đoạn code rõ ràng hơn
CODE
005208AE 90 NOP
005208AF 90 NOP
005208B0 64:A1 0000000>MOV EAX,DWORD PTR FS:[0]
005208B6 6A FF PUSH -1
005208B8 68 284B6E00 PUSH MindMana.006E4B28 ; Entry address
005208BD 50 PUSH EAX
005208BE 64:8925 00000>MOV DWORD PTR FS:[0],ESP
005208C5 53 PUSH EBX
005208C6 56 PUSH ESI
005208C7 8B7424 18 MOV ESI,DWORD PTR SS:[ESP+18]
005208CB 56 PUSH ESI
005208CC 8D4C24 1C LEA ECX,DWORD PTR SS:[ESP+1C]
005208D0 E8 AB3DEEFF CALL MindMana.00404680
005208D5 8B4424 18 MOV EAX,DWORD PTR SS:[ESP+18]
005208D9 8B48 F4 MOV ECX,DWORD PTR DS:[EAX-C]
005208DC 85C9 TEST ECX,ECX
005208DE C74424 10 000>MOV DWORD PTR SS:[ESP+10],0
005208E6 74 5D JE SHORT MindMana.00520945
005208E8 68 985B7200 PUSH
MindMana.00725B98 ; UNICODE "0000-000-0000-0000-0000" 005208ED 50 PUSH EAX
005208EE FF15 68F27000 CALL DWORD PTR
DS:[<&MSVCR70.wcscmp>] ; MSVCR70.wcscmp
005208F4 83C4 08 ADD ESP,8
005208F7 85C0 TEST EAX,EAX
005208F9 74 46 JE SHORT MindMana.00520941
005208FB 56 PUSH ESI
Trang 4005208FC E8 6FDB0C00 CALL MindMana.005EE470
00520901 8AD8 MOV BL,AL
00520903 8B4424 1C MOV EAX,DWORD PTR SS:[ESP+1C]
00520907 83C0 F0 ADD EAX,-10
0052090A 83C4 04 ADD ESP,4
0052090D C74424 10 FFF>MOV DWORD PTR SS:[ESP+10],-1
00520915 8D48 0C LEA ECX,DWORD PTR DS:[EAX+C]
00520918 83CA FF OR EDX,FFFFFFFF
0052091B F0:0FC111 LOCK XADD DWORD PTR
DS:[ECX],EDX ; LOCK prefix
0052091F 4A DEC EDX
00520920 85D2 TEST EDX,EDX
00520922 7F 08 JG SHORT MindMana.0052092C
00520924 8B08 MOV ECX,DWORD PTR DS:[EAX]
00520926 8B11 MOV EDX,DWORD PTR DS:[ECX]
00520928 50 PUSH EAX
00520929 FF52 04 CALL DWORD PTR DS:[EDX+4]
Hm cũng phải làm nhiều lần bạn sẽ nhận ra rằng lệnh 0052B40D 84C0 TEST AL,AL nhận giá trị AL là từ BL Do đó trong hàm này ta trace dần cho đến khi thấy BL được set = 0 (tức là Serials nhập sai) Bạn sẽ tìm ra hàm làm BL = 0 ở
CODE
005208FC E8 6FDB0C00 CALL MindMana.005EE470
00520901 8AD8 MOV BL,AL
AL sẽ là giá trị được lấy để set cho BL hm Trace into vào
Trang 5Trong hàm này bạn cứ trace lần sẽ đến hàm cmp và từ hàm này cho ta Correct Ser
CODE
005EE92A 51 PUSH ECX ; /wstr2
005EE92B 8945 F4 MOV DWORD PTR SS:[EBP-C],EAX ; | 005EE92E 55 PUSH EBP ; |wstr1 = "MP5M-MM1-A9M1-2348-6B89"
005EE92F 66:C74445 00 >MOV WORD PTR SS:[EBP+EAX*2],0 ;
|
005EE936 FF15 68F27000 CALL DWORD PTR
DS:[<&MSVCR70.wcscmp>] ; \wcscmp
>> Cmp fake Serials và Correct Serials
>> Correct Serials: MP5M-MM1-A9M1-2348-6B89
Qua Software này ta có một cách khác để tìm lần ra vị trí cần thiết nhằm set breakpoint đúng Đó là dựa trên việc lần từ Stack…