Гость KuHTOXO Опубликовано 17 марта, 2017 Поделиться Опубликовано 17 марта, 2017 В общем проблема такая ). решил я пере пройти crysy да да тот старенький кризиз . ну так вот ) посмотрел на ютубе инструкцию как написать скрипт с помощью cheat engine нашел значение , нашел инструкцию , нашел структуру вроде все верно , ничего не трогая перешел в отладчик открыл авто асемблер и через шаблоны открыл секции активировать деактивировать , так же подключил AOB injection . Ну а дальше немного кода . Скрытый текст label(code) label(return) newmem: push dword ptr [ebp+00000198] максимальное значение патронов pop dword ptr [ebp+00000194] значение патронов сейчас code: cmp [ebp+00000194],edi jmp return INJECT: jmp newmem nop return: registersymbol(INJECT) Но к сожалению не вышло . Вопрос )) в каком месте мне нужно сломать руки что бы все заработало ?)) // Читаем правила, читаем фак, а потом раземещаем сообщения. Garik66 Ссылка на комментарий Поделиться на другие сайты Поделиться
Garik66 Опубликовано 17 марта, 2017 Поделиться Опубликовано 17 марта, 2017 40 минуты назад, KuHTOXO сказал: Но к сожалению не вышло . Информации мало, хотя бы выложили полный стандартный АА-скрипт с логами. Ссылка на комментарий Поделиться на другие сайты Поделиться
Гость KuHTOXO Опубликовано 17 марта, 2017 Поделиться Опубликовано 17 марта, 2017 скрин пока вложить не могу но вот код из АА Скрытый текст { Game : Crysis.exe Version: Date : 2017-03-17 Author : KuHTOXO This script does blah blah blah } [ENABLE] //code from here to '[DISABLE]' will be used to enable the cheat aobscanmodule(INJECT,CryGame.dll,39 BD 94 01 00 00) // should be unique alloc(newmem,$1000) label(code) label(return) newmem: push dword ptr [ebp+00000198] pop dword ptr [ebp+00000194] code: cmp [ebp+00000194],edi jmp return INJECT: jmp newmem nop return: registersymbol(INJECT) [DISABLE] //code from here till the end of the code will be used to disable the cheat INJECT: db 39 BD 94 01 00 00 unregistersymbol(INJECT) dealloc(newmem) { // ORIGINAL CODE - INJECTION POINT: "CryGame.dll"+19FBB6 "CryGame.dll"+19FB90: 8B 85 A0 01 00 00 - mov eax,[ebp+000001A0] "CryGame.dll"+19FB96: 8B 48 F8 - mov ecx,[eax-08] "CryGame.dll"+19FB99: 51 - push ecx "CryGame.dll"+19FB9A: 50 - push eax "CryGame.dll"+19FB9B: 8D 8C 24 C8 00 00 00 - lea ecx,[esp+000000C8] "CryGame.dll"+19FBA2: E8 89 B9 00 00 - call CryGame.dll+1AB530 "CryGame.dll"+19FBA7: 8B 95 90 01 00 00 - mov edx,[ebp+00000190] "CryGame.dll"+19FBAD: 89 54 24 18 - mov [esp+18],edx "CryGame.dll"+19FBB1: 33 F6 - xor esi,esi "CryGame.dll"+19FBB3: 83 CF FF - or edi,-01 // ---------- INJECTING HERE ---------- "CryGame.dll"+19FBB6: 39 BD 94 01 00 00 - cmp [ebp+00000194],edi // ---------- DONE INJECTING ---------- "CryGame.dll"+19FBBC: 75 1D - jne CryGame.dll+19FBDB "CryGame.dll"+19FBBE: 56 - push esi "CryGame.dll"+19FBBF: 56 - push esi "CryGame.dll"+19FBC0: 56 - push esi "CryGame.dll"+19FBC1: 8B CD - mov ecx,ebp "CryGame.dll"+19FBC3: E8 08 EF FF FF - call CryGame.dll+19EAD0 "CryGame.dll"+19FBC8: 56 - push esi "CryGame.dll"+19FBC9: 56 - push esi "CryGame.dll"+19FBCA: 56 - push esi "CryGame.dll"+19FBCB: 68 D4 56 28 39 - push CryGame.dll+2856D4 } // Ещё раз повторю: Читаем правила, читаем фак, а потом размещаем сообщения. В следующий раз будет предупреждение. Garik66 Ссылка на комментарий Поделиться на другие сайты Поделиться
Garik66 Опубликовано 17 марта, 2017 Поделиться Опубликовано 17 марта, 2017 6 минут назад, KuHTOXO сказал: но вот код из АА Из того кода, что виден в логах не понятно почему не работает скрипт, а инструкция на патронах только одна? или есть и другие? Ссылка на комментарий Поделиться на другие сайты Поделиться
Garik66 Опубликовано 17 марта, 2017 Поделиться Опубликовано 17 марта, 2017 Если инструкция работает только с патронами и фильтр не нужен, то попробуй так: Скрытый текст { Game : Crysis.exe Version: Date : 2017-03-17 Author : KuHTOXO This script does blah blah blah } [ENABLE] aobscanmodule(INJECT,CryGame.dll,39 BD 94 01 00 00) // should be unique alloc(newmem,$1000) label(code) label(return) registersymbol(INJECT) newmem: mov edi,[ebp+00000198] mov [ebp+00000194],edi code: cmp [ebp+00000194],edi jmp return INJECT: jmp newmem nop return: [DISABLE] INJECT: db 39 BD 94 01 00 00 unregistersymbol(INJECT) dealloc(newmem) { // ORIGINAL CODE - INJECTION POINT: "CryGame.dll"+19FBB6 "CryGame.dll"+19FB90: 8B 85 A0 01 00 00 - mov eax,[ebp+000001A0] "CryGame.dll"+19FB96: 8B 48 F8 - mov ecx,[eax-08] "CryGame.dll"+19FB99: 51 - push ecx "CryGame.dll"+19FB9A: 50 - push eax "CryGame.dll"+19FB9B: 8D 8C 24 C8 00 00 00 - lea ecx,[esp+000000C8] "CryGame.dll"+19FBA2: E8 89 B9 00 00 - call CryGame.dll+1AB530 "CryGame.dll"+19FBA7: 8B 95 90 01 00 00 - mov edx,[ebp+00000190] "CryGame.dll"+19FBAD: 89 54 24 18 - mov [esp+18],edx "CryGame.dll"+19FBB1: 33 F6 - xor esi,esi "CryGame.dll"+19FBB3: 83 CF FF - or edi,-01 // ---------- INJECTING HERE ---------- "CryGame.dll"+19FBB6: 39 BD 94 01 00 00 - cmp [ebp+00000194],edi // ---------- DONE INJECTING ---------- "CryGame.dll"+19FBBC: 75 1D - jne CryGame.dll+19FBDB "CryGame.dll"+19FBBE: 56 - push esi "CryGame.dll"+19FBBF: 56 - push esi "CryGame.dll"+19FBC0: 56 - push esi "CryGame.dll"+19FBC1: 8B CD - mov ecx,ebp "CryGame.dll"+19FBC3: E8 08 EF FF FF - call CryGame.dll+19EAD0 "CryGame.dll"+19FBC8: 56 - push esi "CryGame.dll"+19FBC9: 56 - push esi "CryGame.dll"+19FBCA: 56 - push esi "CryGame.dll"+19FBCB: 68 D4 56 28 39 - push CryGame.dll+2856D4 } 1 Ссылка на комментарий Поделиться на другие сайты Поделиться
LIRW Опубликовано 17 марта, 2017 Поделиться Опубликовано 17 марта, 2017 1 час назад, KuHTOXO сказал: решил я пере пройти crysy да да тот старенький кризиз Это какой именно - первый ? Если первый, то у меня таблица ещо осталась и патроны там в обще в +14 лежат и те что с собой и те что в рожке. Вот скрипт без перезарядки оружия - 100 летней давности... Вот проверь - если он работает, то у тебя адрес не верен. А патроны которые с собой - по такому же смещению лежат, только в другом месте. Скрытый текст [ENABLE] aobscanmodule(Reload,CryGame.dll,89xxxxEBxx8Bxxxxxx8Bxxxxxx8Dxxxxxx89xxxxxxxx8Dxxxxxx89xxxxxxxx8Bxx) alloc(newmem,$1000) label(return) newmem: mov edx,#99 mov [eax+14],edx jmp Reload+26 jmp return Reload: jmp newmem return: registersymbol(Reload) [DISABLE] Reload: db 89 50 14 EB 21 unregistersymbol(Reload) dealloc(newmem) Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения