IDA 技巧(45) 反编译器生成的数据类型

admin 2024年9月28日11:42:21评论35 views字数 693阅读2分18秒阅读模式

反编译器生成的数据类型

在之前的一篇文章中,我们讨论了如何编辑伪代码中使用的函数和变量的类型。在大多数情况下,您可以使用标准 C 类型: charintlong 等等。

但是,在某些情况下,您可能需要更具体的类型。

反编译器也可能自己生成类型,因此识别它们很有用。

以下自定义类型可能出现在伪代码中或用于变量和函数类型:

明确大小的数值类型

  • __int8– 1字节整数(8位)
  • __int16– 2字节整数(16位
  • __int32– 4字节整数(32位)
  • __int64– 8 字节整数(64 位)
  • __int128– 16 字节整数(128 位)

明确大小的布尔类型

  • _BOOL1– 具有明确大小规范的布尔类型(1 个字节)
  • _BOOL2– 具有明确大小规范的布尔类型(2 个字节)
  • _BOOL4– 具有明确大小规范的布尔类型(4 个字节)

对于布尔类型,无论大小,0 都表示 False,非 0 表示 True。

未知类型

  • _BYTE– 类型未知;唯一已知信息是其大小:1 字节
  • _WORD– 类型未知;唯一已知信息是其大小:2 个字节
  • _DWORD– 类型未知;唯一已知信息是其大小:4 个字节
  • _QWORD– 类型未知;唯一已知信息是其大小:8 个字节
  • _OWORD– 类型未知;唯一已知信息是其大小:16 字节
  • _TBYTE– 10 字节浮点(x87 扩展精度 80 位值)
  • _UNKNOWN– 没有关于类型或大小的信息(通常仅出现在指针中)

请注意,这些类型并不等同于看起来类似的 Windows 数据类型,并且可能出现在非 Windows 程序中。

交流群

添加小助手微信加入: OxCSorder

更多文章

立即关注【二进制磨剑】公众号

原文始发于微信公众号(二进制磨剑):IDA 技巧(45) 反编译器生成的数据类型

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年9月28日11:42:21
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   IDA 技巧(45) 反编译器生成的数据类型https://cn-sec.com/archives/3097117.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息