В этом гайде я расскажу про использование библиотеки detour для сетапа хуков.
Поехали.
Создаём Win32 Dll.
Скачиваем
(клик) с файлами.После создания проекта добавляем файлы из архива в папку с проектом и в сам проект.
После в файле DllMain подключаем всё файлы
Далее создаём объекты для работы
После описываем апиентри дллки
После этого мы начинаем искать что мы будем хукать.
Допустим у нас есть такое приложение
Теперь для иды нужно поставить
плагин.Кидаем в папку Plugins
заходим в IDA 6.8
и ищем нашу функцию.
Вот она:
Скрытый текст
Далее пкм по ней и Text View
Скрытый текст
Видим что-то типо этого
Скрытый текст
Это и есть наша функция.
Выделяем её от типа до retn.
Скрытый текст
Далее жмём Edit -> Plugins -> SigMaker
и выбираем второе
Скрытый текст
и жмём ОК.
В низу появится паттерн + маска
Скрытый текст
Выделаем и идём в студию.
Видим Это
В первый параметр передаём имя процесса, во второе паттерн, и в 3 маску.
В результате у вас получится примерно это
Всё теперь осталось описать Хук-функцию. Идём вверх(над апиентри) и создаём тайпдеф нашей функции с параметрами(или без) - это мы увидим в IDA.
Хукаемая функция выглядит так:
int __cdecl FuncToHooked(int a, int 

И наш тайпдеф будет таким
Далее опишем саму функцию
Наша хукаемая функция возвращает сумму a , b;
Теперь при хуке будет не 5 + 5, а 105 + 55.
Ну в принципе всё. Для хука void функций делайте так:
Пробуйте)