【脱文标题】 计算机资料大全 3.0 Overlay 反脱壳分析+Ctrl+F8 智取NAG
【破文作者】 weiyi75[Dfcg]
【作者邮箱】 weiyi75@sohu.com
【作者主页】 Dfcg官方大本营
【使用工具】 Peid,UpxShell,olldbg,winhex
【破解平台】 WinNT/2000/XP
【软件名称】 计算机资料大全 3.0 
【下载页面】 http://downloads.daqing.net/ 
【破解声明】 我是一只小菜鸟,偶得一点心得,愿与大家分享:)
--------------------------------------------------------------------------------

【破解分析】

首先Peid 查壳,为 UPX 0.89.6 - 1.02 / 1.05 - 1.24 (Delphi) stub -> Markus & Laszlo [Overlay],注意到[Overlay],然后用Upxshell轻松脱壳,正常运行。

幸运的是它是个普通Upx壳,我们假设它是一个变形Upx壳。

004A1430 >  60              PUSHAD    //Upx外壳入口
004A1431    BE 00804600     MOV ESI,《计算机.00468000
004A1436    8DBE 0090F9FF   LEA EDI,DWORD PTR DS:[ESI+FFF99000]
004A143C    C787 10270800 1>MOV DWORD PTR DS:[EDI+82710],F82C9510
004A1446    57              PUSH EDI
004A1447    83CD FF         OR EBP,FFFFFFFF
004A144A    EB 0E           JMP SHORT 《计算机.004A145A
004A144C    90              NOP
.........................................................

直接Ctrl+F 向下找Popad

004A159A    61              POPAD  
004A159B  ^ E9 64DEFDFF     JMP 《计算机.0047F404  //直接F4下来。

0047F404    55              PUSH EBP  //到达Oep,Loadpe脱壳。
0047F405    8BEC            MOV EBP,ESP
0047F407    83C4 F0         ADD ESP,-10
0047F40A    53              PUSH EBX
0047F40B    B8 A4F14700     MOV EAX,《计算机.0047F1A4
0047F410    E8 CF76F8FF     CALL 《计算机.00406AE4
0047F415    33C0            XOR EAX,EAX
0047F417    55              PUSH EBP
0047F418    68 53F54700     PUSH 《计算机.0047F553
0047F41D    64:FF30         PUSH DWORD PTR FS:[EAX]
0047F420    64:8920         MOV DWORD PTR FS:[EAX],ESP
0047F423    E8 146CFEFF     CALL 《计算机.0046603C
0047F428    BA 143E4800     MOV EDX,《计算机.00483E14
0047F42D    B8 68F54700     MOV EAX,《计算机.0047F568                    ; ASCII "XSEI.NATC"
0047F432    E8 216EFEFF     CALL 《计算机.00466258
0047F437    833D 143E4800 0>CMP DWORD PTR DS:[483E14],0
0047F43E    74 04           JE SHORT 《计算机.0047F444
.................................................................

运行ImportREC,选择这个进程。把OEP改为7F404,点IT AutoSearch,点“Get Import”,看到输入表全部有效针,FixDump。    

运行前看到加壳程序13.2M,脱壳程序668KB,肯定是无法运行的,这个是因为加壳程序尾部的数据没有复制到脱壳程序里面。

用Winhex打开加壳程序。

我们看到尾部数据从偏移量987开始。在987处点右键选块开始。

然后滚动条拉到底,到偏移量13889591为止,在13889591处点右键选块结束。

Crtl+C 复制选定内容。

然后打开脱壳文件,直接滚动条到尾部偏移量684031处,点右键-编辑-剪贴板数据写入,确定两次,原理搞清楚就不犹豫,保存文件,运行正常。

短短的三次试用一会就过期了,先前没有用RegSnap给这个程序照相。

破解NAG吧。

下断点

Bp MessageBoxA

无法中断NAG,没办法

OD载入程序

0047F404 > $  55            PUSH EBP  //入口点。
0047F405   .  8BEC          MOV EBP,ESP
0047F407   .  83C4 F0       ADD ESP,-10
0047F40A   .  53            PUSH EBX
0047F40B   .  B8 A4F14700   MOV EAX,《计算机.0047F1A4
0047F410   .  E8 CF76F8FF   CALL 《计算机.00406AE4
0047F415   .  33C0          XOR EAX,EAX
0047F417   .  55            PUSH EBP
.................................................

