IDA 逆向代码 --- 双精度浮点型jumpout

本文介绍了在IDA中遇到函数floatsidf逆向分析的问题,该函数实际将int转换为double。对于IDA无法识别的jumpOut情况,通过调试输入输出来理解函数行为,而非依赖重新分析或新建工程。建议在逆向过程中观察函数开头的变量定义,如int、float和double,以辅助理解代码逻辑。
摘要由CSDN通过智能技术生成

场景:
IDA识别出一个函数为:

int __fastcall _floatsidf(int result)
{
  if ( result )
    JUMPOUT(&loc_DD7F4AA4);
  return result;
}

分析:
调试一下,通过输入和输出发现:函数floatsidf 实际上就是将int 转换成为 double型;

浮点数,注意R0 和R1,是使用单精度还是双精度; 
调试一下:
 param1: 0xFFFF9134
v29 =-28364.0
param1: 0x00003132
v29 = 12594.0 
所以,函数floatsidf 时间上就是将int 转换成为 double型;




可以直接逆向成

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值