Сейчас на форуме: hgdagon, asfa, bartolomeo (+6 невидимых)

 eXeL@B —› Программирование —› RvaToFileOffset
<< . 1 . 2 .
Посл.ответ Сообщение


Ранг: 990.2 (! ! !), 380thx
Активность: 0.680
Статус: Модератор
Author of DiE

Создано: 08 августа 2006 13:06 · Поправил: Hellspawn
· Личное сообщение · #1

всем известен стандартный метод перевода RVA в offset

if ((RVA>=Section.rva) and (RVA<=Section.rva+Section.physical_size)) then
z:=Section.physical_offs+RVA-Section.rva;

но я тут наткнулся на файл, в котором этом метод даёт не правильный результат, как
следствие пе-ид пишет "Not a valid PE file", пе-туулз падает с ошибкой, да и пе-едитор не блещет,
файл в атаче собственно вопрос - как исправить функцию, чтобы норм переводилось?
и интересно было бы услышать причину этого, как мне кажется там опять замуты с размером секции
и выравниванием...

0881_08.08.2006_CRACKLAB.rU.tgz - TestDebugger.EXE

-----
[nice coder and reverser]





Ранг: 61.7 (постоянный)
Активность: 0.050
Статус: Участник
я

Создано: 10 августа 2006 15:21 · Поправил: BaGiE
· Личное сообщение · #2

Hellspawn пишет:
получается выезд на 2 байта

смотри выше. так и есть, но это не ошибка. эти 2 байта нули. так как секция закончилась




Ранг: 990.2 (! ! !), 380thx
Активность: 0.680
Статус: Модератор
Author of DiE

Создано: 10 августа 2006 15:38
· Личное сообщение · #3

так вроде всё получилось, хинт у первой функции получается MZ а по другому и быть не может...
вот намудрили блин...

-----
[nice coder and reverser]





Ранг: 251.8 (наставник), 17thx
Активность: 0.120
Статус: Участник
Seeker

Создано: 10 августа 2006 21:16 · Поправил: =TS=
· Личное сообщение · #4

BaGiE
Спасибо, действительно другая секция -- я даже внимания не обратил

тогда все ок... Но каков изврат-то!

PS. Надо SENу написать, пусть хиев тоже поправит...

-----
DREAMS CALL US



<< . 1 . 2 .
 eXeL@B —› Программирование —› RvaToFileOffset
:: Ваш ответ
Жирный  Курсив  Подчеркнутый  Перечеркнутый  {mpf5}  Код  Вставить ссылку 
:s1: :s2: :s3: :s4: :s5: :s6: :s7: :s8: :s9: :s10: :s11: :s12: :s13: :s14: :s15: :s16:


Максимальный размер аттача: 500KB.
Ваш логин: german1505 » Выход » ЛС
   Для печати Для печати