汇编代码翻译为abs函数的调用

以下是一段汇编代码:

cpp 复制代码
  mov     eax, esi
  sub     eax, ecx
  mov     edx, eax
  sar     edx, 1Fh
  xor     eax, edx

IDA把上述代码准确地翻译为:

abs(a1 - a3)

即是计算(a1 - a3)的绝对值。

以下是另一段代码:

cpp 复制代码
  mov     eax, [ebx+4]
  sub     eax, [ecx+4]
  mov     edx, eax
  sar     edx, 1Fh
  xor     eax, edx

但是,IDA把它翻译为:

cpp 复制代码
  v5 = *(_DWORD *)(a1 + 4) - *(_DWORD *)(a2 + 4);
  x6 = (signed int)((HIDWORD(v5) ^ v5) - HIDWORD(v5);

上述代码实际也是计算2个变量之差的绝对值。

根据上下文,a1与a2是2个有相同结构类型的指针,因此要翻译为:

abs(a1->_4 - a3->_4)

相关推荐
学习3人组2 天前
勒索病毒逆向分析全过程
勒索病毒·逆向分析
NPE~3 天前
[App逆向]环境搭建下篇 — — 逆向源码+hook实战
android·javascript·python·教程·逆向·hook·逆向分析
NPE~20 天前
[App逆向]环境搭建上篇——抓取apk https包
android·教程·逆向·android逆向·逆向分析
阿捏利24 天前
vscode+ida-mcp-server配置及使用
vscode·ida·逆向·mcp
漂流瓶jz2 个月前
UVA-1604 立体八数码问题 题解答案代码 算法竞赛入门经典第二版
算法·ida·深度优先·图论·dfs·bfs·迭代加深搜索
qq_370773092 个月前
idapro安装mcp
ida·mcp·trae
吴秋霖2 个月前
apple游客下单逆向分析
python·算法·逆向分析
蓝之白3 个月前
流量分析_SnakeBackdoor-6
web安全·ctf·流量分析·逆向分析
蓝之白3 个月前
流量分析_SnakeBackdoor-1~6
web安全·ctf·流量分析·逆向分析
logiciel4 个月前
Ada语言嵌套子程序之间参数传递的逆向分析
ida·逆向分析