1.使用AndroidKiller編譯“霸哥磁力搜索”apk
2.將編譯后的文件拖入到模擬器當中 閃退
3.我們打開ddms看看閃退時的信息
看到它加載了一個.so文件 和兩個方法(qian()、oncreate())
4.我們使用jadx-gui看看代碼(因為apk打開就閃退 大概率在主界面的oncreate方法里面)


在onCreate()方法中 找到了qian()、bug方法了 再結合代碼 大概率閃退原因就是這兩個方法了
5.使用ida工具打開libbug.so文件
一個靜態注冊
6.打開Java_com_bug_bt_MainActivity_bug "F5"一下查看偽代碼
這里面有個 getSignHashCode() 點進去
我們將偽代碼補全一些參數 來幫助更好的分析
7.看到這個exit(0)方法格外的醒目 我們把它nop掉試試
我們借助“armCode”工具 查看 nop(這些地址相隔為2 說明是thumb指令集)
我們將 FF F7 40 EF 改成 0000 C046 找到Hex View-1窗口 快捷鍵F2
改成
改完之后 按F2提交
修改成功
提交
8.再將這個SO文件替換原文件打包 運行
報錯
9.我們還有一個qian()這個函數沒弄
打開AndroidKiller工具 搜索qian
把這個qian方法注釋掉
10.運行
還有一種方法

直接將getSignHashCode(a1,a2)nop掉 再把qian()使用AndroidKiller注釋掉 運行 也會成功
