Vlad2 Опубликовано 30 мая, 2013 Поделиться Опубликовано 30 мая, 2013 Привет друзья!Уменя есть адрес,он верный и рабочий,но дело в том,что когда вписываешь в него свое значение он перезаписывает старое.Я поставил бряк на доступ и на запись,читает и пишет одна инструкция.Перехожу в отладчик и вижу эту инструкциюРешаю просто её занопить. Занопил,но все равно чтото пишет в адрес.Ставлю бряк на запись и вижу...И тут уменя отваливается челюсть,как инструкция которая нечего не делает умудряется чтото писать!Перехожу в отладчик и вижу...Что делать в таких случаях не понимаю!Подскажите,может кто сталкивался с этой проблемой))) Ссылка на комментарий Поделиться на другие сайты Поделиться
Loner Опубликовано 30 мая, 2013 Поделиться Опубликовано 30 мая, 2013 у тебя инструкция занимает 4 байта. У тебя ноп всего 1 (1 байт). Следовательно нужно 4 нопа)но дело в том,что когда вписываешь в него свое значение он перезаписывает старое.А тут уже что-то не то) UPD. Даю 90% что адрес не верен Ссылка на комментарий Поделиться на другие сайты Поделиться
Vlad2 Опубликовано 30 мая, 2013 Автор Поделиться Опубликовано 30 мая, 2013 Да говорю,что верный!Если поставить свое значение(допустим тысяча) и заморозить,то все нормально,но нам в игре будет отображаться то 50,то 1000 и так и будет мигать. Ссылка на комментарий Поделиться на другие сайты Поделиться
Grom-Skynet Опубликовано 30 мая, 2013 Поделиться Опубликовано 30 мая, 2013 Попробуй написать скрипт.... на изменение... значения.. а не нопитьДа говорю,что верный!Если поставить свое значение(допустим тысяча) и заморозить,то все нормально,но нам в игре будет отображаться то 50,то 1000 и так и будет мигать.Адрес не тот.... это просто цифровое значение которое выводится на экран и все... не тот адрес.... допустим это деньги..... Ссылка на комментарий Поделиться на другие сайты Поделиться
Vlad2 Опубликовано 30 мая, 2013 Автор Поделиться Опубликовано 30 мая, 2013 Если сделать скрипт,который будет писать постоянно 1000,то нечего не измениться,старое значение так и будет писаться,но записывать это значение будет уже инструкция,которая тысячу добавляет((Grom-Skynet, вы уверены?Я искал увеличилось/уменьшилось и доотсеявал только до этого адреса.Попробую наоборот,когда на экране увеличилось,буду искать уменьшилось и если нечего не найдется,то я вообще не знаю,что это за фигня( Ссылка на комментарий Поделиться на другие сайты Поделиться
Xipho Опубликовано 30 мая, 2013 Поделиться Опубликовано 30 мая, 2013 а никто не удосужился обратить внимание на то, что это цикл? К тому же, если при простой заморозке значение "скачет" со старого на замороженное значение - это говорит о том, что адрес таки неверный. Впрочем, предположим, что адрес таки верный. Тогда рекомендую внимательно почитать в гугле про repe movsd. Ссылка на комментарий Поделиться на другие сайты Поделиться
Vlad2 Опубликовано 30 мая, 2013 Автор Поделиться Опубликовано 30 мая, 2013 Только что искал способом изменилось/не изменилось и остался один этот адресс Ссылка на комментарий Поделиться на другие сайты Поделиться
Grom-Skynet Опубликовано 30 мая, 2013 Поделиться Опубликовано 30 мая, 2013 Только что искал способом изменилось/не изменилось и остался один этот адрессчто за игра.. и что конкретно ломаешь.... Ссылка на комментарий Поделиться на другие сайты Поделиться
Vlad2 Опубликовано 30 мая, 2013 Автор Поделиться Опубликовано 30 мая, 2013 игра Test Drive Unlimited 2, версия любая. В чемпионате гонок С4 есть гонка на скорость,ломаю очки скорости. Ссылка на комментарий Поделиться на другие сайты Поделиться
MasterGH Опубликовано 30 мая, 2013 Поделиться Опубликовано 30 мая, 2013 Нопы не пишут и не читают. Это 99.99% баг CE. Попробуй поставить брейкпоинт в OllyDbg. Я более чем уверен, что repe movsd будет инструкцией, на которой произойдёт "остановка". Я думаю, что лучше сделать инъекцию перед этой инструкций с жёсткой записью по esi - адресу.esi - адрес-источник - sourceedi - адрес-приёмник - destinationecx - счётчик - counterЕсли ecx равен 8 значит repe movsd посылает 8 раз(хотя тут я не уверен) 4-байтовые значения из адреса по esi в адрес edi.Чаще всего я видел эту инструкцию при работе со строками и были у CE аналогичные глюки с показом инструкций на которых был бряк (этот баг тянется очень давно ещё с версий 5.xx и возможно ранее)Сравнение 0A это скорее сравнение с переводом строки.ASCII LF (перевод строки, 0x0A) (0x0A, 10 в десятичной системе счисления, '\n') . Ещё есть CR (возврат каретки, 0x0D) . Так что похоже это строка и экранное значение. Ссылка на комментарий Поделиться на другие сайты Поделиться
Гость push_ecx Опубликовано 30 июня, 2013 Поделиться Опубликовано 30 июня, 2013 Эта инструкция тебе не нужна. Не изменяй её (mov esp+14, edx). Не она выполняет запись в данном случае.Просто сделай nop следующей команде. А именно repe movsd. В результате команда не будет выполняться и не будет появляться nop при просмотре (write \ access). И сможешь дальше ломать очки. Выглядеть будет так. mov esp+14, edxnop...... Ссылка на комментарий Поделиться на другие сайты Поделиться
Vlad2 Опубликовано 8 августа, 2013 Автор Поделиться Опубликовано 8 августа, 2013 Игра крашится мгновенно. Ссылка на комментарий Поделиться на другие сайты Поделиться
Гость etoBober Опубликовано 22 августа, 2013 Поделиться Опубликовано 22 августа, 2013 mov [esp+14],edx - наврятли та инструкция. Уже взгляд по адресу TestDrive2.exe+8D 57 08 говорит о многом. Твои очки никак не могут вычисляться с помощью edi +08, да к тому же инструкцией lea. Скорее всего, как неоднократно писали выше, это лишь экранное значение. А реальное шифруется xor'ом, либо очки+некое_число. Но как вариант, можешь попробовать сделать инъекцию по адресу TestDrive2.exe+8D 57 08. Но скорее всего, это ни к чему не приведёт. Ссылка на комментарий Поделиться на другие сайты Поделиться
Fixer Опубликовано 27 сентября, 2013 Поделиться Опубликовано 27 сентября, 2013 инструкция обманка. Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения