運用inlinehook主動呼叫函式

无聊!呢發表於2024-07-06

這裡拿arm32的環境下執行的來舉例
首先我們先準備這兩個函式

可以清楚的看到,解鎖英雄那裡有個引數為id,可以猜到為英雄id(元氣的英雄id為1,2,3...)
所以,我們在update進行hook.用他呼叫該函式
我們首先分配個記憶體頁,方便我們編寫hook段的程式碼

編寫如下的彙編

將a地址的值0傳入r1中,然後將r1迴圈加1並傳入r1,然後再將a地址的值壓入r1中
接著,我們使用bx指令呼叫解鎖函式

將解鎖函式地址傳入r12中,然後bx進行呼叫
然後,我們在update中呼叫該hook段

然後我們進遊戲就可以看到成功了。
(本人只是提供一個思路,做技術交流,無任何商業用途與違法犯罪行為)
(在arm64中也是同樣的邏輯,可以用br指令進行呼叫)

相關文章