使用OllyDBG进行简单的脱壳

        如果是个破解高手,他们肯定知道,程序装入内存时一般ESP都会是0x12FF8C。

        下面开始正式脱壳(我用UPX1.25压缩的做例子,用OllyDBG打开已压缩加壳的程序.

        看到反汇编代码:

        PUSHAD

        ;这行很重要,一般的程序头部都是PUSH EBP(或一个立即数)和MOV EBP, ESP(对应十六进制机器码为558BEC),用来初始化CPU,此处是PUSHAD,说明非市面流行编译器编译

        ;说明程序可能已被加密

        ;此时记下ESP,应该为12FF8C
        004364D1   .  BE 00D04100          MOV ESI,Clock.0041D000
        004364D6   .  8DBE 0040FEFF      LEA EDI,DWORD PTR DS:[ESI+FFFE4000]
        004364DC   .  57                            PUSH EDI
        004364DD   .  83CD FF                  OR EBP,FFFFFFFF
        004364E0   .  EB 10                      JMP SHORT Clock.004364F2
        004364E2      90                            NOP
        004364E3      90                            NOP
        004364E4      90                            NOP
        004364E5      90                            NOP
        004364E6      90                            NOP
        004364E7      90                            NOP

Copyright(C) 2008-2010 ViPER520 Powered By 5uCMS
苏ICP备08007398号