|
- #pragma once
-
- namespace MHook_Hooks {
- uint64_t hookSmall(void);
- uint64_t hookBranch(uint64_t);
- uint64_t hookRip_relative(void);
- void hookAVX(float num, void* res);
- uint32_t hookRDRAND(void);
- uint32_t hookLoop(uint32_t num, uint32_t cnt);
- uint32_t hookTail_recursion(uint32_t x);
- };
-
- class MHook : public AbstractHookEngine {
- public:
- bool hook_all();
- bool unhook_all();
-
- MHook() : AbstractHookEngine("MHook") {
-
- }
-
- friend uint64_t MHook_Hooks::hookSmall(void);
- friend uint64_t MHook_Hooks::hookBranch(uint64_t);
- friend uint64_t MHook_Hooks::hookRip_relative(void);
-
- friend void MHook_Hooks::hookAVX(float num, void* res);
- friend uint32_t MHook_Hooks::hookRDRAND(void);
- friend uint32_t MHook_Hooks::hookLoop(uint32_t num, uint32_t cnt);
- friend uint32_t MHook_Hooks::hookTail_recursion(uint32_t x);
- };
|