The loader's KHook, which every module's hooks go through.
void * GetCurrentValuePtr(bool pop) override
void DestroyReturnValue() override
void * GetOriginalValuePtr() override
void * LookupSignature(void *start, std::size_t size, const char *signature) override
void SaveReturnValue(KHook::Action action, void *returnValue, std::size_t returnSize, void *construct, void *destruct, bool original) override
void * GetOverrideValuePtr() override
bool WasOriginalFunctionSkipped() override
void * FindOriginalVirtual(void **vtable, int index) override
void * GetOriginalFunction() override
KHook::HookID_t SetupHook(void *function, void *context, void *removedFunction, void *pre, void *post, void *makeReturn, void *makeCallOriginal, unsigned int stackSize, bool async) override
void * DoRecall(KHook::Action action, void *returnValue, std::size_t returnSize, void *construct, void *destruct) override
KHook::HookID_t SetupVirtualHook(void **vtable, int index, void *context, void *removedFunction, void *pre, void *post, void *makeReturn, void *makeCallOriginal, unsigned int stackSize, bool async) override
void * GetContextPtr() override
void RemoveHook(KHook::HookID_t id, bool async, void(*removed)(KHook::HookID_t, void *), void *context) override
void * FindOriginal(void *function) override
static std::string ReadFile(const std::filesystem::path &path)