伪代码函数中的变量名称

IDA伪代码函数变量名称解析

IDA生成的伪代码函数中的变量名称一般以字母v开头,然后是数字。

也有一些特定的标识符,如result、Buf、Src、Dst等。

以下是一个函数中的变量定义:

  unsigned __int8 result; // al@3
  char v4; // bl@9
  char v5; // [sp+Ch] [bp-4E4h]@1
  char v6; // [sp+10h] [bp-4E0h]@1
  char v7; // [sp+14h] [bp-4DCh]@13
  __int16 v8; // [sp+16h] [bp-4DAh]@19
  unsigned __int8 v9; // [sp+18h] [bp-4D8h]@1
  char Buf2; // [sp+1Ch] [bp-4D4h]@8
  int v11; // [sp+7Ch] [bp-474h]@9
  char v12; // [sp+88h] [bp-468h]@28
  char v13; // [sp+101h] [bp-3EFh]@28
  __int16 Dst; // [sp+108h] [bp-3E8h]@1
  char v15; // [sp+328h] [bp-1C8h]@1
  char v16; // [sp+32Ch] [bp-1C4h]@26
  char v17; // [sp+32Dh] [bp-1C3h]@22
  char v18; // [sp+398h] [bp-158h]@28
  char v19; // [sp+399h] [bp-157h]@23

变量result的注释是al,这说明result对应汇编清单中的寄存器al。

变量v4的注释是bl,这说明result对应汇编清单中的寄存器bl。

有时候,有多个变量对应同一个寄存器。

变量v5的注释是:[esp+Ch] [ebp-4E4h] BYREF。这说明v5在栈中的偏移量。

当变量是结构体时,注释中的偏移量非常有用,据此可判断相邻的变量是否属于同一个结构体。

IDA生成的汇编

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值