Гость csharp Опубликовано 18 июня, 2019 Поделиться Опубликовано 18 июня, 2019 (изменено) Cheat engine 6.8.3 (Встроенная игра 'About - Help Cheat Engine Tutorial Games'). Нашел значения 5 патронов. 5 3473418 4 3407882 3 3342346 2 3276810 1 3211274 Интереса ради решил найти указатель. Установил точку прерывания на чтение переменной, выпали 5 инструкций. В любой из строк CE предполагает один адрес указателя. И при попытке его найти ничего не находится. 100002F54 - 48 89 02 - mov [rdx],rax 7FFB08B21E9D - 66 44 85 04 42 - test [rdx+rax*2],r8w 7FFB08B40562 - 41 0FB7 45 00 - movzx eax,word ptr [r13+00] 7FFB08B21C87 - 0FB7 42 12 - movzx eax,word ptr [rdx+12] 7FFB08B21C92 - 0FB7 42 10 - movzx eax,word ptr [rdx+10] P.s. Найти указатель удалось через автоматический поиск Pointer Map => Pointer scan. Но здесь скорее спортивный интерес. Собственно несколько вопросов: 1. Почему ничего не находится? ;D 2. CE может неверно предположить адрес указателя ? (Не в данном случае, а вообще). 3. Почему после выполнения этой команды movzx eax,word ptr [rdx+12] в EAX помещается 0x20 (32dec) ? До выполнения в EAX - 0000000000000000 До выполнения в RDX - 000000000166A118 В RDX содержится значение - 3276810 (0032000A000D003A) Из логики следует, что 32 - это 12-ый символ если считать справа на лево. Но почему справа? Изменено 18 июня, 2019 пользователем csharp Ссылка на комментарий Поделиться на другие сайты Поделиться
partoftheworlD Опубликовано 18 июня, 2019 Поделиться Опубликовано 18 июня, 2019 3 часа назад, csharp сказал: Почему после выполнения этой команды movzx eax,word ptr [rdx+12] в EAX помещается 0x20 (32dec) ? movzx преобразует операнд без знака в эквивалентный ему операнд без знака большей размерности. Для этого содержимое операнда источника, начиная с его младших разрядов, записывается в операнд приемник. Старшие разряды операнда приемника заполняются нулем. 3 часа назад, csharp сказал: Почему ничего не находится? ;D Потому что стоит разобраться с настройками и уровнями сканирования 3 часа назад, csharp сказал: CE может неверно предположить адрес указателя ? (Не в данном случае, а вообще). Конечно, поэтому чтобы наверняка иметь правильный указатель, можно комбинировать ручной поиск и автоматический(найти пару уровней руками, а после сказать сканеру, чтобы он искал все указатели заканчивающиеся на эти 2 уровня) 1 Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения