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

Нужна помощь с написанием условий в скрипте


Derk

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

Всем привет!Постараюсь подробно все объяснить ,есть инструкция,в который лежит значение направления движения (1 вперед,-1 назад,0 - стоп)

Так вот мне нужно написать условие,чтобы :  1) когда танк едет вперед значение сменялось на  16777216  (значение в 4 байта)

                                                                                       2) когда танк едет назад значение сменялось на  4278190080

Спойлер

{ Game   : ClientTO.exe
  Version: 
  Date   : 2019-05-12
  Author : User

  This script does blah blah blah
}

[ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat

 
 
aobscan(INJECT,89 57 10 8B 79 68 85 FF) // should be unique
alloc(newmem,$1000)

label(code)
label(return)

newmem:

code:
  mov [edi+10],edx
  mov edi,[ecx+68]
  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 89 57 10 8B 79 68

unregistersymbol(INJECT)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: 2527ED51

2527ED31: 73 05              -  jae 2527ED38
2527ED33: E8 78 02 82 4B     -  call Flash.ocx+69EFB0
2527ED38: 8B 0F              -  mov ecx,[edi]
2527ED3A: 8B 57 04           -  mov edx,[edi+04]
2527ED3D: 8B 47 08           -  mov eax,[edi+08]
2527ED40: 8B 77 0C           -  mov esi,[edi+0C]
2527ED43: 8B 5F 10           -  mov ebx,[edi+10]
2527ED46: 8B 79 68           -  mov edi,[ecx+68]
2527ED49: 85 FF              -  test edi,edi
2527ED4B: 0F 84 C8 00 00 00  -  je 2527EE19
// ---------- INJECTING HERE ----------
2527ED51: 89 57 10           -  mov [edi+10],edx
2527ED54: 8B 79 68           -  mov edi,[ecx+68]
// ---------- DONE INJECTING  ----------
2527ED57: 85 FF              -  test edi,edi
2527ED59: 0F 84 BA 00 00 00  -  je 2527EE19
2527ED5F: 89 47 14           -  mov [edi+14],eax
2527ED62: 8B 79 68           -  mov edi,[ecx+68]
2527ED65: 85 FF              -  test edi,edi
2527ED67: 0F 84 AC 00 00 00  -  je 2527EE19
2527ED6D: 89 77 18           -  mov [edi+18],esi
2527ED70: 8B 7D E8           -  mov edi,[ebp-18]
2527ED73: 8B 71 68           -  mov esi,[ecx+68]
2527ED76: 85 F6              -  test esi,esi
}

 

P.s смой код не стал писать ибо он кривой,как я понял тут нужно применять cmp

Заранее спасибо за помощь!

 

 

 

                                                                                        

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

Мой нерабочий вариант 

Спойлер

[ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat

 
 
aobscan(INJECT,89 57 10 8B 79 68 85 FF) // should be unique
alloc(newmem,$1000)

label(code)
label(return)

newmem:

code:
  mov [edi+10],edx
  mov edi,[ecx+68]
  
  //1 (вреред)
  cmp edx,0x00000001
  jne next
  mov [edi+10],0x01000000
  jmp ret
  //2 (назад)
  next:
  cmp edx,0xFFFFFFFF
  mov [edi+10],0xFF000000
  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 89 57 10 8B 79 68

unregistersymbol(INJECT)
dealloc(newmem)

 

 

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

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

Причины

я же написал

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

внимательно

Спойлер

image.thumb.png.bbea771a29e732d2f1c6e718c665b89f.png

 

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

Мой нерабочий вариант 

По скрипту.
Попробуй так:

Спойлер

{ Game   : ClientTO.exe
  Version:
  Date   : 2019-05-12
  Author : User

  This script does blah blah blah
}

[ENABLE]
aobscan(INJECT,89 57 10 8B 79 68 85 FF)
alloc(newmem,$1000)
label(code)
label(return)
registersymbol(INJECT)

newmem:
  cmp edx,1
  jne @f
  mov edx,01000000
  jmp code

@@:
  cmp edx,FFFFFFFF
  jne code
  mov edx,FF000000

code:
  mov [edi+10],edx
  mov edi,[ecx+68]
  jmp return

INJECT:
  jmp newmem
  db 90
return:

[DISABLE]
INJECT:
  db 89 57 10 8B 79 68

unregistersymbol(INJECT)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: 2527ED51

2527ED31: 73 05              -  jae 2527ED38
2527ED33: E8 78 02 82 4B     -  call Flash.ocx+69EFB0
2527ED38: 8B 0F              -  mov ecx,[edi]
2527ED3A: 8B 57 04           -  mov edx,[edi+04]
2527ED3D: 8B 47 08           -  mov eax,[edi+08]
2527ED40: 8B 77 0C           -  mov esi,[edi+0C]
2527ED43: 8B 5F 10           -  mov ebx,[edi+10]
2527ED46: 8B 79 68           -  mov edi,[ecx+68]
2527ED49: 85 FF              -  test edi,edi
2527ED4B: 0F 84 C8 00 00 00  -  je 2527EE19
// ---------- INJECTING HERE ----------
2527ED51: 89 57 10           -  mov [edi+10],edx
2527ED54: 8B 79 68           -  mov edi,[ecx+68]
// ---------- DONE INJECTING  ----------
2527ED57: 85 FF              -  test edi,edi
2527ED59: 0F 84 BA 00 00 00  -  je 2527EE19
2527ED5F: 89 47 14           -  mov [edi+14],eax
2527ED62: 8B 79 68           -  mov edi,[ecx+68]
2527ED65: 85 FF              -  test edi,edi
2527ED67: 0F 84 AC 00 00 00  -  je 2527EE19
2527ED6D: 89 77 18           -  mov [edi+18],esi
2527ED70: 8B 7D E8           -  mov edi,[ebp-18]
2527ED73: 8B 71 68           -  mov esi,[ecx+68]
2527ED76: 85 F6              -  test esi,esi
}

 

 

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

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

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

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