QQ斗地主记牌器主程序脱壳并解除使用次数限制

来源:互联网 发布:mac新建文件夹在哪里 编辑:程序博客网 时间:2024/04/30 06:00

把ddztool.exe拖到fi.exe的图标上用fi监测信息:ASPack v2.12 加过壳的

这个好像很容易,瞎猫也能撞到死老鼠。hehe

od载入ddztool.exe,单步跳过pushad

双击右边寄存器窗口中ESP,得到它的值:0012FFC4

在命令行窗口输入 HR 0012FFC4 ,回车下内存访问断点 

F9运行,中断在一条跳转指令处,F7单步,3次到了这里:

0045E410    55              push ebp
0045E411    8BEC            mov ebp,esp
0045E413    83C4 F0         add esp,-10
0045E416    53              push ebx
0045E417    56              push esi
0045E418    33C0            xor eax,eax
0045E41A    8945 F0         mov dword ptr ss:[ebp-10],eax
0045E41D    B8 A8E14500     mov eax,DdzTool.0045E1A8
0045E422    E8 1182FAFF     call DdzTool.00406638

wk!很熟悉啊,YES! 正是我要的。在cpu窗口右健选择脱壳在当前调试的进程。

获取eip值作为oep,脱克之,给个名字:unpack.exe,搞定。运行一下,可以正常工作。

把unpack.exe拖到fi.exe的图标上,用fi监测程序信息:Borland Delphi

现在把它的5次运行限制去掉。

是delphi的就好了,用DeDe来打开unpack.exe,可以得到很多有用信息

在procedures里面,看TForm1的事件,竟然有一个事件的名字叫做ReadDeskControl1GameOver

这看起来很象判断结束的地方,果然在里面发现一下指令:

* Reference to: controls.TControl.SetText(TControl;TCaption);
|
0045D212   E839B8FCFF             call    00428A50
0045D217   833D3496470005         cmp     dword ptr [$00479634], +$05
0045D21E   7C4B                   jl      0045D26B
0045D220   803D1196470000         cmp     byte ptr [$00479611], $00
0045D227   7432                   jz      0045D25B
0045D229   8D55F0                 lea     edx, [ebp-$10]

比较是否已使用超过5次。。。。。。。用od打开unpack.exe,在cpu窗口 ctrl+G 前往:0045D21E

双击,修改成:jmp short 0045D26B

右健选择复制到可执行文件。保存到cracked.exe,搞定。

运行cracked.exe看看成果。。。。。:-D

islq 2005-7-16

原创粉丝点击