最近公司电脑的Navicat试用期过了,想找找其他Mysql管理的GUI,用了几款都不太好用,直接下载破解版的Navicat又感觉不是很舒服,总是感觉下载的破解版不是很干净。(对,我就是这么矫情)
那就只好动手了,下面记录了破解的过程与思路。
大家有经济实力的情况下还是要尽力的支持正版的,以下过程只做技术分享,切勿用于非法用途
破解过程
载入到OD后运行,CTRL+G 输入 00401000 到达程序领空。
右键搜索字符串后搜索关键词“评估”,到达疑似程序弹出注册框的位置

到达段首(push ebp的位置),F2下断点,CTRL+F2重新运行程序
断下后我们F8向下跟,跟到这个位置后
可以看到这有个jnz是比较关键的,如果这个JNZ不跳的话,应该就会直接弹出试用过期的框,
那我们直接把jnz改成je跳过弹出注册框的部分,当然还没结束,事情没这么简单,我们发现改成je后运行Navicat直接闪退掉了,说明后面还是有相关的验证的。
那好吧,重新运行起来,把谈注册框的位置改成je后我们继续往下面跟
到达这个位置后
发现了这个字符串,应该就是Navicat的主体窗口了,我们就想办法让他运行到这

到这步后,如果jnb跳转不成立的话,就会走到jmp处,然后就会跳过TNavicatMainForm 这个位置,显然是不行的,我们只好吧jnb改成jmp让他跳过这个jmp
当走到这个call的位置的时候,我们发现任务栏的navicat已经变成两个了(应该是一个是启动界面,一个已经进入了主界面)也基本证明了猜想这部分就是在创建navicat的主窗口。然而我们直接运行起来,发现navitcat还是会闪退,那就说明这个位置之后还是有验证,那就只好继续跟了。

再跟不远之后就发现了关键的退出call(f8到这个call的位置时,进程停止),发现上面有个je 改成jmp 运行。
好了运行成功了,试了下功能 基本都是好使的。到此就破解完成了