逆向调试雷电思路总结
1.首先根據(jù)內(nèi)存變化,能迅速找到飛機(jī)的生命,炸彈,分?jǐn)?shù),能夠基本確認(rèn)飛機(jī)結(jié)構(gòu)。
?
2.找飛機(jī)位置有點(diǎn)困難,但可以查找飛機(jī)結(jié)構(gòu)屬性周圍的內(nèi)存變化找到飛機(jī)變化的坐標(biāo),這里有個(gè)小技巧,可以將內(nèi)存十六進(jìn)制顯示換成十進(jìn)制顯示就非常好觀察了。
?
3.位置變化會(huì)影響到渲染,所以在內(nèi)存變化的地方下硬件訪問(wèn)斷點(diǎn),能夠看到取得坐標(biāo)內(nèi)存時(shí)候的指令操作。
附:曾經(jīng)在這里下硬件寫(xiě)入斷點(diǎn),發(fā)現(xiàn)不可行,因?yàn)檫@里在不停的刷新,隨時(shí)在寫(xiě)入。
?
4.根據(jù)操作查看調(diào)用堆棧,能找到主函數(shù)處理每一幀渲染時(shí)候調(diào)用一系列子函數(shù)的位置。
?
5.想查看敵機(jī)生成的地方以及按鍵處理的地方,我這里的操作時(shí)嘗試把主函數(shù)call子函數(shù)的地方給NOP,來(lái)根據(jù)游戲的變化判斷。
附:這里曾經(jīng)想根據(jù)按鍵消息和一些判斷按鍵狀態(tài)的api來(lái)跟蹤,發(fā)現(xiàn)并沒(méi)有通過(guò)這種方式來(lái)判斷鍵盤(pán)狀態(tài),因?yàn)闆](méi)有找到相應(yīng)的vitualkey。通過(guò)看匯編指令,能夠確定是根據(jù)DInput里面的函數(shù)來(lái)進(jìn)行操作,而調(diào)用api主要是用于菜單快捷鍵操作。
總結(jié)
以上是生活随笔為你收集整理的逆向调试雷电思路总结的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 汇编语言笔记(四):内中断
- 下一篇: LwIP应用开发笔记之三:LwIP无操作