Trix

Вызвать функцию в Cheat Engine, разбор CrackMe

30 сообщений в этой теме

Это все вода. Первостепенными задачами щас являются

1. найти начало вызова функции(Угарнул что DB на этот счет придумал  "Select current function", задача то тривиальная)
2. определить соглашение о вызове, чтобы понять как передаются аргументы через стек/регистры или и то и другое. И должен ли вызывающий поток подчищать за ней стек
3 .Определить количество переданных аргументов - например если функция является членом класса, то указатель неявно передается первым аргументом, на что многие думают, мол функция не принимает никаких аргументов, а на самом деле нифига.:o

 

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

 

1

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
20 часа назад, AntonVit сказал:

push eax

в х64? неужели СЕ даже на такое имеет костыль :D

 

0

Поделиться сообщением


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

Имеет

Скрытый текст

push ecx
push eax
mov ecx,[rsi+60]
mov eax,[Filter]
cmp ecx,eax
pop eax
pop ecx
jne opout
movaps xmm2,[rsi+50]
jmp BACKwrckedball

 

64 битные игрушки используют 32 битные регистры, отчего бы СЕ не делать того же.

0

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
1 час назад, AntonVit сказал:

64 битные игрушки используют 32 битные регистры, отчего бы СЕ не делать того же.

само собой, проблема в том таких push не бывает. если не лень посмотри что там на самом деле ставится

*хм в дизасм исправляется в rax, в скрипте нав также

Изменено пользователем gmz
0

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
1 час назад, gmz сказал:

само собой, проблема в том таких push не бывает. если не лень посмотри что там на самом деле ставится

*хм в дизасм исправляется в rax, в скрипте нав также

Да, верно.

0

Поделиться сообщением


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

Создайте аккаунт или войдите для комментирования

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

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!


Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.


Войти сейчас