= 62、Ponger ============================================================================= Ponger 这个程序是设计来保持阁下的网络的连系。它可以阻止阁下的 ISP 切断你的网络连系。当执行 Ponger后,你可以慢慢的阅读网页,甚至可以 来一杯咖啡或一些小吃。不必担心 ISP 会切断阁下的网络连系。 1)在程序开始执行前,将会秀出注册视窗。在这里只需要填入注册码,先乱填几个数字 。比例 24469。 2)按 CTRL-D 切入 Softice,下 bpx getdlgitemtexta 然后按 CTRL-D 切回 Ponger32。按下 Enter 后。马上被 Softice 拦下。 3)拦下后,下 BD * (临时性清掉中断功能)。再按 F12 一次,Data window 将会如下: xxxx:00401102 CALL USER32!GetDlgItemTexta xxxx:00401107 TEST EAX,EAX xxxx:00401109 JZ 0040111F xxxx:0040110B PUSH 00410528 <-- 输入的注册码 xxxx:00401110 CALL 00402122 <-- 错误的信息,追入 xxxx:00401115 POP EAX 4)追入后,才按 F10 几次,错误的信息再一次的跳出来了(按 OK 后,又被 Softice 拦下)。好,注意以下的几行: xxxx:004012B9 MOV EAX,00000001 xxxx:004012BE JMP 004012D5 <-- 可以跳过 xxxx:004012CE xxxx:004012C0 PUSH 10 xxxx:004012C2 PUSH 0040D402 xxxx:004012C7 PUSH 0040D39C xxxx:004012CC PUSH 00 xxxx:004012CE CALL USER32!MessageBoxA <-- 秀出错误信息 xxxx:004012?? 程序执行至这行 只要跳到 xxxx:004012BE 就可以跳过错误信息了! 5)OK,我们往上搜索(CTRL-UP ARROW KEY)。如下: xxxx:0040124F PUSH EDX xxxx:00401250 CALL 00401870 <-- 十分可疑!设下中断点(Breakpoint) xxxx:00401255 ADD ESP,08 xxxx:00401258 TEST EAX,EAX <-- 测试 EAX xxxx:0040125A JZ 004012C0 <-- 不是零就跳至错误信息! 设下中断点(用滑鼠 Double Click 或者按 F9)后,然后重新执行程序一次。 6)拦下后,下 BD * ,按 F8 追入 CALL 00401870。小心的按 F10 直至: xxxx:00401889 CALL 00401734 <-- 让程序执行至此处 xxxx:0040188E POP ECX xxxx:0040188F MOV [EBP-04],EAX xxxx:00401892 CMP DWORD PTR [EBP-04],00 xxxx:00401896 JNZ 0040189D <-- 关键所在! xxxx:00401898 MOV EAX,[EBP+08] xxxx:0040189B JMP 0040190B <-- 执行至这行,就完蛋了! xxxx:0040189D TEST EBX,EBX xxxx:0040189F JNZ 004018A5 接下来,应该知道怎样做了吧? 对了!就是改机械码。我们只要把 xxxx:00401896 的 JNZ 0040189D 改变成为 JZ 0040189D,就可以跳过错误信息了。但是,记得在改机械码前,先下 code on 指令,抄下机械码。再把 JNZ 0040189D 改成 JZ 0040189D (用 A xxxx:0040189D),然后把改好的机械码抄下。再用UltraEdit来改档。 7)最後整理一下机械码; 档名:Ponger32.exe (151,639 bytes) 搜索:83 7D FC 00 75 05 8B 45 修改:83 7D FC 00 74 05 8B 45