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

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

Привет, вот есть скрипт, он делает меня и врагов. Как из неё сделать бессмертным только меня?

[ENABLE]

alloc(newmem,2048)

label(returnhere)

label(originalcode)

label(exit)

newmem:

mov [ecx+16],#1209539900

originalcode:

fld dword ptr [ecx+16]

fcomp dword ptr [isobjectstatic+26930]

exit:

jmp returnhere

019FAB6E:

jmp newmem

nop

nop

nop

nop

returnhere:

[DISABLE]

dealloc(newmem)

019FAB6E:

fld dword ptr [ecx+16]

fcomp dword ptr [isobjectstatic+26930]

[ENABLE]

alloc(newmem,2048)

label(returnhere)

label(originalcode)

label(exit)

newmem:

mov [ecx+16],#1209539900

originalcode:

fld dword ptr [ecx+16]

fcomp dword ptr [isobjectstatic+26930]

exit:

jmp returnhere

019FAB6E:

jmp newmem

nop

nop

nop

nop

returnhere:

[DISABLE]

dealloc(newmem)

019FAB6E:

fld dword ptr [ecx+16]

fcomp dword ptr [isobjectstatic+26930]

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

Пиши как называется игра и какого жанра?

Автоассемблерный скрипт так работает?


ENABLE]
alloc(newmem,2048)
label(returnhere)
label(originalcode)
label(exit)

newmem:
mov [ecx+16],(float)999
originalcode:
fld dword ptr [ecx+16]
fcomp dword ptr [isobjectstatic+26930]
exit:
jmp returnhere

019FAB6E:
jmp newmem
nop
nop
nop
nop
returnhere:

[DISABLE]
dealloc(newmem)
019FAB6E:
fld dword ptr [ecx+16]
fcomp dword ptr [isobjectstatic+26930]

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

5 штук

Инструкция с этим адресом

 019FAB6E:

пока нам не нужен. Попробуй выложи все 5штук создай авто-ассемблерный чит как делал выше выложи под спойлер. Посмотрим что там.

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

[ENABLE]

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

alloc(newmem,2048) //2kb should be enough

label(returnhere)

label(originalcode)

label(exit)

newmem: //this is allocated memory, you have read,write,execute access

mov [ecx+16],xx

originalcode:

fld dword ptr [ecx+16]

fcomp dword ptr [isobjectstatic+26930]

exit:

jmp returnhere

0197B469:

jmp newmem

nop

nop

nop

nop

returnhere:

[DISABLE]

//code from here till the end of the code will be used to disable the cheat

dealloc(newmem)

0197B469:

fld dword ptr [ecx+16]

fcomp dword ptr [isobjectstatic+26930]

//Alt: db D9 41 16 D8 1D 00 61 A2 01

----------------------------------------------------

[ENABLE]

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

alloc(newmem,2048) //2kb should be enough

label(returnhere)

label(originalcode)

label(exit)

newmem: //this is allocated memory, you have read,write,execute access

mov [ecx+16],xx

originalcode:

fld dword ptr [ecx+16]

ret

int 3

exit:

jmp returnhere

019FAB50:

jmp newmem

returnhere:

[DISABLE]

//code from here till the end of the code will be used to disable the cheat

dealloc(newmem)

019FAB50:

fld dword ptr [ecx+16]

ret

int 3

//Alt: db D9 41 16 C3 CC

-----------------------------------

[ENABLE]

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

alloc(newmem,2048) //2kb should be enough

label(returnhere)

label(originalcode)

label(exit)

newmem: //this is allocated memory, you have read,write,execute access

mov [ecx+16],xx

originalcode:

fld dword ptr [ecx+16]

mov eax,[esp+04]

exit:

jmp returnhere

019FB9B0:

jmp newmem

nop

nop

returnhere:

[DISABLE]

//code from here till the end of the code will be used to disable the cheat

dealloc(newmem)

019FB9B0:

fld dword ptr [ecx+16]

mov eax,[esp+04]

//Alt: db D9 41 16 8B 44 24 04

------------------------------------------

[ENABLE]

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

alloc(newmem,2048) //2kb should be enough

label(returnhere)

label(originalcode)

label(exit)

newmem: //this is allocated memory, you have read,write,execute access

mov [ecx+16],xx

originalcode:

fld dword ptr

fucompp

exit:

jmp returnhere

019FB9D1:

jmp newmem

returnhere:

[DISABLE]

//code from here till the end of the code will be used to disable the cheat

dealloc(newmem)

019FB9D1:

fld dword ptr [ecx+16]

fucompp

//Alt: db D9 41 16 DA E9

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

Попробуй вот этот


[ENABLE]
alloc(newmem,2048)
label(returnhere)
label(originalcode)
label(exit)

newmem:
mov [ecx+16],#1209539900
originalcode:
fld dword ptr [ecx+16]
ret
int 3
exit:
jmp returnhere

019FAB50:
jmp newmem
returnhere:

[DISABLE]
dealloc(newmem)
019FAB50:
fld dword ptr [ecx+16]
ret
int 3
//Alt: db D9 41 16 C3 CC

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

Ниже скрипт постоянное, здоровье возвращает герою здоровье.


[ENABLE]
alloc(newmem,256)
label(back)
label(code)

019FAB50:
jmp newmem
back:

newmem:
push eax
cmp byte ptr [ecx],a0
jne code
mov eax,[ecx+1a]
mov [ecx+16],eax

code:
pop eax
fld dword ptr [ecx+16]
ret
int 3
jmp back

[DISABLE]
dealloc(newmem)
019FAB50:
fld dword ptr [ecx+16]
ret
int 3

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

Ниже скрипт постоянное, здоровье возвращает герою здоровье.


[ENABLE]
alloc(newmem,256)
label(back)
label(code)

019FAB50:
jmp newmem
back:

newmem:
push eax
cmp byte ptr [ecx],a0
jne code
mov eax,[ecx+1a]
mov [ecx+16],eax

code:
pop eax
fld dword ptr [ecx+16]
ret
int 3
jmp back

[DISABLE]
dealloc(newmem)
019FAB50:
fld dword ptr [ecx+16]
ret
int 3

Скорее всего, правильнее написать так (без учёта сохранения/восстановления регистра флагов):

[ENABLE]
alloc(newmem,256)
label(code)

newmem:
cmp byte [ecx],a0
jne code
fld dword [ecx+1a]
ret
code:
fld dword [ecx+16]
ret


019FAB50:
jmp newmem


[DISABLE]

019FAB50:
fld dword ptr [ecx+16]
ret
int 3

dealloc(newmem)

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

Вообще я без понятия. Судя по коду он нашёл фильтр "cmp byte ptr [ecx],a0" просматривая структуры памяти в Cheat Engine. Если не знаешь как это делается, то вот пример из другого случая.

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

Если у вас есть такая игра то помогите взломать и создать трейнер для этой игры. Я искал неизвестным и известным значением но не смог найти правильного адреса.

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

по видимому там просто сделан фильтр типа "свой-чужой" и вместо загрузки текущего здоровья делается загрузка максимального здоровья.

Надо бы статейку написать, вещи элементарные, но вопросы вызывают у народа...

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

Akama, А ты умеешь делать так, чтоб инстр. отвечающая за меня, врагов, и так далее записывала значения для меня, а остальных не трогала? A то лям очков у меня имеют все :grin:. При этом нету инстр. которая отвечает за мои очки.

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

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

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

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