Files
2024-06-13 21:33:27 +07:00

36 lines
965 B
C++

#pragma once
#include <Windows.h>
#include <Windowsx.h>
#include <libloaderapi.h>
#include <winnt.h>
#include <iostream>
#include <NuiApi.h>
#include <stdint.h>
#include <algorithm>
#include "kiero/kiero.h"
#include "kiero/minhook/include/MinHook.h"
#include "kiero/injector/injector.hpp"
#include "kiero/injector/calling.hpp"
#include "d3d9.h"
#include "ini.h"
#include "drs.h"
typedef LRESULT(CALLBACK* WNDPROC)(HWND, UINT, WPARAM, LPARAM);
typedef uintptr_t PTR;
#define HOOK(addr, detour) MH_CreateHook((LPVOID)(addr), \
Hook_##detour, \
reinterpret_cast<LPVOID*>(&Orig_##detour))
inline void safeJMP(injector::memory_pointer_tr at, injector::memory_pointer_raw dest, bool vp = true)
{
MH_Initialize();
MH_CreateHook((void*)at.as_int(), (void*)dest.as_int(), nullptr);
MH_EnableHook((void*)at.as_int());
}
inline void safeUNJMP(injector::memory_pointer_tr pTarget) {
MH_DisableHook((void*)pTarget.as_int());
MH_RemoveHook((void*)pTarget.as_int());
}