Перейти к содержанию
inturist

[UFO: Extraterrestrials] Поиск статического адреса

Рекомендуемые сообщения

6 часов назад, Garik66 сказал:

Ты ответа не дал на поставленный вопрос:

 

Как посчитать смещение мы уж разберемся :D

1. Находим эту инструкцию, и пытаемся сначала тупо промотать вверх, вдруг LEA чуток выше находится.

Как оказалось, ее там нету, значит LEA инструкция скорее всего выполняется до вызова данной функции.

Спойлер

 

2. Ставим условный "break and trace" на "mov eax,[esi+14], чтобы узнать, откуда данная функция вызывалась.

И во чудо, эта LEA инструкция "lea ecx,[esi+8]" находится прямо над call-ом, который вызывает функцию

с "mov eax,[esi+14]".

Но странно то, что LEA пишет не в esi а в ecx, хотя это можно списать на то, что игра чуть позже перекинет его опять в esi.

Спойлер

 

3.Но надо проверить наверняка, имеет ли эта инструкция отношение к тому, что нам надо, ставим еще один условный "break and trace" уже на lea инструкцию но на этот раз из-за смещения "+8" отнимем от нашего указателя еще 8

 

Спойлер

 

4. Подтверждается предположение из второго пункта о том, что значение из ecx перепрыгнет в esi

Спойлер

 

5. И да, этот уже "отлеашеный" указатель используется игрой.

Спойлер

 

Изменено пользователем Sanic

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти

×

Важная информация

Находясь на нашем сайте, Вы автоматически соглашаетесь соблюдать наши Условия использования.