Garik66 Опубликовано 23 апреля, 2019 Поделиться Опубликовано 23 апреля, 2019 6 минут назад, Pitronic сказал: как какой скрипт работает твой скрипт работает только при поборе, скрипт @LIRW работает сразу (он на читающей инструкции основан. Ссылка на комментарий Поделиться на другие сайты Поделиться
Pitronic Опубликовано 23 апреля, 2019 Автор Поделиться Опубликовано 23 апреля, 2019 Гарик извинения приняты? А то кошки на душе скребут. Ссылка на комментарий Поделиться на другие сайты Поделиться
Garik66 Опубликовано 23 апреля, 2019 Поделиться Опубликовано 23 апреля, 2019 22 минуты назад, Pitronic сказал: извинения так не за что вроде извиняться. Ссылка на комментарий Поделиться на другие сайты Поделиться
Pitronic Опубликовано 24 апреля, 2019 Автор Поделиться Опубликовано 24 апреля, 2019 (изменено) В 23.04.2019 в 23:42, Garik66 сказал: не за что вроде извиняться Есть за что, я вроде как обвинил тебя, исключив вариант что минус, мог поставить кто то другой. "раз минус под вопросом тебе и сразу ответ под ним от тебя же" необоснованное подозрение. Изменено 24 апреля, 2019 пользователем Pitronic Ссылка на комментарий Поделиться на другие сайты Поделиться
Pitronic Опубликовано 3 мая, 2019 Автор Поделиться Опубликовано 3 мая, 2019 В 23.04.2019 в 00:10, LIRW сказал: add eax,68 LIRW для чего здесь увеличение на 68, и откуда эта цифра? Ссылка на комментарий Поделиться на другие сайты Поделиться
imaginary Опубликовано 3 мая, 2019 Поделиться Опубликовано 3 мая, 2019 14 минут назад, Pitronic сказал: LIRW для чего здесь увеличение на 68 Я конечно не LIRW, но по моему это смещение до адреса от которого после берётся адрес по смещению 1 Ссылка на комментарий Поделиться на другие сайты Поделиться
LIRW Опубликовано 3 мая, 2019 Поделиться Опубликовано 3 мая, 2019 26 минут назад, Pitronic сказал: LIRW для чего здесь увеличение на 68, и откуда эта цифра? Это кодовая функция, ну использовалась игрой, а не я её писал... А используется оно обычно как бы по проще сказать: Для выравнивания адреса. call <------------- add eax,68 к примеру тут... eax < 0x09568400 +68 = 0x9568468 ------------------ mov [eax+08],xxx <--------- и уже сюда в +08 Я не умею объяснять... И мой язык, мало кто понимает Ну тут все видно... Надо не много только понимать.... add eax,68 mov ecx,[eax+0C] - это уже самописное... Моё. Но eax то ровный и испольуется + 08.. а значит и +0С такое же в + 04 mov [eax+08],ecx mov esp,ebp jmp return Ссылка на комментарий Поделиться на другие сайты Поделиться
Pitronic Опубликовано 3 мая, 2019 Автор Поделиться Опубликовано 3 мая, 2019 4 часа назад, LIRW сказал: Это кодовая функция Дело в том что я то же самое хотел сделать по статистике убитых, но у меня вылет на моём скрипте скрипте, Спойлер { Game : Sam2.exe Version: Date : 2019-05-03 Author : Pitronic This script does blah blah blah } [ENABLE] aobscanmodule(killStatictic,Sam2Game.dll,FF 40 10 8D 45 EC) // should be unique alloc(newmem,$1000) label(code) label(return) newmem: inc [eax+10] push [eax+14] pop [eax+10] code: lea eax,[ebp-14] jmp return killStatictic: jmp newmem nop return: registersymbol(killStatictic) [DISABLE] killStanbctic: db FF 40 10 8D 45 EC unregistersymbol(killStatictic) dealloc(newmem) а твой вариант не догнал, как это сделать в моём случае? Ссылка на комментарий Поделиться на другие сайты Поделиться
LIRW Опубликовано 3 мая, 2019 Поделиться Опубликовано 3 мая, 2019 newmem: push [eax+14] pop [eax+10] code: lea eax,[ebp-14] jmp return inc там на крен не нужен... в случаи с СЕ то.. Ссылка на комментарий Поделиться на другие сайты Поделиться
Garik66 Опубликовано 3 мая, 2019 Поделиться Опубликовано 3 мая, 2019 1 час назад, LIRW сказал: inc вылет не из-за этого. Это просто лишняя инструкция ( из этих), которая ни на что не влияет. 2 часа назад, Pitronic сказал: у меня вылет Выкладывай скрипты с СЕ-ными логами хотя бы. Не понятно какую ты инструкцию берешь, для инъекции. И почему ты делаешь puah/pop по другому регистру. Заметил уже не в первом твоем скрипте. короче с ЛОГАМИ, так нам будет понятнее где у тебя ошибка Ссылка на комментарий Поделиться на другие сайты Поделиться
LIRW Опубликовано 3 мая, 2019 Поделиться Опубликовано 3 мая, 2019 16 минут назад, Garik66 сказал: вылет не из-за этого. Я не говорю что вылет из за неё... Он писал я плагином занят был с челом... Написал ему что оно там в обще на крен не нужно... А почему ты говоришь.. что еакс не тот ? У него +10 - так оно и есть... по одному за убийство прибавляет.. Если я правильно его понял... А вот в +14 крен знает что у него уже... Он какие то вещи не предсказуемые делает Ссылка на комментарий Поделиться на другие сайты Поделиться
Pitronic Опубликовано 3 мая, 2019 Автор Поделиться Опубликовано 3 мая, 2019 Только что, LIRW сказал: +14 крен +14 по этомусмещению лежит значение если убить всех на уровне в статистике отображается так, допустим я убил не всех парчку не нашёл, убито противников 10 /12 то есть значение 10 лежить в [eax+10] а значение 12 лежит в [eax+14] это из анализа данных структур, вот скрин: Спойлер тут видно 12 я убил, а 39 надо для полного счастья, если не все противников убью. Ссылка на комментарий Поделиться на другие сайты Поделиться
Garik66 Опубликовано 3 мая, 2019 Поделиться Опубликовано 3 мая, 2019 20 минут назад, LIRW сказал: А почему ты говоришь.. что еакс не тот ? А где в скрипте ТС видно, что eax тот? Я предполагаю, что как раз вылет происходит именно из-за попытки прочитать значения в несуществующем адресе, при срабатывание инструкции. Т.е. [eax+14] ( [eax+10]) в eax - нету указателя. 1 минуту назад, Pitronic сказал: это из анализа данных структур Инструкцию покажи на которой делал анализ структур, что не понятного я говорю и выложи нормальный скрипт с ЛОГАМИ Ссылка на комментарий Поделиться на другие сайты Поделиться
Pitronic Опубликовано 3 мая, 2019 Автор Поделиться Опубликовано 3 мая, 2019 7 минут назад, Garik66 сказал: покажи на которой делал анализ структур вот из буфера: Спойлер EAX=7E8E42F8 EBX=7E9BEB08 ECX=00000004 EDX=00000000 ESI=1000B2B0 EDI=7E9BECFC EBP=0012F914 ESP=0012F8D0 EIP=020487CD Вероятный базовый указатель =7E8E42F8 020487C3 - jne 020487CD 020487C5 - call 021A9120 020487CA - inc [eax+10] 020487CD - lea eax,[ebp-14] 020487D0 - push 023B143C а из этого писал скрипт инструкцяя всего одна вылезает Спойлер { Game : Sam2.exe Version: Date : 2019-05-03 Author : Pitronic This script does blah blah blah } [ENABLE] aobscanmodule(INJECT,Sam2Game.dll,FF 40 10 8D 45 EC) // should be unique alloc(newmem,$1000) label(code) label(return) newmem: code: inc [eax+10] lea eax,[ebp-14] jmp return INJECT: jmp newmem nop return: registersymbol(INJECT) [DISABLE] INJECT: db FF 40 10 8D 45 EC unregistersymbol(INJECT) dealloc(newmem) { // ORIGINAL CODE - INJECTION POINT: "Sam2Game.dll"+887CA "Sam2Game.dll"+887AB: 51 - push ecx "Sam2Game.dll"+887AC: FF D6 - call esi "Sam2Game.dll"+887AE: 8B 10 - mov edx,[eax] "Sam2Game.dll"+887B0: 83 C4 04 - add esp,04 "Sam2Game.dll"+887B3: 53 - push ebx "Sam2Game.dll"+887B4: 8B C8 - mov ecx,eax "Sam2Game.dll"+887B6: FF 92 D0 01 00 00 - call dword ptr [edx+000001D0] "Sam2Game.dll"+887BC: 83 BB 84 04 00 00 01 - cmp dword ptr [ebx+00000484],01 "Sam2Game.dll"+887C3: 75 08 - jne Sam2Game.dll+887CD "Sam2Game.dll"+887C5: E8 56 09 16 00 - call Sam2Game.dll+1E9120 // ---------- INJECTING HERE ---------- "Sam2Game.dll"+887CA: FF 40 10 - inc [eax+10] "Sam2Game.dll"+887CD: 8D 45 EC - lea eax,[ebp-14] // ---------- DONE INJECTING ---------- "Sam2Game.dll"+887D0: 68 3C 14 3B 02 - push Sam2Game.dll+3F143C "Sam2Game.dll"+887D5: 50 - push eax "Sam2Game.dll"+887D6: FF 15 30 20 22 02 - call dword ptr [Sam2Game.dll+262030] "Sam2Game.dll"+887DC: 8B 0D A0 22 22 02 - mov ecx,[Sam2Game.dll+2622A0] "Sam2Game.dll"+887E2: 8B 11 - mov edx,[ecx] "Sam2Game.dll"+887E4: 8B 38 - mov edi,[eax] "Sam2Game.dll"+887E6: 8B 03 - mov eax,[ebx] "Sam2Game.dll"+887E8: 83 C4 08 - add esp,08 "Sam2Game.dll"+887EB: 52 - push edx "Sam2Game.dll"+887EC: 8B CB - mov ecx,ebx } написал без своего кода, чтоб не много прояснить. Ссылка на комментарий Поделиться на другие сайты Поделиться
Garik66 Опубликовано 3 мая, 2019 Поделиться Опубликовано 3 мая, 2019 1 минуту назад, Pitronic сказал: а из этого писал скрипт вот теперь более понятно. Тогда скорее всего ошибка в том, что инструкция работает не только с твоим нужным адресом и нужен будет фильтр. Ссылка на комментарий Поделиться на другие сайты Поделиться
LIRW Опубликовано 3 мая, 2019 Поделиться Опубликовано 3 мая, 2019 1 час назад, Garik66 сказал: вот теперь более понятно. Да там и так было понятно... Дела идут на убийства... по одному их накидывает.... inc как раз... как может быть eax не тот А вот что у него в +14.. крен знает. Проще зайти в call что выше и хук туда прилепить.. от туда eax и передается поди... Ps: А вылетает она вот почему... Я ему про это 155 раз писал.. А он видать не то не хочет понимать, не то не слушает.... Делает всё по своему.. Тут lea то сломат прыжком.. который он поставит.. после включение скрипта.. Ссылка на комментарий Поделиться на другие сайты Поделиться
LIRW Опубликовано 3 мая, 2019 Поделиться Опубликовано 3 мая, 2019 1 час назад, Pitronic сказал: вот из буфера: На вот.. что бы без папки делал то... Спойлер [ENABLE] aobscanmodule(__AddrHook__,Sam2Game.dll,83 C0 68 8B E5) alloc(newmem,$1000) label(return) newmem: add eax,68 mov esp,[eax+14] mov [eax+10],esp mov esp,ebp jmp return __AddrHook__: jmp newmem return: registersymbol(__AddrHook__) [DISABLE] __AddrHook__: db 83 C0 68 8B E5 unregistersymbol(__AddrHook__) dealloc(newmem) Как и писал выше... он передаётся от туда же... как и секреты были... Это хорошо у мня игра стоит... тоже буду трейнер делать, но после... Пока другим занят. Ссылка на комментарий Поделиться на другие сайты Поделиться
Pitronic Опубликовано 5 мая, 2019 Автор Поделиться Опубликовано 5 мая, 2019 В 03.05.2019 в 21:12, LIRW сказал: папки делал то на моей игре не включаеться Ссылка на комментарий Поделиться на другие сайты Поделиться
LIRW Опубликовано 5 мая, 2019 Поделиться Опубликовано 5 мая, 2019 3 часа назад, Pitronic сказал: на моей игре не включаеться Значит у тебя версия игры допотопная... Пропуск байт в паттерне тут на вряд ли поможет... Они тут все нужные. Не будет чего то, вылет обеспечен.. А место то найдет, но толков то от него будет Спойлер [ENABLE] aobscanmodule(__AddrHook__,Sam2Game.dll,8B * * FF * * * * * 83 * * 85 * 75 * 8B * * * 83 * * 8B) alloc(newmem,$1000) label(return) newmem: add eax,68 mov esp,[eax+14] mov [eax+10],esp mov esp,ebp jmp return __AddrHook__+14: jmp newmem return: registersymbol(__AddrHook__) [DISABLE] __AddrHook__+14: db 83 C0 68 8B E5 unregistersymbol(__AddrHook__) dealloc(newmem) Ссылка на комментарий Поделиться на другие сайты Поделиться
Pitronic Опубликовано 5 мая, 2019 Автор Поделиться Опубликовано 5 мая, 2019 (изменено) Только что, LIRW сказал: Значит у тебя версия игры допотопная Может быть, только репак на версию стим 2.0.70 от механиков, но я не спорю может они чем то отличаться, потому что это второй случай, и ещё , все твои читы кроме 2 о которых ты знаешь работают. А этот скрипт работает! Что бы я без папки то делал?!☺️ Изменено 5 мая, 2019 пользователем Pitronic Ссылка на комментарий Поделиться на другие сайты Поделиться
Pitronic Опубликовано 5 мая, 2019 Автор Поделиться Опубликовано 5 мая, 2019 Только что, LIRW сказал: Пропуск байт в паттерне тут на вряд ли поможет Поторопился я, скрипт работает правильно, но конфликтует с тем что ты на секреты дал, включается либо этот либо другой, чтоб включить другой, надо отключать этот, и на оборот не не как в месте. Ссылка на комментарий Поделиться на другие сайты Поделиться
Pitronic Опубликовано 5 мая, 2019 Автор Поделиться Опубликовано 5 мая, 2019 (изменено) 12 минут назад, LIRW сказал: А место то найдет, но толков то от него будет байты одни и те же, а смещения разные, вот скрипт секретов Спойлер [ENABLE] aobscanmodule(SecHack,Sam2Game.dll,85 * * * 8B * * C3 83 C0 68 8B * * C3) alloc(newmem,$1000) label(return) newmem: add eax,68 mov ecx,[eax+0C] // ? mov [eax+08],ecx // ? mov esp,ebp jmp return SecHack+08: // ? jmp newmem return: registersymbol(SecHack) [DISABLE] SecHack+08: db 83 C0 68 8B E5 unregistersymbol(SecHack) dealloc(newmem) а вот статистика убитых противников Спойлер { Game : Sam2.exe Version: Date : 2019-04-25 Author : Pitronic This script does blah blah blah } [ENABLE] aobscanmodule(__AddrHook__,Sam2Game.dll,8B * * FF * * * * * 83 * * 85 * 75 * 8B * * * 83 * * 8B) alloc(newmem,$1000) label(return) newmem: add eax,68 mov esp,[eax+14] // mov [eax+10],esp // mov esp,ebp jmp return __AddrHook__+14: // jmp newmem return: registersymbol(__AddrHook__) [DISABLE] __AddrHook__+14: db 83 C0 68 8B E5 unregistersymbol(__AddrHook__) dealloc(newmem) их как то объеденить надо, в один чит. только автора тебя поставить чтоб видно было где твои читы, в прочем я сам сделаю. вот из за этого, они и не могут 2 одновременно работать Изменено 5 мая, 2019 пользователем Pitronic Ссылка на комментарий Поделиться на другие сайты Поделиться
LIRW Опубликовано 5 мая, 2019 Поделиться Опубликовано 5 мая, 2019 1 час назад, Pitronic сказал: байты одни и те же, а смещения разные, вот скрипт секретов Значит делай как то так... Один на всё.. а там надо будет если по отдельности.. пиши флаги.. Спойлер [ENABLE] aobscanmodule(__AddrHook__,Sam2Game.dll,8B * * FF * * * * * 83 * * 85 * 75 * 8B * * * 83 * * 8B) alloc(newmem,$1000) label(return) newmem: add eax,68 mov esp,[eax+0C] mov [eax+08],esp mov esp,[eax+14] mov [eax+10],esp mov esp,ebp jmp return __AddrHook__+14: // jmp newmem return: registersymbol(__AddrHook__) [DISABLE] __AddrHook__+14: db 83 C0 68 8B E5 unregistersymbol(__AddrHook__) dealloc(newmem) Адрес базовый, а значит вызывается на все функции из одного и того же места... А то есть, на все функции должен срабатывать нормально.. Либо вешай на тот скрипт, что от секретов идет.. В общем там сам смотри как лучше... Да и в структуру посмотри... может там рядом еще что то дельное лежит.. так же накинешь до кучи... И будет полная статистика на одном скрипте.. Ну или там сам разъединишь функции... если сразу всё в куче не надо. Ссылка на комментарий Поделиться на другие сайты Поделиться
Pitronic Опубликовано 5 мая, 2019 Автор Поделиться Опубликовано 5 мая, 2019 (изменено) Только что, LIRW сказал: В общем там сам смотри как лучше Лучше как у тебя придумать не возможно, идеальный вариант, идеально работает, идеально подходит! Я этот чит назвал perfect statistics, что в переводе будет идеальная статистика! Что бы я без папки делал? Изменено 5 мая, 2019 пользователем Pitronic Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения