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

Управление читом через флаг


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

Доброе времени суток форумчане. Для игры Saints Row.The Third чит внимание полиции, у меня такой скрипт.

Спойлер

{ Game   : saintsrowthethird_dx11.exe
  Version: 
  Date   : 2020-04-20
  Author : Pitronic

  This script does blah blah blah
}

[ENABLE]

aobscanmodule(Cope,saintsrowthethird_dx11.exe,8B 0D F4 C5 8A 04) // should be unique
alloc(newmem,$1000)

label(code)
label(return)
label(_Cope)
registersymbol(Cope)
registersymbol(_Cope)
newmem:

push [_Cope]
pop [saintsrowthethird_dx11.exe+44AC5F4]
code:
mov ecx,[saintsrowthethird_dx11.exe+44AC5F4]
jmp return
_Cope:
dd 0
Cope:
jmp newmem
nop
return:


[DISABLE]

Cope:
mov ecx,[saintsrowthethird_dx11.exe+44AC5F4]
unregistersymbol(Cope)
unregistersymbol(_Cope)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: "saintsrowthethird_dx11.exe"+204523

"saintsrowthethird_dx11.exe"+204500: 8B 0D 10 C5 8A 04        -  mov ecx,[saintsrowthethird_dx11.exe+44AC510]
"saintsrowthethird_dx11.exe"+204506: 33 C0                    -  xor eax,eax
"saintsrowthethird_dx11.exe"+204508: 85 C9                    -  test ecx,ecx
"saintsrowthethird_dx11.exe"+20450A: 0F 4F C1                 -  cmovg eax,ecx
"saintsrowthethird_dx11.exe"+20450D: 8B 0D 5C C5 8A 04        -  mov ecx,[saintsrowthethird_dx11.exe+44AC55C]
"saintsrowthethird_dx11.exe"+204513: 3B C8                    -  cmp ecx,eax
"saintsrowthethird_dx11.exe"+204515: 0F 4F C1                 -  cmovg eax,ecx
"saintsrowthethird_dx11.exe"+204518: 8B 0D A8 C5 8A 04        -  mov ecx,[saintsrowthethird_dx11.exe+44AC5A8]
"saintsrowthethird_dx11.exe"+20451E: 3B C8                    -  cmp ecx,eax
"saintsrowthethird_dx11.exe"+204520: 0F 4F C1                 -  cmovg eax,ecx
// ---------- INJECTING HERE ----------
"saintsrowthethird_dx11.exe"+204523: 8B 0D F4 C5 8A 04        -  mov ecx,[saintsrowthethird_dx11.exe+44AC5F4]
// ---------- DONE INJECTING  ----------
"saintsrowthethird_dx11.exe"+204529: 3B C8                    -  cmp ecx,eax
"saintsrowthethird_dx11.exe"+20452B: 7E 02                    -  jle saintsrowthethird_dx11.exe+20452F
"saintsrowthethird_dx11.exe"+20452D: 8B C1                    -  mov eax,ecx
"saintsrowthethird_dx11.exe"+20452F: C3                       -  ret 
"saintsrowthethird_dx11.exe"+204530: 8B 0D 10 C5 8A 04        -  mov ecx,[saintsrowthethird_dx11.exe+44AC510]
"saintsrowthethird_dx11.exe"+204536: 8B 44 24 04              -  mov eax,[esp+04]
"saintsrowthethird_dx11.exe"+20453A: 89 08                    -  mov [eax],ecx
"saintsrowthethird_dx11.exe"+20453C: F3 0F 10 05 14 C5 8A 04  -  movss xmm0,[saintsrowthethird_dx11.exe+44AC514]
"saintsrowthethird_dx11.exe"+204544: F3 0F 11 40 04           -  movss [eax+04],xmm0
"saintsrowthethird_dx11.exe"+204549: 8B 15 5C C5 8A 04        -  mov edx,[saintsrowthethird_dx11.exe+44AC55C]
}

 

Другими словами увеличивая, или уменьшая значение горячими клавишами, мы можем отключить или увеличить розыск полиции, проблема заключается в том, что если случайно в адресе окажется значение меньше нуля или больше пяти, игра вылетает, и для отключение тоже надо значение, в общем надо подправить скрипт так, если значение адреса [_Cope] меньше или равно 0 то mov  [_Cope] ,0 если значение адреса  [_Cope]  от нуля до 5 то выполнить код что я написал в newmem: если значение  [_Cope]  больше или равно 6 то  [_Cope] ,6 и выполнение оригинального кода, другими словами значение 6 это для отключения чита, заранее благодарю всех кто чем подскажет.

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

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

Другими словами увеличивая, или уменьшая значение горячими клавишами, мы можем отключить или увеличить розыск полиции, проблема заключается в том, что если случайно в адресе окажется значение меньше нуля или больше пяти, игра вылетает,

 

поставь  горячие клавиши не  на увеличение и уменшение ,  а на точные числа . типа нажал кнопку 0  значение стало 0  нажал 2 стало 2 нажал 5 стало 5 . тогда не правильных  значений не будет .

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

55 минут назад, Alex2411 сказал:

 

поставь  горячие клавиши не  на увеличение и уменшение ,  а на точные числа . типа нажал кнопку 0  значение стало 0  нажал 2 стало 2 нажал 5 стало 5 . тогда не правильных  значений не будет .

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

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

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

я выше писал, что если нечаянно во флаге значение будет меньше нуля, или больше пяти, игра вылетает

 

откуда там  будет меньше ноля  когда ты горячими кнопками  на точное число  не можешь поставить  меньше ноля ?  там не откуда  меньше ноля появиться . просто  поменяй  горячие кнопки .

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

10 минут назад, Alex2411 сказал:

 

откуда там  будет меньше ноля  когда ты горячими кнопками  на точное число  не можешь поставить  меньше ноля ?  там не откуда  меньше ноля появиться . просто  поменяй  горячие кнопки .

Бывает перескакивает из за глюков с клавой,  значение например было в адресе 1 нажал горячую клавишу на уменьшение, а винда сработала не корректно и значение перескакивает на минус 1 минус 2, я бы не писал если бы у меня одного такая проблема была, в инете есть куча примеров. Решить проблему можно на винде,  но пользователь скачивающий трейнер не обязан быть продвинутым на винде, ему нужен продвинутый трейнер.

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

14 минут назад, Alex2411 сказал:

когда ты горячими кнопками  на точное число  не можешь поставить

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

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

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

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

 

ты не понимаешь что я тебе пишу ?  убери вобще  клавиши на уменшения и увеличение . сделай горячие  кнопки только  на  числа , а не уменшение  и увеличение.  тгда не чего перескакивать в минус не будет .

 

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

то есть два а так пять надо.

 

ну и в чем проблема  ? пять ведь , а не сто . за то  ты сразу ставишь точное значение , а не туда сюда .

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

13 минут назад, Alex2411 сказал:

ну и в чем проблема  ? пять ведь , а не сто . за то  ты сразу ставишь точное значение , а не туда сюда .

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

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

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

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

 

 

я и стараюсь  тебе помочь сделать как лучше  и объячснить почему так удобнее . я сам  так делаю  в своих таблицах и пока  не кто не жаловался .  что бы значение  не уходило в минус  или плюс  твой скрипт допилить  не трудно , но это не  лучший способ .
ладно  какк хочешь  дело твое .

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

11 минут назад, Alex2411 сказал:

я и стараюсь  тебе помочь

Когда стараються помочь, помогают по тем вопросам которые пользователь хочет решить именно так, 

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

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

заранее благодарю всех кто чем подскажет.

Попробуй, отпишись о результатах:

Спойлер

{ Game   : saintsrowthethird_dx11.exe
  Version:
  Date   : 2020-04-20
  Author : Pitronic

  This script does blah blah blah
}

[ENABLE]
aobscanmodule(Cope,saintsrowthethird_dx11.exe,8B 0D F4 C5 8A 04) // should be unique
alloc(newmem,$1000)
label(code)
label(return)
label(_Cope)
registersymbol(Cope)
registersymbol(_Cope)
newmem:
mov ecx,[_Cope]
cmp ecx,0
jb code
cmp ecx,5
ja code
mov [saintsrowthethird_dx11.exe+44AC5F4],ecx

code:
mov ecx,[saintsrowthethird_dx11.exe+44AC5F4]
jmp return

_Cope:
dd 0

Cope:
jmp newmem
nop
return:

[DISABLE]
Cope:
mov ecx,[saintsrowthethird_dx11.exe+44AC5F4]
unregistersymbol(Cope)
unregistersymbol(_Cope)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: "saintsrowthethird_dx11.exe"+204523

"saintsrowthethird_dx11.exe"+204500: 8B 0D 10 C5 8A 04        -  mov ecx,[saintsrowthethird_dx11.exe+44AC510]
"saintsrowthethird_dx11.exe"+204506: 33 C0                    -  xor eax,eax
"saintsrowthethird_dx11.exe"+204508: 85 C9                    -  test ecx,ecx
"saintsrowthethird_dx11.exe"+20450A: 0F 4F C1                 -  cmovg eax,ecx
"saintsrowthethird_dx11.exe"+20450D: 8B 0D 5C C5 8A 04        -  mov ecx,[saintsrowthethird_dx11.exe+44AC55C]
"saintsrowthethird_dx11.exe"+204513: 3B C8                    -  cmp ecx,eax
"saintsrowthethird_dx11.exe"+204515: 0F 4F C1                 -  cmovg eax,ecx
"saintsrowthethird_dx11.exe"+204518: 8B 0D A8 C5 8A 04        -  mov ecx,[saintsrowthethird_dx11.exe+44AC5A8]
"saintsrowthethird_dx11.exe"+20451E: 3B C8                    -  cmp ecx,eax
"saintsrowthethird_dx11.exe"+204520: 0F 4F C1                 -  cmovg eax,ecx
// ---------- INJECTING HERE ----------
"saintsrowthethird_dx11.exe"+204523: 8B 0D F4 C5 8A 04        -  mov ecx,[saintsrowthethird_dx11.exe+44AC5F4]
// ---------- DONE INJECTING  ----------
"saintsrowthethird_dx11.exe"+204529: 3B C8                    -  cmp ecx,eax
"saintsrowthethird_dx11.exe"+20452B: 7E 02                    -  jle saintsrowthethird_dx11.exe+20452F
"saintsrowthethird_dx11.exe"+20452D: 8B C1                    -  mov eax,ecx
"saintsrowthethird_dx11.exe"+20452F: C3                       -  ret
"saintsrowthethird_dx11.exe"+204530: 8B 0D 10 C5 8A 04        -  mov ecx,[saintsrowthethird_dx11.exe+44AC510]
"saintsrowthethird_dx11.exe"+204536: 8B 44 24 04              -  mov eax,[esp+04]
"saintsrowthethird_dx11.exe"+20453A: 89 08                    -  mov [eax],ecx
"saintsrowthethird_dx11.exe"+20453C: F3 0F 10 05 14 C5 8A 04  -  movss xmm0,[saintsrowthethird_dx11.exe+44AC514]
"saintsrowthethird_dx11.exe"+204544: F3 0F 11 40 04           -  movss [eax+04],xmm0
"saintsrowthethird_dx11.exe"+204549: 8B 15 5C C5 8A 04        -  mov edx,[saintsrowthethird_dx11.exe+44AC55C]
}

 

 

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

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

отпишись о результатах:

