网上找了很久, 没找到合适的破解文件, 就自已动手了。
文件是在官方下载的, 下载日期为2010.03.18日, 版本为 3.1.0.72
破解补丁我就不发出来了,原因就不说了 XD~
首先, 在文件httpd.conf上面输入注册信息:
RegistrationName= www.gzxnzj.cn
RegistrationCode= 2EAD-35GH-66NN-ZYBA
//为什么要在文件里手动输入? 其实是因为这个软件的“注册”按钮点不了,所以就手动在文件里输了
接着就是破解了, 第一步:破解主文件(Helicon Manager.exe)。
OD 载入,找到以下代码:(方法一)
1003E785 55 push ebp
1003E786 8BD3 mov edx,ebx
1003E788 8D4C24 70 lea ecx,dword ptr ss:[esp+70]
1003E78C E8 EFE9FFFF call ISAPI_Re.1003D180 ; 这是函数是用来检验注册码的,结果放在al里
1003E791 83C4 10 add esp,10
1003E794 84C0 test al,al ; al 为1时,注册成功,0时注册失败
1003E796 75 30 jnz short ISAPI_Re.1003E7C8 ; 为1就跳,我直接将jnz修改为jmp
这样做的好处是, 不管它是真注册码还是假注册,通通变为应该成功!
所以很简单的一步,就是将 jnz 修改为 jmp 就暴力破解成功了, 哈哈~
但是,通过分析得知,这个检验注册码的函数有两个地方调用,另一个好像是对于假码使用的,
所以我直接修改另一个地方:(方法二)
1003D88A ^\75 F4 jnz short ISAPI_Re.1003D880
1003D88C EB 3D jmp short ISAPI_Re.1003D8CB
1003D88E B0 01 xor al,al ; 这个清0了
1003D890 E9 C0010000 jmp ISAPI_Re.1003DA55
1003D895 0FB6C9 movzx ecx,cl
1003D898 8B3C8D 38000B10 mov edi,dword ptr ds:[ecx*4+100B0038]
1003D89F B8 01000000 mov eax,1
1003D8A4 8D50 04 lea edx,dword ptr ds:[eax+4]
1003D8A7 85F8 test eax,edi
看到上面那个清0了没?也就假码它才会清0吧,呵呵~
我将 xor al,al 修改成 mov al,1
我不知道这个会不会有啥影响,所以一般用第一个方法修改就可以了,方法二可以不用。
这样稳定会更高一些吧,哈哈~
(上面修改完保存的时候,实际上是这个DLL 文件ISAPI_RewriteSnapin.dll )
修改完了主程序,第二步,破解 ISAPI, 也就是 ISAPI_Rewrite.dll
跟上面差不多,OD载入,找到以下代码:(方法一)
1003E77F |. 8D9E B0000000 lea ebx,dword ptr ds:[esi+B0]
1003E785 |. 55 push ebp
1003E786 |. 8BD3 mov edx,ebx
1003E788 |. 8D4C24 70 lea ecx,dword ptr ss:[esp+70]
1003E78C |. E8 EFE9FFFF call ISAPI_Re.1003D180 ; 这是注册码检验函数,跟上面一样
1003E791 |. 83C4 10 add esp,10
1003E794 |. 84C0 test al,al; 跟上面一样,1注册成功,0注册失败
1003E796 |. 75 30 jnz short ISAPI_Re.1003E7C8; 1就跳,0就不跳
修改方法,跟上面一样, 将 jnz 修改为 jmp,就是无论是1还是0, 进行无条件跳转,破解成功!
(方法二):理由跟上面一样
1003D88A |.^\75 F4 \jnz short ISAPI_Re.1003D880
1003D88C |. EB 3D jmp short ISAPI_Re.1003D8CB
1003D88E |> B0 01 xor al,al ; 这个清0了
1003D890 |. E9 C0010000 jmp ISAPI_Re.1003DA55
1003D895 |> 0FB6C9 movzx ecx,cl
1003D898 |. 8B3C8D 38000B10 mov edi,dword ptr ds:[ecx*4+100B0038]
1003D89F |. B8 01000000 mov eax,1
看到上面的清0没? 其实跟主程序基本上是一样的,修改方法
xor al,al 修改为 mov al,1
破解成功!
还是那句话,由于懒得好好分析它的原理和测试,所以,建议使用方法一就足够了。 哈哈~
剩下的, 就是应用了,自己试试吧。 我在本机测试通过 XD~
别忘了, 修改后记得保存哦! 而且要记得保存原文件,以防万一