Вниз
Скачать: CL | DM;

New Entry Point... What the f*** is going on?   Найти похожие ветки 

 
MC TOL ©   (2002-08-15 08:54) [0]

Доброе утро, мастера!
Ответьте, пожалуйста, на такой вопросик.
В заголовке PE-файла изменяю адрес entry point. По новому адресу пишу

call OldEntryPoint

или

jmp OldEntryPoint

В результате - в Win98 - "программа выполнила недопустимую операцию", в Win2k - программа вообще не проявляется.
Что не так?
Заранее спасибо.


 
Alx2 ©   (2002-08-15 09:07) [1]

А подробнее? Как делаешь?


 
Alx2 ©   (2002-08-15 09:12) [2]

Кстати, OldEntryPoint здесь относительный или абсолютный адрес?


 
MC TOL ©   (2002-08-15 09:18) [3]

Делаю все в Hiew.
А насчет относительного и абсолютного адреса - есть разница?
Если есть, то какая?


 
Alx2 ©   (2002-08-15 09:26) [4]

Дело в том, что прога грузится в некоторое адресное пр-во с такого-то адреса. Если этот адрес отличается от базового, то загрузчиком соответственно меняются абсолютные адреса, сведения о которых лежат в таблице relocations. Относительные адреса остаются без изменений.


 
MC TOL ©   (2002-08-15 09:34) [5]

Спасибо, попробую и так.
Боюсь, правда, что не поможет...


 
Alx2 ©   (2002-08-15 09:39) [6]

Код относительного jmp начинается на E9 абсолютного - на EA если стоит относительный адрес - искать стоит где-то еще :)

Чем занимаемся, если не секрет?


 
MC TOL ©   (2002-08-15 09:46) [7]

Вроде работает... Спасибо!

А насчет того, чем занимаюсь - время есть пока свободное, ковыряюсь в exe-шниках, даьы разобраться, что есть к чему.
Сам пишу защиты в Delphi и сам пытаюсь их ломать. Наверное, бредовая идея, но мне интересно.


 
Alx2 ©   (2002-08-15 09:51) [8]

Пользуйся tdump для подробного исследования. Еще нужно учесть, что у PE эгегешников два заголвка. Ну раз работает, то учел, видимо :)



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.009 c
1-84954
Лана Розанова
2002-08-13 08:23
2002.08.26
О важном


1-84946
Nikson
2002-08-15 12:09
2002.08.26
Изменение кода класса ТStringGrid


1-85125
Ekaterina
2002-08-15 10:10
2002.08.26
Frame в dll


1-85040
Chandr
2002-08-13 11:59
2002.08.26
Диалоги


3-84876
SS1
2002-08-05 09:17
2002.08.26
Run Time




   Наверх