- Статус
- Оффлайн
- Регистрация
- 13 Фев 2026
- Сообщения
- 395
- Реакции
- 8
Здарова, реверсеры. Очередная задачка по DX12, которая заставила немного призадуматься.
Суть такая: ковыряю оверлей для одного тайтла на DX12 и хочу захукать именно нативный Present игрового свапчейна. Не хочу долбиться в глобальные функции через D3D12CreateDevice и уж тем более не горю желанием юзать заезженный Kiero или вешать системные детауры на все процессы.
Цель — найти конкретный инстанс IDXGISwapChain, который инициализирует сама игра, и прыгнуть на его vtable. По идее, это гораздо чище и меньше мозолит глаза античитам типа EAC или BattlEye, которые любят чекать импорты и целостность системных библиотек.
Интересуют два момента:
Если кто-то уже реализовывал подобный поиск без лишнего шума и создания фейковых девайсов — накидайте идей или кусков логики. База под допил есть, не хватает именно грамотного поиска целевого объекта.
Кто как выходил на нужный свапчейн в последних играх?
Суть такая: ковыряю оверлей для одного тайтла на DX12 и хочу захукать именно нативный Present игрового свапчейна. Не хочу долбиться в глобальные функции через D3D12CreateDevice и уж тем более не горю желанием юзать заезженный Kiero или вешать системные детауры на все процессы.
Цель — найти конкретный инстанс IDXGISwapChain, который инициализирует сама игра, и прыгнуть на его vtable. По идее, это гораздо чище и меньше мозолит глаза античитам типа EAC или BattlEye, которые любят чекать импорты и целостность системных библиотек.
Интересуют два момента:
- Какой сейчас самый надежный метод выцепить инстанс swapchain в памяти процесса? Сканирование по паттерну или есть более изящные способы через структуры?
- Как быстро найти vtable и нужное смещение именно под актуальные билды DX12?
Если кто-то уже реализовывал подобный поиск без лишнего шума и создания фейковых девайсов — накидайте идей или кусков логики. База под допил есть, не хватает именно грамотного поиска целевого объекта.
Кто как выходил на нужный свапчейн в последних играх?