Показать сообщение отдельно

  #4  
Старый 30.08.2009, 22:05
Hiro Protagonist
Участник форума
Регистрация: 26.08.2009
Сообщений: 133
С нами: 8795069

Репутация: 79
По умолчанию

ыыы, за что ты её так отмучил? Тк VirtualSize < SizeOfRawData действия загрузчика не определены и зависят от реализации. Есстественно что тулзы для работы с ПЕ тупят , тк Offset = RVA - VirtualAddress + PointerToRawData, но нужно выяснить к какой секции принадлежит RVA. В данном случае непонятно как считать границы секций - можно расширить VirtualAddress до SizeOfRawData и тогда результат окажется неопределенным тк одни и теже rva будут соответствовать разным секциям(и разным оффсетам в файле, что недопустимо с точки зрения формата и загрузчик делающий так никогда такие файлы не загрузит) - так делает например HIEW 7.51 и другие утилиты не сумевшие показать импорт. Можно сделать и по другому считая что VirtualSize секции - это и есть VirtualSize (что считаю концептуально более правильным, но не все версии загрузчика так поступают), тогда никаких проблем с преобразованием адресов нет и ипорт находится - как видимо и работает peid.

Последний раз редактировалось Hiro Protagonist; 30.08.2009 в 22:27..
 
Ответить с цитированием