这里想起风飘雪老师的加密和解密的实战功略里面对付NAG的方法。

那就是必杀Ctrl+F8

简单解释一下,Ctrl+F8自动步过,遇到Call中Call,然后Nag调用运行。

所以遇到Call停止后就下断点,不断Ctrl+F2 和 F9 Ctrl+F8 三键灵活使用。

0045A5D8   .  E8 0396FAFF   CALL 《计算机.00403BE0   //这个Call要调用两次。

0047F51A   .  E8 9125FEFF   CALL 《计算机.00461AB0  //第一次 NAG,下断点重启再次中断,F7跟进,Ctrl+F8 到下一个Call NAG出现。

00461AB0   $  55            PUSH EBP      //跟进这里,Ctrl+F8
00461AB1   .  8BEC          MOV EBP,ESP
00461AB3   .  51            PUSH ECX
00461AB4   .  53            PUSH EBX
00461AB5   .  56            PUSH ESI
00461AB6   .  57            PUSH EDI
00461AB7   .  894D FC       MOV DWORD PTR SS:[EBP-4],ECX
00461ABA   .  8BDA          MOV EBX,EDX
00461ABC   .  8BF0          MOV ESI,EAX
00461ABE   .  8BC3          MOV EAX,EBX

00461AE1   .  FF57 2C       CALL DWORD PTR DS:[EDI+2C]           //第二次 NAG,下断点重启再次中断,F7跟进

0045A464   $  55            PUSH EBP    //跟进这里,Ctrl+F8
0045A465   .  8BEC          MOV EBP,ESP
0045A467   .  81C4 ECFEFFFF ADD ESP,-114
0045A46D   .  53            PUSH EBX
0045A46E   .  33DB          XOR EBX,EBX
0045A470   .  899D ECFEFFFF MOV DWORD PTR SS:[EBP-114],EBX
0045A476   .  84D2          TEST DL,DL
0045A478   .  74 08         JE SHORT 《计算机.0045A482
0045A47A   .  83C4 F0       ADD ESP,-10
0045A47D   .  E8 0697FAFF   CALL 《计算机.00403B88
0045A482   >  8BD9          MOV EBX,ECX

0045A5D8   .  E8 0396FAFF   CALL 《计算机.00403BE0           //第三次 NAG,下断点重启再次中断,F7跟进

0047BA46   .  E8 2D200000   CALL 《计算机.0047DA78          //第四次 NAG,下断点重启再次中断,F7跟进

0047DD13   .  E8 F8D1FBFF   CALL 《计算机.0043AF10         //第五次 NAG,向上找到Magic jmp

整个过程就是吃卷心菜,一层层拨开。

