Я открыл программу, которую написал с помощью ImageHlp.dll, чтобы немного поиграть с ней, и заметил, что в файле, похоже, большие пробелы. Насколько я понимаю, для каждого раздела PE заголовок раздела дает свое смещение в файле как PhysicalAddress
, а его размер как SizeOfRawData
, и, следовательно, все от PhysicalAddress
до PhysicalAddress + SizeOfRawData
должно быть этим разделом. Но существуют большие полосы EXE-файла, которые не охватываются этими диапазонами, поэтому я должен что-то упустить.
Я знаю, что могу использовать ImageRVAToSection и дать ему RVA-адрес, чтобы узнать, в каком разделе находится RVA. Есть ли способ сделать что-то подобное со смещениями файлов? Как я могу узнать, к какому байту секции PE $ ED178 или что принадлежит?