Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/60.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C 查找PE文件中.text节的原始偏移量_C_Binaryfiles_Portable Executable_Ida - Fatal编程技术网

C 查找PE文件中.text节的原始偏移量

C 查找PE文件中.text节的原始偏移量,c,binaryfiles,portable-executable,ida,C,Binaryfiles,Portable Executable,Ida,在IDA中,.text部分从0x01001630开始 在文件中,这些字节位于原始偏移量0xA30处 .text段的节表中的指针或WDATA字段是0x400,这是0xA30和0x630之间的距离 我不知道如何从PE文件的文件头中获取0xA30。非常感谢您的帮助。我相信这是艾达试图变得聪明的一个例子。.text部分实际上从文件偏移量0x400(RVA0x1000)开始。IDA意识到.text节的开头包含api导入数据,因此它将节名更改为.idata。如果查看PE标题中的所有节名,您将看到没有.ida

在IDA中,
.text
部分从
0x01001630
开始

在文件中,这些字节位于原始偏移量
0xA30

.text
段的节表中的
指针或WDATA
字段是
0x400
,这是
0xA30
0x630
之间的距离


我不知道如何从PE文件的文件头中获取
0xA30
。非常感谢您的帮助。

我相信这是艾达试图变得聪明的一个例子。
.text
部分实际上从文件偏移量
0x400
(RVA
0x1000
)开始。IDA意识到
.text
节的开头包含api导入数据,因此它将节名更改为
.idata
。如果查看PE标题中的所有节名,您将看到没有
.idata
节。

查看整个PE标题。您将看到导入地址表从RVA
0x1000
开始,其大小为,
0x630
。文本部分的前0x630字节是IAT(导入地址表),IDA已将其转换为新部分
。idata

1000 [     630] RVA [size] of Import Address Table Directory

Name   Start    End      
----   -----    ---      
HEADER 01000000 01001000 
.idata 01001000 01001630   <- added by IDA
.text  01001630 01054000 
.idata 01054000 01054004   <- added by IDA
.data  01054004 01059000 

奇怪的你能展示一下这个PE文件或者提供一些关于它的起源的更多信息吗?它只是Windows7上的calc.exe。
Name   Start    End      
----   -----    ---      
HEADER 01000000 01001000 
.text  01001000 01054000 
.data  01054000 01059000