綁定帳號登入

Android 台灣中文網

打印 上一主題 下一主題

[求助] .so檔數問

[複製連結] 查看: 2075|回覆: 2|好評: 0
跳轉到指定樓層
樓主
hazal | 收聽TA | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
發表於 2019-11-12 16:22

馬上加入Android 台灣中文網,立即免費下載應用遊戲。

您需要 登錄 才可以下載或查看,沒有帳號?註冊

x
最近剛回鍋看看,以前還會改,現在換成組語我完全變成小白
1.在so檔中假設同樣是call sub_123這條放在其他位置(往前推或往後推)的16進制指令會變化
   請問這個要怎麼推算?
2.如果原本的位置就那幾格,但我想加入其他判斷式怎辦?會動到so檔的大小




「用Android 就來APK.TW」,快來加入粉絲吧!
Android 台灣中文網(APK.TW)

評分

參與人數 1幫助 +1 收起 理由
meng1213 + 1 聽說評分可以懷孕,你就讓我試試吧.

查看全部評分

收藏收藏 分享分享 分享專題
用Android 就來Android 台灣中文網(https://apk.tw)
回覆

使用道具 舉報

沙發
justos | 收聽TA | 只看該作者
發表於 2019-11-12 19:22
1.call 向後移動4bytes,immediate值減1,例如:00001000:BL 0x2205(hex:052200EB)向後移4 bytes變00001004:BL 0x2204(hex:042200EB),這指令的immediate值(24位元)=0x2205,向後移動4N個bytes就減N;反之向前移動4N就加N。

2.編譯後的 so 檔案不能異動大小,裡面太多jump 指令會亂掉,只能靠技巧把不重要的程式碼空間拿來改動,例如一堆排錯的機碼等等。

3.可以找出完全沒用到的函式區塊,jump到這裡執行你要的工作,最後再jump回去,就可以寫很複雜的功能了!例如用音量調整遊戲速度或敵人的攻擊力,設定裡的開關都可以拿來切換常見的功能。
用Android 就來Android 台灣中文網(https://apk.tw)
回覆 支持 反對

使用道具 舉報

板凳
 樓主| hazal | 收聽TA | 只看該作者
發表於 2019-11-14 11:59
感謝!!!!!!!!
小弟目前已有小瞭解,因為我對x86比較有感,所以在你們的指令上我只能抓大概的意思轉
用Android 就來Android 台灣中文網(https://apk.tw)
回覆 支持 反對

使用道具 舉報

您需要登錄後才可以回帖 登錄 | 註冊

本版積分規則