RVA TO RAW

Offset

是指数据在文件中相对于文件开始位置的偏移

VA

是指数据在进程虚拟内存的绝对地址

RVA

是指数据在进程虚拟内存中某个基准位置(ImageBase)开始的相对地址

VA和RVA满足的换算关系

RVA = VA - ImageBase

文件偏移(RAW)

RAW = RVA - VirtualAddress + PointerToRawData

注:其中VirtualAddress为RVA所在节区的VA(VA - ImageBase)地址,PointerToRawData为RVA所在节区对应在文件中节区的偏移(Offset)

举例

表1

RVA为5000,计算RAW

表2

 

对照表1和表2,可知RVA在.text节区,且.text节区在文件中的偏移为400

RAW = RVA - RVA(节区RVA) + PointerToRawData = 5000 - 1000 + 400 = 4400

posted @ 2023-01-10 14:58  0x4b  阅读(59)  评论(0)    收藏  举报