破解小游戏<打飞机>

来源:互联网 发布:局部对比度增强算法 编辑:程序博客网 时间:2024/05/16 19:19

apk下载: http://pan.baidu.com/s/1mimoGAk

工具下载:https://down.52pojie.cn/Tools/Android_Tools/
这个游戏好像只能在模拟器上运行.
先运行观察一下:
这里写图片描述

用AndroidKiller反编译,因为我们要改分数,所以
在工程搜索里搜索score:
这里写图片描述

观察到Lcom/k/feiji/FeiJi_Play这个Activity
很可疑,打开JEB反编译feiji.apk定位到Lcom/k/feiji/FeiJi_Play,
然后快捷键Q反汇编.
这里写图片描述

注意到_Get_Score这个变量,而且还是整型,怀疑分数都保存在这个变量里面,在AndroidKiller里搜索这个变量:
这里写图片描述

主要到这个Activity里面有个ChangeScore()函数,怀疑就是这个函数改变的分数
这里写图片描述

修改这个函数,让我们无论击落什么飞机,都加2000分
这里写图片描述

最后Ctrl + S保存我们的修改,然后
编译运行,发现成功了。
这里写图片描述

接下来修改程序,使我们无论什么时候都能发射两颗子弹,
注意到发射两颗子弹拿到的是个蓝色的降落伞,而且程序里有Blue_shot_change这个变量,怀疑是这个变量控制是否发射两颗子弹:
这里写图片描述

接下来去AndroidKiller搜索这个变量,看看什么代码改变了它:
这里写图片描述

上面看到只有一个地方读取了这个变量,我把它的值赋值为1,就是true,
让它一直发射两颗子弹,
Ctrl+S保存,编译运行,发现修改成功.
这里写图片描述

其实还有一个_Invincible(无敌的)变量,我这个变量赋值为1就可以达到无敌的状态,这里就直接给代码了。
这里写图片描述
这里写图片描述