英语口语对话王 2005 09.29 破解教程

去nag相关知识:
1.去对话框之类的nag,去话框一般都是用DialogBoxParam,DialogBox,CreateDialog等之类的API创建的,
具体情况我们可以看软件的输入表(ollydbg里面按Ctrl+N),看它调用了那些创建对话框的函数,再用
bpx下断点,如果这类API是封装了的则要用bp下断点。如果找到了nag调用的地方了,刚相办法退出nag
再按F8一直返回,找能跳过调用nag call ,要么跳过,要么就是nop掉就可以了。
2.用CreateWindow创建的nag,这种nag 是会有一个消息循环的,找消息循环很简单,这里介绍我用的一种
按f9运行直到nag的出现,再  点击工具栏上面的 || 来中断程序,接着就是按F8一直返回,就可以找到消息
循环了。找到之后就想办法退出这个循环,退出之后再按F8返回,nop掉调用nag的call就可以了。。
3.有些软件在你试用期过后,你退出消息循环这后是无法返回的,就直终止了进程。这种情况只有一步一步
跟踪了。。

声明:这个软件去nag早就有人完成了,由于是没写教程,所以我在这里贴上一篇了.....

这里我们先用ollydbg载入SplkenKing.exe

005E3410 SpokenK>  60                      pushad
005E3411           BE 00205500             mov esi,SpokenKi.00552000
005E3416           8DBE 00F0EAFF           lea edi,dword ptr ds:[esi+FFEAF000]

再一直向下拖,直到看见 下面没有代码了,就按f4直接到最下面的一个jmp 将它记下来

005E3595         ^/E9 BF3AF8FF             jmp SpokenKi.0056707C
在command里面断点bp DeleteFileA F9运行 就会被断下来,再按f8返回就到了 5692f0

005692E6           A1 982E5700             mov eax,dword ptr ds:[572E98]
005692EB           E8 00D8FFFF             call SpokenKi.00566AF0
005692F0           FF05 8C2E5700           inc dword ptr ds:[572E8C]--->这里就是加次数的
005692F6           8B15 DCDF5600           mov edx,dword ptr ds:[56DFDC]           ; SpokenKi.0057281C

选择 5692eb再回车跟入
00566AF0           55                      push ebp
00566AF1           8BEC                    mov ebp,esp
00566AF3           51                      push ecx
..............
00566C16           E8 6D25EAFF             call SpokenKi.00409188
00566C1B           A3 8C2E5700             mov dword ptr ds:[572E8C],eax
上面一句的nop掉,这里就是取出的次数,下面次数就清0了。
00566C20           33C0                    xor eax,eax

bc DeleteFileA 去掉断点

再向上拖找到
00569071           A1 882E5700             mov eax,dword ptr ds:[572E88]
00569076           E8 25B6EFFF             call SpokenKi.004646A0
0056907B           A3 902E5700             mov dword ptr ds:[572E90],
...............
005690E3           FF05 902E5700           inc dword ptr ds:[572E90]----->这里是再加次数

出车跟入
004646A0           55                      push ebp
004646A1           8BEC                    mov ebp,esp
004646A3           83C4 EC                 add esp,-14
...............
00464851         ^/EB F0                   jmp short SpokenKi.00464843
00464853           8B45 F4                 mov eax,dword ptr ss:[ebp-C]改为xor eax,eax 这里是传入次数。
00464856           5E                      pop esi

好了在这里直接按f9运行直到nag出现再点工具栏上面的 || 中断按F8直到消息循环。
在消息循环下面下一个断点,再点击试用来退出消息循环,再按f8返回。就会要下面
00554863           8B10                    mov edx,dword ptr ds:[eax]
00554865           FF92 D8000000           call dword ptr ds:[edx+D8]这是调用nag的call nop调
0055486B           8B45 FC                 mov eax,d
到这里所有的修改就完成了。。
现在再回到 upx的外壳 005E3595 按下面方式修改,
005E3594           61                      popad
005E3595           B8 33C0905E             mov eax,5E90C033
005E359A           A3 53484600             mov dword ptr ds:[464853],eax
005E359F           B8 90909090             mov eax,90909090
005E35A4           A3 65485500             mov dword ptr ds:[554865],eax
005E35A9           A3 67485500             mov dword ptr ds:[554867],eax
005E35AE           A3 1B6C5600             mov dword ptr ds:[566C1B],eax
005E35B3           A3 1C6C5600             mov dword ptr ds:[566C1C],eax
005E35B8         ^ E9 BF3AF8FF             jmp SpokenKi.0056707C
打开原upx加壳的原程序, 用十六进制工具按上面修改就可以了。。


©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页