Sanic Опубликовано 18 февраля, 2019 Поделиться Опубликовано 18 февраля, 2019 (изменено) 6 часов назад, Garik66 сказал: Ты ответа не дал на поставленный вопрос: Как посчитать смещение мы уж разберемся 1. Находим эту инструкцию, и пытаемся сначала тупо промотать вверх, вдруг LEA чуток выше находится. Как оказалось, ее там нету, значит LEA инструкция скорее всего выполняется до вызова данной функции. Спойлер https://prnt.sc/mmo2ac 2. Ставим условный "break and trace" на "mov eax,[esi+14], чтобы узнать, откуда данная функция вызывалась. И во чудо, эта LEA инструкция "lea ecx,[esi+8]" находится прямо над call-ом, который вызывает функцию с "mov eax,[esi+14]". Но странно то, что LEA пишет не в esi а в ecx, хотя это можно списать на то, что игра чуть позже перекинет его опять в esi. Спойлер https://prnt.sc/mmo4qa 3.Но надо проверить наверняка, имеет ли эта инструкция отношение к тому, что нам надо, ставим еще один условный "break and trace" уже на lea инструкцию но на этот раз из-за смещения "+8" отнимем от нашего указателя еще 8 Спойлер https://prnt.sc/mmo5rq 4. Подтверждается предположение из второго пункта о том, что значение из ecx перепрыгнет в esi Спойлер https://prnt.sc/mmo9gi 5. И да, этот уже "отлеашеный" указатель используется игрой. Спойлер https://prnt.sc/mmoanf Изменено 18 февраля, 2019 пользователем Sanic Ссылка на комментарий Поделиться на другие сайты Поделиться
LuBu Опубликовано 14 июня, 2022 Поделиться Опубликовано 14 июня, 2022 Очень часто с таким сталкиваюсь при взломе игр, когда ручным поиском в один момент заходишь в тупик. Как такой механизм называется? чтобы погуглить и поискать другие способы поиска, ну или найти инфу по подробнее, так как все равно не пойму почему решили найти LEA инструкцию. К тому же у меня эта инструкция вообще находится не рядом с mov eax,[esi+14] Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения