某利奥辅助逆向破解

前言

开挂可耻,开挂可耻,开挂可耻!该教程仅供娱乐

逆向准备工具

1.mt管理器

2.灵活的小手

3.聪明的脑瓜

开始分析

如图所示,安装之后随便输入一个卡密,直接提示卡密错误

b1630f45e44e43759734102c277e9909.png

 那么很有可能卡密有固定的格式什么的,不过这些并不影响我们逆向分析。用mt管理器打开并使用dex编辑++后我们直接搜索该提示“卡密错误”,便可以得到

0c208a98740f4d38a66465e74d5a6f2a.png

 转Java分析即可,如图

cba159d4b0a4410cb1bb54a0e9ab76ba.png

 如图所示,L18便是登录成功的提示,而L18由L15跳转而来,依次类推。那么“登录成功”的关键就在于这些跳转,如图

befa4183aba64cad8bbfa53780d964a3.jpg

 那么如何做才能让所有goto都跳转到L18呢?我不太聪明,只能用笨办法,把smail代码中的所有这样的if判断跳转都改成跳转到L18,如图

6fc901a6a6ba409eb7248fcac7c529f2.jpg

 即将图中圈出的所有cond跳转都改成跳转到L18对应的cond_99即可。改完后安装再次随便输入发现,点击设备登录没有任何提示和反应,有问题出现了。我们再次回到这里

eda2cedd40514881903a9dee6bdd6b30.png

仔细观察可以发现虽然是都跳转到了L18,但是在L18中还存在一个if判断和跳转。即如图

c6deb3ed49af4c7dbe68cb3ba6ad3604.jpg

 length是长度的意思,那么应该就是指我们所输入的内容的长度,虽然在这个类里没有显示L21,但是结合之前的尝试应该可以猜出,L21应该是返回的空值,也就是啥值也没返回,所以才导致的没有反应。所以我们应该要让它不跳转到L21,而是直接执行其下方的代码。可以看到,现在的判断是如果不等于32就跳转到L21,那么我们可以反其道而行之,让它等于32(或者改成一个更大的值)才跳转到L21。

在smail代码中找到它

47a7773a01a34a599eba8d3613a898a2.jpg

 0x20转成10进制后便是32,这里我们改大一些,改成0x270f(9999),然后if-ne的意思就是如果不等于,我们改成if-eq(如果等于)即可。如图

447523e3efec403aac5dc30997203b55.jpg

 再次保存安装,随便输入,直接登录成功

18c3f311090740769fe8859c2977ddb9.png

 但是还没有完哦,我们还是回到这里

 9a5add81354642b68913330772dd8246.jpg

 可以看到,其实还是有可能会跳转到L6而提示卡密错误的。为了完美破解,我们直接将整个L6删掉。

da5ea9f0fd134c1588909e49863256d1.png

 将这部分代码全部删除即可,至此完美破解,由于不玩那个游戏,所以也无法测试,也不知道是不是有效的,就只能先这样了

就这样了,反正我觉得我的思路确实垃圾,肯定有比我这个更好的方法,欢迎大家建议哈哈

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值