Сейчас на форуме: Rio (+4 невидимых)

 eXeL@B —› Вопросы новичков —› Нужна помощь начинающему
Посл.ответ Сообщение

Ранг: 3.0 (гость)
Активность: 0=0
Статус: Участник

Создано: 18 марта 2008 20:23
· Личное сообщение · #1

Проблема:Имеется исполняемый файл, в котором по адресу 00535BE4 (RVA) вызывается процедура AddInfoInBase.

procedure AddInfoInBase(text:string='');
...
работа с переменными
...
добавление информации в БД


Я пишу трейнер к этой программке, мне нужно сделать так, чтобы в БД добавлялась нужная мне инфа, то есть после "работы с переменными" их необходимо заменить и уже потом позволить "добавление информации в БД".

Подскажите, пожалуйста, путь истинный (желательно подробный .
Конструктивная критика, советы приветствуются.

Программирую в Дельфях №7, испытывал "исполняемый файл" в DeDe.3.50.04.



Ранг: 64.0 (постоянный), 2thx
Активность: 0.040.01
Статус: Участник

Создано: 23 марта 2008 15:42
· Личное сообщение · #2

Если трейнер, то думаю можно так. Весь код замены переменных пишем в отдельной длл.
Пишем лоадер для проги, чтоб при загрузке подгружал нашу длл. Длл при загрузке в нужном месте проги (после работы с переменными) вставляет jmp на свой код замены. В длл идет замена переменных (надо только выяснить где они лежат), и идет назад переход в прогу . При этом следить за сохранность стека и регистров и если надо то перед джампом назад в прогу выполнить инструкции, что были затерты вставляемым jmp.
Думаю так должно все сработать.



Ранг: 3.0 (гость)
Активность: 0=0
Статус: Участник

Создано: 24 марта 2008 19:38
· Личное сообщение · #3

спс, ход мысли понятен. тему закрываю.


 eXeL@B —› Вопросы новичков —› Нужна помощь начинающему
Эта тема закрыта. Ответы больше не принимаются.
   Для печати Для печати