gfjykldd 发表于 2019-5-10 17:30

Maxxx 2019.0 --破解--解决方案

本帖最后由 云在天 于 2019-6-7 13:19 编辑



### 背景

这里就不作Maple的介绍的,知道这个的都明白是做什么的。
2019.4发布了新版本的Maple,随后放出了破解版本。
安装试用后发现,这个破解版本显示永久激活,但出现了输入公式后得到复数结果,同时无法正常绘图,程序无法正常使用。
a. 程序破解正常:

b. 无法正常使用:


搜索了一圈后,发现没有破解成功的,查看了一下破解文件与原文件的区别。
很明显的发现,破解的文件比原文件小了很多,但发现破解文件没有加壳,导出函数却是一致的(使用dllexp工具查看),
而主程序在运行时需要调用maple.dll文件里面的导出函数,这说明这个破解文件是不完善的。
因此,萌生了参考2018版本破解文件,自己动手破解2019版本的Maple的想法,所以有了这个帖子。

### 工具
1. 测试环境:Windows10 x64
2. 文件对比工具:010Editor
3. 反汇编工具:x64dbg
4. 参考程序:Maple 2018.0
5. 目标程序:Maple 2019.0

### 正文
1.使用010Editor分别打开破解前后的2018版本maple.dll文件,使用文件对比功能,找出破解点的文件偏移地址:


2.有2处关键位置的文件偏移地址:
   a. `E88DF`
   b. `6FBE10`
3. 使用x64dbg打开2018版本maple.dll文件,使用文件偏移(Ctrl+Shift+G), 定位到上面找到的关键位置:
   a. 分析第1处关键位置,此处为一跳转,破解后跳向下一行(也可将此处nop掉)。

   b. 往上查看代码,找到字符串: vendor_info,这个字符串作为寻找第1个破解关键位置的定位特殊字符串。


   c. 分析第2处关键位置,破解后将该调用直接返回0,查看上下的汇编代码后,未发现有用的字符串。


   d. 搜索第2处关键位置的引用,只找到一处引用


   e. 分析此处引用代码,发现前后有很多与0值对比的代码片段,但只有当前这一处为一内存地址的读取,而其他地方则为动态地址的读取

   f. 再往上查看,发现有一处"!"字符,可根据这个字符以及代码的特征进行第2破解关键位置的定位。


4. 使用x64dbg打开2019版本的maple.dll文件,搜索字符串"vendor_info", 定位到第一个字符串位置
搜索vendor_info:

定位到第一个vendor_info引用处:


5. 往下查找ja跳转的地方,将其修改成跳转至下一行:


6. 搜索"!", 定位到最后一个字符串位置:
搜索结果:

定位到最后一处:


7. 根据第3步分析出来的特征,向下查找,发现读取的地址为,相应的文件偏移为:


8. 跳转到该地址,将汇编代码修改成直接返回0:


9. 至此,需要破解的2处均已修改,保存patch文件(Ctrl+P),并替换原文件。

10. 运行程序,正常运行,破解成功:


### 总结
1. 本文采用比较笨的字符串定位法进行分析,没有使用高级操作和脚本的编写,简单易行。
2. 关于文中提到的工具的使用,可搜索本站的其它帖子,可参考本人的另一帖:[向破解高手学习的方法和思路—以酷我音乐VIP破解为例](https://www.52pojie.cn/thread-724688-1-1.html)
3. 2018版本的maple.dll需要放在安装目录下,否则无法使用x64dbg打开。
4. Maple2019.0安装程序,本文用到的dll文件,以及最终的破解文件,下载链接:[百度盘下载地址](https://www.lanzouj.com/i43t7jc)
5. 若只想要破解后的文件,只需下载Crack-2019.7z文件即可,用maple.dll替换目标文件。

52pojie2018 发表于 2019-5-10 19:07

请问楼主几个问题:
1.你的破解文件夹Crack-2019里面有maple (2)-2019.dll和maple.dll两个文件,请问哪个是你修改后的破解文件,按日期看应该是maple.dll这个,对吗?
2.Crack-2018-maple.dlls文件夹里面也有两个文件maple+(2)-2018.dll和maple-2018.dll,且日期和大小一样,请问是怎么用的,是Maple2018.2的破解问价吗?

gfjykldd 发表于 2019-5-10 19:34

52pojie2018 发表于 2019-5-10 19:07
请问楼主几个问题:
1.你的破解文件夹Crack-2019里面有maple (2)-2019.dll和maple.dll两个文件,请问哪个 ...

1. 对的,不看帖子内容直接用这个maple.dll替换目标文件就可以正常使用;
2. 你的理解是对的,2018的只是用来寻找破解点的位置而已,只需找到对应点的位置就可以了。

zwqlon1978 发表于 2019-5-10 17:57

楼主辛苦

52pojie2018 发表于 2019-5-10 18:16

坐等楼主发布。
Maple2019.0版的破解一直计算有问题,不知道楼主的这个解决没有?

angustung 发表于 2019-5-10 18:17

很好很强大

gfjykldd 发表于 2019-5-10 19:32

52pojie2018 发表于 2019-5-10 18:16
坐等楼主发布。
Maple2019.0版的破解一直计算有问题,不知道楼主的这个解决没有?

此帖正为解决这个问题而来。帖子已更新。

pmc 发表于 2019-5-10 19:38

优秀优秀

zhaoyafei19 发表于 2019-5-10 19:44

学习了,哈哈哈啊

yujie0880 发表于 2019-5-12 05:56

软件怎么不是汉化版?
页: [1] 2 3
查看完整版本: Maxxx 2019.0 --破解--解决方案