0047DC4B   .  3C 30         CMP AL,30    //千辛万苦找到的 Magic jmp,大家可以看OD的跳转线和单步跟踪最后一次Call的全部过程确定这是爆破点,必须跳转,刚好跳出死亡Call。
0047DC4D   .  0F84 97010000 JE 《计算机.0047DDEA
0047DC53   .  3C 31         CMP AL,31
0047DC55   .  75 45         JNZ SHORT 《计算机.0047DC9C
0047DC57   .  E8 68CAF8FF   CALL 《计算机.0040A6C4
0047DC5C   .  83C4 F8       ADD ESP,-8                               ; /
0047DC5F   .  DD1C24        FSTP QWORD PTR SS:[ESP]                  ; |Arg3 (8-byte)
0047DC62   .  9B            WAIT                                     ; |
0047DC63   .  FF75 FC       PUSH DWORD PTR SS:[EBP-4]                ; |Arg2
0047DC66   .  FF75 F8       PUSH DWORD PTR SS:[EBP-8]                ; |Arg1
0047DC69   .  E8 72C8FFFF   CALL 《计算机.0047A4E0                       ; \《计算机.0047A4E0
0047DC6E   .  3B05 9C3D4800 CMP EAX,DWORD PTR DS:[483D9C]
0047DC74   .  7E 26         JLE SHORT 《计算机.0047DC9C
0047DC76   .  6A 01         PUSH 1
0047DC78   .  8D45 CC       LEA EAX,DWORD PTR SS:[EBP-34]
0047DC7B   .  8B0D C03D4800 MOV ECX,DWORD PTR DS:[483DC0]
0047DC81   .  8B15 D03D4800 MOV EDX,DWORD PTR DS:[483DD0]
0047DC87   .  E8 086CF8FF   CALL 《计算机.00404894
0047DC8C   .  8B55 CC       MOV EDX,DWORD PTR SS:[EBP-34]
0047DC8F   .  B9 50DF4700   MOV ECX,《计算机.0047DF50                    ;  ASCII "eje"
0047DC94   .  8B45 F4       MOV EAX,DWORD PTR SS:[EBP-C]
0047DC97   .  E8 2877FFFF   CALL 《计算机.004753C4
0047DC9C   >  A1 C43D4800   MOV EAX,DWORD PTR DS:[483DC4]
0047DCA1   .  8078 14 32    CMP BYTE PTR DS:[EAX+14],32
0047DCA5   .  75 2E         JNZ SHORT 《计算机.0047DCD5
0047DCA7   .  3B35 A03D4800 CMP ESI,DWORD PTR DS:[483DA0]
0047DCAD   .  7E 26         JLE SHORT 《计算机.0047DCD5
0047DCAF   .  6A 01         PUSH 1
0047DCB1   .  8D45 C8       LEA EAX,DWORD PTR SS:[EBP-38]
0047DCB4   .  8B0D C03D4800 MOV ECX,DWORD PTR DS:[483DC0]
0047DCBA   .  8B15 D03D4800 MOV EDX,DWORD PTR DS:[483DD0]
0047DCC0   .  E8 CF6BF8FF   CALL 《计算机.00404894
0047DCC5   .  8B55 C8       MOV EDX,DWORD PTR SS:[EBP-38]
0047DCC8   .  B9 50DF4700   MOV ECX,《计算机.0047DF50                    ;  ASCII "eje"
0047DCCD   .  8B45 F4       MOV EAX,DWORD PTR SS:[EBP-C]
0047DCD0   .  E8 EF76FFFF   CALL 《计算机.004753C4
0047DCD5   >  6A 00         PUSH 0
0047DCD7   .  8D45 C4       LEA EAX,DWORD PTR SS:[EBP-3C]
0047DCDA   .  8B0D C03D4800 MOV ECX,DWORD PTR DS:[483DC0]
0047DCE0   .  8B15 D03D4800 MOV EDX,DWORD PTR DS:[483DD0]
0047DCE6   .  E8 A96BF8FF   CALL 《计算机.00404894
0047DCEB   .  8B55 C4       MOV EDX,DWORD PTR SS:[EBP-3C]            ; |
0047DCEE   .  B9 50DF4700   MOV ECX,《计算机.0047DF50                    ; |ASCII "eje"
0047DCF3   .  8B45 F4       MOV EAX,DWORD PTR SS:[EBP-C]             ; |
0047DCF6   .  E8 8576FFFF   CALL 《计算机.00475380                       ; \《计算机.00475380
0047DCFB   .  84C0          TEST AL,AL
0047DCFD   .  0F84 E7000000 JE 《计算机.0047DDEA
0047DD03   .  6A 00         PUSH 0                                   ; /Arg1 = 00000000
0047DD05   .  66:8B0D 54DF4>MOV CX,WORD PTR DS:[47DF54]              ; |
0047DD0C   .  B2 02         MOV DL,2                                 ; |
0047DD0E   .  A1 B43D4800   MOV EAX,DWORD PTR DS:[483DB4]            ; |
0047DD13   .  E8 F8D1FBFF   CALL 《计算机.0043AF10                       ; \《计算机.0043AF10
.................................................................................

继续努力搞退出NAG。

经龙哥指点

退出断点下

bp DestroyWindow

DestroyWindow  用途是

破坏(即清除)指定的窗口以及它的所有子窗口(在vb里使用:用处不大。原文:it is unlikely to be of much use.)一般程序退出时调用或关闭窗口时调用。

点不看了按钮,立即中断。

77DF736E >  B8 59110000     MOV EAX,1159  //这里中断。
77DF7373    8D5424 04       LEA EDX,DWORD PTR SS:[ESP+4]
77DF7377    CD 2E           INT 2E  //如果返回看到这样的语句,必须Nop掉,不然Over
77DF7379    C2 0400         RETN 4

堆栈友好提示

0012F9DC   00445769  /CALL 到 DestroyWindow 来自 Crack.00445764   //这里清除断点,Ctrl+F9返回。
0012F9E0   001104A0  \hWnd = 001104A0 ('计算机资料大全v3.0  火力加强版',class='TMessageForm',parent=000404BC)
0012F9E4   0012FBCC  指针到下一个 SEH 记录
0012F9E8   00445789  SE 句柄
0012F9EC   0012F9F4