Не получается добавить в таблицу, к процесу игры се было подключена, вот скриншот.

Спойлер

OSIBKA.jpg

 

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

Всё работает, глюк при копировании был внимательно посмотрел, при копировании какой то левый символ вставляется, я его убрал всё заработало. Вот видео.

Спойлер

 

 

 

Игорь прошу пошение в титрах лишнюю шестёрку в твоём имени написал.

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

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

о результатах

 

 

мне кажеться  что одно сравнение лишнее . по моему это сравнение  можно убрать

cmp ecx,0
jb code

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

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

17 часов назад, Alex2411 сказал:

мне кажеться  что одно сравнение лишнее

Нет не лишнее оно не позволяет ниже нуля опуститься

 

17 часов назад, Alex2411 сказал:

а  сравнение с 5  у тебя без знаковое . не

в клавишах есть, но болше пяти у Игоря отключение чита, и пофиг какое там значение в игре до пяти звёзд, а значение 6 отключает чит, и всё чот во флаге больше 6 будет отключать чить, можно не боятся что нечаянно значение во флаге 99 будет.

 

19 часов назад, Garik66 сказал:

Попробуй, отпишись о результатах:

А значение больше шести всё таки ставиться, но правда чит не портит. от 6 и выше чит уже не работает, то есть всё как надо. Я тебе поставил лайк, плюс, и спасибо.

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

17 часов назад, Pitronic сказал:

Игорь прошу пошение в титрах лишнюю шестёрку в твоём имени написал.

Ты смотри. а то за мной придут из церкви с распятием

 

 

17 часов назад, Pitronic сказал:

А значение больше шести всё таки ставиться

Значение можешь ставить хоть -100000, хоть + 100000, чит будет работать только от 1 до 5.

 

17 часов назад, Alex2411 сказал:

мне кажеться

Выполнены условия, поставленные ТС.
Поэтому прежде чем писать. смотрите внимательно скрипт. понимайте как он работает. 

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

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

чит будет работать только от 1 до 5.

Попровляю ноль тоже работает, обнуляет внимание полиции, на видео это видно.

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

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

Попровляю ноль тоже работает, обнуляет внимание полиции, на видео это видно.

Очепятка -

от 0 до 5

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

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

прежде чем писать. смотрите внимательно скрипт. понимайте как он работает. 

 

 

так а в чем я не прав можешь объяснить ?
когда число меньше ноля  например  FFFFFFFE , то оно будет  считаться больше 5 если ты делаешь сравнение без знака как у тебя в скрипте . получаеться сравнение с 0 можно убрать  оно не чего не решает . разве не так ?

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

Аоткуда при копировании берутся эти левые символы, которые поначалу меня с толку сбили, в скрипте игоря их не было.

Спойлер

LISNIIE-SIMVOLYf2f36e1c0393aa65.jpg

 

 

 

16 часов назад, Alex2411 сказал:

разве не так

Ты видео смотрел? Всё работает как надо!

 

16 часов назад, Alex2411 сказал:

 

 

так а в чем я не прав можешь объяснить ?
когда число меньше ноля  например  FFFFFFFE , то оно будет  считаться больше 5 если ты делаешь сравнение без знака как у тебя в скрипте . получаеться сравнение с 0 можно убрать  оно не чего не решает . разве не так ?

Решает, не позволяет адресу быть меньше нуля, а это предотвращает вылет игры.

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

Garik66 это ты  мне минус поставил ? за что ???  что плохого в  том посте ?

 

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

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

В общем случае, проверить, попадает ли число в заданный диапазон можно как (псевдокод)

sub eax, minValue
cmp eax, maxValue
ja @F

Так что @Alex2411 прав. В данном конкретном случае (учитывая что нижняя граница равна нулю) достаточно только второй проверки.

 

23 минуты назад, Alex2411 сказал:

Garik66 это ты  мне минус поставил ?

Нет, это был не Гарик.

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

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

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

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