Desmos Опубликовано 27 июля, 2018 Поделиться Опубликовано 27 июля, 2018 Спойлер [ENABLE] aobscan(INJECT,F3 0F 7E 4A 20 BA) // should be unique alloc(newmem,$1000) label(code) label(return) label(mydouble) label(tflag) registersymbol(mydouble) registersymbol(tflag) newmem: cmp byte ptr [tflag],0 je code cmp byte ptr [tflag],1 fld qword ptr [mydouble] fstp qword ptr [edx+20] mov byte ptr [tflag],0 jmp code code: movq xmm1,[edx+20] jmp return mydouble: dq (double)1000.35 tflag: db 00 INJECT: jmp newmem return: registersymbol(INJECT) [DISABLE] INJECT: db F3 0F 7E 4A 20 unregistersymbol(INJECT) unregistersymbol(mydouble) unregistersymbol(tflag) dealloc(newmem) Приведённый выше код работает исправно. При нажатии хоткея 1 происходит изменение значения типа double в ячейке edx+20. Но когда я изменяю newmem на следующее: Спойлер newmem: cmp byte ptr [tflag],0 je code cmp byte ptr [tflag],1 fld qword ptr [mydouble] fstp qword ptr [edx+20] fld qword ptr [mydouble] fstp qword ptr [edx+C] fld qword ptr [mydouble] fstp qword ptr [edx+4] mov byte ptr [tflag],0 jmp code то происходит вылет из игры. Если изменять значения через окно адресов (вручную), то всё нормально. Инъекцию кода делаю через инструкцию не записывающую, а обращающуюся. Так как в записывающих нет инструкций, которые работают только с 1 адресом. А то, что я хочу изменить - это координаты танка. Игра называется Gtanks (старые танки онлайн). Искал координату высоты z и через неё в памяти по идее должен быть доступ к коордам x и y, (они там находятся вместе) Я только начинающий, просьба не кидать тухлыми яйцами, а объяснить, если знаете, адекватно. Буду признателен за помощь! // Внимательно читаем правила форума. На первый раз устное предупреждение. Garik66 Ссылка на комментарий Поделиться на другие сайты Поделиться
Garik66 Опубликовано 28 июля, 2018 Поделиться Опубликовано 28 июля, 2018 16 часов назад, Desmos сказал: а объяснить Вылет из-за передачи одного значения во все три координаты. Сделай mydouble_X, mydouble_Y и mydouble_Z Ссылка на комментарий Поделиться на другие сайты Поделиться
Desmos Опубликовано 28 июля, 2018 Автор Поделиться Опубликовано 28 июля, 2018 Я нашёл ошибку, тему можно закрывать. Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения