这样一个调用:pDirData = ImageRvaToVa(pNtH,ImageBase,dwRVA,NULL), 我调试的时候看了一下值:ImageBase = 0x02f0000, dwRVA = 6454
最终pDirData 为:0x022f6454, 也就是ImageBase + dwRVA; 这个函数的作用应该就是把RVA转换成VA, 那么我既然已经有了ImageBase 和 dwRVA, 我想要知道VA, 只要把它们两个值相加就可以了, 为什么还要调用这个函数呢? 况且这个函数做的事好像也就是把这两个值相加。
所以我就疑惑了, 难道在某些特殊的情况下,VA的值不等于base + RVA? 所以才要用这个函数来转换?
期待高人解释一下, 谢!
[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课