好友
阅读权限35
听众
最后登录1970-1-1
|
首先不多说其他废话 记住KK 我的20CB啊 别后悔啊
其实思路很简单的 只是KK你自己没注意罢了
首先运行软件 输入注册码 点击注册按钮 就退出 那么好办 下退出断点 直接去FF 25
0041A570 55 push ebp ////退出的段首 下F2断点
0041A571 8BEC mov ebp,esp
0041A573 8B45 08 mov eax,dword ptr ss:[ebp+0x8]
0041A576 50 push eax
0041A577 B9 78324900 mov ecx,52kk.00493278
0041A57C E8 2F84FFFF call 52kk.004129B0
0041A581 8B4D 08 mov ecx,dword ptr ss:[ebp+0x8]
0041A584 51 push ecx
0041A585 FF15 5C824600 call dword ptr ds:[<&KERNEL32.ExitProces>; kernel32.ExitProcess
0041A58B 5D pop ebp
0041A58C C3 retn
运行软件 直接输入假码 点击注册 直接退出 断在我们下F2断点的地方 这时候我们看堆栈
0012FB64 00401223 返回到 52kk.00401223 来自 52kk.00401290 ////这里右键----反汇编窗口跟随
0012FB68 00000000
0012FB6C 00000000
0012FB70 001FC0A8
0012FB74 /0012FB7C
0012FB78 |004010F5 返回到 52kk.004010F5 来自 52kk.00401196
004011F0 837D F8 00 cmp dword ptr ss:[ebp-0x8],0x0 ////这是比较ebp-8是否为0 刚好je跳 那么就是相等 我们改1即可
004011F4 0F84 22000000 je 52kk.0040121C ////跟上去就是这个跳跳到了退出 NOP即可
004011FA 6A 00 push 0x0
004011FC 68 01000000 push 0x1
00401201 6A FF push -0x1
00401203 6A 05 push 0x5
00401205 68 AE190116 push 0x160119AE
0040120A 68 01000152 push 0x52010001
0040120F E8 82000000 call 52kk.00401296
00401214 83C4 18 add esp,0x18
00401217 E9 0A000000 jmp 52kk.00401226
0040121C 6A 00 push 0x0
0040121E E8 6D000000 call 52kk.00401290
00401223 83C4 04 add esp,0x4 ////首先是停在这 然后就是上面的call调用的退出
00401226 8BE5 mov esp,ebp
00401228 5D pop ebp
00401229 C3 retn
就是如此简单 就怪扣扣搞退出 这是你自己白送我20CB的
|
|
发帖前要善用【论坛搜索】功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。 |
|
|
|
|