IDA反编译失败总结
生活随笔
收集整理的這篇文章主要介紹了
IDA反编译失败总结
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
文章目錄
- call analysis failed
- too big function
- positive sp value
- cannot convert to microcode
- local variable allocation failed
- stack frame is too big
call analysis failed
查看函數參數
壓入兩個參數,但實際分析時它卻只有一個
對該函數按'y'鍵,將其參數修改為兩個,去掉三個即可
然后成功
too big function
too big function
修改配置文件IDA 7.0\cfg\hexrays.cfg
MAX_FUNCSIZE = 64 // Functions over 64K are not decompiled修改為:
MAX_FUNCSIZE = 1024 // Functions over 64K are not decompiled
positive sp value
(函數調用前后棧指針所指位置不變)
cannot convert to microcode
其次是x86中的rep前綴,比如rep jmp等可以將該指令的第一個字節
local variable allocation failed
分析函數 時,有部分變量對應的區域發生重疊,多見于ARM平臺出現point rect等8字節,16字節,32字節結構時尤其多見
解決方案:
1、修改對應參數為多個int
2、修改ida安裝目錄下的hexrays .cfg的HO_
stack frame is too big
成因:分析棧幀時有異常出現
解決方案:找到明顯不合常理的stack 雙擊進入棧幀界面,按U鍵盤刪除對應的stack
有可能加殼
可能由花指令導致,手動或自動檢查并去掉花指令
總結
以上是生活随笔為你收集整理的IDA反编译失败总结的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 2021年CISCN初赛re
- 下一篇: [羊城杯 2020]Bytecode [