Подписывайтесь на наш Telegram и не пропускайте важные новости! Перейти

Вопрос Разбор Cheat Engine: как искать адреса и создавать скрипты

Sloppy
Начинающий
Начинающий
Статус
Оффлайн
Регистрация
13 Фев 2026
Сообщения
280
Реакции
6
Всем привет.

Начал плотно ковырять Cheat Engine и возникли вопросы по поиску актуальных адресов и созданию AOB-инъекций. Пытаюсь разобраться с процессом в Ranmelle, но стандартные методы поиска через Unknown Initial Value с последующим отсеиванием (увеличение/уменьшение) пока не дают внятных результатов.

Моя цель — собрать рабочую таблицу (CT) с динамическими адресами. Также пробовал дебажить процесс через IDA Free, но клиент стабильно падает при попытке приаттачиться. Кто сталкивался с подобными вылетами на приватках или знает, как грамотно отловить нужные указатели — буду признателен за любой совет.

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

Skill Injection:
Код:
Expand Collapse Copy
define(SkillInjection_1,02EB21F4)define(SkillInjection_2,02EB2252)
define(SkillInjection_3,02EB2226)
[ENABLE]
alloc(NDFA,256)
label(stop)
SkillInjection_1:
push 00000025
SkillInjection_2:
push #1120017//Your skill here
SkillInjection_3:
jmp NDFA
db 90 90 90 90 90 90 90
NDFA:
push esi
mov esi,[03CEB2E4]
cmp [esi+B4],#0
jne stop
pop esi
mov [edi+00009A98],00000000
jmp SkillInjection_3+C
stop:
pop esi
jmp 02EB225D
 
 
 
 
[DISABLE]
SkillInjection_1:
push 000007D0
SkillInjection_2:
push 04C4BAEA
SkillInjection_3:
je 02EB225D
mov [edi+00009A98],00000000
 
Skill Pointer:
 
[ENABLE]
alloc(Hook,128)
alloc(Skill_ID,4)
registersymbol(Skill_ID)
 
Hook:
mov [Skill_ID],ecx
cmp byte ptr [ebp+28],00
jmp 02762107+7
 
02762107:
jmp Hook
db 90 90
 
[DISABLE]
02762107:
mov [ebx+38],ecx
cmp byte ptr [ebp+28],00
 
dealloc(Hook)
dealloc(Skill_ID)
unregistersymbol(Skill_ID)
 
UA:
[Enable]
02AF36A1:
db EB
 
[Disable]
02AF36A1:
db 7E
 
Full Map Attack:
[ENABLE]
Alloc(Hook,128)
Label(Return)
01ADE970:
jmp Hook
 
Hook:
mov eax,[03CEB1E4]]
lea eax,[eax+0C]
mov [esp+04],eax
 
Return:
push ebp
mov ebp,esp
push -01
jmp 01ADE970+5
 
[DISABLE]
01ADE970:
push ebp
mov ebp,esp
push -01
 
General No Delay:
 
[ENABLE]
Alloc(NoDelay,64)
Label(Return)
 
NoDelay:
mov [esp+38],1
DB 53 8B DC 83 EC 08
jmp Return
 
02A0FCA0:
jmp NoDelay
nop
Return:
 
[DISABLE]
02A0FCA0:
DB 53 8B DC 83 EC 08
 
God Mode:
 
[enable]
029F3A83:
mov eax,00000001
 
[disable]
029F3A83:
call 01A58920
 
Show Hidden Skills:
 
[ENABLE]
00BFE57B:
db eb 0c
 
[DISABLE]
00BFE57B:
db 75 0c
 
ZZ Mob Vac:
 
[ENABLE]
01B477D2:
shufps xmm3,xmm3,00
nop
nop
nop
nop
 
[DISABLE]
01B477D2:
addsd xmm0,[034EC5D0]

Интересно, как правильно прокидывать AOB, чтобы таблица не отваливалась после каждой перезагрузки сервера? Кто как обходит защиту от дебага, чтобы IDA не крашила игру? Буду рад любому опыту по реверсу таких сборок.
 
Назад
Сверху Снизу