MacOS 64位GaussView5的破解

朋友找我要MacOS 64位的GaussView5程序(简称gv,做分子模拟的朋友应该听说过),但是里面有我的注册信息,万一扩散了让GaussView5的公司查出来,可就吃不了兜着走了。于是利用周末的一个上午,用IDApro分析了GaussView5程序,很容易就实现了破解。

 

分析是在32位windows vista下进行的,因为网上流传最广的IDApro 6.1就是windows版本。

 

首先在MacOS下把注册文件gv5.key中的内容清空并保存(当然也可以删除此文件,但是破解可能要多费些功夫。这里不追求完美破解,能用就行了),然后运行gv,跳出出错窗口,窗口标题(不是图片格式的窗口内容)是“Key file error”。好,这段文字就是我们要找的关键标记。

 

把gv的可执行程序gview程序复制到windows下,用idaq64.exe程序打开gview(为了节省时间,事先已经用UE在gview中搜索了上面的出错窗口标题,发现存在并且只出现一次),几秒钟后自动判断出这是MacOS 64位系统的可执行程序,继续。经过大约十几分钟的等待,程序分析完毕后,用Alt+T搜索上面的出错窗口标题,很快找到。然后往上追查调用关系。前面的几处调用不论怎么跳,最后都会跳到出错窗口。再往前找,发现下面的代码:

 

mov     [esp], eax
call    sub_4F5CF0
test    al, al
jnz     loc_4C0668

 

loc_4C0668是key正确的入口,否则就进入key错误的各个分支。前面已经用UE验证,判断Key错误的代码只有一处,不用再往后找了。只要把jnz(表示不等于,16进制码为0F85)改为无条件跳跃(90E9)就可以实现无key运行了。为了便于查找,先复制这一段以及随后几行二进制码(如下)到UE里:

0F 85 3B 01 00 00 8B 47  58 8D 75 D8 89 34 24 83
C0 40 89 44 24 04 E8 16  5E 9A 00 8D 55 A4 89 74
24 04 89 95 54 FF FF FF  89 14 24 E8 89 74 9A 00

接下来删除换行(但可以保留空格),然后用UE打开可执行程序gview,搜索上面删掉换行的二进制码。找到后,把最开头的0F 85改为90 E9。保存。

 

把修改后的gview复制到MacOS,覆盖GaussView5原文件,并参照原来的程序修改执行权限。最后压缩打包,破解就完成了。

 

现在重新测试,发现即使gv5.key里面什么都没有,gv也能正常运行。

 

以上分析方法,对Windows版本的GaussView5,以及由同一公司出品的半经验量子力学计算程序AMPAC9也同样有效。

 

不过,我不敢保证GaussView5里面没有打了水印的文件,如果那样的话,还是能查到的。

你可能感兴趣的:(破破破)