#pragma once #include #include #include #include #if defined(DISABLE_OUTPUT) #define kdmLog(content) #else #define kdmLog(content) std::wcout << content #endif namespace kdmUtils { std::wstring GetFullTempPath(); bool ReadFileToMemory(const std::wstring& file_path, std::vector* out_buffer); bool CreateFileFromMemory(const std::wstring& desired_file_path, const char* address, size_t size); uint64_t GetKernelModuleAddress(const std::string& module_name); BOOLEAN bDataCompare(const BYTE* pData, const BYTE* bMask, const char* szMask); uintptr_t FindPattern(uintptr_t dwAddress, uintptr_t dwLen, BYTE* bMask, const char* szMask); PVOID FindSection(const char* sectionName, uintptr_t modulePtr, PULONG size); std::wstring GetCurrentAppFolder(); }