#pragma once #include #include #pragma comment(lib, "psapi.lib") #include #include // #pragma unmanaged namespace DragonHook { // using namespace System; class FiestaHook { public: static void Start(unsigned long base_address); static void Stop(); static DWORD FindPattern(const char *pattern, char *mask); static void WriteToMemory(uintptr_t addressToWrite, char* valueToWrite, int byteNum); private: static DWORD HookThread; static DWORD WINAPI Worker(LPVOID lParam); static HANDLE WorkThread; static bool HasStarted; static void AttachFunctions(); static void DetachFunctions(); static DWORD BaseAddress; static DWORD ModuleSize; }; }