3DMGAME 3DM首页 新闻中心 前瞻 | 评测 游戏库 热门 | 最新 攻略中心 攻略 | 秘籍 下载中心 游戏 | 汉化 购买正版 论坛

注册 登录

QQ登录

只需一步,快速开始

查看: 2355|回复: 5
打印 上一主题 下一主题

[原创] 提供一些关于这个游戏逆向工程的信息

[复制链接]

2

主题

24

帖子

249

积分

中级玩家

Rank: 3Rank: 3

贡献度
30
金元
1185
积分
249
精华
1
注册时间
2014-11-4
跳转到指定楼层
主题
发表于 2020-8-28 12:37 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
首先说一下,我水平非常差,只看过几篇逆向入门文章,只能给和我一样的小白提供一点参考意见(老鸟不要笑)我尝试分析6.5.11版本
有如下结果
直接运行主程序capmain.exe开头有一个检测,很容易找到,改无条件跳转就不会直接关闭了,
关键在于  ida pro 显示的这个data段中的名称,byte_7D1448 ,这个值查看交叉参考显示很多多处cmp 比较这个值是否大于0,但它初始是0,验证服务器完最后会有一个分支的一处把它设置为0x1
这个数值如果是0,那么你点自定义会打不开(如果有存档会让你读取存档) ,并且new game 的其余选项都点了没有反应,
好了,我直接改成1,能进游戏了,开5速一会儿就报错弹出了,f_media cpp
解决方法是找到ida的sub_475fc0这个函数 OD中的XXXXfd80
很多处报错都会调用这个函数,下面一大堆各种各样的错误字符串提示,我发现每次弹出f_media cpp 似乎都来源于同一个call对它的调用,然后改掉进入那个call的之前的条件判断,让它绕开
运行到2030年 再没有报错.

但是上面这些都没有解决真正困难的问题!我发现任何建筑的价格都是一个巨大的负数,最后我才认识到实际上是因为这个数值没有被游戏读取的缘故,所以应该是溢出的ffffffff  
我猜测大概有很多处运行必须的数值是被加密的,必须根据密钥进行计算解密然后加载到内存中,因此,在你开始新游戏的时候会有一些顿卡.
如果是这样,至少需要一个正版号来获取密钥,然后分析它是如何解密的,暴力未加密没有希望,所以我就决定到此为止了.////////虽然我认为要未加密这个程序理论上肯定可以做到,你需要一个正确密钥,和一些汇编功底,固定的密钥和固定的解密函数一定能够正确加载固定的资源,但是接下来的分析就有些超出我这个小白的能力范围了///////

另外我在外网看到一个5.xxx版本的 用虚拟机的游戏资源,有3DLC,并且有人回复说运行没有问题,你有兴趣可以去找找在reddit

评分

1

查看全部评分

回复

使用道具 举报

338

主题

4241

帖子

9万

积分

游戏之神

Rank: 13Rank: 13Rank: 13Rank: 13

贡献度
707
金元
960829
积分
98911
精华
0
注册时间
2015-9-12

滑稽[永久版]智力-1[永久版]你开心就好[永久版]3DM小黄鸡元气女仆(永久)辉煌市民[永久版]3DMer(永久)龙年勋章3DM MOD站(白银)

舒服的沙发
发表于 2021-12-11 01:46 | 只看该作者
真心希望有编程大佬研究这个游戏,以前还有很棒的修改器,但很久没更新了,基本都失效了。
回复 支持 反对

使用道具 举报

5

主题

21

帖子

53

积分

初级玩家

Rank: 2

贡献度
6
金元
286
积分
53
精华
0
注册时间
2021-3-31
硬硬的板凳
发表于 2021-12-21 15:56 | 只看该作者
你好 我最近在研究v6708 ,深有体会,略懂ida,也玩了很久这个游戏,挺好,有兴趣跟志同道合的朋友一起研究。。扣扣:2823500551
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|3DMGAME ( 京ICP备14006952号-1  沪公网安备 31011202006753号

GMT+8, 2026-4-15 02:09 , Processed in 0.031991 second(s), 16 queries , Memcached On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表