00445769   .  85C0          TEST EAX,EAX
0044576B   .  75 05         JNZ SHORT Crack.00445772
0044576D   .  E8 A283FCFF   CALL Crack.0040DB14
00445772   >  33C0          XOR EAX,EAX
00445774   .  5A            POP EDX
00445775   .  59            POP ECX
00445776   .  59            POP ECX
00445777   .  64:8910       MOV DWORD PTR FS:[EAX],EDX
0044577A   .  68 90574400   PUSH Crack.00445790
0044577F   >  8B45 FC       MOV EAX,DWORD PTR SS:[EBP-4]
00445782   .  66:8160 54 FF>AND WORD PTR DS:[EAX+54],0FDFF
00445788   .  C3            RETN       

不断 Ctrl+F9返回。

0043AFCF  |> \8B45 F4       MOV EAX,DWORD PTR SS:[EBP-C]
0043AFD2  |.  8B10          MOV EDX,DWORD PTR DS:[EAX]
0043AFD4  |.  FF92 E8000000 CALL DWORD PTR DS:[EDX+E8]  //F7进入。

0045E754  /.  55            PUSH EBP   //进这里。
0045E755  |.  8BEC          MOV EBP,ESP
0045E757  |.  83C4 E0       ADD ESP,-20
0045E75A  |.  53            PUSH EBX
0045E75B  |.  56            PUSH ESI
0045E75C  |.  33D2          XOR EDX,EDX
0045E75E  |.  8955 E0       MOV DWORD PTR SS:[EBP-20],EDX
0045E761  |.  8945 FC       MOV DWORD PTR SS:[EBP-4],EAX
0045E764  |.  BB 2C3C4800   MOV EBX,Crack.00483C2C
0045E769  |.  33C0          XOR EAX,EAX
0045E76B  |.  55            PUSH EBP
0045E76C  |.  68 E4E94500   PUSH Crack.0045E9E4
0045E771  |.  64:FF30       PUSH DWORD PTR FS:[EAX]
0045E774  |.  64:8920       MOV DWORD PTR FS:[EAX],ESP
0045E777  |.  E8 481CFEFF   CALL Crack.004403C4
0045E77C  |.  8B45 FC       MOV EAX,DWORD PTR SS:[EBP-4]
0045E77F  |.  8078 57 00    CMP BYTE PTR DS:[EAX+57],0
0045E783  |.  75 24         JNZ SHORT Crack.0045E7A9
0045E785  |.  8B45 FC       MOV EAX,DWORD PTR SS:[EBP-4]
0045E788  |.  8B10          MOV EDX,DWORD PTR DS:[EAX]
0045E78A  |.  FF52 50       CALL DWORD PTR DS:[EDX+50]
0045E78D  |.  84C0          TEST AL,AL
0045E78F  |.  74 18         JE SHORT Crack.0045E7A9
0045E791  |.  8B45 FC       MOV EAX,DWORD PTR SS:[EBP-4]
0045E794  |.  F680 EC020000>TEST BYTE PTR DS:[EAX+2EC],8
0045E79B  |.  75 0C         JNZ SHORT Crack.0045E7A9
0045E79D  |.  8B45 FC       MOV EAX,DWORD PTR SS:[EBP-4]
0045E7A0  |.  80B8 2F020000>CMP BYTE PTR DS:[EAX+22F],1
0045E7A7  |.  75 21         JNZ SHORT Crack.0045E7CA

