文章目录
call analysis failed
- 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
(函数调用前后栈指针所指位置不变)
- 在option-general-disssembly-stackpoint
- ALT + K 直接修改栈值
cannot convert to microcode
- 无法转换成伪代码
- 成因,部分指令无法被反编译
- 有未设置成指令的数据字节按
c
将其设置成指令
其次是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
有可能加壳
可能由花指令导致,手动或自动检查并去掉花指令