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

partoftheworlD

Пользователи+
  • Постов

    2 687
  • Зарегистрирован

  • Посещение

  • Победитель дней

    172

Весь контент partoftheworlD

  1. Видео из серии "Как не стоит ломать игры", Это функция вызывающая смену ID оружия про которую я уже писал здесь. Можно считать альтернативой невидимости, если написать фильтр.
  2. Если кто-нибудь поймет, что я написал, то после выделения стека вот так получаем ID оружия, сложно с температурой правильно все оформлять, главное чтобы сам потом разобрался. rcx->rcx=rbp->[rbp+68]=rdi->rdi=rcx->[rcx+30]->rax=pNewWeaponBase->[rcx+38]->eax(rax)=rbx=NewWeaponID
  3. Попробуй после запуска удалять из памяти драйвера которые анти-чит использует с помощью PCHunter. Либо отключать патчем анти-чит при его инициализации, чтобы он не подгружал драйвера, но связывался с сервером. Пробовал на прямую аттачитnся к игре с анти-читом словил bdos. Думаю может сработать подключение отладчика в режиме ядра, но для этого надо поднимать виртуалку с CE такое уже не прокатит.
  4. ты должен получить указатель, а не складывать 2 значения.
  5. Если вдруг кому-то будет интересно покопаться со спавном объектов, держите может кто-нибудь разберется: Проверка можем ли мы подобрать оружие - "Disrupt_64.dll"+5428FCB mov [rbx], rax rbx - указатель на id подбираемого предмета rax - адрес указателя Первое появление ID - "Disrupt_64.dll"+4A66CF1
  6. Да я смотрел, отличное видео. Только в Watch dogs инвентарь своеобразный, т.е там только 1 винтовка, шокер и пистолет. под них память выделяется(под 3 слота) и все расчеты ведутся инструкцией mov rcx, [rbx+rcx*8+2D0] где rbx это базовый адрес инвентаря, rcx это индекс слота и смещение указывает на ID текущего оружия. Получалось изменить оружие при подборе другого, сбросить нельзя видимо, а новое оружие создается в памяти, только если менты ездят или бандиты, но заспавнить новое пока не додумался как и не нашел где. К примеру чтобы после прогрузки игры, вокруг игрока лежали кучи оружия.
  7. Восстановил функцию которая добавляет оружие при подборе и все тупик, не понимаю как найти функцию которая спавнит его. Смотрел выше код вызывающий эту функцию, но там в регистрах нет ID оружия вообще. Логика была такая, нахожу участок кода где меняется ID, ставлю бряк на ID нового оружия и выхожу туда где оно создается. Но при установке бряка на доступ появляются все инструкции с которых начал поиск. Уникальный ID для каждого предмета так же не смог найти. Код под спойлером который на картинке.
  8. Возможно id кости может отличаться, на сколько я помню в css голова это 13 или 14 была.
  9. Сам на свой вопрос и ответил.
  10. Запилю конечно, если получится сделать. Кроме копирования и удаления оружия подобранного, пока ничего не получается.
  11. Выдрал конечно же. 3-й час ищу как предметы спавнятся и много чего интересного успел найти. Там постоянное сравнение предметов из базы идет с инвентарем.
  12. Весь список доступного оружия в игре.
  13. UE синоним слову боль. UE проще ломать, задампив SDK игры.
  14. Находишь к примеру ConCommand alias("alias",Cmd_Alias_f); ПКМ на функцию -> Follow и пишешь внутри функции ret Так что при обращении к ней краша не будет и сразу после обращения функция завершит выполнение и передаст управление дальше
  15. Чит на скрытность от врагов хотелось бы посмотреть на рабочую реализацию и нахождение, и спавн предметов, я так и не допер от чего можно оттолкнутся в её поиске.
  16. Нопить во время старта игры, запустил программу она в цикле ищет модуль игры, если находит, то патчит необходимые тебе байты и закрывается.
  17. Открывай sdk, ищи ближайшие ошибки или текст к необходимой функции, ищи этот же текст в дизассемблере и восстанавливай код. Или alias 26267272, получаешь ошибку и ищешь её. Вроде бы там получение адреса рассчитывается через вызов функции с аргументом cvar команд и возвращает адрес функции из виртуальной таблицы.
  18. Тогда сейчас скачаю 8,1 и на виртуалке проверю.
  19. 6.6 может Настройки отладчика кинуть?
  20. С анти-читом запускаешь или без? Трассировка работает, вылетов нет.
  21. Привет. Так пощу в разных разделах из-за уровня сложности использования программы. Для этого надо будет подготавливаться и вспоминать, я уже записывал видео от начала до конца создание скорострельности для Dying Light, но там статический анализ использовался Я например много раз пытался вызвать с помощью CE функцию, но при создании потока у меня игра крашилась, хотя аргументы верно указывал, но так и не разобрался.Или перебор значений интересующего аргумента, чтобы понять поведение функции. Ну да во многом это дело привычки, я к примеру после поиска инструкции сразу открываю IDA, потому что мне удобно работать с кодом в виде графика, чтобы сразу пройтись по местам где что-то сравнивается. А статьи эти начал писать в основном, чтобы раскрыть какой функционал прячется в IDA, когда я ей начинал пользоваться, то знаний было лишь столько сколько дает книга криса касперски искусство дизассемблирования, и приходилось лазить по десяткам форумов по информационной безопасности и статей по анализу вирусов, чтобы собрать нужную информацию для взлома игры.
  22. Кто хочет крутых ништяков которые облегчат жизнь при взломе и отладке с помощью IDA? Раз IDA становится так популярна на форуме,то по мере того как буду вспоминать что-то крутое и иметь свободное время, буду стараться писать небольшие статьи, может кто-то в дальнейшем переведет это в видео формат. Если будут вопросы, то не стесняйтесь писать в комментарии, потому что иногда бывает сложно разобраться в той куче функционала который есть в IDA, а раз документации подробной нет, то будем вместе разбираться раз уж на то пошло. Можно бесконечно рассказывать о том какая крутая IDA, но это нужно попробовать самому чтобы понять и оценить. Бывают моменты при взломе игр/программ, когда функция просто не хочет вызываться, но интересно как она работает и какие тайны скрывает в себе. Для написания скрипта можно использовать idc, python и C# если установлен соответствующий плагин, я буду использовать питон. Присоединяемся к игре, через IDA. Открываем File->Script Command и пишем такой скрипт: from idaapi import * proto = 'float *__thiscall sub_51FCE830(void *this, float *a2, float *a3, float *a4, float *a5);' anyfn = Appcall.proto(0x51FCE830, proto) anyfn(0,0,0,0,str("Hello gamehacklabRU")) Что же он делает? Переменная proto, в ней мы задаем прототип вызываемой функции. Appcall.proto функция для вызова внутриигровой функции по адресу с указанием её прототипа который был создан выше. Ну и сам вызов с указанием аргументов. В общем ничего сложного.
  23. Ну мне такие проблемы не знакомы уже около 3 лет, потому что перешел на линукс, а винда на виртуалке или второй осью, если какие проблемы переустановил виртуалку и восстановил из бекапа.
  24. Да могу поковырять, с предметами возился думал 1 0 подсвечиваются и нет, оказалось не то. Изменял цвет на красный когда изменял условия прыжка после нахождения подсветки 0 1 float ботов и предметов которые динамические типа дверей, аптечек, оружия.
×
×
  • Создать...

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

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