Files
2026-08-24 14:47:59 +08:00

41 lines
1.1 KiB
C++

#pragma once
#include "kd_driver.h"
typedef struct _RTL_PROCESS_MODULE_INFORMATION
{
HANDLE Section;
PVOID MappedBase;
PVOID ImageBase;
ULONG ImageSize;
ULONG Flags;
USHORT LoadOrderIndex;
USHORT InitOrderIndex;
USHORT LoadCount;
USHORT OffsetToFileName;
UCHAR FullPathName[256];
} RTL_PROCESS_MODULE_INFORMATION, * PRTL_PROCESS_MODULE_INFORMATION;
typedef struct _RTL_PROCESS_MODULES
{
ULONG NumberOfModules;
RTL_PROCESS_MODULE_INFORMATION Modules[1];
} RTL_PROCESS_MODULES, * PRTL_PROCESS_MODULES;
namespace utils
{
auto GetKernelModule(const std::string& module_name) -> uint64_t;
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 GetFullTempPath();
bool CreateFileFromMemory(const std::wstring& desired_file_path, const char* address, size_t size);
auto calc_comm_verify_check(int a, int b, int c, int d)->ULONG64;
auto get_random_val(ULONG64 a, ULONG64 b)->ULONG64;
auto GetVersion()->OSVERSIONINFOW;
}