PE首先加载到一个基地址:ImageBase:0x400000
VA:虚拟地址
RVA:相对虚拟地址。RVA=VA-ImageBase
VOffset:VirtualAddress节起始地址对于ImageBase的偏移量
ROffset: PointerToRawData
节起始地址对于文件起始位置的偏移量
上面几个数据(ImageBase,VOffset,ROffset,VA)都应该是已经知道的,在计算中会告诉你的。
现在让你求某个虚拟地址VA,对应的文件偏移地址:fRVA。
fRVA-ROffset=VA-ImageBase-VOffset
fRVA=VA-ImageBase-VOffset+ROffset=RVA-VOffset+ROffset
上述等式的原理就是:虚拟地址和文件地址对于节起始的偏移是固定的。
Copyright 2011-2020 © MallocFree. All rights reserved.