Розыгрыш Premium и Уникальной юзергруппы на форуме! Перейти

Как я въебал 3 часа на фикс, который сделал за 4 секунды.

  • Автор темы Автор темы 0x000cb
  • Дата начала Дата начала
cpuid inc.
Забаненный
Забаненный
Статус
Оффлайн
Регистрация
6 Авг 2019
Сообщения
1,064
Реакции
760
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Привет. Это скорее вам заметка, что нужно помнить все что ты кодишь, и визуализировать все действия на ходу.

И так, для начала:
- У нас есть проблема. BuyBotCmd отказывается работать. Фулл реверс у нас есть (
Пожалуйста, авторизуйтесь для просмотра ссылки.
).

Что будем делать?
Попытаемся разобраться почему не работает.

На первый взгляд все как нужно, вызывается функа из engine при помощи vfunc. Аргументы все тоже в порядке.
Что же не так? Да хрен его знает, нужно написать собственный хук.

Пишем на скорую руку и проверяем работает ли. (Не забываем о соглашении о вызове, и стаб, а то все пойдет по пизде):

1589234103205.png

1589234883932.png

(p.s Да, да, фреймворк зависит от фреймворка это очень хуево, и вообще переписал бы сразу под то чтобы адрес vfunc высчитывался в SegmentFramework. Да, это лишь на этапе разработке творится беспорядок. Прошу простить.)

Вроде все верно. Запускаем. Ничего не происходит.

Возможно проблема в хуке? Проверяем.
1589234305955.png


Нет, все правильно, при вызове BuyBotCMD нас перекидывает на нашу функу.

Тогда что не так то? Вот на этом моменте я и въебал 99% времени.
И так. Переходим к решению.

Для начала глянем какой индекс у нас используется при вызове вфунк:
mov edx, 0x72 - Т.е 0x72 в decimal это 114 индекс.

Вроде все опять же верно. Тогда давайте разбирать по строчкам.

Для начала мы ставим хук, стабы, и прочее. (С этим не должно быть никаких проблем т.к проверялось кучу раз)
Дальше мы вызываем вфунку. Опа. Вот тут то мы и проебались.

hr-pRyvNTiU.jpg


Обращаем внимания лишь на строку index >= 89.
Раньше на этом месте было значение 152, но т.к я нашёл новый базовый сдвиг я поставил туда это значение, что и было фатальной ошибкой.
Каждый раз когда мы вызывали нашу функцию, к индексу 114 добавлялось значение 2, что и приводило к тому что OTC просто не понимал что он вызывает.

p.s fix - Меняем значение index >= 89 на index >= 152. profit.

Вот так собстна я и проебался с buybot. А что у вас интересного было с багами?
 
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
А 0 дебил, ждём InterPredict :imp:
 
Назад
Сверху Снизу