黑鹰破解---软件的爆破p32

http://files.cnblogs.com/tk091/SMS.zip

首先查壳

ASPack 2.12 -> Alexey Solodovnikov

很简单,用esp搞定

 1 00401408   /EB 10           jmp     short 0040141A                   ; oep

 2 0040140A   |66:623A         bound   di, dword ptr [edx]

 3 0040140D   |43              inc     ebx

 4 0040140E   |2B2B            sub     ebp, dword ptr [ebx]

 5 00401410   |48              dec     eax

 6 00401411   |4F              dec     edi

 7 00401412   |4F              dec     edi

 8 00401413   |4B              dec     ebx

 9 00401414   |90              nop

10 00401415  -|E9 98F04900     jmp     008A04B2

11 0040141A   \A1 8BF04900     mov     eax, dword ptr [49F08B]

12 0040141F    C1E0 02         shl     eax, 2

13 00401422    A3 8FF04900     mov     dword ptr [49F08F], eax

黑鹰破解---软件的爆破p32

我们注册试试,发现会出现下面的提示:

黑鹰破解---软件的爆破p32

我们用OD载入,查找字符串

1 Ultra String Reference, 条目 40

2  Address=00402DE9

3  Disassembly=mov     edx, 0049F421

4  Text String=注册码不正确!

5 

6 Ultra String Reference, 条目 41

7  Address=00402E37

8  Disassembly=mov     edx, 0049F42F

9  Text String=注册成功!\n  感谢您的支持!

跟进错误提示

 1 00402DDE  |. /74 4E         je      short 00402E2E

 2 00402DE0  |. |66:C785 14FFF>mov     word ptr [ebp-EC], 158

 3 00402DE9  |. |BA 21F44900   mov     edx, 0049F421                    ;  注册码不正确!

 4 00402DEE  |. |8D85 44FFFFFF lea     eax, dword ptr [ebp-BC]

 5 00402DF4  |. |E8 B3AD0900   call    0049DBAC

 6 00402DF9  |. |FF85 20FFFFFF inc     dword ptr [ebp-E0]

 7 00402DFF  |. |8B00          mov     eax, dword ptr [eax]

 8 00402E01  |. |E8 F69C0600   call    0046CAFC

 9 00402E06  |. |FF8D 20FFFFFF dec     dword ptr [ebp-E0]

10 00402E0C  |. |8D85 44FFFFFF lea     eax, dword ptr [ebp-BC]

11 00402E12  |. |BA 02000000   mov     edx, 2

12 00402E17  |. |E8 8CAE0900   call    0049DCA8

13 00402E1C  |. |8B0D C09C4A00 mov     ecx, dword ptr [4A9CC0]          ;  dump.004AB1E4

14 00402E22  |. |8B01          mov     eax, dword ptr [ecx]

15 00402E24  |. |E8 A7570600   call    004685D0

16 00402E29  |. |E9 F2000000   jmp     00402F20

17 00402E2E  |> \66:C785 14FFF>mov     word ptr [ebp-EC], 164

18 00402E37  |.  BA 2FF44900   mov     edx, 0049F42F                    ;  注册成功!\n  感谢您的支持!

错误提示上面的提示即是关键跳,但是通过实验发现,仅修改这个跳转是不成功的,也就是不完美爆破。

因为程序还有个问题,就是使用次数的问题,即是破解了这里,还是会显示nag框。

总的来说,程序验证注册码是否成功,如果成功,则跳过次数限制以及注册失败。

 

我们往上看

 1 0040261F  |. /0F84 41090000 je      00402F66

 2 00402625  |. |66:C785 14FFF>mov     word ptr [ebp-EC], 8C

 3 0040262E  |. |BA 11F34900   mov     edx, 0049F311                    ;  count

 4 00402633  |. |8D45 C8       lea     eax, dword ptr [ebp-38]

 5 00402636  |. |E8 71B50900   call    0049DBAC

 6 0040263B  |. |FF85 20FFFFFF inc     dword ptr [ebp-E0]

 7 00402641  |. |8B10          mov     edx, dword ptr [eax]

 8 00402643  |. |8B85 FCFEFFFF mov     eax, dword ptr [ebp-104]

 9 00402649  |. |E8 1E200200   call    0042466C

10 0040264E  |. |83F8 03       cmp     eax, 3

11 00402651  |. |0F9CC1        setl    cl

12 00402654  |. |83E1 01       and     ecx, 1

13 00402657  |. |51            push    ecx

14 00402658  |. |FF8D 20FFFFFF dec     dword ptr [ebp-E0]

15 0040265E  |. |8D45 C8       lea     eax, dword ptr [ebp-38]

16 00402661  |. |BA 02000000   mov     edx, 2

17 00402666  |. |E8 3DB60900   call    0049DCA8

18 0040266B  |. |59            pop     ecx

19 0040266C  |. |84C9          test    cl, cl

20 0040266E  |. |0F84 4D020000 je      004028C1

有两个跳转,可以跳过次数限制,我们只需要修改第一个即可。

录制的视频:http://115.com/file/e79q3n0n

你可能感兴趣的:(软件)