0045E7CA  |>  E8 698AFAFF   CALL <JMP.&user32.GetCapture>            ; [GetCapture
0045E7CF  |.  85C0          TEST EAX,EAX
0045E7D1  |.  74 11         JE SHORT Crack.0045E7E4

0045E7E4  |>  E8 D78CFAFF   CALL <JMP.&user32.ReleaseCapture>        ; [ReleaseCapture
0045E7E9  |.  8B45 FC       MOV EAX,DWORD PTR SS:[EBP-4]
0045E7EC  |.  8088 EC020000>OR BYTE PTR DS:[EAX+2EC],8
0045E7F3  |.  E8 388AFAFF   CALL <JMP.&user32.GetActiveWindow>       ; [GetActiveWindow
0045E7F8  |.  8945 E4       MOV DWORD PTR SS:[EBP-1C],EAX
0045E7FB  |.  A1 9C0D4800   MOV EAX,DWORD PTR DS:[480D9C]
0045E800  |.  8945 F0       MOV DWORD PTR SS:[EBP-10],EAX
0045E803  |.  A1 303C4800   MOV EAX,DWORD PTR DS:[483C30]
0045E808  |.  8B48 78       MOV ECX,DWORD PTR DS:[EAX+78]
0045E80B  |.  A1 303C4800   MOV EAX,DWORD PTR DS:[483C30]
0045E810  |.  8B40 7C       MOV EAX,DWORD PTR DS:[EAX+7C]
0045E813  |.  33D2          XOR EDX,EDX
0045E815  |.  E8 46CAFBFF   CALL Crack.0041B260
0045E81A  |.  A1 303C4800   MOV EAX,DWORD PTR DS:[483C30]
0045E81F  |.  8B55 FC       MOV EDX,DWORD PTR SS:[EBP-4]
0045E822  |.  8950 78       MOV DWORD PTR DS:[EAX+78],EDX
0045E825  |.  A1 303C4800   MOV EAX,DWORD PTR DS:[483C30]
0045E82A  |.  66:8B40 44    MOV AX,WORD PTR DS:[EAX+44]
0045E82E  |.  66:8945 EE    MOV WORD PTR SS:[EBP-12],AX
0045E832  |.  33D2          XOR EDX,EDX
0045E834  |.  A1 303C4800   MOV EAX,DWORD PTR DS:[483C30]
0045E839  |.  E8 7E130000   CALL Crack.0045FBBC
0045E83E  |.  A1 303C4800   MOV EAX,DWORD PTR DS:[483C30]
0045E843  |.  8B40 48       MOV EAX,DWORD PTR DS:[EAX+48]
0045E846  |.  8945 E8       MOV DWORD PTR SS:[EBP-18],EAX
0045E849  |.  33C0          XOR EAX,EAX
0045E84B  |.  E8 E4A2FFFF   CALL Crack.00458B34
0045E850  |.  8945 F4       MOV DWORD PTR SS:[EBP-C],EAX
0045E853  |.  33D2          XOR EDX,EDX
0045E855  |.  55            PUSH EBP
0045E856  |.  68 C4E94500   PUSH Crack.0045E9C4
0045E85B  |.  64:FF32       PUSH DWORD PTR FS:[EDX]
0045E85E  |.  64:8922       MOV DWORD PTR FS:[EDX],ESP
0045E861  |.  8B45 FC       MOV EAX,DWORD PTR SS:[EBP-4]
0045E864  |.  E8 3BFEFFFF   CALL Crack.0045E6A4
0045E869  |.  33D2          XOR EDX,EDX
0045E86B  |.  55            PUSH EBP
0045E86C  |.  68 23E94500   PUSH Crack.0045E923
0045E871  |.  64:FF32       PUSH DWORD PTR FS:[EDX]
0045E874  |.  64:8922       MOV DWORD PTR FS:[EDX],ESP
0045E877  |.  6A 00         PUSH 0
0045E879  |.  6A 00         PUSH 0
0045E87B  |.  68 00B00000   PUSH 0B000
0045E880  |.  8B45 FC       MOV EAX,DWORD PTR SS:[EBP-4]
0045E883  |.  E8 D499FEFF   CALL Crack.0044825C
0045E888  |.  50            PUSH EAX                                 ; |hWnd
0045E889  |.  E8 728CFAFF   CALL <JMP.&user32.SendMessageA>          ; \SendMessageA
0045E88E  |.  8B45 FC       MOV EAX,DWORD PTR SS:[EBP-4]
0045E891  |.  33D2          XOR EDX,EDX
0045E893  |.  8990 4C020000 MOV DWORD PTR DS:[EAX+24C],EDX
0045E899  |>  8B03          /MOV EAX,DWORD PTR DS:[EBX]     --------------------------
0045E89B  |.  E8 FC300000   |CALL Crack.0046199C
0045E8A0  |.  8B03          |MOV EAX,DWORD PTR DS:[EBX]
0045E8A2  |.  80B8 9C000000>|CMP BYTE PTR DS:[EAX+9C],0
0045E8A9  |.  74 0F         |JE SHORT Crack.0045E8BA

0045E8BA  |>  8B45 FC       |MOV EAX,DWORD PTR SS:[EBP-4]      里面构成一个循环,在循环里面NAG出现了,只能人为关闭。
0045E8BD  |.  83B8 4C020000>|CMP DWORD PTR DS:[EAX+24C],0
0045E8C4  |.  74 08         |JE SHORT Crack.0045E8CE

0045E8CE  |>  8B45 FC       |MOV EAX,DWORD PTR SS:[EBP-4]
0045E8D1  |.  8B80 4C020000 |MOV EAX,DWORD PTR DS:[EAX+24C]
0045E8D7  |.  85C0          |TEST EAX,EAX
0045E8D9  |.^ 74 BE         \JE SHORT Crack.0045E899       ----------------------------

//人为关闭同样是到达下面一句,如果爆破的话,NAG窗口在你眼睛没看见的时候就关闭了,我的P4 2G的Cpu我根本没看见NAG,这里就是第二个爆破点。

0045E8DB  |.  8945 F8       MOV DWORD PTR SS:[EBP-8],EAX
0045E8DE  |.  6A 00         PUSH 0
0045E8E0  |.  6A 00         PUSH 0
0045E8E2  |.  68 01B00000   PUSH 0B001
...............................................// 往下正常Over.

【破解总结】

0047DC4D   .  0F84 97010000 JE 0047DDEA
        
              修改为

0047DC4D   .  0F85 97010000 JnE 0047DDEA


0045E8D9  |.^ 74 BE         \JE SHORT Crack.0045E899  

               修改为
                         
0045E8D9  |.^ 75 BE         \JNE SHORT Crack.0045E899     

第二处强力爆破后,启动Nag一起搞调了,原来它们是调用的同一个语句,程序帮我们Kill掉了(自动关闭)

最后请看胜利截图。


--------------------------------------------------------------------------------  

【版权声明】 本文纯属技术交流, 转载请注明作者并保持文章的完整, 谢谢!
本代码的着色效果由xTiNt自动完成
下载xTiNt http://211.90.75.84/web/kanaun/download/xTiNt.rar

  • 标 题: 答复
  • 作 者:David
  • 时 间:2005-02-08 14:50

引用:
最初由 ljy3282393 发布
二哥:下bp DestroyWindow断点后,应该按多少次 Ctrl+F9 ?为什么? 



退出断点下

bp DestroyWindow

DestroyWindow  用途是

破坏(即清除)指定的窗口以及它的所有子窗口(在vb里使用:用处不大。原文:it is unlikely to be of much use.)一般程序退出时调用或关闭窗口时调用。

点不看了按钮,立即中断。

77DF736E >  B8 59110000     MOV EAX,1159  //这里中断。
77DF7373    8D5424 04       LEA EDX,DWORD PTR SS:[ESP+4]
77DF7377    CD 2E           INT 2E  //如果返回看到这样的语句,必须Nop掉,不然Over
77DF7379    C2 0400         RETN 4

堆栈友好提示

0012F9DC   00445769  /CALL 到 DestroyWindow 来自 Crack.00445764   //这里清除断点,Ctrl+F9返回。
0012F9E0   001104A0  \hWnd = 001104A0 ('计算机资料大全v3.0  火力加强版',class='TMessageForm',parent=000404BC)
0012F9E4   0012FBCC  指针到下一个 SEH 记录
0012F9E8   00445789  SE 句柄
0012F9EC   0012F9F4

00445769   .  85C0          TEST EAX,EAX
0044576B   .  75 05         JNZ SHORT Crack.00445772
0044576D   .  E8 A283FCFF   CALL Crack.0040DB14
00445772   >  33C0          XOR EAX,EAX
00445774   .  5A            POP EDX
00445775   .  59            POP ECX
00445776   .  59            POP ECX
00445777   .  64:8910       MOV DWORD PTR FS:[EAX],EDX
0044577A   .  68 90574400   PUSH Crack.00445790
0044577F   >  8B45 FC       MOV EAX,DWORD PTR SS:[EBP-4]
00445782   .  66:8160 54 FF>AND WORD PTR DS:[EAX+54],0FDFF
00445788   .  C3            RETN       

不断 Ctrl+F9返回。

0043AFCF  |> \8B45 F4       MOV EAX,DWORD PTR SS:[EBP-C]
0043AFD2  |.  8B10          MOV EDX,DWORD PTR DS:[EAX]
0043AFD4  |.  FF92 E8000000 CALL DWORD PTR DS:[EDX+E8]  //F7进入。

以到这里为主

0043AFCF

这个是调试发现的,你将深入到一些Api,可以根据需要调试下去。