最近用OD调试了一些小程序,有一些感悟,和大家分享一下
我用了一个多窗口的的程序(软件的试用),对如何去掉弹窗提供一些自己的看法,为大家提供一些思路
首先单步调试,会出现3个弹窗
1.通过对反汇编代码的分析,发现一个关键跳je,我们将je跳转改为jmp无条件跳转,使其直接跳过弹窗的程序
2.修改窗口句柄的值,学习过win32的人都知道,hOwner是一个父窗口的句柄,将他的值改为push 0x1,使他的子窗口失效
3.修改PE文件,alt+m进入内存映射的窗口并双击PE文件的内部
向下寻找,发现第一个窗口的入口地址
记下他的地址4000E8,alt+c返回到我们刚才的界面,,找到数据窗口crtl+g修改到我们要的PE头文件地址4000E8,即程序的入口地址
找到后对他值进行修改,修改为要跳转到窗口的地址401024,注意,修改的顺序为从右到左
保存后重启会发现第一个窗口直接跳过
4.对标志寄存器的修改 Z/O/F使其发生跳转或者不跳转,这个也很重要,但在本程序里没有涉及
5.最直接的方法,直接nop使其不跳转
我只是对破解提供一些思路,而且只是破掉了一个弹窗,希望能对大家有帮助,如有问题,还请大家多多提意见
时间: 2024-10-05 04:58:27