日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

IDA反编译失败总结

發(fā)布時間:2025/3/21 编程问答 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 IDA反编译失败总结 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

文章目錄

    • 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

  • call analysis failed

  • 查看函數(shù)參數(shù)

    壓入兩個參數(shù),但實際分析時它卻只有一個

    對該函數(shù)按'y'鍵,將其參數(shù)修改為兩個,去掉三個即可

    然后成功

    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


    (函數(shù)調(diào)用前后棧指針?biāo)肝恢貌蛔?

  • 在option-general-disssembly-stackpoint
  • ALT + K 直接修改棧值
  • cannot convert to microcode

  • 無法轉(zhuǎn)換成偽代碼
  • 成因,部分指令無法被反編譯
  • 有未設(shè)置成指令的數(shù)據(jù)字節(jié)按c將其設(shè)置成指令
  • 其次是x86中的rep前綴,比如rep jmp等可以將該指令的第一個字節(jié)

    local variable allocation failed

    分析函數(shù) 時,有部分變量對應(yīng)的區(qū)域發(fā)生重疊,多見于ARM平臺出現(xiàn)point rect等8字節(jié),16字節(jié),32字節(jié)結(jié)構(gòu)時尤其多見

    解決方案:
    1、修改對應(yīng)參數(shù)為多個int
    2、修改ida安裝目錄下的hexrays .cfg的HO_

    stack frame is too big

    成因:分析棧幀時有異常出現(xiàn)
    解決方案:找到明顯不合常理的stack 雙擊進(jìn)入棧幀界面,按U鍵盤刪除對應(yīng)的stack
    有可能加殼
    可能由花指令導(dǎo)致,手動或自動檢查并去掉花指令

    總結(jié)

    以上是生活随笔為你收集整理的IDA反编译失败总结的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。