For executable images, the address of the first byte of the section relative to the image base when the section is loaded into memory. For object files, this field is the address of the first byte before relocation is applied; for simplicity, compilers should set this to zero. Otherwise, it is an arbitrary value that is subtracted from offsets during relocation.
这是关于section header中的VirtualAddress官方解释,不是很懂 executable image 和 object file的意思 ,也 清大牛解释下
另外在解析执行中的 exe的pe的时候,rva转换之前 用的SizeOfRawData,我换成了 section header里的misc.virtualSize.
The total size of the section when loaded into memory. If this value is greater than SizeOfRawData, the section is zero-padded. This field is valid only for executable images and should be set to zero for object files.