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

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

Всем привет :)

С вами горе хакер, который не смог найти указатель в Breach & Clean (Для тех, кто не в курсе, вот тема).

Расстроившись после такой досадной неудачи, я скачал игру попроще, и начал над ней работать. В общем то получилось успешней, но до конца я так и не завершил сей проект (игра после моих танцев с бубном перестала запускаться :D ). Но в ходе ковыряния, я выделил основные проблемы, которые возникли у меня при попытках её взлома, и сейчас я бы хотел спросить у опытных людей, как их решить.

Итак, начнем:

1) Можно ли заносить свои значения в переменные xmm0, xmm1 и т.д.

Все в общих чертах происходит так (при покупке в магазине), берется xmm0, туда записывается количество денег, оно отправляется в путешествие по памяти, и возвращается уже обработанное значение обратно. Я не очень понял, где хранятся данные значения, чтобы туда записать свое число.

2)  Значение Float. 

Возникли проблемы с перемещением своего числа в ячейку float. Скрипт в общих чертах выглядит так:

mov [esx+1A8],xmm0 

Когда меняю его на 

mov dword ptr [esx+1A8],#10000 

получается очень большое число. (В принципе я понимаю почему, так как 4 битовое значение конвертируется в вид float). А вот как задать запись float числа, я к сожалению не нашел.

При отключении скрипта, в ячейку записывается 0, даже если было, например, число 100.

3) "Не друг ты мне больше" (фильтры)

Делал фильтр друг/враг на здоровье героя. Все шло нормально, пока уровень не решил, что 6х врагов мне мало, и сгенерировал новых.

То есть сначала адрес работал с 6 адресами, потом с 8, и все поломалось, а точнее изменилось значение для персонажа, а для других так и осталось 0 (адрес остался фиолетовым).

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

И возможны ли там значения 2.268666479E24, или обычно все ограничивается нулями и единицами. Поделитесь вашим опытом.

4) Как работать с такими указателями, типа [eax+ebx*4] [eax+ebx*5-3] и т.д.

 

Эксперименты я проводил на игре Черная метка (The hunt), от компании Бука. Игра моего детства ))

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

57 минут назад, FailMan сказал:

Можно ли заносить свои значения в переменные xmm0, xmm1 и т.д.

Все в общих чертах происходит так (при покупке в магазине), берется xmm0, туда записывается количество денег, оно отправляется в путешествие по памяти, и возвращается уже обработанное значение обратно. Я не очень понял, где хранятся данные значения, чтобы туда записать свое число.

Да, https://ru.wikipedia.org/wiki/SSE

 

 mov [rbx+00000144],(float)0.7
 movss xmm0,[rbx+00000144]

или

label(test1)

test1:
dd (float)1234
movss xmm0, [test1]

 

57 минут назад, FailMan сказал:

Когда меняю его на 

mov dword ptr [esx+1A8],#10000 

mov [esx+1A8],(float)10000 

 

57 минут назад, FailMan сказал:

То есть сначала адрес работал с 6 адресами, потом с 8, и все поломалось, а точнее изменилось значение для персонажа, а для других так и осталось 0 (адрес остался фиолетовым).

 

можно же сверять значения с 0, вместо геройского id, это конечно может вызвать проблемы, но вариант рабочий.


 

cmp [a+b],0
je original code

или 

mov eax, [a+b]
test eax, eax
je original code

 

57 минут назад, FailMan сказал:

4) Как работать с такими указателями, типа [eax+ebx*4] [eax+ebx*5-3] и т.д.

Обычно это массивы, к примеру eax адрес структуры со списком игроков, ebx индекс игрока *4, и все это выражение [eax+ebx*4] возвращает адрес указателя на структуру игрока по индексу

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

Спасибо)

А Вы можете посоветовать какие-нибудь игры, для тренировки, может с которых сами начинали, а то что я не выбираю, так какие то сложности начинаются)

 

26 минут назад, kiwipapayamongoose сказал:

cmp [a+b],0

je original code

 a+b это вместо [eax+ebx111], правильно?

27 минут назад, kiwipapayamongoose сказал:

можно же сверять значения с 0, вместо геройского id, это конечно может вызвать проблемы, но вариант рабочий.

В видеоуроке сравнивали с геройским, по другому я не умел)

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

Только что, MasterGH сказал:

Туториалы я проходил (кроме последнего), но на практике как то не сильно помогает. 

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

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

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

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