.data部分中的问号数据在IDA中意味着什么?

时间:2017-04-14 05:35:14

标签: assembly reverse-engineering ida

我使用IDA来分析EXE并找到令人困惑的东西。 .data部分应包含初始化数据,因此每个位置都应包含以下内容:

var_A db 0h
var_B dw 12h

但我收到很多带问号的条目。 e.g。

.data:00000001400F1680 qword_1400F1680 dq ?                    ; DATA XREF: sub_14004F8B0+8Er
.data:00000001400F1680                                         ; sub_1400539D0+12Aw ...
.data:00000001400F1688 qword_1400F1688 dq ?                    ; DATA XREF: sub_1400539D0+F5w
.data:00000001400F1688                                         ; sub_1400539D0+FCr
.data:00000001400F1690 qword_1400F1690 dq ?                    ; DATA XREF: sub_1400539D0+C0w
.data:00000001400F1690                                         ; sub_1400539D0+C7r

据我所知,x86程序集中的?表示未初始化数据。但这是在.data部分!他们真的没有初始化,或者IDA db/dw/dd/dq中的问号有不同的含义吗?

1 个答案:

答案 0 :(得分:0)

IDA Pro将未初始化的值显示为“?”。 '?'当.data节的虚拟大小大于.data节的原始大小时,.data节会出现标记。 大于virtual_address('。data')+ raw_size('。data')的地址显示为'?'分数。

db / dw / dd / dq在IDA Pro中具有不同的含义。 IDA Pro分析组装代码并设置位置类型。 db / dw / dd / dq表示引用该地址的指令分别使用1/2/4/8字节。