Перейти к содержанию

вопрос по скрипту с 2 адресами


Рекомендуемые сообщения

6 минут назад, Pitronic сказал:

как какой скрипт работает

твой скрипт работает только при поборе, скрипт @LIRW работает сразу (он на читающей инструкции основан.

Ссылка на комментарий
Поделиться на другие сайты

В 23.04.2019 в 23:42, Garik66 сказал:

не за что вроде извиняться

Есть за что, я вроде как обвинил тебя, исключив вариант что минус, мог поставить  кто то другой. "раз минус под вопросом тебе и сразу ответ под ним от тебя же" необоснованное подозрение.

 

Изменено пользователем Pitronic
Ссылка на комментарий
Поделиться на другие сайты

  • 2 недели спустя...
14 минут назад, Pitronic сказал:

LIRW для чего здесь увеличение на 68

Я конечно не LIRW, но по моему это смещение до адреса от которого после берётся адрес по смещению

  • Плюс 1
Ссылка на комментарий
Поделиться на другие сайты

26 минут назад, Pitronic сказал:

LIRW для чего здесь увеличение на 68, и откуда эта цифра?

Это кодовая функция, ну использовалась игрой, а не я её писал... А используется оно обычно :rolleyes: как бы по проще сказать: Для выравнивания адреса. 

call <-------------
add eax,68 к примеру тут... eax < 0x09568400 +68 = 0x9568468
------------------
mov [eax+08],xxx  <--------- и уже сюда в +08 

Я не умею объяснять... И мой язык, мало кто понимает :lol: 

Ну тут все видно... Надо не много только понимать.... 

add eax,68
mov ecx,[eax+0C]  - это уже самописное... Моё. Но eax то ровный и испольуется + 08.. а значит и +0С такое же в + 04
mov [eax+08],ecx
mov esp,ebp
jmp return

 

Ссылка на комментарий
Поделиться на другие сайты

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)

 

а твой вариант не догнал, как это сделать в моём случае?

Ссылка на комментарий
Поделиться на другие сайты

1 час назад, LIRW сказал:

inc

вылет не из-за этого. Это просто лишняя инструкция ( из этих), которая ни на что не влияет.

2 часа назад, Pitronic сказал:

у меня вылет

Выкладывай скрипты с СЕ-ными логами хотя бы.
Не понятно какую ты инструкцию берешь, для инъекции. И почему ты делаешь puah/pop по другому регистру. Заметил уже не в первом твоем скрипте.
короче с ЛОГАМИ, так нам будет понятнее где у тебя ошибка
 

Ссылка на комментарий
Поделиться на другие сайты

16 минут назад, Garik66 сказал:

вылет не из-за этого.

Я не говорю что вылет из за неё... Он писал я плагином занят был с челом... 

Написал ему что оно там в обще на крен не нужно... 

А почему ты говоришь.. что еакс не тот ? У него +10 - так оно и есть... 

по одному за убийство прибавляет.. Если я правильно его понял... А вот в +14 крен знает что у него уже...  Он какие то вещи не предсказуемые делает :D

Ссылка на комментарий
Поделиться на другие сайты

Только что, LIRW сказал:

+14 крен

+14 по этомусмещению лежит значение если убить всех на уровне

в статистике отображается так, допустим я убил не всех парчку не нашёл, убито противников 10 /12

то есть значение 10 лежить в  [eax+10] а значение 12 лежит в [eax+14] это из анализа данных структур,

вот скрин:

Спойлер

STUKTURA.png

тут видно 12 я убил, а 39 надо для полного счастья, если не все противников убью.

Ссылка на комментарий
Поделиться на другие сайты

20 минут назад, LIRW сказал:

А почему ты говоришь.. что еакс не тот ?

А где в скрипте ТС видно, что eax тот?:wacko:

 

Я предполагаю, что как раз вылет происходит именно из-за попытки прочитать значения в несуществующем адресе, при срабатывание инструкции. 

Т.е.  [eax+14] ( [eax+10]) в eax - нету указателя. 

1 минуту назад, Pitronic сказал:

это из анализа данных структур

Инструкцию покажи на которой делал анализ структур, что не понятного я говорю и выложи нормальный скрипт с ЛОГАМИ

 

Ссылка на комментарий
Поделиться на другие сайты

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
}

 

написал без своего кода, чтоб не много прояснить.

Ссылка на комментарий
Поделиться на другие сайты

1 минуту назад, Pitronic сказал:

а из этого писал скрипт

вот теперь более понятно.

Тогда скорее всего ошибка в том, что инструкция работает не только с твоим нужным адресом и нужен будет фильтр.

Ссылка на комментарий
Поделиться на другие сайты

1 час назад, Garik66 сказал:

вот теперь более понятно.

Да там и так было понятно... Дела идут на убийства... по одному их накидывает.... inc как раз... как может быть eax не тот :rolleyes: 

А вот что у него в +14.. крен знает. 

Проще зайти в call что выше и хук туда прилепить.. от туда eax и передается поди...  

Ps: 

А вылетает она вот почему... Я ему про это 155 раз писал.. А он видать не то не хочет понимать, не то не слушает.... Делает всё по своему.. 

Тут lea то сломат прыжком.. который он поставит.. после включение скрипта.. 

7777777.thumb.jpg.eb27ba10683b4fdc87c2c82f4fe887de.jpg
Ссылка на комментарий
Поделиться на другие сайты

1 час назад, Pitronic сказал:

вот из буфера:

На вот.. что бы без папки делал то... :lol: 

Спойлер

[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)

 

Как и писал выше... он передаётся от туда же... как и секреты были...  Это хорошо у мня игра стоит... тоже буду трейнер делать, но после... Пока другим занят.

Ссылка на комментарий
Поделиться на другие сайты

3 часа назад, Pitronic сказал:

на моей игре не включаеться

Значит у тебя версия игры допотопная... Пропуск байт в паттерне тут на вряд ли поможет... Они тут все нужные.  Не будет чего то, вылет обеспечен.. А место то найдет, но толков то от него будет :rolleyes:

Спойлер

[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)

 

000000095.thumb.jpg.aae1654f5c692a2dcd0bbc80ee619337.jpg
Ссылка на комментарий
Поделиться на другие сайты

Только что, LIRW сказал:

Значит у тебя версия игры допотопная

Может быть, только репак на версию стим 2.0.70 от механиков, но я не спорю может они чем то отличаться, потому что это второй случай, и ещё , все твои читы кроме 2 о которых ты знаешь работают. А этот скрипт работает! Что бы я без папки то делал?!☺️

Изменено пользователем Pitronic
Ссылка на комментарий
Поделиться на другие сайты

Только что, LIRW сказал:

Пропуск байт в паттерне тут на вряд ли поможет

Поторопился я, скрипт работает правильно, но конфликтует с тем что ты на секреты дал, включается либо этот либо другой, чтоб включить другой, надо отключать этот, и на оборот не не как в месте.

Ссылка на комментарий
Поделиться на другие сайты

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 одновременно работать

Изменено пользователем Pitronic
Ссылка на комментарий
Поделиться на другие сайты

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)

 

Адрес базовый, а значит вызывается на все функции из одного и того же места...  А то есть, на все функции должен срабатывать нормально..  

Либо вешай на тот скрипт, что от секретов идет.. В общем там сам смотри как лучше...  

Да и в структуру посмотри... может там рядом еще что то дельное лежит.. так же накинешь до кучи... И будет полная статистика на одном скрипте.. Ну или там сам разъединишь функции... если сразу всё в куче не надо.

Ссылка на комментарий
Поделиться на другие сайты

Только что, LIRW сказал:

В общем там сам смотри как лучше

Лучше как у тебя придумать не возможно, идеальный вариант, идеально работает, идеально подходит! Я этот чит назвал perfect statistics, что в переводе будет идеальная статистика! Что бы я без папки делал?

Изменено пользователем Pitronic
Ссылка на комментарий
Поделиться на другие сайты

×
×
  • Создать...

Важная информация

Находясь на нашем сайте, Вы автоматически соглашаетесь соблюдать наши Условия использования.