From 29d9d8ec5f37dfd271df12da6f1fd47db96fd127 Mon Sep 17 00:00:00 2001 From: cypherpunk Date: Sun, 19 Jan 2014 23:41:07 +0100 Subject: [PATCH] fixed EnumAddedData to work with scylla --- SDK/CPP/TitanEngine.hpp | 4460 ++++++++++++++------------- TitanEngine/3rdparty-definitions.h | 1 + TitanEngine/TitanEngine.cpp | 81 +- TitanEngine/scylla_wrapper_x64.lib | Bin 3015762 -> 3021138 bytes TitanEngine/scylla_wrapper_x86.lib | Bin 3005792 -> 3011120 bytes TitanEngine/scylla_wrapperd_x64.lib | Bin 4524608 -> 4533848 bytes TitanEngine/scylla_wrapperd_x86.lib | Bin 3384640 -> 3392162 bytes scylla_integration.txt | 1 - 8 files changed, 2233 insertions(+), 2310 deletions(-) diff --git a/SDK/CPP/TitanEngine.hpp b/SDK/CPP/TitanEngine.hpp index bf50761..f74af61 100644 --- a/SDK/CPP/TitanEngine.hpp +++ b/SDK/CPP/TitanEngine.hpp @@ -4,7 +4,7 @@ #define TITCALL #if _MSC_VER > 1000 - #pragma once +#pragma once #endif namespace TE @@ -14,345 +14,345 @@ namespace TE namespace UE { - #ifdef TITANENGINE - #undef TITANENGINE - #endif +#ifdef TITANENGINE +#undef TITANENGINE +#endif - #include "TitanEngine.h" +#include "TitanEngine.h" } // ---- enum eHideLevel : DWORD { - UE_HIDE_PEBONLY = UE::UE_HIDE_PEBONLY, - UE_HIDE_BASIC = UE::UE_HIDE_BASIC + UE_HIDE_PEBONLY = UE::UE_HIDE_PEBONLY, + UE_HIDE_BASIC = UE::UE_HIDE_BASIC }; enum ePluginCallReason : int { - UE_PLUGIN_CALL_REASON_PREDEBUG = UE::UE_PLUGIN_CALL_REASON_PREDEBUG, - UE_PLUGIN_CALL_REASON_EXCEPTION = UE::UE_PLUGIN_CALL_REASON_EXCEPTION, - UE_PLUGIN_CALL_REASON_POSTDEBUG = UE::UE_PLUGIN_CALL_REASON_POSTDEBUG + UE_PLUGIN_CALL_REASON_PREDEBUG = UE::UE_PLUGIN_CALL_REASON_PREDEBUG, + UE_PLUGIN_CALL_REASON_EXCEPTION = UE::UE_PLUGIN_CALL_REASON_EXCEPTION, + UE_PLUGIN_CALL_REASON_POSTDEBUG = UE::UE_PLUGIN_CALL_REASON_POSTDEBUG }; enum eHookType : int { - TEE_HOOK_NRM_JUMP = UE::TEE_HOOK_NRM_JUMP, - TEE_HOOK_NRM_CALL = UE::TEE_HOOK_NRM_CALL, - TEE_HOOK_IAT = UE::TEE_HOOK_IAT + TEE_HOOK_NRM_JUMP = UE::TEE_HOOK_NRM_JUMP, + TEE_HOOK_NRM_CALL = UE::TEE_HOOK_NRM_CALL, + TEE_HOOK_IAT = UE::TEE_HOOK_IAT }; enum eEngineVariable : DWORD { - UE_ENGINE_ALOW_MODULE_LOADING = UE::UE_ENGINE_ALOW_MODULE_LOADING, - UE_ENGINE_AUTOFIX_FORWARDERS = UE::UE_ENGINE_AUTOFIX_FORWARDERS, - UE_ENGINE_PASS_ALL_EXCEPTIONS = UE::UE_ENGINE_PASS_ALL_EXCEPTIONS, - UE_ENGINE_NO_CONSOLE_WINDOW = UE::UE_ENGINE_NO_CONSOLE_WINDOW, - UE_ENGINE_BACKUP_FOR_CRITICAL_FUNCTIONS = UE::UE_ENGINE_BACKUP_FOR_CRITICAL_FUNCTIONS, - UE_ENGINE_CALL_PLUGIN_CALLBACK = UE::UE_ENGINE_CALL_PLUGIN_CALLBACK, - UE_ENGINE_RESET_CUSTOM_HANDLER = UE::UE_ENGINE_RESET_CUSTOM_HANDLER, - UE_ENGINE_CALL_PLUGIN_DEBUG_CALLBACK = UE::UE_ENGINE_CALL_PLUGIN_DEBUG_CALLBACK + UE_ENGINE_ALOW_MODULE_LOADING = UE::UE_ENGINE_ALOW_MODULE_LOADING, + UE_ENGINE_AUTOFIX_FORWARDERS = UE::UE_ENGINE_AUTOFIX_FORWARDERS, + UE_ENGINE_PASS_ALL_EXCEPTIONS = UE::UE_ENGINE_PASS_ALL_EXCEPTIONS, + UE_ENGINE_NO_CONSOLE_WINDOW = UE::UE_ENGINE_NO_CONSOLE_WINDOW, + UE_ENGINE_BACKUP_FOR_CRITICAL_FUNCTIONS = UE::UE_ENGINE_BACKUP_FOR_CRITICAL_FUNCTIONS, + UE_ENGINE_CALL_PLUGIN_CALLBACK = UE::UE_ENGINE_CALL_PLUGIN_CALLBACK, + UE_ENGINE_RESET_CUSTOM_HANDLER = UE::UE_ENGINE_RESET_CUSTOM_HANDLER, + UE_ENGINE_CALL_PLUGIN_DEBUG_CALLBACK = UE::UE_ENGINE_CALL_PLUGIN_DEBUG_CALLBACK }; enum eBPRemoveOption : DWORD { - UE_OPTION_REMOVEALL = UE::UE_OPTION_REMOVEALL, - UE_OPTION_DISABLEALL = UE::UE_OPTION_DISABLEALL, - UE_OPTION_REMOVEALLDISABLED = UE::UE_OPTION_REMOVEALLDISABLED, - UE_OPTION_REMOVEALLENABLED = UE::UE_OPTION_REMOVEALLENABLED + UE_OPTION_REMOVEALL = UE::UE_OPTION_REMOVEALL, + UE_OPTION_DISABLEALL = UE::UE_OPTION_DISABLEALL, + UE_OPTION_REMOVEALLDISABLED = UE::UE_OPTION_REMOVEALLDISABLED, + UE_OPTION_REMOVEALLENABLED = UE::UE_OPTION_REMOVEALLENABLED }; enum eAccess : DWORD { - UE_ACCESS_READ = UE::UE_ACCESS_READ, - UE_ACCESS_WRITE = UE::UE_ACCESS_WRITE, - UE_ACCESS_ALL = UE::UE_ACCESS_ALL + UE_ACCESS_READ = UE::UE_ACCESS_READ, + UE_ACCESS_WRITE = UE::UE_ACCESS_WRITE, + UE_ACCESS_ALL = UE::UE_ACCESS_ALL }; enum eDecryptionType : DWORD { - UE_STATIC_DECRYPTOR_XOR = UE::UE_STATIC_DECRYPTOR_XOR, - UE_STATIC_DECRYPTOR_SUB = UE::UE_STATIC_DECRYPTOR_SUB, - UE_STATIC_DECRYPTOR_ADD = UE::UE_STATIC_DECRYPTOR_ADD + UE_STATIC_DECRYPTOR_XOR = UE::UE_STATIC_DECRYPTOR_XOR, + UE_STATIC_DECRYPTOR_SUB = UE::UE_STATIC_DECRYPTOR_SUB, + UE_STATIC_DECRYPTOR_ADD = UE::UE_STATIC_DECRYPTOR_ADD }; enum eDecryptionDirection : DWORD { - UE_STATIC_DECRYPTOR_FOREWARD = UE::UE_STATIC_DECRYPTOR_FOREWARD, - UE_STATIC_DECRYPTOR_BACKWARD = UE::UE_STATIC_DECRYPTOR_BACKWARD + UE_STATIC_DECRYPTOR_FOREWARD = UE::UE_STATIC_DECRYPTOR_FOREWARD, + UE_STATIC_DECRYPTOR_BACKWARD = UE::UE_STATIC_DECRYPTOR_BACKWARD }; enum eDecryptionKeySize : DWORD { - UE_STATIC_KEY_SIZE_1 = UE::UE_STATIC_KEY_SIZE_1, - UE_STATIC_KEY_SIZE_2 = UE::UE_STATIC_KEY_SIZE_2, - UE_STATIC_KEY_SIZE_4 = UE::UE_STATIC_KEY_SIZE_4, - UE_STATIC_KEY_SIZE_8 = UE::UE_STATIC_KEY_SIZE_8 + UE_STATIC_KEY_SIZE_1 = UE::UE_STATIC_KEY_SIZE_1, + UE_STATIC_KEY_SIZE_2 = UE::UE_STATIC_KEY_SIZE_2, + UE_STATIC_KEY_SIZE_4 = UE::UE_STATIC_KEY_SIZE_4, + UE_STATIC_KEY_SIZE_8 = UE::UE_STATIC_KEY_SIZE_8 }; enum eCompressionAlgorithm : int { - UE_STATIC_APLIB = UE::UE_STATIC_APLIB, - UE_STATIC_APLIB_DEPACK = UE::UE_STATIC_APLIB_DEPACK, - UE_STATIC_LZMA = UE::UE_STATIC_LZMA + UE_STATIC_APLIB = UE::UE_STATIC_APLIB, + UE_STATIC_APLIB_DEPACK = UE::UE_STATIC_APLIB_DEPACK, + UE_STATIC_LZMA = UE::UE_STATIC_LZMA }; enum eHashAlgorithm : int { - UE_STATIC_HASH_MD5 = UE::UE_STATIC_HASH_MD5, - UE_STATIC_HASH_SHA1 = UE::UE_STATIC_HASH_SHA1, - UE_STATIC_HASH_CRC32 = UE::UE_STATIC_HASH_CRC32 + UE_STATIC_HASH_MD5 = UE::UE_STATIC_HASH_MD5, + UE_STATIC_HASH_SHA1 = UE::UE_STATIC_HASH_SHA1, + UE_STATIC_HASH_CRC32 = UE::UE_STATIC_HASH_CRC32 }; const DWORD UE_RESOURCE_LANGUAGE_ANY = UE::UE_RESOURCE_LANGUAGE_ANY; enum ePE32Data : DWORD { - UE_PE_OFFSET = UE::UE_PE_OFFSET, - UE_IMAGEBASE = UE::UE_IMAGEBASE, - UE_OEP = UE::UE_OEP, + UE_PE_OFFSET = UE::UE_PE_OFFSET, + UE_IMAGEBASE = UE::UE_IMAGEBASE, + UE_OEP = UE::UE_OEP, UE_BASEOFCODE = UE::UE_BASEOFCODE, UE_BASEOFDATA = UE::UE_BASEOFDATA, - UE_SIZEOFIMAGE = UE::UE_SIZEOFIMAGE, - UE_SIZEOFHEADERS = UE::UE_SIZEOFHEADERS, - UE_SIZEOFOPTIONALHEADER = UE::UE_SIZEOFOPTIONALHEADER, - UE_SECTIONALIGNMENT = UE::UE_SECTIONALIGNMENT, - UE_IMPORTTABLEADDRESS = UE::UE_IMPORTTABLEADDRESS, - UE_IMPORTTABLESIZE = UE::UE_IMPORTTABLESIZE, - UE_RESOURCETABLEADDRESS = UE::UE_RESOURCETABLEADDRESS, - UE_RESOURCETABLESIZE = UE::UE_RESOURCETABLESIZE, - UE_EXPORTTABLEADDRESS = UE::UE_EXPORTTABLEADDRESS, - UE_EXPORTTABLESIZE = UE::UE_EXPORTTABLESIZE, - UE_TLSTABLEADDRESS = UE::UE_TLSTABLEADDRESS, - UE_TLSTABLESIZE = UE::UE_TLSTABLESIZE, - UE_RELOCATIONTABLEADDRESS = UE::UE_RELOCATIONTABLEADDRESS, - UE_RELOCATIONTABLESIZE = UE::UE_RELOCATIONTABLESIZE, - UE_TIMEDATESTAMP = UE::UE_TIMEDATESTAMP, - UE_SECTIONNUMBER = UE::UE_SECTIONNUMBER, - UE_CHECKSUM = UE::UE_CHECKSUM, - UE_SUBSYSTEM = UE::UE_SUBSYSTEM, - UE_CHARACTERISTICS = UE::UE_CHARACTERISTICS, - UE_NUMBEROFRVAANDSIZES = UE::UE_NUMBEROFRVAANDSIZES, - UE_SECTIONNAME = UE::UE_SECTIONNAME, - UE_SECTIONVIRTUALOFFSET = UE::UE_SECTIONVIRTUALOFFSET, - UE_SECTIONVIRTUALSIZE = UE::UE_SECTIONVIRTUALSIZE, - UE_SECTIONRAWOFFSET = UE::UE_SECTIONRAWOFFSET, - UE_SECTIONRAWSIZE = UE::UE_SECTIONRAWSIZE, - UE_SECTIONFLAGS = UE::UE_SECTIONFLAGS + UE_SIZEOFIMAGE = UE::UE_SIZEOFIMAGE, + UE_SIZEOFHEADERS = UE::UE_SIZEOFHEADERS, + UE_SIZEOFOPTIONALHEADER = UE::UE_SIZEOFOPTIONALHEADER, + UE_SECTIONALIGNMENT = UE::UE_SECTIONALIGNMENT, + UE_IMPORTTABLEADDRESS = UE::UE_IMPORTTABLEADDRESS, + UE_IMPORTTABLESIZE = UE::UE_IMPORTTABLESIZE, + UE_RESOURCETABLEADDRESS = UE::UE_RESOURCETABLEADDRESS, + UE_RESOURCETABLESIZE = UE::UE_RESOURCETABLESIZE, + UE_EXPORTTABLEADDRESS = UE::UE_EXPORTTABLEADDRESS, + UE_EXPORTTABLESIZE = UE::UE_EXPORTTABLESIZE, + UE_TLSTABLEADDRESS = UE::UE_TLSTABLEADDRESS, + UE_TLSTABLESIZE = UE::UE_TLSTABLESIZE, + UE_RELOCATIONTABLEADDRESS = UE::UE_RELOCATIONTABLEADDRESS, + UE_RELOCATIONTABLESIZE = UE::UE_RELOCATIONTABLESIZE, + UE_TIMEDATESTAMP = UE::UE_TIMEDATESTAMP, + UE_SECTIONNUMBER = UE::UE_SECTIONNUMBER, + UE_CHECKSUM = UE::UE_CHECKSUM, + UE_SUBSYSTEM = UE::UE_SUBSYSTEM, + UE_CHARACTERISTICS = UE::UE_CHARACTERISTICS, + UE_NUMBEROFRVAANDSIZES = UE::UE_NUMBEROFRVAANDSIZES, + UE_SECTIONNAME = UE::UE_SECTIONNAME, + UE_SECTIONVIRTUALOFFSET = UE::UE_SECTIONVIRTUALOFFSET, + UE_SECTIONVIRTUALSIZE = UE::UE_SECTIONVIRTUALSIZE, + UE_SECTIONRAWOFFSET = UE::UE_SECTIONRAWOFFSET, + UE_SECTIONRAWSIZE = UE::UE_SECTIONRAWSIZE, + UE_SECTIONFLAGS = UE::UE_SECTIONFLAGS }; const long UE_VANOTFOUND = UE::UE_VANOTFOUND; enum eCustomException : DWORD { - UE_CH_BREAKPOINT = UE::UE_CH_BREAKPOINT, - UE_CH_SINGLESTEP = UE::UE_CH_SINGLESTEP, - UE_CH_ACCESSVIOLATION = UE::UE_CH_ACCESSVIOLATION, - UE_CH_ILLEGALINSTRUCTION = UE::UE_CH_ILLEGALINSTRUCTION, - UE_CH_NONCONTINUABLEEXCEPTION = UE::UE_CH_NONCONTINUABLEEXCEPTION, - UE_CH_ARRAYBOUNDSEXCEPTION = UE::UE_CH_ARRAYBOUNDSEXCEPTION, - UE_CH_FLOATDENORMALOPERAND = UE::UE_CH_FLOATDENORMALOPERAND, - UE_CH_FLOATDEVIDEBYZERO = UE::UE_CH_FLOATDEVIDEBYZERO, - UE_CH_INTEGERDEVIDEBYZERO = UE::UE_CH_INTEGERDEVIDEBYZERO, - UE_CH_INTEGEROVERFLOW = UE::UE_CH_INTEGEROVERFLOW, - UE_CH_PRIVILEGEDINSTRUCTION = UE::UE_CH_PRIVILEGEDINSTRUCTION, - UE_CH_PAGEGUARD = UE::UE_CH_PAGEGUARD, - UE_CH_EVERYTHINGELSE = UE::UE_CH_EVERYTHINGELSE, - UE_CH_CREATETHREAD = UE::UE_CH_CREATETHREAD, - UE_CH_EXITTHREAD = UE::UE_CH_EXITTHREAD, - UE_CH_CREATEPROCESS = UE::UE_CH_CREATEPROCESS, - UE_CH_EXITPROCESS = UE::UE_CH_EXITPROCESS, - UE_CH_LOADDLL = UE::UE_CH_LOADDLL, - UE_CH_UNLOADDLL = UE::UE_CH_UNLOADDLL, - UE_CH_OUTPUTDEBUGSTRING = UE::UE_CH_OUTPUTDEBUGSTRING, - UE_CH_AFTEREXCEPTIONPROCESSING = UE::UE_CH_AFTEREXCEPTIONPROCESSING, - UE_CH_ALLEVENTS = UE::UE_CH_ALLEVENTS, - UE_CH_SYSTEMBREAKPOINT = UE::UE_CH_SYSTEMBREAKPOINT, - UE_CH_UNHANDLEDEXCEPTION = UE::UE_CH_UNHANDLEDEXCEPTION + UE_CH_BREAKPOINT = UE::UE_CH_BREAKPOINT, + UE_CH_SINGLESTEP = UE::UE_CH_SINGLESTEP, + UE_CH_ACCESSVIOLATION = UE::UE_CH_ACCESSVIOLATION, + UE_CH_ILLEGALINSTRUCTION = UE::UE_CH_ILLEGALINSTRUCTION, + UE_CH_NONCONTINUABLEEXCEPTION = UE::UE_CH_NONCONTINUABLEEXCEPTION, + UE_CH_ARRAYBOUNDSEXCEPTION = UE::UE_CH_ARRAYBOUNDSEXCEPTION, + UE_CH_FLOATDENORMALOPERAND = UE::UE_CH_FLOATDENORMALOPERAND, + UE_CH_FLOATDEVIDEBYZERO = UE::UE_CH_FLOATDEVIDEBYZERO, + UE_CH_INTEGERDEVIDEBYZERO = UE::UE_CH_INTEGERDEVIDEBYZERO, + UE_CH_INTEGEROVERFLOW = UE::UE_CH_INTEGEROVERFLOW, + UE_CH_PRIVILEGEDINSTRUCTION = UE::UE_CH_PRIVILEGEDINSTRUCTION, + UE_CH_PAGEGUARD = UE::UE_CH_PAGEGUARD, + UE_CH_EVERYTHINGELSE = UE::UE_CH_EVERYTHINGELSE, + UE_CH_CREATETHREAD = UE::UE_CH_CREATETHREAD, + UE_CH_EXITTHREAD = UE::UE_CH_EXITTHREAD, + UE_CH_CREATEPROCESS = UE::UE_CH_CREATEPROCESS, + UE_CH_EXITPROCESS = UE::UE_CH_EXITPROCESS, + UE_CH_LOADDLL = UE::UE_CH_LOADDLL, + UE_CH_UNLOADDLL = UE::UE_CH_UNLOADDLL, + UE_CH_OUTPUTDEBUGSTRING = UE::UE_CH_OUTPUTDEBUGSTRING, + UE_CH_AFTEREXCEPTIONPROCESSING = UE::UE_CH_AFTEREXCEPTIONPROCESSING, + UE_CH_ALLEVENTS = UE::UE_CH_ALLEVENTS, + UE_CH_SYSTEMBREAKPOINT = UE::UE_CH_SYSTEMBREAKPOINT, + UE_CH_UNHANDLEDEXCEPTION = UE::UE_CH_UNHANDLEDEXCEPTION }; enum eHandlerReturnType : DWORD { - UE_OPTION_HANDLER_RETURN_HANDLECOUNT = UE::UE_OPTION_HANDLER_RETURN_HANDLECOUNT, - UE_OPTION_HANDLER_RETURN_ACCESS = UE::UE_OPTION_HANDLER_RETURN_ACCESS, - UE_OPTION_HANDLER_RETURN_FLAGS = UE::UE_OPTION_HANDLER_RETURN_FLAGS, - UE_OPTION_HANDLER_RETURN_TYPENAME = UE::UE_OPTION_HANDLER_RETURN_TYPENAME + UE_OPTION_HANDLER_RETURN_HANDLECOUNT = UE::UE_OPTION_HANDLER_RETURN_HANDLECOUNT, + UE_OPTION_HANDLER_RETURN_ACCESS = UE::UE_OPTION_HANDLER_RETURN_ACCESS, + UE_OPTION_HANDLER_RETURN_FLAGS = UE::UE_OPTION_HANDLER_RETURN_FLAGS, + UE_OPTION_HANDLER_RETURN_TYPENAME = UE::UE_OPTION_HANDLER_RETURN_TYPENAME }; enum eBPState { - UE_BPXREMOVED = UE::UE_BPXREMOVED, - UE_BPXACTIVE = UE::UE_BPXACTIVE, - UE_BPXINACTIVE = UE::UE_BPXINACTIVE + UE_BPXREMOVED = UE::UE_BPXREMOVED, + UE_BPXACTIVE = UE::UE_BPXACTIVE, + UE_BPXINACTIVE = UE::UE_BPXINACTIVE }; enum eBPType { - UE_BREAKPOINT = UE::UE_BREAKPOINT, - UE_SINGLESHOOT = UE::UE_SINGLESHOOT, - //UE_HARDWARE = UE::UE_HARDWARE, + UE_BREAKPOINT = UE::UE_BREAKPOINT, + UE_SINGLESHOOT = UE::UE_SINGLESHOOT, + //UE_HARDWARE = UE::UE_HARDWARE, }; enum eMemoryBPType { - UE_MEMORY = UE::UE_MEMORY, - UE_MEMORY_READ = UE::UE_MEMORY_READ, - UE_MEMORY_WRITE = UE::UE_MEMORY_WRITE, - UE_MEMORY_EXECUTE = UE::UE_MEMORY_EXECUTE + UE_MEMORY = UE::UE_MEMORY, + UE_MEMORY_READ = UE::UE_MEMORY_READ, + UE_MEMORY_WRITE = UE::UE_MEMORY_WRITE, + UE_MEMORY_EXECUTE = UE::UE_MEMORY_EXECUTE }; enum eHWBPType : DWORD { - UE_HARDWARE_EXECUTE = UE::UE_HARDWARE_EXECUTE, - UE_HARDWARE_WRITE = UE::UE_HARDWARE_WRITE, - UE_HARDWARE_READWRITE = UE::UE_HARDWARE_READWRITE + UE_HARDWARE_EXECUTE = UE::UE_HARDWARE_EXECUTE, + UE_HARDWARE_WRITE = UE::UE_HARDWARE_WRITE, + UE_HARDWARE_READWRITE = UE::UE_HARDWARE_READWRITE }; enum eHWBPSize : DWORD { - UE_HARDWARE_SIZE_1 = UE::UE_HARDWARE_SIZE_1, - UE_HARDWARE_SIZE_2 = UE::UE_HARDWARE_SIZE_2, - UE_HARDWARE_SIZE_4 = UE::UE_HARDWARE_SIZE_4, - UE_HARDWARE_SIZE_8 = UE::UE_HARDWARE_SIZE_8 + UE_HARDWARE_SIZE_1 = UE::UE_HARDWARE_SIZE_1, + UE_HARDWARE_SIZE_2 = UE::UE_HARDWARE_SIZE_2, + UE_HARDWARE_SIZE_4 = UE::UE_HARDWARE_SIZE_4, + UE_HARDWARE_SIZE_8 = UE::UE_HARDWARE_SIZE_8 }; enum eLibraryEvent : DWORD { - UE_ON_LIB_LOAD = UE::UE_ON_LIB_LOAD, - UE_ON_LIB_UNLOAD = UE::UE_ON_LIB_UNLOAD, - UE_ON_LIB_ALL = UE::UE_ON_LIB_ALL + UE_ON_LIB_LOAD = UE::UE_ON_LIB_LOAD, + UE_ON_LIB_UNLOAD = UE::UE_ON_LIB_UNLOAD, + UE_ON_LIB_ALL = UE::UE_ON_LIB_ALL }; enum eBPPlace : DWORD { - UE_APISTART = UE::UE_APISTART, - UE_APIEND = UE::UE_APIEND + UE_APISTART = UE::UE_APISTART, + UE_APIEND = UE::UE_APIEND }; enum ePlatform : int { - UE_PLATFORM_x86 = UE::UE_PLATFORM_x86, - UE_PLATFORM_x64 = UE::UE_PLATFORM_x64, - UE_PLATFORM_ALL = UE::UE_PLATFORM_ALL + UE_PLATFORM_x86 = UE::UE_PLATFORM_x86, + UE_PLATFORM_x64 = UE::UE_PLATFORM_x64, + UE_PLATFORM_ALL = UE::UE_PLATFORM_ALL }; enum eFunctionType : DWORD { - UE_FUNCTION_STDCALL = UE::UE_FUNCTION_STDCALL, - UE_FUNCTION_CCALL = UE::UE_FUNCTION_CCALL, - UE_FUNCTION_FASTCALL = UE::UE_FUNCTION_FASTCALL, - UE_FUNCTION_STDCALL_RET = UE::UE_FUNCTION_STDCALL_RET, - UE_FUNCTION_CCALL_RET = UE::UE_FUNCTION_CCALL_RET, - UE_FUNCTION_FASTCALL_RET = UE::UE_FUNCTION_FASTCALL_RET, - UE_FUNCTION_STDCALL_CALL = UE::UE_FUNCTION_STDCALL_CALL, - UE_FUNCTION_CCALL_CALL = UE::UE_FUNCTION_CCALL_CALL, - UE_FUNCTION_FASTCALL_CALL = UE::UE_FUNCTION_FASTCALL_CALL + UE_FUNCTION_STDCALL = UE::UE_FUNCTION_STDCALL, + UE_FUNCTION_CCALL = UE::UE_FUNCTION_CCALL, + UE_FUNCTION_FASTCALL = UE::UE_FUNCTION_FASTCALL, + UE_FUNCTION_STDCALL_RET = UE::UE_FUNCTION_STDCALL_RET, + UE_FUNCTION_CCALL_RET = UE::UE_FUNCTION_CCALL_RET, + UE_FUNCTION_FASTCALL_RET = UE::UE_FUNCTION_FASTCALL_RET, + UE_FUNCTION_STDCALL_CALL = UE::UE_FUNCTION_STDCALL_CALL, + UE_FUNCTION_CCALL_CALL = UE::UE_FUNCTION_CCALL_CALL, + UE_FUNCTION_FASTCALL_CALL = UE::UE_FUNCTION_FASTCALL_CALL }; enum eParameterType : DWORD { - UE_PARAMETER_BYTE = UE::UE_PARAMETER_BYTE, - UE_PARAMETER_WORD = UE::UE_PARAMETER_WORD, - UE_PARAMETER_DWORD = UE::UE_PARAMETER_DWORD, - UE_PARAMETER_QWORD = UE::UE_PARAMETER_QWORD, - UE_PARAMETER_PTR_BYTE = UE::UE_PARAMETER_PTR_BYTE, - UE_PARAMETER_PTR_WORD = UE::UE_PARAMETER_PTR_WORD, - UE_PARAMETER_PTR_DWORD = UE::UE_PARAMETER_PTR_DWORD, - UE_PARAMETER_PTR_QWORD = UE::UE_PARAMETER_PTR_QWORD, - UE_PARAMETER_STRING = UE::UE_PARAMETER_STRING, - UE_PARAMETER_UNICODE = UE::UE_PARAMETER_UNICODE + UE_PARAMETER_BYTE = UE::UE_PARAMETER_BYTE, + UE_PARAMETER_WORD = UE::UE_PARAMETER_WORD, + UE_PARAMETER_DWORD = UE::UE_PARAMETER_DWORD, + UE_PARAMETER_QWORD = UE::UE_PARAMETER_QWORD, + UE_PARAMETER_PTR_BYTE = UE::UE_PARAMETER_PTR_BYTE, + UE_PARAMETER_PTR_WORD = UE::UE_PARAMETER_PTR_WORD, + UE_PARAMETER_PTR_DWORD = UE::UE_PARAMETER_PTR_DWORD, + UE_PARAMETER_PTR_QWORD = UE::UE_PARAMETER_PTR_QWORD, + UE_PARAMETER_STRING = UE::UE_PARAMETER_STRING, + UE_PARAMETER_UNICODE = UE::UE_PARAMETER_UNICODE }; enum eCompareCondition : DWORD { - UE_CMP_NOCONDITION = UE::UE_CMP_NOCONDITION, - UE_CMP_EQUAL = UE::UE_CMP_EQUAL, - UE_CMP_NOTEQUAL = UE::UE_CMP_NOTEQUAL, - UE_CMP_GREATER = UE::UE_CMP_GREATER, - UE_CMP_GREATEROREQUAL = UE::UE_CMP_GREATEROREQUAL, - UE_CMP_LOWER = UE::UE_CMP_LOWER, - UE_CMP_LOWEROREQUAL = UE::UE_CMP_LOWEROREQUAL, - UE_CMP_REG_EQUAL = UE::UE_CMP_REG_EQUAL, - UE_CMP_REG_NOTEQUAL = UE::UE_CMP_REG_NOTEQUAL, - UE_CMP_REG_GREATER = UE::UE_CMP_REG_GREATER, - UE_CMP_REG_GREATEROREQUAL = UE::UE_CMP_REG_GREATEROREQUAL, - UE_CMP_REG_LOWER = UE::UE_CMP_REG_LOWER, - UE_CMP_REG_LOWEROREQUAL = UE::UE_CMP_REG_LOWEROREQUAL, - UE_CMP_ALWAYSFALSE = UE::UE_CMP_ALWAYSFALSE + UE_CMP_NOCONDITION = UE::UE_CMP_NOCONDITION, + UE_CMP_EQUAL = UE::UE_CMP_EQUAL, + UE_CMP_NOTEQUAL = UE::UE_CMP_NOTEQUAL, + UE_CMP_GREATER = UE::UE_CMP_GREATER, + UE_CMP_GREATEROREQUAL = UE::UE_CMP_GREATEROREQUAL, + UE_CMP_LOWER = UE::UE_CMP_LOWER, + UE_CMP_LOWEROREQUAL = UE::UE_CMP_LOWEROREQUAL, + UE_CMP_REG_EQUAL = UE::UE_CMP_REG_EQUAL, + UE_CMP_REG_NOTEQUAL = UE::UE_CMP_REG_NOTEQUAL, + UE_CMP_REG_GREATER = UE::UE_CMP_REG_GREATER, + UE_CMP_REG_GREATEROREQUAL = UE::UE_CMP_REG_GREATEROREQUAL, + UE_CMP_REG_LOWER = UE::UE_CMP_REG_LOWER, + UE_CMP_REG_LOWEROREQUAL = UE::UE_CMP_REG_LOWEROREQUAL, + UE_CMP_ALWAYSFALSE = UE::UE_CMP_ALWAYSFALSE }; enum eContextData : DWORD { - UE_EAX = UE::UE_EAX, - UE_EBX = UE::UE_EBX, - UE_ECX = UE::UE_ECX, - UE_EDX = UE::UE_EDX, - UE_EDI = UE::UE_EDI, - UE_ESI = UE::UE_ESI, - UE_EBP = UE::UE_EBP, - UE_ESP = UE::UE_ESP, - UE_EIP = UE::UE_EIP, - UE_EFLAGS = UE::UE_EFLAGS, - UE_DR0 = UE::UE_DR0, - UE_DR1 = UE::UE_DR1, - UE_DR2 = UE::UE_DR2, - UE_DR3 = UE::UE_DR3, - UE_DR6 = UE::UE_DR6, - UE_DR7 = UE::UE_DR7, - UE_RAX = UE::UE_RAX, - UE_RBX = UE::UE_RBX, - UE_RCX = UE::UE_RCX, - UE_RDX = UE::UE_RDX, - UE_RDI = UE::UE_RDI, - UE_RSI = UE::UE_RSI, - UE_RBP = UE::UE_RBP, - UE_RSP = UE::UE_RSP, - UE_RIP = UE::UE_RIP, - UE_RFLAGS = UE::UE_RFLAGS, - UE_R8 = UE::UE_R8, - UE_R9 = UE::UE_R9, - UE_R10 = UE::UE_R10, - UE_R11 = UE::UE_R11, - UE_R12 = UE::UE_R12, - UE_R13 = UE::UE_R13, - UE_R14 = UE::UE_R14, - UE_R15 = UE::UE_R15, - UE_CIP = UE::UE_CIP, - UE_CSP = UE::UE_CSP, - UE_SEG_GS = UE::UE_SEG_GS, - UE_SEG_FS = UE::UE_SEG_FS, - UE_SEG_ES = UE::UE_SEG_ES, - UE_SEG_DS = UE::UE_SEG_DS, - UE_SEG_CS = UE::UE_SEG_CS, - UE_SEG_SS = UE::UE_SEG_SS + UE_EAX = UE::UE_EAX, + UE_EBX = UE::UE_EBX, + UE_ECX = UE::UE_ECX, + UE_EDX = UE::UE_EDX, + UE_EDI = UE::UE_EDI, + UE_ESI = UE::UE_ESI, + UE_EBP = UE::UE_EBP, + UE_ESP = UE::UE_ESP, + UE_EIP = UE::UE_EIP, + UE_EFLAGS = UE::UE_EFLAGS, + UE_DR0 = UE::UE_DR0, + UE_DR1 = UE::UE_DR1, + UE_DR2 = UE::UE_DR2, + UE_DR3 = UE::UE_DR3, + UE_DR6 = UE::UE_DR6, + UE_DR7 = UE::UE_DR7, + UE_RAX = UE::UE_RAX, + UE_RBX = UE::UE_RBX, + UE_RCX = UE::UE_RCX, + UE_RDX = UE::UE_RDX, + UE_RDI = UE::UE_RDI, + UE_RSI = UE::UE_RSI, + UE_RBP = UE::UE_RBP, + UE_RSP = UE::UE_RSP, + UE_RIP = UE::UE_RIP, + UE_RFLAGS = UE::UE_RFLAGS, + UE_R8 = UE::UE_R8, + UE_R9 = UE::UE_R9, + UE_R10 = UE::UE_R10, + UE_R11 = UE::UE_R11, + UE_R12 = UE::UE_R12, + UE_R13 = UE::UE_R13, + UE_R14 = UE::UE_R14, + UE_R15 = UE::UE_R15, + UE_CIP = UE::UE_CIP, + UE_CSP = UE::UE_CSP, + UE_SEG_GS = UE::UE_SEG_GS, + UE_SEG_FS = UE::UE_SEG_FS, + UE_SEG_ES = UE::UE_SEG_ES, + UE_SEG_DS = UE::UE_SEG_DS, + UE_SEG_CS = UE::UE_SEG_CS, + UE_SEG_SS = UE::UE_SEG_SS }; enum eCheckDepth : DWORD { - UE_DEPTH_SURFACE = UE::UE_DEPTH_SURFACE, - UE_DEPTH_DEEP = UE::UE_DEPTH_DEEP + UE_DEPTH_SURFACE = UE::UE_DEPTH_SURFACE, + UE_DEPTH_DEEP = UE::UE_DEPTH_DEEP }; enum eFieldState : BYTE { - UE_FIELD_OK = UE::UE_FIELD_OK, - UE_FIELD_BROKEN_NON_FIXABLE = UE::UE_FIELD_BROKEN_NON_FIXABLE, - UE_FIELD_BROKEN_NON_CRITICAL = UE::UE_FIELD_BROKEN_NON_CRITICAL, - UE_FIELD_BROKEN_FIXABLE_FOR_STATIC_USE = UE::UE_FIELD_BROKEN_FIXABLE_FOR_STATIC_USE, - UE_FIELD_BROKEN_BUT_CAN_BE_EMULATED = UE::UE_FIELD_BROKEN_BUT_CAN_BE_EMULATED, - UE_FILED_FIXABLE_NON_CRITICAL = UE::UE_FILED_FIXABLE_NON_CRITICAL, - UE_FILED_FIXABLE_CRITICAL = UE::UE_FILED_FIXABLE_CRITICAL, - UE_FIELD_NOT_PRESET = UE::UE_FIELD_NOT_PRESET, - UE_FIELD_NOT_PRESET_WARNING = UE::UE_FIELD_NOT_PRESET_WARNING + UE_FIELD_OK = UE::UE_FIELD_OK, + UE_FIELD_BROKEN_NON_FIXABLE = UE::UE_FIELD_BROKEN_NON_FIXABLE, + UE_FIELD_BROKEN_NON_CRITICAL = UE::UE_FIELD_BROKEN_NON_CRITICAL, + UE_FIELD_BROKEN_FIXABLE_FOR_STATIC_USE = UE::UE_FIELD_BROKEN_FIXABLE_FOR_STATIC_USE, + UE_FIELD_BROKEN_BUT_CAN_BE_EMULATED = UE::UE_FIELD_BROKEN_BUT_CAN_BE_EMULATED, + UE_FILED_FIXABLE_NON_CRITICAL = UE::UE_FILED_FIXABLE_NON_CRITICAL, + UE_FILED_FIXABLE_CRITICAL = UE::UE_FILED_FIXABLE_CRITICAL, + UE_FIELD_NOT_PRESET = UE::UE_FIELD_NOT_PRESET, + UE_FIELD_NOT_PRESET_WARNING = UE::UE_FIELD_NOT_PRESET_WARNING }; enum eFileState : BYTE { - UE_RESULT_FILE_OK = UE::UE_RESULT_FILE_OK, - UE_RESULT_FILE_INVALID_BUT_FIXABLE = UE::UE_RESULT_FILE_INVALID_BUT_FIXABLE, - UE_RESULT_FILE_INVALID_AND_NON_FIXABLE = UE::UE_RESULT_FILE_INVALID_AND_NON_FIXABLE, - UE_RESULT_FILE_INVALID_FORMAT = UE::UE_RESULT_FILE_INVALID_FORMAT + UE_RESULT_FILE_OK = UE::UE_RESULT_FILE_OK, + UE_RESULT_FILE_INVALID_BUT_FIXABLE = UE::UE_RESULT_FILE_INVALID_BUT_FIXABLE, + UE_RESULT_FILE_INVALID_AND_NON_FIXABLE = UE::UE_RESULT_FILE_INVALID_AND_NON_FIXABLE, + UE_RESULT_FILE_INVALID_FORMAT = UE::UE_RESULT_FILE_INVALID_FORMAT }; // ---- @@ -362,361 +362,361 @@ class DumperW; class DumperX { - friend class DumperA; - friend class DumperW; + friend class DumperA; + friend class DumperW; protected: - typedef UE::PEStruct PEStruct; + typedef UE::PEStruct PEStruct; - static long long GetPE32DataFromMappedFile(ULONG_PTR FileMapVA, DWORD WhichSection, ePE32Data WhichData) - { - return UE::GetPE32DataFromMappedFile(FileMapVA, WhichSection, WhichData); - } - static bool GetPE32DataFromMappedFileEx(ULONG_PTR FileMapVA, PEStruct* DataStorage) - { - return UE::GetPE32DataFromMappedFileEx(FileMapVA, (void*)DataStorage); - } - static bool SetPE32DataForMappedFile(ULONG_PTR FileMapVA, DWORD WhichSection, ePE32Data WhichData, ULONG_PTR NewDataValue) - { - return UE::SetPE32DataForMappedFile(FileMapVA, WhichSection, WhichData, NewDataValue); - } - static bool SetPE32DataForMappedFileEx(ULONG_PTR FileMapVA, PEStruct* DataStorage) - { - return UE::SetPE32DataForMappedFileEx(FileMapVA, (void*)DataStorage); - } - static long GetPE32SectionNumberFromVA(ULONG_PTR FileMapVA, ULONG_PTR AddressToConvert) - { - return UE::GetPE32SectionNumberFromVA(FileMapVA, AddressToConvert); - } - static long long ConvertVAtoFileOffset(ULONG_PTR FileMapVA, ULONG_PTR AddressToConvert, bool ReturnType) - { - return UE::ConvertVAtoFileOffset(FileMapVA, AddressToConvert, ReturnType); - } - static long long ConvertVAtoFileOffsetEx(ULONG_PTR FileMapVA, DWORD FileSize, ULONG_PTR ImageBase, ULONG_PTR AddressToConvert, bool AddressIsRVA, bool ReturnType) - { - return UE::ConvertVAtoFileOffsetEx(FileMapVA, FileSize, ImageBase, AddressToConvert, AddressIsRVA, ReturnType); - } - static long long ConvertFileOffsetToVA(ULONG_PTR FileMapVA, ULONG_PTR AddressToConvert, bool ReturnType) - { - return UE::ConvertFileOffsetToVA(FileMapVA, AddressToConvert, ReturnType); - } - static long long ConvertFileOffsetToVAEx(ULONG_PTR FileMapVA, DWORD FileSize, ULONG_PTR ImageBase, ULONG_PTR AddressToConvert, bool ReturnType) - { - return UE::ConvertFileOffsetToVAEx(FileMapVA, FileSize, ImageBase, AddressToConvert, ReturnType); - } + static long long GetPE32DataFromMappedFile(ULONG_PTR FileMapVA, DWORD WhichSection, ePE32Data WhichData) + { + return UE::GetPE32DataFromMappedFile(FileMapVA, WhichSection, WhichData); + } + static bool GetPE32DataFromMappedFileEx(ULONG_PTR FileMapVA, PEStruct* DataStorage) + { + return UE::GetPE32DataFromMappedFileEx(FileMapVA, (void*)DataStorage); + } + static bool SetPE32DataForMappedFile(ULONG_PTR FileMapVA, DWORD WhichSection, ePE32Data WhichData, ULONG_PTR NewDataValue) + { + return UE::SetPE32DataForMappedFile(FileMapVA, WhichSection, WhichData, NewDataValue); + } + static bool SetPE32DataForMappedFileEx(ULONG_PTR FileMapVA, PEStruct* DataStorage) + { + return UE::SetPE32DataForMappedFileEx(FileMapVA, (void*)DataStorage); + } + static long GetPE32SectionNumberFromVA(ULONG_PTR FileMapVA, ULONG_PTR AddressToConvert) + { + return UE::GetPE32SectionNumberFromVA(FileMapVA, AddressToConvert); + } + static long long ConvertVAtoFileOffset(ULONG_PTR FileMapVA, ULONG_PTR AddressToConvert, bool ReturnType) + { + return UE::ConvertVAtoFileOffset(FileMapVA, AddressToConvert, ReturnType); + } + static long long ConvertVAtoFileOffsetEx(ULONG_PTR FileMapVA, DWORD FileSize, ULONG_PTR ImageBase, ULONG_PTR AddressToConvert, bool AddressIsRVA, bool ReturnType) + { + return UE::ConvertVAtoFileOffsetEx(FileMapVA, FileSize, ImageBase, AddressToConvert, AddressIsRVA, ReturnType); + } + static long long ConvertFileOffsetToVA(ULONG_PTR FileMapVA, ULONG_PTR AddressToConvert, bool ReturnType) + { + return UE::ConvertFileOffsetToVA(FileMapVA, AddressToConvert, ReturnType); + } + static long long ConvertFileOffsetToVAEx(ULONG_PTR FileMapVA, DWORD FileSize, ULONG_PTR ImageBase, ULONG_PTR AddressToConvert, bool ReturnType) + { + return UE::ConvertFileOffsetToVAEx(FileMapVA, FileSize, ImageBase, AddressToConvert, ReturnType); + } }; class DumperA { public: - static bool DumpProcess(HANDLE hProcess, void* ImageBase, const char* szDumpFileName, ULONG_PTR EntryPoint) - { - return UE::DumpProcess(hProcess, ImageBase, (char*)szDumpFileName, EntryPoint); - } - static bool DumpProcessEx(DWORD ProcessId, void* ImageBase, const char* szDumpFileName, ULONG_PTR EntryPoint) - { - return UE::DumpProcessEx(ProcessId, ImageBase, (char*)szDumpFileName, EntryPoint); - } - static bool DumpMemory(HANDLE hProcess, void* MemoryStart, ULONG_PTR MemorySize, const char* szDumpFileName) - { - return UE::DumpMemory(hProcess, MemoryStart, MemorySize, (char*)szDumpFileName); - } - static bool DumpMemoryEx(DWORD ProcessId, void* MemoryStart, ULONG_PTR MemorySize, const char* szDumpFileName) - { - return UE::DumpMemoryEx(ProcessId, MemoryStart, MemorySize, (char*)szDumpFileName); - } - static bool DumpRegions(HANDLE hProcess, const char* szDumpFolder, bool DumpAboveImageBaseOnly) - { - return UE::DumpRegions(hProcess, (char*)szDumpFolder, DumpAboveImageBaseOnly); - } - static bool DumpRegionsEx(DWORD ProcessId, const char* szDumpFolder, bool DumpAboveImageBaseOnly) - { - return UE::DumpRegionsEx(ProcessId, (char*)szDumpFolder, DumpAboveImageBaseOnly); - } - static bool DumpModule(HANDLE hProcess, void* ModuleBase, const char* szDumpFileName) - { - return UE::DumpModule(hProcess, ModuleBase, (char*)szDumpFileName); - } - static bool DumpModuleEx(DWORD ProcessId, void* ModuleBase, const char* szDumpFileName) - { - return UE::DumpModuleEx(ProcessId, ModuleBase, (char*)szDumpFileName); - } - static bool PastePEHeader(HANDLE hProcess, void* ImageBase, const char* szDebuggedFileName) - { - return UE::PastePEHeader(hProcess, ImageBase, (char*)szDebuggedFileName); - } - static bool ExtractSection(const char* szFileName, const char* szDumpFileName, DWORD SectionNumber) - { - return UE::ExtractSection((char*)szFileName, (char*)szDumpFileName, SectionNumber); - } - static bool ResortFileSections(const char* szFileName) - { - return UE::ResortFileSections((char*)szFileName); - } - static bool FindOverlay(const char* szFileName, DWORD* OverlayStart, DWORD* OverlaySize) - { - return UE::FindOverlay((char*)szFileName, OverlayStart, OverlaySize); - } - static bool ExtractOverlay(const char* szFileName, const char* szExtractedFileName) - { - return UE::ExtractOverlay((char*)szFileName, (char*)szExtractedFileName); - } - static bool AddOverlay(const char* szFileName, const char* szOverlayFileName) - { - return UE::AddOverlay((char*)szFileName, (char*)szOverlayFileName); - } - static bool CopyOverlay(const char* szInFileName, const char* szOutFileName) - { - return UE::CopyOverlay((char*)szInFileName, (char*)szOutFileName); - } - static bool RemoveOverlay(const char* szFileName) - { - return UE::RemoveOverlay((char*)szFileName); - } - static bool MakeAllSectionsRWE(const char* szFileName) - { - return UE::MakeAllSectionsRWE((char*)szFileName); - } - static long AddNewSectionEx(const char* szFileName, const char* szSectionName, DWORD SectionSize, DWORD SectionAttributes, const void* SectionContent, DWORD ContentSize) - { - return UE::AddNewSectionEx((char*)szFileName, (char*)szSectionName, SectionSize, SectionAttributes, (void*)SectionContent, ContentSize); - } - static long AddNewSection(const char* szFileName, const char* szSectionName, DWORD SectionSize) - { - return UE::AddNewSection((char*)szFileName, (char*)szSectionName, SectionSize); - } - static bool ResizeLastSection(const char* szFileName, DWORD NumberOfExpandBytes, bool AlignResizeData) - { - return UE::ResizeLastSection((char*)szFileName, NumberOfExpandBytes, AlignResizeData); - } - static void SetSharedOverlay(const char* szFileName) - { - return UE::SetSharedOverlay((char*)szFileName); - } - static const char* GetSharedOverlay() - { - return UE::GetSharedOverlay(); - } - static bool DeleteLastSection(const char* szFileName) - { - return UE::DeleteLastSection((char*)szFileName); - } - static bool DeleteLastSectionEx(const char* szFileName, DWORD NumberOfSections) - { - return UE::DeleteLastSectionEx((char*)szFileName, NumberOfSections); - } - static long long GetPE32Data(const char* szFileName, DWORD WhichSection, ePE32Data WhichData) - { - return UE::GetPE32Data((char*)szFileName, WhichSection, WhichData); - } - static bool GetPE32DataEx(const char* szFileName, DumperX::PEStruct* DataStorage) - { - return UE::GetPE32DataEx((char*)szFileName, DataStorage); - } - static bool SetPE32Data(const char* szFileName, DWORD WhichSection, ePE32Data WhichData, ULONG_PTR NewDataValue) - { - return UE::SetPE32Data((char*)szFileName, WhichSection, WhichData, NewDataValue); - } - static bool SetPE32DataEx(const char* szFileName, const DumperX::PEStruct* DataStorage) - { - return UE::SetPE32DataEx((char*)szFileName, (void*)DataStorage); - } + static bool DumpProcess(HANDLE hProcess, void* ImageBase, const char* szDumpFileName, ULONG_PTR EntryPoint) + { + return UE::DumpProcess(hProcess, ImageBase, (char*)szDumpFileName, EntryPoint); + } + static bool DumpProcessEx(DWORD ProcessId, void* ImageBase, const char* szDumpFileName, ULONG_PTR EntryPoint) + { + return UE::DumpProcessEx(ProcessId, ImageBase, (char*)szDumpFileName, EntryPoint); + } + static bool DumpMemory(HANDLE hProcess, void* MemoryStart, ULONG_PTR MemorySize, const char* szDumpFileName) + { + return UE::DumpMemory(hProcess, MemoryStart, MemorySize, (char*)szDumpFileName); + } + static bool DumpMemoryEx(DWORD ProcessId, void* MemoryStart, ULONG_PTR MemorySize, const char* szDumpFileName) + { + return UE::DumpMemoryEx(ProcessId, MemoryStart, MemorySize, (char*)szDumpFileName); + } + static bool DumpRegions(HANDLE hProcess, const char* szDumpFolder, bool DumpAboveImageBaseOnly) + { + return UE::DumpRegions(hProcess, (char*)szDumpFolder, DumpAboveImageBaseOnly); + } + static bool DumpRegionsEx(DWORD ProcessId, const char* szDumpFolder, bool DumpAboveImageBaseOnly) + { + return UE::DumpRegionsEx(ProcessId, (char*)szDumpFolder, DumpAboveImageBaseOnly); + } + static bool DumpModule(HANDLE hProcess, void* ModuleBase, const char* szDumpFileName) + { + return UE::DumpModule(hProcess, ModuleBase, (char*)szDumpFileName); + } + static bool DumpModuleEx(DWORD ProcessId, void* ModuleBase, const char* szDumpFileName) + { + return UE::DumpModuleEx(ProcessId, ModuleBase, (char*)szDumpFileName); + } + static bool PastePEHeader(HANDLE hProcess, void* ImageBase, const char* szDebuggedFileName) + { + return UE::PastePEHeader(hProcess, ImageBase, (char*)szDebuggedFileName); + } + static bool ExtractSection(const char* szFileName, const char* szDumpFileName, DWORD SectionNumber) + { + return UE::ExtractSection((char*)szFileName, (char*)szDumpFileName, SectionNumber); + } + static bool ResortFileSections(const char* szFileName) + { + return UE::ResortFileSections((char*)szFileName); + } + static bool FindOverlay(const char* szFileName, DWORD* OverlayStart, DWORD* OverlaySize) + { + return UE::FindOverlay((char*)szFileName, OverlayStart, OverlaySize); + } + static bool ExtractOverlay(const char* szFileName, const char* szExtractedFileName) + { + return UE::ExtractOverlay((char*)szFileName, (char*)szExtractedFileName); + } + static bool AddOverlay(const char* szFileName, const char* szOverlayFileName) + { + return UE::AddOverlay((char*)szFileName, (char*)szOverlayFileName); + } + static bool CopyOverlay(const char* szInFileName, const char* szOutFileName) + { + return UE::CopyOverlay((char*)szInFileName, (char*)szOutFileName); + } + static bool RemoveOverlay(const char* szFileName) + { + return UE::RemoveOverlay((char*)szFileName); + } + static bool MakeAllSectionsRWE(const char* szFileName) + { + return UE::MakeAllSectionsRWE((char*)szFileName); + } + static long AddNewSectionEx(const char* szFileName, const char* szSectionName, DWORD SectionSize, DWORD SectionAttributes, const void* SectionContent, DWORD ContentSize) + { + return UE::AddNewSectionEx((char*)szFileName, (char*)szSectionName, SectionSize, SectionAttributes, (void*)SectionContent, ContentSize); + } + static long AddNewSection(const char* szFileName, const char* szSectionName, DWORD SectionSize) + { + return UE::AddNewSection((char*)szFileName, (char*)szSectionName, SectionSize); + } + static bool ResizeLastSection(const char* szFileName, DWORD NumberOfExpandBytes, bool AlignResizeData) + { + return UE::ResizeLastSection((char*)szFileName, NumberOfExpandBytes, AlignResizeData); + } + static void SetSharedOverlay(const char* szFileName) + { + return UE::SetSharedOverlay((char*)szFileName); + } + static const char* GetSharedOverlay() + { + return UE::GetSharedOverlay(); + } + static bool DeleteLastSection(const char* szFileName) + { + return UE::DeleteLastSection((char*)szFileName); + } + static bool DeleteLastSectionEx(const char* szFileName, DWORD NumberOfSections) + { + return UE::DeleteLastSectionEx((char*)szFileName, NumberOfSections); + } + static long long GetPE32Data(const char* szFileName, DWORD WhichSection, ePE32Data WhichData) + { + return UE::GetPE32Data((char*)szFileName, WhichSection, WhichData); + } + static bool GetPE32DataEx(const char* szFileName, DumperX::PEStruct* DataStorage) + { + return UE::GetPE32DataEx((char*)szFileName, DataStorage); + } + static bool SetPE32Data(const char* szFileName, DWORD WhichSection, ePE32Data WhichData, ULONG_PTR NewDataValue) + { + return UE::SetPE32Data((char*)szFileName, WhichSection, WhichData, NewDataValue); + } + static bool SetPE32DataEx(const char* szFileName, const DumperX::PEStruct* DataStorage) + { + return UE::SetPE32DataEx((char*)szFileName, (void*)DataStorage); + } }; class DumperW { public: - static bool DumpProcess(HANDLE hProcess, void* ImageBase, const wchar_t* szDumpFileName, ULONG_PTR EntryPoint) - { - return UE::DumpProcessW(hProcess, ImageBase, (wchar_t*)szDumpFileName, EntryPoint); - } - static bool DumpProcessEx(DWORD ProcessId, void* ImageBase, const wchar_t* szDumpFileName, ULONG_PTR EntryPoint) - { - return UE::DumpProcessExW(ProcessId, ImageBase, (wchar_t*)szDumpFileName, EntryPoint); - } - static bool DumpMemory(HANDLE hProcess, void* MemoryStart, ULONG_PTR MemorySize, const wchar_t* szDumpFileName) - { - return UE::DumpMemoryW(hProcess, MemoryStart, MemorySize, (wchar_t*)szDumpFileName); - } - static bool DumpMemoryEx(DWORD ProcessId, void* MemoryStart, ULONG_PTR MemorySize, const wchar_t* szDumpFileName) - { - return UE::DumpMemoryExW(ProcessId, MemoryStart, MemorySize, (wchar_t*)szDumpFileName); - } - static bool DumpRegions(HANDLE hProcess, const wchar_t* szDumpFolder, bool DumpAboveImageBaseOnly) - { - return UE::DumpRegionsW(hProcess, (wchar_t*)szDumpFolder, DumpAboveImageBaseOnly); - } - static bool DumpRegionsEx(DWORD ProcessId, const wchar_t* szDumpFolder, bool DumpAboveImageBaseOnly) - { - return UE::DumpRegionsExW(ProcessId, (wchar_t*)szDumpFolder, DumpAboveImageBaseOnly); - } - static bool DumpModule(HANDLE hProcess, void* ModuleBase, const wchar_t* szDumpFileName) - { - return UE::DumpModuleW(hProcess, ModuleBase, (wchar_t*)szDumpFileName); - } - static bool DumpModuleEx(DWORD ProcessId, void* ModuleBase, const wchar_t* szDumpFileName) - { - return UE::DumpModuleExW(ProcessId, ModuleBase, (wchar_t*)szDumpFileName); - } - static bool PastePEHeader(HANDLE hProcess, void* ImageBase, const wchar_t* szDebuggedFileName) - { - return UE::PastePEHeaderW(hProcess, ImageBase, (wchar_t*)szDebuggedFileName); - } - static bool ExtractSection(const wchar_t* szFileName, const wchar_t* szDumpFileName, DWORD SectionNumber) - { - return UE::ExtractSectionW((wchar_t*)szFileName, (wchar_t*)szDumpFileName, SectionNumber); - } - static bool ResortFileSections(const wchar_t* szFileName) - { - return UE::ResortFileSectionsW((wchar_t*)szFileName); - } - static bool FindOverlay(const wchar_t* szFileName, DWORD* OverlayStart, DWORD* OverlaySize) - { - return UE::FindOverlayW((wchar_t*)szFileName, OverlayStart, OverlaySize); - } - static bool ExtractOverlay(const wchar_t* szFileName, const wchar_t* szExtractedFileName) - { - return UE::ExtractOverlayW((wchar_t*)szFileName, (wchar_t*)szExtractedFileName); - } - static bool AddOverlay(const wchar_t* szFileName, const wchar_t* szOverlayFileName) - { - return UE::AddOverlayW((wchar_t*)szFileName, (wchar_t*)szOverlayFileName); - } - static bool CopyOverlay(const wchar_t* szInFileName, const wchar_t* szOutFileName) - { - return UE::CopyOverlayW((wchar_t*)szInFileName, (wchar_t*)szOutFileName); - } - static bool RemoveOverlay(const wchar_t* szFileName) - { - return UE::RemoveOverlayW((wchar_t*)szFileName); - } - static bool MakeAllSectionsRWE(const wchar_t* szFileName) - { - return UE::MakeAllSectionsRWEW((wchar_t*)szFileName); - } - static long AddNewSectionEx(const wchar_t* szFileName, const char* szSectionName, DWORD SectionSize, DWORD SectionAttributes, const void* SectionContent, DWORD ContentSize) - { - return UE::AddNewSectionExW((wchar_t*)szFileName, (char*)szSectionName, SectionSize, SectionAttributes, (void*)SectionContent, ContentSize); - } - static long AddNewSection(const wchar_t* szFileName, const char* szSectionName, DWORD SectionSize) - { - return UE::AddNewSectionW((wchar_t*)szFileName, (char*)szSectionName, SectionSize); - } - static bool ResizeLastSection(const wchar_t* szFileName, DWORD NumberOfExpandBytes, bool AlignResizeData) - { - return UE::ResizeLastSectionW((wchar_t*)szFileName, NumberOfExpandBytes, AlignResizeData); - } - static void SetSharedOverlay(const wchar_t* szFileName) - { - return UE::SetSharedOverlayW((wchar_t*)szFileName); - } - static const wchar_t* GetSharedOverlay() - { - return UE::GetSharedOverlayW(); - } - static bool DeleteLastSection(const wchar_t* szFileName) - { - return UE::DeleteLastSectionW((wchar_t*)szFileName); - } - static bool DeleteLastSectionEx(const wchar_t* szFileName, DWORD NumberOfSections) - { - return UE::DeleteLastSectionExW((wchar_t*)szFileName, NumberOfSections); - } - static long long GetPE32Data(const wchar_t* szFileName, DWORD WhichSection, ePE32Data WhichData) - { - return UE::GetPE32DataW((wchar_t*)szFileName, WhichSection, WhichData); - } - static bool GetPE32DataEx(const wchar_t* szFileName, DumperX::PEStruct* DataStorage) - { - return UE::GetPE32DataExW((wchar_t*)szFileName, DataStorage); - } - static bool SetPE32Data(const wchar_t* szFileName, DWORD WhichSection, ePE32Data WhichData, ULONG_PTR NewDataValue) - { - return UE::SetPE32DataW((wchar_t*)szFileName, WhichSection, WhichData, NewDataValue); - } - static bool SetPE32DataEx(const wchar_t* szFileName, const DumperX::PEStruct* DataStorage) - { - return UE::SetPE32DataExW((wchar_t*)szFileName, (void*)DataStorage); - } + static bool DumpProcess(HANDLE hProcess, void* ImageBase, const wchar_t* szDumpFileName, ULONG_PTR EntryPoint) + { + return UE::DumpProcessW(hProcess, ImageBase, (wchar_t*)szDumpFileName, EntryPoint); + } + static bool DumpProcessEx(DWORD ProcessId, void* ImageBase, const wchar_t* szDumpFileName, ULONG_PTR EntryPoint) + { + return UE::DumpProcessExW(ProcessId, ImageBase, (wchar_t*)szDumpFileName, EntryPoint); + } + static bool DumpMemory(HANDLE hProcess, void* MemoryStart, ULONG_PTR MemorySize, const wchar_t* szDumpFileName) + { + return UE::DumpMemoryW(hProcess, MemoryStart, MemorySize, (wchar_t*)szDumpFileName); + } + static bool DumpMemoryEx(DWORD ProcessId, void* MemoryStart, ULONG_PTR MemorySize, const wchar_t* szDumpFileName) + { + return UE::DumpMemoryExW(ProcessId, MemoryStart, MemorySize, (wchar_t*)szDumpFileName); + } + static bool DumpRegions(HANDLE hProcess, const wchar_t* szDumpFolder, bool DumpAboveImageBaseOnly) + { + return UE::DumpRegionsW(hProcess, (wchar_t*)szDumpFolder, DumpAboveImageBaseOnly); + } + static bool DumpRegionsEx(DWORD ProcessId, const wchar_t* szDumpFolder, bool DumpAboveImageBaseOnly) + { + return UE::DumpRegionsExW(ProcessId, (wchar_t*)szDumpFolder, DumpAboveImageBaseOnly); + } + static bool DumpModule(HANDLE hProcess, void* ModuleBase, const wchar_t* szDumpFileName) + { + return UE::DumpModuleW(hProcess, ModuleBase, (wchar_t*)szDumpFileName); + } + static bool DumpModuleEx(DWORD ProcessId, void* ModuleBase, const wchar_t* szDumpFileName) + { + return UE::DumpModuleExW(ProcessId, ModuleBase, (wchar_t*)szDumpFileName); + } + static bool PastePEHeader(HANDLE hProcess, void* ImageBase, const wchar_t* szDebuggedFileName) + { + return UE::PastePEHeaderW(hProcess, ImageBase, (wchar_t*)szDebuggedFileName); + } + static bool ExtractSection(const wchar_t* szFileName, const wchar_t* szDumpFileName, DWORD SectionNumber) + { + return UE::ExtractSectionW((wchar_t*)szFileName, (wchar_t*)szDumpFileName, SectionNumber); + } + static bool ResortFileSections(const wchar_t* szFileName) + { + return UE::ResortFileSectionsW((wchar_t*)szFileName); + } + static bool FindOverlay(const wchar_t* szFileName, DWORD* OverlayStart, DWORD* OverlaySize) + { + return UE::FindOverlayW((wchar_t*)szFileName, OverlayStart, OverlaySize); + } + static bool ExtractOverlay(const wchar_t* szFileName, const wchar_t* szExtractedFileName) + { + return UE::ExtractOverlayW((wchar_t*)szFileName, (wchar_t*)szExtractedFileName); + } + static bool AddOverlay(const wchar_t* szFileName, const wchar_t* szOverlayFileName) + { + return UE::AddOverlayW((wchar_t*)szFileName, (wchar_t*)szOverlayFileName); + } + static bool CopyOverlay(const wchar_t* szInFileName, const wchar_t* szOutFileName) + { + return UE::CopyOverlayW((wchar_t*)szInFileName, (wchar_t*)szOutFileName); + } + static bool RemoveOverlay(const wchar_t* szFileName) + { + return UE::RemoveOverlayW((wchar_t*)szFileName); + } + static bool MakeAllSectionsRWE(const wchar_t* szFileName) + { + return UE::MakeAllSectionsRWEW((wchar_t*)szFileName); + } + static long AddNewSectionEx(const wchar_t* szFileName, const char* szSectionName, DWORD SectionSize, DWORD SectionAttributes, const void* SectionContent, DWORD ContentSize) + { + return UE::AddNewSectionExW((wchar_t*)szFileName, (char*)szSectionName, SectionSize, SectionAttributes, (void*)SectionContent, ContentSize); + } + static long AddNewSection(const wchar_t* szFileName, const char* szSectionName, DWORD SectionSize) + { + return UE::AddNewSectionW((wchar_t*)szFileName, (char*)szSectionName, SectionSize); + } + static bool ResizeLastSection(const wchar_t* szFileName, DWORD NumberOfExpandBytes, bool AlignResizeData) + { + return UE::ResizeLastSectionW((wchar_t*)szFileName, NumberOfExpandBytes, AlignResizeData); + } + static void SetSharedOverlay(const wchar_t* szFileName) + { + return UE::SetSharedOverlayW((wchar_t*)szFileName); + } + static const wchar_t* GetSharedOverlay() + { + return UE::GetSharedOverlayW(); + } + static bool DeleteLastSection(const wchar_t* szFileName) + { + return UE::DeleteLastSectionW((wchar_t*)szFileName); + } + static bool DeleteLastSectionEx(const wchar_t* szFileName, DWORD NumberOfSections) + { + return UE::DeleteLastSectionExW((wchar_t*)szFileName, NumberOfSections); + } + static long long GetPE32Data(const wchar_t* szFileName, DWORD WhichSection, ePE32Data WhichData) + { + return UE::GetPE32DataW((wchar_t*)szFileName, WhichSection, WhichData); + } + static bool GetPE32DataEx(const wchar_t* szFileName, DumperX::PEStruct* DataStorage) + { + return UE::GetPE32DataExW((wchar_t*)szFileName, DataStorage); + } + static bool SetPE32Data(const wchar_t* szFileName, DWORD WhichSection, ePE32Data WhichData, ULONG_PTR NewDataValue) + { + return UE::SetPE32DataW((wchar_t*)szFileName, WhichSection, WhichData, NewDataValue); + } + static bool SetPE32DataEx(const wchar_t* szFileName, const DumperX::PEStruct* DataStorage) + { + return UE::SetPE32DataExW((wchar_t*)szFileName, (void*)DataStorage); + } }; class Dumper : DumperX, DumperA, DumperW { public: - using DumperX::PEStruct; + using DumperX::PEStruct; - using DumperA::DumpProcess; - using DumperW::DumpProcess; - using DumperA::DumpProcessEx; - using DumperW::DumpProcessEx; - using DumperA::DumpMemory; - using DumperW::DumpMemory; - using DumperA::DumpMemoryEx; - using DumperW::DumpMemoryEx; - using DumperA::DumpRegions; - using DumperW::DumpRegions; - using DumperA::DumpRegionsEx; - using DumperW::DumpRegionsEx; - using DumperA::DumpModule; - using DumperW::DumpModule; - using DumperA::DumpModuleEx; - using DumperW::DumpModuleEx; - using DumperA::PastePEHeader; - using DumperW::PastePEHeader; - using DumperA::ExtractSection; - using DumperW::ExtractSection; - using DumperA::ResortFileSections; - using DumperW::ResortFileSections; - using DumperA::FindOverlay; - using DumperW::FindOverlay; - using DumperA::ExtractOverlay; - using DumperW::ExtractOverlay; - using DumperA::AddOverlay; - using DumperW::AddOverlay; - using DumperA::CopyOverlay; - using DumperW::CopyOverlay; - using DumperA::RemoveOverlay; - using DumperW::RemoveOverlay; - using DumperA::MakeAllSectionsRWE; - using DumperW::MakeAllSectionsRWE; - using DumperA::AddNewSectionEx; - using DumperW::AddNewSectionEx; - using DumperA::AddNewSection; - using DumperW::AddNewSection; - using DumperA::ResizeLastSection; - using DumperW::ResizeLastSection; - using DumperA::SetSharedOverlay; - using DumperW::SetSharedOverlay; - #ifndef UNICODE - using DumperA::GetSharedOverlay; - #else - using DumperW::GetSharedOverlay; - #endif - using DumperA::DeleteLastSection; - using DumperW::DeleteLastSection; - using DumperA::DeleteLastSectionEx; - using DumperW::DeleteLastSectionEx; - using DumperX::GetPE32DataFromMappedFile; - using DumperA::GetPE32Data; - using DumperW::GetPE32Data; - using DumperX::GetPE32DataFromMappedFileEx; - using DumperA::GetPE32DataEx; - using DumperW::GetPE32DataEx; - using DumperX::SetPE32DataForMappedFile; - using DumperA::SetPE32Data; - using DumperW::SetPE32Data; - using DumperX::SetPE32DataForMappedFileEx; - using DumperA::SetPE32DataEx; - using DumperW::SetPE32DataEx; - using DumperX::GetPE32SectionNumberFromVA; - using DumperX::ConvertVAtoFileOffset; - using DumperX::ConvertVAtoFileOffsetEx; - using DumperX::ConvertFileOffsetToVA; - using DumperX::ConvertFileOffsetToVAEx; + using DumperA::DumpProcess; + using DumperW::DumpProcess; + using DumperA::DumpProcessEx; + using DumperW::DumpProcessEx; + using DumperA::DumpMemory; + using DumperW::DumpMemory; + using DumperA::DumpMemoryEx; + using DumperW::DumpMemoryEx; + using DumperA::DumpRegions; + using DumperW::DumpRegions; + using DumperA::DumpRegionsEx; + using DumperW::DumpRegionsEx; + using DumperA::DumpModule; + using DumperW::DumpModule; + using DumperA::DumpModuleEx; + using DumperW::DumpModuleEx; + using DumperA::PastePEHeader; + using DumperW::PastePEHeader; + using DumperA::ExtractSection; + using DumperW::ExtractSection; + using DumperA::ResortFileSections; + using DumperW::ResortFileSections; + using DumperA::FindOverlay; + using DumperW::FindOverlay; + using DumperA::ExtractOverlay; + using DumperW::ExtractOverlay; + using DumperA::AddOverlay; + using DumperW::AddOverlay; + using DumperA::CopyOverlay; + using DumperW::CopyOverlay; + using DumperA::RemoveOverlay; + using DumperW::RemoveOverlay; + using DumperA::MakeAllSectionsRWE; + using DumperW::MakeAllSectionsRWE; + using DumperA::AddNewSectionEx; + using DumperW::AddNewSectionEx; + using DumperA::AddNewSection; + using DumperW::AddNewSection; + using DumperA::ResizeLastSection; + using DumperW::ResizeLastSection; + using DumperA::SetSharedOverlay; + using DumperW::SetSharedOverlay; +#ifndef UNICODE + using DumperA::GetSharedOverlay; +#else + using DumperW::GetSharedOverlay; +#endif + using DumperA::DeleteLastSection; + using DumperW::DeleteLastSection; + using DumperA::DeleteLastSectionEx; + using DumperW::DeleteLastSectionEx; + using DumperX::GetPE32DataFromMappedFile; + using DumperA::GetPE32Data; + using DumperW::GetPE32Data; + using DumperX::GetPE32DataFromMappedFileEx; + using DumperA::GetPE32DataEx; + using DumperW::GetPE32DataEx; + using DumperX::SetPE32DataForMappedFile; + using DumperA::SetPE32Data; + using DumperW::SetPE32Data; + using DumperX::SetPE32DataForMappedFileEx; + using DumperA::SetPE32DataEx; + using DumperW::SetPE32DataEx; + using DumperX::GetPE32SectionNumberFromVA; + using DumperX::ConvertVAtoFileOffset; + using DumperX::ConvertVAtoFileOffsetEx; + using DumperX::ConvertFileOffsetToVA; + using DumperX::ConvertFileOffsetToVAEx; }; class RealignerA; @@ -724,232 +724,232 @@ class RealignerW; class RealignerX { - friend class RealignerA; - friend class RealignerW; + friend class RealignerA; + friend class RealignerW; protected: - typedef UE::FILE_STATUS_INFO FILE_STATUS_INFO; - typedef UE::FILE_FIX_INFO FILE_FIX_INFO; + typedef UE::FILE_STATUS_INFO FILE_STATUS_INFO; + typedef UE::FILE_FIX_INFO FILE_FIX_INFO; - static long RealignPE(ULONG_PTR FileMapVA, DWORD FileSize, DWORD RealingMode) - { - return UE::RealignPE(FileMapVA, FileSize, RealingMode); - } + static long RealignPE(ULONG_PTR FileMapVA, DWORD FileSize, DWORD RealingMode) + { + return UE::RealignPE(FileMapVA, FileSize, RealingMode); + } }; class RealignerA { public: - static bool FixHeaderCheckSum(const char* szFileName) - { - return UE::FixHeaderCheckSum((char*)szFileName); - } - static long RealignPEEx(const char* szFileName, DWORD RealingFileSize, DWORD ForcedFileAlignment) - { - return UE::RealignPEEx((char*)szFileName, RealingFileSize, ForcedFileAlignment); - } - static bool WipeSection(const char* szFileName, int WipeSectionNumber, bool RemovePhysically) - { - return UE::WipeSection((char*)szFileName, WipeSectionNumber, RemovePhysically); - } - static bool IsPE32FileValidEx(const char* szFileName, eCheckDepth CheckDepth, RealignerX::FILE_STATUS_INFO* FileStatusInfo) - { - return UE::IsPE32FileValidEx((char*)szFileName, CheckDepth, (void*)FileStatusInfo); - } - static bool FixBrokenPE32FileEx(const char* szFileName, const RealignerX::FILE_STATUS_INFO* FileStatusInfo, RealignerX::FILE_FIX_INFO* FileFixInfo) - { - return UE::FixBrokenPE32FileEx((char*)szFileName, (void*)FileStatusInfo, (void*)FileFixInfo); - } - static bool IsFileDLL(const char* szFileName, ULONG_PTR FileMapVA) - { - return UE::IsFileDLL((char*)szFileName, FileMapVA); - } + static bool FixHeaderCheckSum(const char* szFileName) + { + return UE::FixHeaderCheckSum((char*)szFileName); + } + static long RealignPEEx(const char* szFileName, DWORD RealingFileSize, DWORD ForcedFileAlignment) + { + return UE::RealignPEEx((char*)szFileName, RealingFileSize, ForcedFileAlignment); + } + static bool WipeSection(const char* szFileName, int WipeSectionNumber, bool RemovePhysically) + { + return UE::WipeSection((char*)szFileName, WipeSectionNumber, RemovePhysically); + } + static bool IsPE32FileValidEx(const char* szFileName, eCheckDepth CheckDepth, RealignerX::FILE_STATUS_INFO* FileStatusInfo) + { + return UE::IsPE32FileValidEx((char*)szFileName, CheckDepth, (void*)FileStatusInfo); + } + static bool FixBrokenPE32FileEx(const char* szFileName, const RealignerX::FILE_STATUS_INFO* FileStatusInfo, RealignerX::FILE_FIX_INFO* FileFixInfo) + { + return UE::FixBrokenPE32FileEx((char*)szFileName, (void*)FileStatusInfo, (void*)FileFixInfo); + } + static bool IsFileDLL(const char* szFileName, ULONG_PTR FileMapVA) + { + return UE::IsFileDLL((char*)szFileName, FileMapVA); + } }; class RealignerW { public: - static bool FixHeaderCheckSum(const wchar_t* szFileName) - { - return UE::FixHeaderCheckSumW((wchar_t*)szFileName); - } - static long RealignPEEx(const wchar_t* szFileName, DWORD RealingFileSize, DWORD ForcedFileAlignment) - { - return UE::RealignPEExW((wchar_t*)szFileName, RealingFileSize, ForcedFileAlignment); - } - static bool WipeSection(const wchar_t* szFileName, int WipeSectionNumber, bool RemovePhysically) - { - return UE::WipeSectionW((wchar_t*)szFileName, WipeSectionNumber, RemovePhysically); - } - static bool IsPE32FileValidEx(const wchar_t* szFileName, eCheckDepth CheckDepth, RealignerX::FILE_STATUS_INFO* FileStatusInfo) - { - return UE::IsPE32FileValidExW((wchar_t*)szFileName, CheckDepth, FileStatusInfo); - } - static bool FixBrokenPE32FileEx(const wchar_t* szFileName, const RealignerX::FILE_STATUS_INFO* FileStatusInfo, RealignerX::FILE_FIX_INFO* FileFixInfo) - { - return UE::FixBrokenPE32FileExW((wchar_t*)szFileName, (void*)FileStatusInfo, (void*)FileFixInfo); - } - static bool IsFileDLL(const wchar_t* szFileName, ULONG_PTR FileMapVA) - { - return UE::IsFileDLLW((wchar_t*)szFileName, FileMapVA); - } + static bool FixHeaderCheckSum(const wchar_t* szFileName) + { + return UE::FixHeaderCheckSumW((wchar_t*)szFileName); + } + static long RealignPEEx(const wchar_t* szFileName, DWORD RealingFileSize, DWORD ForcedFileAlignment) + { + return UE::RealignPEExW((wchar_t*)szFileName, RealingFileSize, ForcedFileAlignment); + } + static bool WipeSection(const wchar_t* szFileName, int WipeSectionNumber, bool RemovePhysically) + { + return UE::WipeSectionW((wchar_t*)szFileName, WipeSectionNumber, RemovePhysically); + } + static bool IsPE32FileValidEx(const wchar_t* szFileName, eCheckDepth CheckDepth, RealignerX::FILE_STATUS_INFO* FileStatusInfo) + { + return UE::IsPE32FileValidExW((wchar_t*)szFileName, CheckDepth, FileStatusInfo); + } + static bool FixBrokenPE32FileEx(const wchar_t* szFileName, const RealignerX::FILE_STATUS_INFO* FileStatusInfo, RealignerX::FILE_FIX_INFO* FileFixInfo) + { + return UE::FixBrokenPE32FileExW((wchar_t*)szFileName, (void*)FileStatusInfo, (void*)FileFixInfo); + } + static bool IsFileDLL(const wchar_t* szFileName, ULONG_PTR FileMapVA) + { + return UE::IsFileDLLW((wchar_t*)szFileName, FileMapVA); + } }; class Realigner: RealignerX, RealignerA, RealignerW { public: - using RealignerX::FILE_STATUS_INFO; - using RealignerX::FILE_FIX_INFO; + using RealignerX::FILE_STATUS_INFO; + using RealignerX::FILE_FIX_INFO; - using RealignerA::FixHeaderCheckSum; - using RealignerW::FixHeaderCheckSum; - using RealignerX::RealignPE; - using RealignerA::RealignPEEx; - using RealignerW::RealignPEEx; - using RealignerA::WipeSection; - using RealignerW::WipeSection; - using RealignerA::IsPE32FileValidEx; - using RealignerW::IsPE32FileValidEx; - using RealignerA::FixBrokenPE32FileEx; - using RealignerW::FixBrokenPE32FileEx; - using RealignerA::IsFileDLL; - using RealignerW::IsFileDLL; + using RealignerA::FixHeaderCheckSum; + using RealignerW::FixHeaderCheckSum; + using RealignerX::RealignPE; + using RealignerA::RealignPEEx; + using RealignerW::RealignPEEx; + using RealignerA::WipeSection; + using RealignerW::WipeSection; + using RealignerA::IsPE32FileValidEx; + using RealignerW::IsPE32FileValidEx; + using RealignerA::FixBrokenPE32FileEx; + using RealignerW::FixBrokenPE32FileEx; + using RealignerA::IsFileDLL; + using RealignerW::IsFileDLL; }; class Hider { public: - static void* GetPEBLocation(HANDLE hProcess) - { - return UE::GetPEBLocation(hProcess); - } - static bool HideDebugger(HANDLE hProcess, eHideLevel PatchAPILevel) - { - return UE::HideDebugger(hProcess, PatchAPILevel); - } - static bool UnHideDebugger(HANDLE hProcess, eHideLevel PatchAPILevel) - { - return UE::UnHideDebugger(hProcess, PatchAPILevel); - } + static void* GetPEBLocation(HANDLE hProcess) + { + return UE::GetPEBLocation(hProcess); + } + static bool HideDebugger(HANDLE hProcess, eHideLevel PatchAPILevel) + { + return UE::HideDebugger(hProcess, PatchAPILevel); + } + static bool UnHideDebugger(HANDLE hProcess, eHideLevel PatchAPILevel) + { + return UE::UnHideDebugger(hProcess, PatchAPILevel); + } }; class RelocaterX { protected: - static void Cleanup() - { - UE::RelocaterCleanup(); - } - static void Init(DWORD MemorySize, ULONG_PTR OldImageBase, ULONG_PTR NewImageBase) - { - UE::RelocaterInit(MemorySize, OldImageBase, NewImageBase); - } - static void AddNewRelocation(HANDLE hProcess, ULONG_PTR RelocateAddress, DWORD RelocateState) - { - UE::RelocaterAddNewRelocation(hProcess, RelocateAddress, RelocateState); - } - static long EstimatedSize() - { - return UE::RelocaterEstimatedSize(); - } - static bool ExportRelocation(ULONG_PTR StorePlace, DWORD StorePlaceRVA, ULONG_PTR FileMapVA) - { - return UE::RelocaterExportRelocation(StorePlace, StorePlaceRVA, FileMapVA); - } - static bool GrabRelocationTable(HANDLE hProcess, ULONG_PTR MemoryStart, DWORD MemorySize) - { - return UE::RelocaterGrabRelocationTable(hProcess, MemoryStart, MemorySize); - } - static bool GrabRelocationTableEx(HANDLE hProcess, ULONG_PTR MemoryStart, ULONG_PTR MemorySize, DWORD NtSizeOfImage) - { - return UE::RelocaterGrabRelocationTableEx(hProcess, MemoryStart, MemorySize, NtSizeOfImage); - } - static bool RelocateMemoryBlock(ULONG_PTR FileMapVA, ULONG_PTR MemoryLocation, void* RelocateMemory, DWORD RelocateMemorySize, ULONG_PTR CurrentLoadedBase, ULONG_PTR RelocateBase) - { - return UE::RelocaterRelocateMemoryBlock(FileMapVA, MemoryLocation, RelocateMemory, RelocateMemorySize, CurrentLoadedBase, RelocateBase); - } + static void Cleanup() + { + UE::RelocaterCleanup(); + } + static void Init(DWORD MemorySize, ULONG_PTR OldImageBase, ULONG_PTR NewImageBase) + { + UE::RelocaterInit(MemorySize, OldImageBase, NewImageBase); + } + static void AddNewRelocation(HANDLE hProcess, ULONG_PTR RelocateAddress, DWORD RelocateState) + { + UE::RelocaterAddNewRelocation(hProcess, RelocateAddress, RelocateState); + } + static long EstimatedSize() + { + return UE::RelocaterEstimatedSize(); + } + static bool ExportRelocation(ULONG_PTR StorePlace, DWORD StorePlaceRVA, ULONG_PTR FileMapVA) + { + return UE::RelocaterExportRelocation(StorePlace, StorePlaceRVA, FileMapVA); + } + static bool GrabRelocationTable(HANDLE hProcess, ULONG_PTR MemoryStart, DWORD MemorySize) + { + return UE::RelocaterGrabRelocationTable(hProcess, MemoryStart, MemorySize); + } + static bool GrabRelocationTableEx(HANDLE hProcess, ULONG_PTR MemoryStart, ULONG_PTR MemorySize, DWORD NtSizeOfImage) + { + return UE::RelocaterGrabRelocationTableEx(hProcess, MemoryStart, MemorySize, NtSizeOfImage); + } + static bool RelocateMemoryBlock(ULONG_PTR FileMapVA, ULONG_PTR MemoryLocation, void* RelocateMemory, DWORD RelocateMemorySize, ULONG_PTR CurrentLoadedBase, ULONG_PTR RelocateBase) + { + return UE::RelocaterRelocateMemoryBlock(FileMapVA, MemoryLocation, RelocateMemory, RelocateMemorySize, CurrentLoadedBase, RelocateBase); + } }; class RelocaterA { public: - static bool ExportRelocationEx(const char* szFileName, const char* szSectionName) - { - return UE::RelocaterExportRelocationEx((char*)szFileName, (char*)szSectionName); - } - static bool MakeSnapshot(HANDLE hProcess, const char* szSaveFileName, void* MemoryStart, ULONG_PTR MemorySize) - { - return UE::RelocaterMakeSnapshot(hProcess, (char*)szSaveFileName, MemoryStart, MemorySize); - } - static bool CompareTwoSnapshots(HANDLE hProcess, ULONG_PTR LoadedImageBase, ULONG_PTR NtSizeOfImage, const char* szDumpFile1, const char* szDumpFile2, ULONG_PTR MemStart) - { - return UE::RelocaterCompareTwoSnapshots(hProcess, LoadedImageBase, NtSizeOfImage, (char*)szDumpFile1, (char*)szDumpFile2, MemStart); - } - static bool ChangeFileBase(const char* szFileName, ULONG_PTR NewImageBase) - { - return UE::RelocaterChangeFileBase((char*)szFileName, NewImageBase); - } - static bool WipeRelocationTable(const char* szFileName) - { - return UE::RelocaterWipeRelocationTable((char*)szFileName); - } + static bool ExportRelocationEx(const char* szFileName, const char* szSectionName) + { + return UE::RelocaterExportRelocationEx((char*)szFileName, (char*)szSectionName); + } + static bool MakeSnapshot(HANDLE hProcess, const char* szSaveFileName, void* MemoryStart, ULONG_PTR MemorySize) + { + return UE::RelocaterMakeSnapshot(hProcess, (char*)szSaveFileName, MemoryStart, MemorySize); + } + static bool CompareTwoSnapshots(HANDLE hProcess, ULONG_PTR LoadedImageBase, ULONG_PTR NtSizeOfImage, const char* szDumpFile1, const char* szDumpFile2, ULONG_PTR MemStart) + { + return UE::RelocaterCompareTwoSnapshots(hProcess, LoadedImageBase, NtSizeOfImage, (char*)szDumpFile1, (char*)szDumpFile2, MemStart); + } + static bool ChangeFileBase(const char* szFileName, ULONG_PTR NewImageBase) + { + return UE::RelocaterChangeFileBase((char*)szFileName, NewImageBase); + } + static bool WipeRelocationTable(const char* szFileName) + { + return UE::RelocaterWipeRelocationTable((char*)szFileName); + } }; class RelocaterW { public: - static bool ExportRelocationEx(const wchar_t* szFileName, char* szSectionName) - { - return UE::RelocaterExportRelocationExW((wchar_t*)szFileName, (char*)szSectionName); - } - static bool MakeSnapshot(HANDLE hProcess, const wchar_t* szSaveFileName, void* MemoryStart, ULONG_PTR MemorySize) - { - return UE::RelocaterMakeSnapshotW(hProcess, (wchar_t*)szSaveFileName, MemoryStart, MemorySize); - } - static bool CompareTwoSnapshots(HANDLE hProcess, ULONG_PTR LoadedImageBase, ULONG_PTR NtSizeOfImage, const wchar_t* szDumpFile1, const wchar_t* szDumpFile2, ULONG_PTR MemStart) - { - return UE::RelocaterCompareTwoSnapshotsW(hProcess, LoadedImageBase, NtSizeOfImage, (wchar_t*)szDumpFile1, (wchar_t*)szDumpFile2, MemStart); - } - static bool ChangeFileBase(const wchar_t* szFileName, ULONG_PTR NewImageBase) - { - return UE::RelocaterChangeFileBaseW((wchar_t*)szFileName, NewImageBase); - } - static bool WipeRelocationTable(const wchar_t* szFileName) - { - return UE::RelocaterWipeRelocationTableW((wchar_t*)szFileName); - } + static bool ExportRelocationEx(const wchar_t* szFileName, char* szSectionName) + { + return UE::RelocaterExportRelocationExW((wchar_t*)szFileName, (char*)szSectionName); + } + static bool MakeSnapshot(HANDLE hProcess, const wchar_t* szSaveFileName, void* MemoryStart, ULONG_PTR MemorySize) + { + return UE::RelocaterMakeSnapshotW(hProcess, (wchar_t*)szSaveFileName, MemoryStart, MemorySize); + } + static bool CompareTwoSnapshots(HANDLE hProcess, ULONG_PTR LoadedImageBase, ULONG_PTR NtSizeOfImage, const wchar_t* szDumpFile1, const wchar_t* szDumpFile2, ULONG_PTR MemStart) + { + return UE::RelocaterCompareTwoSnapshotsW(hProcess, LoadedImageBase, NtSizeOfImage, (wchar_t*)szDumpFile1, (wchar_t*)szDumpFile2, MemStart); + } + static bool ChangeFileBase(const wchar_t* szFileName, ULONG_PTR NewImageBase) + { + return UE::RelocaterChangeFileBaseW((wchar_t*)szFileName, NewImageBase); + } + static bool WipeRelocationTable(const wchar_t* szFileName) + { + return UE::RelocaterWipeRelocationTableW((wchar_t*)szFileName); + } }; class Relocater : RelocaterX, RelocaterA, RelocaterW { public: - using RelocaterX::Cleanup; - using RelocaterX::Init; - using RelocaterX::AddNewRelocation; - using RelocaterX::EstimatedSize; - using RelocaterX::ExportRelocation; - using RelocaterA::ExportRelocationEx; - using RelocaterW::ExportRelocationEx; - using RelocaterX::GrabRelocationTable; - using RelocaterX::GrabRelocationTableEx; - using RelocaterA::MakeSnapshot; - using RelocaterW::MakeSnapshot; - using RelocaterA::CompareTwoSnapshots; - using RelocaterW::CompareTwoSnapshots; - using RelocaterA::ChangeFileBase; - using RelocaterW::ChangeFileBase; - using RelocaterX::RelocateMemoryBlock; - using RelocaterA::WipeRelocationTable; - using RelocaterW::WipeRelocationTable; + using RelocaterX::Cleanup; + using RelocaterX::Init; + using RelocaterX::AddNewRelocation; + using RelocaterX::EstimatedSize; + using RelocaterX::ExportRelocation; + using RelocaterA::ExportRelocationEx; + using RelocaterW::ExportRelocationEx; + using RelocaterX::GrabRelocationTable; + using RelocaterX::GrabRelocationTableEx; + using RelocaterA::MakeSnapshot; + using RelocaterW::MakeSnapshot; + using RelocaterA::CompareTwoSnapshots; + using RelocaterW::CompareTwoSnapshots; + using RelocaterA::ChangeFileBase; + using RelocaterW::ChangeFileBase; + using RelocaterX::RelocateMemoryBlock; + using RelocaterA::WipeRelocationTable; + using RelocaterW::WipeRelocationTable; }; class ResourcerA; @@ -957,192 +957,192 @@ class ResourcerW; class ResourcerX { - friend class ResourcerA; - friend class ResourcerW; + friend class ResourcerA; + friend class ResourcerW; protected: - typedef void(TITCALL *fResourceEnumCallback)(const wchar_t* szResourceType, DWORD ResourceType, const wchar_t* szResourceName, DWORD ResourceName, DWORD ResourceLanguage, DWORD ResourceData, DWORD ResourceSize); + typedef void(TITCALL *fResourceEnumCallback)(const wchar_t* szResourceType, DWORD ResourceType, const wchar_t* szResourceName, DWORD ResourceName, DWORD ResourceLanguage, DWORD ResourceData, DWORD ResourceSize); - static bool FreeLoadedFile(void* LoadedFileBase) - { - return UE::ResourcerFreeLoadedFile(LoadedFileBase); - } - static bool ExtractResourceFromFileEx(ULONG_PTR FileMapVA, char* szResourceType, char* szResourceName, char* szExtractedFileName) - { - return UE::ResourcerExtractResourceFromFileEx(FileMapVA, szResourceType, szResourceName, szExtractedFileName); - } - static bool FindResourceEx(ULONG_PTR FileMapVA, DWORD FileSize, wchar_t* szResourceType, DWORD ResourceType, wchar_t* szResourceName, DWORD ResourceName, DWORD ResourceLanguage, ULONG_PTR* pResourceData, DWORD* pResourceSize) - { - return UE::ResourcerFindResourceEx(FileMapVA, FileSize, szResourceType, ResourceType, szResourceName, ResourceName, ResourceLanguage, pResourceData, pResourceSize); - } - static void EnumerateResourceEx(ULONG_PTR FileMapVA, DWORD FileSize, fResourceEnumCallback CallBack) - { - UE::ResourcerEnumerateResourceEx(FileMapVA, FileSize, (void*)CallBack); - } + static bool FreeLoadedFile(void* LoadedFileBase) + { + return UE::ResourcerFreeLoadedFile(LoadedFileBase); + } + static bool ExtractResourceFromFileEx(ULONG_PTR FileMapVA, char* szResourceType, char* szResourceName, char* szExtractedFileName) + { + return UE::ResourcerExtractResourceFromFileEx(FileMapVA, szResourceType, szResourceName, szExtractedFileName); + } + static bool FindResourceEx(ULONG_PTR FileMapVA, DWORD FileSize, wchar_t* szResourceType, DWORD ResourceType, wchar_t* szResourceName, DWORD ResourceName, DWORD ResourceLanguage, ULONG_PTR* pResourceData, DWORD* pResourceSize) + { + return UE::ResourcerFindResourceEx(FileMapVA, FileSize, szResourceType, ResourceType, szResourceName, ResourceName, ResourceLanguage, pResourceData, pResourceSize); + } + static void EnumerateResourceEx(ULONG_PTR FileMapVA, DWORD FileSize, fResourceEnumCallback CallBack) + { + UE::ResourcerEnumerateResourceEx(FileMapVA, FileSize, (void*)CallBack); + } }; class ResourcerA { public: - static long long LoadFileForResourceUse(char* szFileName) - { - return UE::ResourcerLoadFileForResourceUse(szFileName); - } - static bool ExtractResourceFromFile(char* szFileName, char* szResourceType, char* szResourceName, char* szExtractedFileName) - { - return UE::ResourcerExtractResourceFromFile(szFileName, szResourceType, szResourceName, szExtractedFileName); - } - static bool FindResource(char* szFileName, char* szResourceType, DWORD ResourceType, char* szResourceName, DWORD ResourceName, DWORD ResourceLanguage, ULONG_PTR* pResourceData, DWORD* pResourceSize) - { - return UE::ResourcerFindResource(szFileName, szResourceType, ResourceType, szResourceName, ResourceName, ResourceLanguage, pResourceData, pResourceSize); - } - static void EnumerateResource(char* szFileName, ResourcerX::fResourceEnumCallback CallBack) - { - UE::ResourcerEnumerateResource(szFileName, (void*)CallBack); - } + static long long LoadFileForResourceUse(char* szFileName) + { + return UE::ResourcerLoadFileForResourceUse(szFileName); + } + static bool ExtractResourceFromFile(char* szFileName, char* szResourceType, char* szResourceName, char* szExtractedFileName) + { + return UE::ResourcerExtractResourceFromFile(szFileName, szResourceType, szResourceName, szExtractedFileName); + } + static bool FindResource(char* szFileName, char* szResourceType, DWORD ResourceType, char* szResourceName, DWORD ResourceName, DWORD ResourceLanguage, ULONG_PTR* pResourceData, DWORD* pResourceSize) + { + return UE::ResourcerFindResource(szFileName, szResourceType, ResourceType, szResourceName, ResourceName, ResourceLanguage, pResourceData, pResourceSize); + } + static void EnumerateResource(char* szFileName, ResourcerX::fResourceEnumCallback CallBack) + { + UE::ResourcerEnumerateResource(szFileName, (void*)CallBack); + } }; class ResourcerW { public: - static long long LoadFileForResourceUse(wchar_t* szFileName) - { - return UE::ResourcerLoadFileForResourceUseW(szFileName); - } - static bool ExtractResourceFromFile(wchar_t* szFileName, char* szResourceType, char* szResourceName, char* szExtractedFileName) - { - return UE::ResourcerExtractResourceFromFileW(szFileName, szResourceType, szResourceName, szExtractedFileName); - } - static bool FindResource(wchar_t* szFileName, wchar_t* szResourceType, DWORD ResourceType, wchar_t* szResourceName, DWORD ResourceName, DWORD ResourceLanguage, ULONG_PTR* pResourceData, DWORD* pResourceSize) - { - return UE::ResourcerFindResourceW(szFileName, szResourceType, ResourceType, szResourceName, ResourceName, ResourceLanguage, pResourceData, pResourceSize); - } - static void EnumerateResource(wchar_t* szFileName, ResourcerX::fResourceEnumCallback CallBack) - { - UE::ResourcerEnumerateResourceW(szFileName, (void*)CallBack); - } + static long long LoadFileForResourceUse(wchar_t* szFileName) + { + return UE::ResourcerLoadFileForResourceUseW(szFileName); + } + static bool ExtractResourceFromFile(wchar_t* szFileName, char* szResourceType, char* szResourceName, char* szExtractedFileName) + { + return UE::ResourcerExtractResourceFromFileW(szFileName, szResourceType, szResourceName, szExtractedFileName); + } + static bool FindResource(wchar_t* szFileName, wchar_t* szResourceType, DWORD ResourceType, wchar_t* szResourceName, DWORD ResourceName, DWORD ResourceLanguage, ULONG_PTR* pResourceData, DWORD* pResourceSize) + { + return UE::ResourcerFindResourceW(szFileName, szResourceType, ResourceType, szResourceName, ResourceName, ResourceLanguage, pResourceData, pResourceSize); + } + static void EnumerateResource(wchar_t* szFileName, ResourcerX::fResourceEnumCallback CallBack) + { + UE::ResourcerEnumerateResourceW(szFileName, (void*)CallBack); + } }; class Resourcer : ResourcerX, ResourcerA, ResourcerW { public: - using ResourcerX::fResourceEnumCallback; + using ResourcerX::fResourceEnumCallback; - using ResourcerA::LoadFileForResourceUse; - using ResourcerW::LoadFileForResourceUse; - using ResourcerX::FreeLoadedFile; - using ResourcerX::ExtractResourceFromFileEx; - using ResourcerA::ExtractResourceFromFile; - using ResourcerW::ExtractResourceFromFile; - using ResourcerA::FindResource; - using ResourcerW::FindResource; - using ResourcerX::FindResourceEx; - using ResourcerA::EnumerateResource; - using ResourcerW::EnumerateResource; - using ResourcerX::EnumerateResourceEx; + using ResourcerA::LoadFileForResourceUse; + using ResourcerW::LoadFileForResourceUse; + using ResourcerX::FreeLoadedFile; + using ResourcerX::ExtractResourceFromFileEx; + using ResourcerA::ExtractResourceFromFile; + using ResourcerW::ExtractResourceFromFile; + using ResourcerA::FindResource; + using ResourcerW::FindResource; + using ResourcerX::FindResourceEx; + using ResourcerA::EnumerateResource; + using ResourcerW::EnumerateResource; + using ResourcerX::EnumerateResourceEx; }; class Threader { public: - typedef UE::THREAD_ITEM_DATA THREAD_ITEM_DATA; + typedef UE::THREAD_ITEM_DATA THREAD_ITEM_DATA; - typedef void(TITCALL *fThreadEnumCallback)(const THREAD_ITEM_DATA* fThreadDetail); - typedef void(TITCALL *fThreadExitCallback)(const EXIT_THREAD_DEBUG_INFO* SpecialDBG); + typedef void(TITCALL *fThreadEnumCallback)(const THREAD_ITEM_DATA* fThreadDetail); + typedef void(TITCALL *fThreadExitCallback)(const EXIT_THREAD_DEBUG_INFO* SpecialDBG); - static bool ImportRunningThreadData(DWORD ProcessId) - { - return UE::ThreaderImportRunningThreadData(ProcessId); - } - static const THREAD_ITEM_DATA* GetThreadInfo(HANDLE hThread, DWORD ThreadId) - { - return (const THREAD_ITEM_DATA*)UE::ThreaderGetThreadInfo(hThread, ThreadId); - } - static void EnumThreadInfo(fThreadEnumCallback EnumCallBack) - { - UE::ThreaderEnumThreadInfo((void*)EnumCallBack); - } - static bool PauseThread(HANDLE hThread) - { - return UE::ThreaderPauseThread(hThread); - } - static bool ResumeThread(HANDLE hThread) - { - return UE::ThreaderResumeThread(hThread); - } - static bool TerminateThread(HANDLE hThread, DWORD ThreadExitCode) - { - return UE::ThreaderTerminateThread(hThread, ThreadExitCode); - } - static bool PauseAllThreads(bool LeaveMainRunning) - { - return UE::ThreaderPauseAllThreads(LeaveMainRunning); - } - static bool ResumeAllThreads(bool LeaveMainPaused) - { - return UE::ThreaderResumeAllThreads(LeaveMainPaused); - } - static bool PauseProcess() - { - return UE::ThreaderPauseProcess(); - } - static bool ResumeProcess() - { - return UE::ThreaderResumeProcess(); - } - static long long CreateRemoteThread(ULONG_PTR ThreadStartAddress, bool AutoCloseTheHandle, void* ThreadPassParameter, DWORD* ThreadId) - { - return UE::ThreaderCreateRemoteThread(ThreadStartAddress, AutoCloseTheHandle, ThreadPassParameter, ThreadId); - } - static bool InjectAndExecuteCode(void* InjectCode, DWORD StartDelta, DWORD InjectSize) - { - return UE::ThreaderInjectAndExecuteCode(InjectCode, StartDelta, InjectSize); - } - static long long CreateRemoteThreadEx(HANDLE hProcess, ULONG_PTR ThreadStartAddress, bool AutoCloseTheHandle, void* ThreadPassParameter, DWORD* ThreadId) - { - return UE::ThreaderCreateRemoteThreadEx(hProcess, ThreadStartAddress, AutoCloseTheHandle, ThreadPassParameter, ThreadId); - } - static bool InjectAndExecuteCodeEx(HANDLE hProcess, void* InjectCode, DWORD StartDelta, DWORD InjectSize) - { - return UE::ThreaderInjectAndExecuteCodeEx(hProcess, InjectCode, StartDelta, InjectSize); - } - static void SetCallBackForNextExitThreadEvent(fThreadExitCallback exitThreadCallBack) - { - UE::ThreaderSetCallBackForNextExitThreadEvent((void*)exitThreadCallBack); - } - static bool IsThreadStillRunning(HANDLE hThread) - { - return UE::ThreaderIsThreadStillRunning(hThread); - } - static bool IsThreadActive(HANDLE hThread) - { - return UE::ThreaderIsThreadActive(hThread); - } - static bool IsAnyThreadActive() - { - return UE::ThreaderIsAnyThreadActive(); - } - static bool ExecuteOnlyInjectedThreads() - { - return UE::ThreaderExecuteOnlyInjectedThreads(); - } - static long long GetOpenHandleForThread(DWORD ThreadId) - { - return UE::ThreaderGetOpenHandleForThread(ThreadId); - } - static const THREAD_ITEM_DATA* GetThreadData() - { - return (const THREAD_ITEM_DATA*)UE::ThreaderGetThreadData(); - } - static bool IsExceptionInMainThread() - { - return UE::ThreaderIsExceptionInMainThread(); - } + static bool ImportRunningThreadData(DWORD ProcessId) + { + return UE::ThreaderImportRunningThreadData(ProcessId); + } + static const THREAD_ITEM_DATA* GetThreadInfo(HANDLE hThread, DWORD ThreadId) + { + return (const THREAD_ITEM_DATA*)UE::ThreaderGetThreadInfo(hThread, ThreadId); + } + static void EnumThreadInfo(fThreadEnumCallback EnumCallBack) + { + UE::ThreaderEnumThreadInfo((void*)EnumCallBack); + } + static bool PauseThread(HANDLE hThread) + { + return UE::ThreaderPauseThread(hThread); + } + static bool ResumeThread(HANDLE hThread) + { + return UE::ThreaderResumeThread(hThread); + } + static bool TerminateThread(HANDLE hThread, DWORD ThreadExitCode) + { + return UE::ThreaderTerminateThread(hThread, ThreadExitCode); + } + static bool PauseAllThreads(bool LeaveMainRunning) + { + return UE::ThreaderPauseAllThreads(LeaveMainRunning); + } + static bool ResumeAllThreads(bool LeaveMainPaused) + { + return UE::ThreaderResumeAllThreads(LeaveMainPaused); + } + static bool PauseProcess() + { + return UE::ThreaderPauseProcess(); + } + static bool ResumeProcess() + { + return UE::ThreaderResumeProcess(); + } + static long long CreateRemoteThread(ULONG_PTR ThreadStartAddress, bool AutoCloseTheHandle, void* ThreadPassParameter, DWORD* ThreadId) + { + return UE::ThreaderCreateRemoteThread(ThreadStartAddress, AutoCloseTheHandle, ThreadPassParameter, ThreadId); + } + static bool InjectAndExecuteCode(void* InjectCode, DWORD StartDelta, DWORD InjectSize) + { + return UE::ThreaderInjectAndExecuteCode(InjectCode, StartDelta, InjectSize); + } + static long long CreateRemoteThreadEx(HANDLE hProcess, ULONG_PTR ThreadStartAddress, bool AutoCloseTheHandle, void* ThreadPassParameter, DWORD* ThreadId) + { + return UE::ThreaderCreateRemoteThreadEx(hProcess, ThreadStartAddress, AutoCloseTheHandle, ThreadPassParameter, ThreadId); + } + static bool InjectAndExecuteCodeEx(HANDLE hProcess, void* InjectCode, DWORD StartDelta, DWORD InjectSize) + { + return UE::ThreaderInjectAndExecuteCodeEx(hProcess, InjectCode, StartDelta, InjectSize); + } + static void SetCallBackForNextExitThreadEvent(fThreadExitCallback exitThreadCallBack) + { + UE::ThreaderSetCallBackForNextExitThreadEvent((void*)exitThreadCallBack); + } + static bool IsThreadStillRunning(HANDLE hThread) + { + return UE::ThreaderIsThreadStillRunning(hThread); + } + static bool IsThreadActive(HANDLE hThread) + { + return UE::ThreaderIsThreadActive(hThread); + } + static bool IsAnyThreadActive() + { + return UE::ThreaderIsAnyThreadActive(); + } + static bool ExecuteOnlyInjectedThreads() + { + return UE::ThreaderExecuteOnlyInjectedThreads(); + } + static long long GetOpenHandleForThread(DWORD ThreadId) + { + return UE::ThreaderGetOpenHandleForThread(ThreadId); + } + static const THREAD_ITEM_DATA* GetThreadData() + { + return (const THREAD_ITEM_DATA*)UE::ThreaderGetThreadData(); + } + static bool IsExceptionInMainThread() + { + return UE::ThreaderIsExceptionInMainThread(); + } }; // -- @@ -1152,310 +1152,310 @@ class DebuggerW; class DebuggerX { - friend class DebuggerA; - friend class DebuggerW; + friend class DebuggerA; + friend class DebuggerW; protected: - typedef void (TITCALL *fBreakPointCallback)(); - typedef void (TITCALL *fCustomHandlerCallback)(const void* ExceptionData); + typedef void (TITCALL *fBreakPointCallback)(); + typedef void (TITCALL *fCustomHandlerCallback)(const void* ExceptionData); - static const char* StaticDisassembleEx(ULONG_PTR DisassmStart, const void* DisassmAddress) - { - return (const char*)UE::StaticDisassembleEx(DisassmStart, (void*)DisassmAddress); - } - static const char* StaticDisassemble(const void* DisassmAddress) - { - return (const char*)UE::StaticDisassemble((void*)DisassmAddress); - } - static const char* DisassembleEx(HANDLE hProcess, void* DisassmAddress, bool ReturnInstructionType) - { - return (const char*)UE::DisassembleEx(hProcess, DisassmAddress, ReturnInstructionType); - } - static const char* Disassemble(void* DisassmAddress) - { - return (const char*)UE::Disassemble(DisassmAddress); - } - static long StaticLengthDisassemble(const void* DisassmAddress) - { - return UE::StaticLengthDisassemble((void*)DisassmAddress); - } - static long LengthDisassembleEx(HANDLE hProcess, void* DisassmAddress) - { - return UE::LengthDisassembleEx(hProcess, DisassmAddress); - } - static long LengthDisassemble(void* DisassmAddress) - { - return UE::LengthDisassemble(DisassmAddress); - } - static bool StopDebug() - { - return UE::StopDebug(); - } - static void SetBPXOptions(long DefaultBreakPointType) - { - UE::SetBPXOptions(DefaultBreakPointType); - } - static bool IsBPXEnabled(ULONG_PTR bpxAddress) - { - return UE::IsBPXEnabled(bpxAddress); - } - static bool EnableBPX(ULONG_PTR bpxAddress) - { - return UE::EnableBPX(bpxAddress); - } - static bool DisableBPX(ULONG_PTR bpxAddress) - { - return UE::DisableBPX(bpxAddress); - } - static bool SetBPX(ULONG_PTR bpxAddress, eBPType bpxType, fBreakPointCallback bpxCallBack) - { - return UE::SetBPX(bpxAddress, bpxType, (void*)bpxCallBack); - } - static bool SetBPXEx(ULONG_PTR bpxAddress, eBPType bpxType, DWORD NumberOfExecution, eContextData CmpRegister, eCompareCondition CmpCondition, ULONG_PTR CmpValue, fBreakPointCallback bpxCallBack, fBreakPointCallback bpxCompareCallBack, fBreakPointCallback bpxRemoveCallBack) - { - return UE::SetBPXEx(bpxAddress, bpxType, NumberOfExecution, CmpRegister, CmpCondition, CmpValue, (void*)bpxCallBack, (void*)bpxCompareCallBack, (void*)bpxRemoveCallBack); - } - static bool DeleteBPX(ULONG_PTR bpxAddress) - { - return UE::DeleteBPX(bpxAddress); - } - static bool SafeDeleteBPX(ULONG_PTR bpxAddress) - { - return UE::SafeDeleteBPX(bpxAddress); - } - static bool SetAPIBreakPoint(const char* szDLLName, const char* szAPIName, eBPType bpxType, eBPPlace bpxPlace, fBreakPointCallback bpxCallBack) - { - return UE::SetAPIBreakPoint((char*)szDLLName, (char*)szAPIName, bpxType, bpxPlace, (void*)bpxCallBack); - } - static bool DeleteAPIBreakPoint(const char* szDLLName, const char* szAPIName, eBPPlace bpxPlace) - { - return UE::DeleteAPIBreakPoint((char*)szDLLName, (char*)szAPIName, bpxPlace); - } - static bool SafeDeleteAPIBreakPoint(const char* szDLLName, const char* szAPIName, eBPPlace bpxPlace) - { - return UE::SafeDeleteAPIBreakPoint((char*)szDLLName, (char*)szAPIName, bpxPlace); - } - static bool SetMemoryBPX(ULONG_PTR MemoryStart, DWORD SizeOfMemory, fBreakPointCallback bpxCallBack) - { - return UE::SetMemoryBPX(MemoryStart, SizeOfMemory, (void*)bpxCallBack); - } - static bool SetMemoryBPXEx(ULONG_PTR MemoryStart, DWORD SizeOfMemory, eMemoryBPType BreakPointType, bool RestoreOnHit, fBreakPointCallback bpxCallBack) - { - return UE::SetMemoryBPXEx(MemoryStart, SizeOfMemory, BreakPointType, RestoreOnHit, (void*)bpxCallBack); - } - static bool RemoveMemoryBPX(ULONG_PTR MemoryStart, DWORD SizeOfMemory) - { - return UE::RemoveMemoryBPX(MemoryStart, SizeOfMemory); - } - #ifdef _WIN64 - static bool GetContextFPUDataEx(HANDLE hActiveThread, XMM_SAVE_AREA32* FPUSaveArea) - #else - static bool GetContextFPUDataEx(HANDLE hActiveThread, FLOATING_SAVE_AREA* FPUSaveArea) - #endif - { - return UE::GetContextFPUDataEx(hActiveThread, FPUSaveArea); - } - static long long GetContextDataEx(HANDLE hActiveThread, eContextData IndexOfRegister) - { - return UE::GetContextDataEx(hActiveThread, IndexOfRegister); - } - static long long GetContextData(eContextData IndexOfRegister) - { - return UE::GetContextData(IndexOfRegister); - } - #ifdef _WIN64 - static bool SetContextFPUDataEx(HANDLE hActiveThread, const XMM_SAVE_AREA32* FPUSaveArea) - #else - static bool SetContextFPUDataEx(HANDLE hActiveThread, const FLOATING_SAVE_AREA* FPUSaveArea) - #endif - { - return UE::SetContextFPUDataEx(hActiveThread, (void*)FPUSaveArea); - } - static bool SetContextDataEx(HANDLE hActiveThread, eContextData IndexOfRegister, ULONG_PTR NewRegisterValue) - { - return UE::SetContextDataEx(hActiveThread, IndexOfRegister, NewRegisterValue); - } - static bool SetContextData(eContextData IndexOfRegister, ULONG_PTR NewRegisterValue) - { - return UE::SetContextData(IndexOfRegister, NewRegisterValue); - } - static void ClearExceptionNumber() - { - UE::ClearExceptionNumber(); - } - static long CurrentExceptionNumber() - { - return UE::CurrentExceptionNumber(); - } - static bool MatchPatternEx(HANDLE hProcess, void* MemoryToCheck, int SizeOfMemoryToCheck, const void* PatternToMatch, int SizeOfPatternToMatch, const BYTE* WildCard) - { - return UE::MatchPatternEx(hProcess, MemoryToCheck, SizeOfMemoryToCheck, (void*)PatternToMatch, SizeOfPatternToMatch, (BYTE*)WildCard); - } - static bool MatchPattern(void* MemoryToCheck, int SizeOfMemoryToCheck, const void* PatternToMatch, int SizeOfPatternToMatch, const BYTE* WildCard) - { - return UE::MatchPattern(MemoryToCheck, SizeOfMemoryToCheck, (void*)PatternToMatch, SizeOfPatternToMatch, (BYTE*)WildCard); - } - static long long FindEx(HANDLE hProcess, void* MemoryStart, DWORD MemorySize, const void* SearchPattern, DWORD PatternSize, const BYTE* WildCard) - { - return UE::FindEx(hProcess, MemoryStart, MemorySize, (void*)SearchPattern, PatternSize, (BYTE*)WildCard); - } - static long long Find(void* MemoryStart, DWORD MemorySize, const void* SearchPattern, DWORD PatternSize, const BYTE* WildCard) - { - return UE::Find(MemoryStart, MemorySize, (void*)SearchPattern, PatternSize, (BYTE*)WildCard); - } - static bool FillEx(HANDLE hProcess, void* MemoryStart, DWORD MemorySize, const BYTE* FillByte) - { - return UE::FillEx(hProcess, MemoryStart, MemorySize, (BYTE*)FillByte); - } - static bool Fill(void* MemoryStart, DWORD MemorySize, const BYTE* FillByte) - { - return UE::Fill(MemoryStart, MemorySize, (BYTE*)FillByte); - } - static bool PatchEx(HANDLE hProcess, void* MemoryStart, DWORD MemorySize, const void* ReplacePattern, DWORD ReplaceSize, bool AppendNOP, bool PrependNOP) - { - return UE::PatchEx(hProcess, MemoryStart, MemorySize, (void*)ReplacePattern, ReplaceSize, AppendNOP, PrependNOP); - } - static bool Patch(void* MemoryStart, DWORD MemorySize, const void* ReplacePattern, DWORD ReplaceSize, bool AppendNOP, bool PrependNOP) - { - return UE::Patch(MemoryStart, MemorySize, (void*)ReplacePattern, ReplaceSize, AppendNOP, PrependNOP); - } - static bool ReplaceEx(HANDLE hProcess, void* MemoryStart, DWORD MemorySize, const void* SearchPattern, DWORD PatternSize, DWORD NumberOfRepetitions, const void* ReplacePattern, DWORD ReplaceSize, const BYTE* WildCard) - { - return UE::ReplaceEx(hProcess, MemoryStart, MemorySize, (void*)SearchPattern, PatternSize, NumberOfRepetitions, (void*)ReplacePattern, ReplaceSize, (BYTE*)WildCard); - } - static bool Replace(void* MemoryStart, DWORD MemorySize, const void* SearchPattern, DWORD PatternSize, DWORD NumberOfRepetitions, const void* ReplacePattern, DWORD ReplaceSize, const BYTE* WildCard) - { - return UE::Replace(MemoryStart, MemorySize, (void*)SearchPattern, PatternSize, NumberOfRepetitions, (void*)ReplacePattern, ReplaceSize, (BYTE*)WildCard); - } - static const DEBUG_EVENT* GetDebugData() - { - return (const DEBUG_EVENT*)UE::GetDebugData(); - } - static const DEBUG_EVENT* GetTerminationData() - { - return (const DEBUG_EVENT*)UE::GetTerminationData(); - } - static long GetExitCode() - { - return UE::GetExitCode(); - } - static long long GetDebuggedDLLBaseAddress() - { - return UE::GetDebuggedDLLBaseAddress(); - } - static long long GetDebuggedFileBaseAddress() - { - return UE::GetDebuggedFileBaseAddress(); - } - static bool GetRemoteString(HANDLE hProcess, void* StringAddress, void* StringStorage, int MaximumStringSize) - { - return UE::GetRemoteString(hProcess, StringAddress, StringStorage, MaximumStringSize); - } - static long long GetFunctionParameter(HANDLE hProcess, eFunctionType FunctionType, DWORD ParameterNumber, eParameterType ParameterType) - { - return UE::GetFunctionParameter(hProcess, FunctionType, ParameterNumber, ParameterType); - } - static long long GetJumpDestinationEx(HANDLE hProcess, ULONG_PTR InstructionAddress, bool JustJumps) - { - return UE::GetJumpDestinationEx(hProcess, InstructionAddress, JustJumps); - } - static long long GetJumpDestination(HANDLE hProcess, ULONG_PTR InstructionAddress) - { - return UE::GetJumpDestination(hProcess, InstructionAddress); - } - static bool IsJumpGoingToExecuteEx(HANDLE hProcess, HANDLE hThread, ULONG_PTR InstructionAddress, ULONG_PTR RegFlags) - { - return UE::IsJumpGoingToExecuteEx(hProcess, hThread, InstructionAddress, RegFlags); - } - static bool IsJumpGoingToExecute() - { - return UE::IsJumpGoingToExecute(); - } - static void SetCustomHandler(eCustomException ExceptionId, fCustomHandlerCallback CallBack) - { - UE::SetCustomHandler(ExceptionId, (void*)CallBack); - } - static void ForceClose() - { - UE::ForceClose(); - } - static void StepInto(fBreakPointCallback traceCallBack) - { - UE::StepInto((void*)traceCallBack); - } - static void StepOver(fBreakPointCallback traceCallBack) - { - UE::StepOver((void*)traceCallBack); - } - static void SingleStep(DWORD StepCount, fBreakPointCallback StepCallBack) - { - UE::SingleStep(StepCount, (void*)StepCallBack); - } - static bool GetUnusedHardwareBreakPointRegister(DWORD* RegisterIndex) - { - return UE::GetUnusedHardwareBreakPointRegister(RegisterIndex); - } - static bool SetHardwareBreakPointEx(HANDLE hActiveThread, ULONG_PTR bpxAddress, DWORD IndexOfRegister, eHWBPType bpxType, eHWBPSize bpxSize, fBreakPointCallback bpxCallBack, DWORD* IndexOfSelectedRegister) - { - return UE::SetHardwareBreakPointEx(hActiveThread, bpxAddress, IndexOfRegister, bpxType, bpxSize, (void*)bpxCallBack, IndexOfSelectedRegister); - } - static bool SetHardwareBreakPoint(ULONG_PTR bpxAddress, DWORD IndexOfRegister, eHWBPType bpxType, eHWBPSize bpxSize, fBreakPointCallback bpxCallBack) - { - return UE::SetHardwareBreakPoint(bpxAddress, IndexOfRegister, bpxType, bpxSize, (void*)bpxCallBack); - } - static bool DeleteHardwareBreakPoint(DWORD IndexOfRegister) - { - return UE::DeleteHardwareBreakPoint(IndexOfRegister); - } - static bool RemoveAllBreakPoints(eBPRemoveOption RemoveOption) - { - return UE::RemoveAllBreakPoints(RemoveOption); - } - static const PROCESS_INFORMATION* GetProcessInformation() - { - return (const PROCESS_INFORMATION*)UE::GetProcessInformation(); - } - static const STARTUPINFOW* GetStartupInformation() - { - return (const STARTUPINFOW*)UE::GetStartupInformation(); - } - static void DebugLoop() - { - UE::DebugLoop(); - } - static void SetDebugLoopTimeOut(DWORD TimeOut) - { - UE::SetDebugLoopTimeOut(TimeOut); - } - static void SetNextDbgContinueStatus(DWORD SetDbgCode) - { - UE::SetNextDbgContinueStatus(SetDbgCode); - } - static bool AttachDebugger(DWORD ProcessId, bool KillOnExit, PROCESS_INFORMATION* DebugInfo, fBreakPointCallback CallBack) - { - return UE::AttachDebugger(ProcessId, KillOnExit, DebugInfo, (void*)CallBack); - } - static bool DetachDebugger(DWORD ProcessId) - { - return UE::DetachDebugger(ProcessId); - } - static bool DetachDebuggerEx(DWORD ProcessId) - { - return UE::DetachDebuggerEx(ProcessId); - } - static void DebugLoopEx(DWORD TimeOut) - { - UE::DebugLoopEx(TimeOut); - } - static bool IsFileBeingDebugged() - { - return UE::IsFileBeingDebugged(); - } - static void SetErrorModel(bool DisplayErrorMessages) - { - UE::SetErrorModel(DisplayErrorMessages); - } + static const char* StaticDisassembleEx(ULONG_PTR DisassmStart, const void* DisassmAddress) + { + return (const char*)UE::StaticDisassembleEx(DisassmStart, (void*)DisassmAddress); + } + static const char* StaticDisassemble(const void* DisassmAddress) + { + return (const char*)UE::StaticDisassemble((void*)DisassmAddress); + } + static const char* DisassembleEx(HANDLE hProcess, void* DisassmAddress, bool ReturnInstructionType) + { + return (const char*)UE::DisassembleEx(hProcess, DisassmAddress, ReturnInstructionType); + } + static const char* Disassemble(void* DisassmAddress) + { + return (const char*)UE::Disassemble(DisassmAddress); + } + static long StaticLengthDisassemble(const void* DisassmAddress) + { + return UE::StaticLengthDisassemble((void*)DisassmAddress); + } + static long LengthDisassembleEx(HANDLE hProcess, void* DisassmAddress) + { + return UE::LengthDisassembleEx(hProcess, DisassmAddress); + } + static long LengthDisassemble(void* DisassmAddress) + { + return UE::LengthDisassemble(DisassmAddress); + } + static bool StopDebug() + { + return UE::StopDebug(); + } + static void SetBPXOptions(long DefaultBreakPointType) + { + UE::SetBPXOptions(DefaultBreakPointType); + } + static bool IsBPXEnabled(ULONG_PTR bpxAddress) + { + return UE::IsBPXEnabled(bpxAddress); + } + static bool EnableBPX(ULONG_PTR bpxAddress) + { + return UE::EnableBPX(bpxAddress); + } + static bool DisableBPX(ULONG_PTR bpxAddress) + { + return UE::DisableBPX(bpxAddress); + } + static bool SetBPX(ULONG_PTR bpxAddress, eBPType bpxType, fBreakPointCallback bpxCallBack) + { + return UE::SetBPX(bpxAddress, bpxType, (void*)bpxCallBack); + } + static bool SetBPXEx(ULONG_PTR bpxAddress, eBPType bpxType, DWORD NumberOfExecution, eContextData CmpRegister, eCompareCondition CmpCondition, ULONG_PTR CmpValue, fBreakPointCallback bpxCallBack, fBreakPointCallback bpxCompareCallBack, fBreakPointCallback bpxRemoveCallBack) + { + return UE::SetBPXEx(bpxAddress, bpxType, NumberOfExecution, CmpRegister, CmpCondition, CmpValue, (void*)bpxCallBack, (void*)bpxCompareCallBack, (void*)bpxRemoveCallBack); + } + static bool DeleteBPX(ULONG_PTR bpxAddress) + { + return UE::DeleteBPX(bpxAddress); + } + static bool SafeDeleteBPX(ULONG_PTR bpxAddress) + { + return UE::SafeDeleteBPX(bpxAddress); + } + static bool SetAPIBreakPoint(const char* szDLLName, const char* szAPIName, eBPType bpxType, eBPPlace bpxPlace, fBreakPointCallback bpxCallBack) + { + return UE::SetAPIBreakPoint((char*)szDLLName, (char*)szAPIName, bpxType, bpxPlace, (void*)bpxCallBack); + } + static bool DeleteAPIBreakPoint(const char* szDLLName, const char* szAPIName, eBPPlace bpxPlace) + { + return UE::DeleteAPIBreakPoint((char*)szDLLName, (char*)szAPIName, bpxPlace); + } + static bool SafeDeleteAPIBreakPoint(const char* szDLLName, const char* szAPIName, eBPPlace bpxPlace) + { + return UE::SafeDeleteAPIBreakPoint((char*)szDLLName, (char*)szAPIName, bpxPlace); + } + static bool SetMemoryBPX(ULONG_PTR MemoryStart, DWORD SizeOfMemory, fBreakPointCallback bpxCallBack) + { + return UE::SetMemoryBPX(MemoryStart, SizeOfMemory, (void*)bpxCallBack); + } + static bool SetMemoryBPXEx(ULONG_PTR MemoryStart, DWORD SizeOfMemory, eMemoryBPType BreakPointType, bool RestoreOnHit, fBreakPointCallback bpxCallBack) + { + return UE::SetMemoryBPXEx(MemoryStart, SizeOfMemory, BreakPointType, RestoreOnHit, (void*)bpxCallBack); + } + static bool RemoveMemoryBPX(ULONG_PTR MemoryStart, DWORD SizeOfMemory) + { + return UE::RemoveMemoryBPX(MemoryStart, SizeOfMemory); + } +#ifdef _WIN64 + static bool GetContextFPUDataEx(HANDLE hActiveThread, XMM_SAVE_AREA32* FPUSaveArea) +#else + static bool GetContextFPUDataEx(HANDLE hActiveThread, FLOATING_SAVE_AREA* FPUSaveArea) +#endif + { + return UE::GetContextFPUDataEx(hActiveThread, FPUSaveArea); + } + static long long GetContextDataEx(HANDLE hActiveThread, eContextData IndexOfRegister) + { + return UE::GetContextDataEx(hActiveThread, IndexOfRegister); + } + static long long GetContextData(eContextData IndexOfRegister) + { + return UE::GetContextData(IndexOfRegister); + } +#ifdef _WIN64 + static bool SetContextFPUDataEx(HANDLE hActiveThread, const XMM_SAVE_AREA32* FPUSaveArea) +#else + static bool SetContextFPUDataEx(HANDLE hActiveThread, const FLOATING_SAVE_AREA* FPUSaveArea) +#endif + { + return UE::SetContextFPUDataEx(hActiveThread, (void*)FPUSaveArea); + } + static bool SetContextDataEx(HANDLE hActiveThread, eContextData IndexOfRegister, ULONG_PTR NewRegisterValue) + { + return UE::SetContextDataEx(hActiveThread, IndexOfRegister, NewRegisterValue); + } + static bool SetContextData(eContextData IndexOfRegister, ULONG_PTR NewRegisterValue) + { + return UE::SetContextData(IndexOfRegister, NewRegisterValue); + } + static void ClearExceptionNumber() + { + UE::ClearExceptionNumber(); + } + static long CurrentExceptionNumber() + { + return UE::CurrentExceptionNumber(); + } + static bool MatchPatternEx(HANDLE hProcess, void* MemoryToCheck, int SizeOfMemoryToCheck, const void* PatternToMatch, int SizeOfPatternToMatch, const BYTE* WildCard) + { + return UE::MatchPatternEx(hProcess, MemoryToCheck, SizeOfMemoryToCheck, (void*)PatternToMatch, SizeOfPatternToMatch, (BYTE*)WildCard); + } + static bool MatchPattern(void* MemoryToCheck, int SizeOfMemoryToCheck, const void* PatternToMatch, int SizeOfPatternToMatch, const BYTE* WildCard) + { + return UE::MatchPattern(MemoryToCheck, SizeOfMemoryToCheck, (void*)PatternToMatch, SizeOfPatternToMatch, (BYTE*)WildCard); + } + static long long FindEx(HANDLE hProcess, void* MemoryStart, DWORD MemorySize, const void* SearchPattern, DWORD PatternSize, const BYTE* WildCard) + { + return UE::FindEx(hProcess, MemoryStart, MemorySize, (void*)SearchPattern, PatternSize, (BYTE*)WildCard); + } + static long long Find(void* MemoryStart, DWORD MemorySize, const void* SearchPattern, DWORD PatternSize, const BYTE* WildCard) + { + return UE::Find(MemoryStart, MemorySize, (void*)SearchPattern, PatternSize, (BYTE*)WildCard); + } + static bool FillEx(HANDLE hProcess, void* MemoryStart, DWORD MemorySize, const BYTE* FillByte) + { + return UE::FillEx(hProcess, MemoryStart, MemorySize, (BYTE*)FillByte); + } + static bool Fill(void* MemoryStart, DWORD MemorySize, const BYTE* FillByte) + { + return UE::Fill(MemoryStart, MemorySize, (BYTE*)FillByte); + } + static bool PatchEx(HANDLE hProcess, void* MemoryStart, DWORD MemorySize, const void* ReplacePattern, DWORD ReplaceSize, bool AppendNOP, bool PrependNOP) + { + return UE::PatchEx(hProcess, MemoryStart, MemorySize, (void*)ReplacePattern, ReplaceSize, AppendNOP, PrependNOP); + } + static bool Patch(void* MemoryStart, DWORD MemorySize, const void* ReplacePattern, DWORD ReplaceSize, bool AppendNOP, bool PrependNOP) + { + return UE::Patch(MemoryStart, MemorySize, (void*)ReplacePattern, ReplaceSize, AppendNOP, PrependNOP); + } + static bool ReplaceEx(HANDLE hProcess, void* MemoryStart, DWORD MemorySize, const void* SearchPattern, DWORD PatternSize, DWORD NumberOfRepetitions, const void* ReplacePattern, DWORD ReplaceSize, const BYTE* WildCard) + { + return UE::ReplaceEx(hProcess, MemoryStart, MemorySize, (void*)SearchPattern, PatternSize, NumberOfRepetitions, (void*)ReplacePattern, ReplaceSize, (BYTE*)WildCard); + } + static bool Replace(void* MemoryStart, DWORD MemorySize, const void* SearchPattern, DWORD PatternSize, DWORD NumberOfRepetitions, const void* ReplacePattern, DWORD ReplaceSize, const BYTE* WildCard) + { + return UE::Replace(MemoryStart, MemorySize, (void*)SearchPattern, PatternSize, NumberOfRepetitions, (void*)ReplacePattern, ReplaceSize, (BYTE*)WildCard); + } + static const DEBUG_EVENT* GetDebugData() + { + return (const DEBUG_EVENT*)UE::GetDebugData(); + } + static const DEBUG_EVENT* GetTerminationData() + { + return (const DEBUG_EVENT*)UE::GetTerminationData(); + } + static long GetExitCode() + { + return UE::GetExitCode(); + } + static long long GetDebuggedDLLBaseAddress() + { + return UE::GetDebuggedDLLBaseAddress(); + } + static long long GetDebuggedFileBaseAddress() + { + return UE::GetDebuggedFileBaseAddress(); + } + static bool GetRemoteString(HANDLE hProcess, void* StringAddress, void* StringStorage, int MaximumStringSize) + { + return UE::GetRemoteString(hProcess, StringAddress, StringStorage, MaximumStringSize); + } + static long long GetFunctionParameter(HANDLE hProcess, eFunctionType FunctionType, DWORD ParameterNumber, eParameterType ParameterType) + { + return UE::GetFunctionParameter(hProcess, FunctionType, ParameterNumber, ParameterType); + } + static long long GetJumpDestinationEx(HANDLE hProcess, ULONG_PTR InstructionAddress, bool JustJumps) + { + return UE::GetJumpDestinationEx(hProcess, InstructionAddress, JustJumps); + } + static long long GetJumpDestination(HANDLE hProcess, ULONG_PTR InstructionAddress) + { + return UE::GetJumpDestination(hProcess, InstructionAddress); + } + static bool IsJumpGoingToExecuteEx(HANDLE hProcess, HANDLE hThread, ULONG_PTR InstructionAddress, ULONG_PTR RegFlags) + { + return UE::IsJumpGoingToExecuteEx(hProcess, hThread, InstructionAddress, RegFlags); + } + static bool IsJumpGoingToExecute() + { + return UE::IsJumpGoingToExecute(); + } + static void SetCustomHandler(eCustomException ExceptionId, fCustomHandlerCallback CallBack) + { + UE::SetCustomHandler(ExceptionId, (void*)CallBack); + } + static void ForceClose() + { + UE::ForceClose(); + } + static void StepInto(fBreakPointCallback traceCallBack) + { + UE::StepInto((void*)traceCallBack); + } + static void StepOver(fBreakPointCallback traceCallBack) + { + UE::StepOver((void*)traceCallBack); + } + static void SingleStep(DWORD StepCount, fBreakPointCallback StepCallBack) + { + UE::SingleStep(StepCount, (void*)StepCallBack); + } + static bool GetUnusedHardwareBreakPointRegister(DWORD* RegisterIndex) + { + return UE::GetUnusedHardwareBreakPointRegister(RegisterIndex); + } + static bool SetHardwareBreakPointEx(HANDLE hActiveThread, ULONG_PTR bpxAddress, DWORD IndexOfRegister, eHWBPType bpxType, eHWBPSize bpxSize, fBreakPointCallback bpxCallBack, DWORD* IndexOfSelectedRegister) + { + return UE::SetHardwareBreakPointEx(hActiveThread, bpxAddress, IndexOfRegister, bpxType, bpxSize, (void*)bpxCallBack, IndexOfSelectedRegister); + } + static bool SetHardwareBreakPoint(ULONG_PTR bpxAddress, DWORD IndexOfRegister, eHWBPType bpxType, eHWBPSize bpxSize, fBreakPointCallback bpxCallBack) + { + return UE::SetHardwareBreakPoint(bpxAddress, IndexOfRegister, bpxType, bpxSize, (void*)bpxCallBack); + } + static bool DeleteHardwareBreakPoint(DWORD IndexOfRegister) + { + return UE::DeleteHardwareBreakPoint(IndexOfRegister); + } + static bool RemoveAllBreakPoints(eBPRemoveOption RemoveOption) + { + return UE::RemoveAllBreakPoints(RemoveOption); + } + static const PROCESS_INFORMATION* GetProcessInformation() + { + return (const PROCESS_INFORMATION*)UE::GetProcessInformation(); + } + static const STARTUPINFOW* GetStartupInformation() + { + return (const STARTUPINFOW*)UE::GetStartupInformation(); + } + static void DebugLoop() + { + UE::DebugLoop(); + } + static void SetDebugLoopTimeOut(DWORD TimeOut) + { + UE::SetDebugLoopTimeOut(TimeOut); + } + static void SetNextDbgContinueStatus(DWORD SetDbgCode) + { + UE::SetNextDbgContinueStatus(SetDbgCode); + } + static bool AttachDebugger(DWORD ProcessId, bool KillOnExit, PROCESS_INFORMATION* DebugInfo, fBreakPointCallback CallBack) + { + return UE::AttachDebugger(ProcessId, KillOnExit, DebugInfo, (void*)CallBack); + } + static bool DetachDebugger(DWORD ProcessId) + { + return UE::DetachDebugger(ProcessId); + } + static bool DetachDebuggerEx(DWORD ProcessId) + { + return UE::DetachDebuggerEx(ProcessId); + } + static void DebugLoopEx(DWORD TimeOut) + { + UE::DebugLoopEx(TimeOut); + } + static bool IsFileBeingDebugged() + { + return UE::IsFileBeingDebugged(); + } + static void SetErrorModel(bool DisplayErrorMessages) + { + UE::SetErrorModel(DisplayErrorMessages); + } }; class DebuggerA @@ -1463,171 +1463,171 @@ class DebuggerA public: static const PROCESS_INFORMATION* InitDebug(const char* szFileName, const char* szCommandLine, const char* szCurrentFolder) - { - return (const PROCESS_INFORMATION*)UE::InitDebug((char*)szFileName, (char*)szCommandLine, (char*)szCurrentFolder); - } - static const PROCESS_INFORMATION* InitDebugEx(const char* szFileName, const char* szCommandLine, const char* szCurrentFolder, DebuggerX::fBreakPointCallback EntryCallBack) - { - return (const PROCESS_INFORMATION*)UE::InitDebugEx((char*)szFileName, (char*)szCommandLine, (char*)szCurrentFolder, (void*)EntryCallBack); - } - static const PROCESS_INFORMATION* InitDLLDebug(const char* szFileName, bool ReserveModuleBase, const char* szCommandLine, const char* szCurrentFolder, DebuggerX::fBreakPointCallback EntryCallBack) - { - return (const PROCESS_INFORMATION*)UE::InitDLLDebug((char*)szFileName, ReserveModuleBase, (char*)szCommandLine, (char*)szCurrentFolder, (void*)EntryCallBack); - } - static void AutoDebugEx(const char* szFileName, bool ReserveModuleBase, const char* szCommandLine, const char* szCurrentFolder, DWORD TimeOut, DebuggerX::fBreakPointCallback EntryCallBack) - { - UE::AutoDebugEx((char*)szFileName, ReserveModuleBase, (char*)szCommandLine, (char*)szCurrentFolder, TimeOut, (void*)EntryCallBack); - } + { + return (const PROCESS_INFORMATION*)UE::InitDebug((char*)szFileName, (char*)szCommandLine, (char*)szCurrentFolder); + } + static const PROCESS_INFORMATION* InitDebugEx(const char* szFileName, const char* szCommandLine, const char* szCurrentFolder, DebuggerX::fBreakPointCallback EntryCallBack) + { + return (const PROCESS_INFORMATION*)UE::InitDebugEx((char*)szFileName, (char*)szCommandLine, (char*)szCurrentFolder, (void*)EntryCallBack); + } + static const PROCESS_INFORMATION* InitDLLDebug(const char* szFileName, bool ReserveModuleBase, const char* szCommandLine, const char* szCurrentFolder, DebuggerX::fBreakPointCallback EntryCallBack) + { + return (const PROCESS_INFORMATION*)UE::InitDLLDebug((char*)szFileName, ReserveModuleBase, (char*)szCommandLine, (char*)szCurrentFolder, (void*)EntryCallBack); + } + static void AutoDebugEx(const char* szFileName, bool ReserveModuleBase, const char* szCommandLine, const char* szCurrentFolder, DWORD TimeOut, DebuggerX::fBreakPointCallback EntryCallBack) + { + UE::AutoDebugEx((char*)szFileName, ReserveModuleBase, (char*)szCommandLine, (char*)szCurrentFolder, TimeOut, (void*)EntryCallBack); + } }; class DebuggerW { public: - static const PROCESS_INFORMATION* InitDebug(const wchar_t* szFileName, const wchar_t* szCommandLine, const wchar_t* szCurrentFolder) - { - return (const PROCESS_INFORMATION*)UE::InitDebugW((wchar_t*)szFileName, (wchar_t*)szCommandLine, (wchar_t*)szCurrentFolder); - } - static const PROCESS_INFORMATION* InitDebugEx(const wchar_t* szFileName, const wchar_t* szCommandLine, const wchar_t* szCurrentFolder, DebuggerX::fBreakPointCallback EntryCallBack) - { - return (const PROCESS_INFORMATION*)UE::InitDebugExW((wchar_t*)szFileName, (wchar_t*)szCommandLine, (wchar_t*)szCurrentFolder, (void*)EntryCallBack); - } - static const PROCESS_INFORMATION* InitDLLDebug(const wchar_t* szFileName, bool ReserveModuleBase, const wchar_t* szCommandLine, const wchar_t* szCurrentFolder, DebuggerX::fBreakPointCallback EntryCallBack) - { - return (const PROCESS_INFORMATION*)UE::InitDLLDebugW((wchar_t*)szFileName, ReserveModuleBase, (wchar_t*)szCommandLine, (wchar_t*)szCurrentFolder, (void*)EntryCallBack); - } - static void AutoDebugEx(const wchar_t* szFileName, bool ReserveModuleBase, const wchar_t* szCommandLine, const wchar_t* szCurrentFolder, DWORD TimeOut, DebuggerX::fBreakPointCallback EntryCallBack) - { - UE::AutoDebugExW((wchar_t*)szFileName, ReserveModuleBase, (wchar_t*)szCommandLine, (wchar_t*)szCurrentFolder, TimeOut, (void*)EntryCallBack); - } + static const PROCESS_INFORMATION* InitDebug(const wchar_t* szFileName, const wchar_t* szCommandLine, const wchar_t* szCurrentFolder) + { + return (const PROCESS_INFORMATION*)UE::InitDebugW((wchar_t*)szFileName, (wchar_t*)szCommandLine, (wchar_t*)szCurrentFolder); + } + static const PROCESS_INFORMATION* InitDebugEx(const wchar_t* szFileName, const wchar_t* szCommandLine, const wchar_t* szCurrentFolder, DebuggerX::fBreakPointCallback EntryCallBack) + { + return (const PROCESS_INFORMATION*)UE::InitDebugExW((wchar_t*)szFileName, (wchar_t*)szCommandLine, (wchar_t*)szCurrentFolder, (void*)EntryCallBack); + } + static const PROCESS_INFORMATION* InitDLLDebug(const wchar_t* szFileName, bool ReserveModuleBase, const wchar_t* szCommandLine, const wchar_t* szCurrentFolder, DebuggerX::fBreakPointCallback EntryCallBack) + { + return (const PROCESS_INFORMATION*)UE::InitDLLDebugW((wchar_t*)szFileName, ReserveModuleBase, (wchar_t*)szCommandLine, (wchar_t*)szCurrentFolder, (void*)EntryCallBack); + } + static void AutoDebugEx(const wchar_t* szFileName, bool ReserveModuleBase, const wchar_t* szCommandLine, const wchar_t* szCurrentFolder, DWORD TimeOut, DebuggerX::fBreakPointCallback EntryCallBack) + { + UE::AutoDebugExW((wchar_t*)szFileName, ReserveModuleBase, (wchar_t*)szCommandLine, (wchar_t*)szCurrentFolder, TimeOut, (void*)EntryCallBack); + } }; class Debugger : DebuggerX, DebuggerA, DebuggerW { public: - using DebuggerX::fBreakPointCallback; - using DebuggerX::fCustomHandlerCallback; + using DebuggerX::fBreakPointCallback; + using DebuggerX::fCustomHandlerCallback; - using DebuggerX::StaticDisassembleEx; - using DebuggerX::StaticDisassemble; - using DebuggerX::DisassembleEx; - using DebuggerX::Disassemble; - using DebuggerX::StaticLengthDisassemble; - using DebuggerX::LengthDisassembleEx; - using DebuggerX::LengthDisassemble; - using DebuggerA::InitDebug; - using DebuggerW::InitDebug; - using DebuggerA::InitDebugEx; - using DebuggerW::InitDebugEx; - using DebuggerA::InitDLLDebug; - using DebuggerW::InitDLLDebug; - using DebuggerX::StopDebug; - using DebuggerX::SetBPXOptions; - using DebuggerX::IsBPXEnabled; - using DebuggerX::EnableBPX; - using DebuggerX::DisableBPX; - using DebuggerX::SetBPX; - using DebuggerX::SetBPXEx; - using DebuggerX::DeleteBPX; - using DebuggerX::SafeDeleteBPX; - using DebuggerX::SetAPIBreakPoint; - using DebuggerX::DeleteAPIBreakPoint; - using DebuggerX::SafeDeleteAPIBreakPoint; - using DebuggerX::SetMemoryBPX; - using DebuggerX::SetMemoryBPXEx; - using DebuggerX::RemoveMemoryBPX; - using DebuggerX::GetContextFPUDataEx; - using DebuggerX::GetContextDataEx; - using DebuggerX::GetContextData; - using DebuggerX::SetContextFPUDataEx; - using DebuggerX::SetContextDataEx; - using DebuggerX::SetContextData; - using DebuggerX::ClearExceptionNumber; - using DebuggerX::CurrentExceptionNumber; - using DebuggerX::MatchPatternEx; - using DebuggerX::MatchPattern; - using DebuggerX::FindEx; - using DebuggerX::Find; - using DebuggerX::FillEx; - using DebuggerX::Fill; - using DebuggerX::PatchEx; - using DebuggerX::Patch; - using DebuggerX::ReplaceEx; - using DebuggerX::Replace; - using DebuggerX::GetDebugData; - using DebuggerX::GetTerminationData; - using DebuggerX::GetExitCode; - using DebuggerX::GetDebuggedDLLBaseAddress; - using DebuggerX::GetDebuggedFileBaseAddress; - using DebuggerX::GetRemoteString; - using DebuggerX::GetFunctionParameter; - using DebuggerX::GetJumpDestinationEx; - using DebuggerX::GetJumpDestination; - using DebuggerX::IsJumpGoingToExecuteEx; - using DebuggerX::IsJumpGoingToExecute; - using DebuggerX::SetCustomHandler; - using DebuggerX::ForceClose; - using DebuggerX::StepInto; - using DebuggerX::StepOver; - using DebuggerX::SingleStep; - using DebuggerX::GetUnusedHardwareBreakPointRegister; - using DebuggerX::SetHardwareBreakPointEx; - using DebuggerX::SetHardwareBreakPoint; - using DebuggerX::DeleteHardwareBreakPoint; - using DebuggerX::RemoveAllBreakPoints; - using DebuggerX::GetProcessInformation; - using DebuggerX::GetStartupInformation; - using DebuggerX::DebugLoop; - using DebuggerX::SetDebugLoopTimeOut; - using DebuggerX::SetNextDbgContinueStatus; - using DebuggerX::AttachDebugger; - using DebuggerX::DetachDebugger; - using DebuggerX::DetachDebuggerEx; - using DebuggerX::DebugLoopEx; - using DebuggerA::AutoDebugEx; - using DebuggerW::AutoDebugEx; - using DebuggerX::IsFileBeingDebugged; - using DebuggerX::SetErrorModel; + using DebuggerX::StaticDisassembleEx; + using DebuggerX::StaticDisassemble; + using DebuggerX::DisassembleEx; + using DebuggerX::Disassemble; + using DebuggerX::StaticLengthDisassemble; + using DebuggerX::LengthDisassembleEx; + using DebuggerX::LengthDisassemble; + using DebuggerA::InitDebug; + using DebuggerW::InitDebug; + using DebuggerA::InitDebugEx; + using DebuggerW::InitDebugEx; + using DebuggerA::InitDLLDebug; + using DebuggerW::InitDLLDebug; + using DebuggerX::StopDebug; + using DebuggerX::SetBPXOptions; + using DebuggerX::IsBPXEnabled; + using DebuggerX::EnableBPX; + using DebuggerX::DisableBPX; + using DebuggerX::SetBPX; + using DebuggerX::SetBPXEx; + using DebuggerX::DeleteBPX; + using DebuggerX::SafeDeleteBPX; + using DebuggerX::SetAPIBreakPoint; + using DebuggerX::DeleteAPIBreakPoint; + using DebuggerX::SafeDeleteAPIBreakPoint; + using DebuggerX::SetMemoryBPX; + using DebuggerX::SetMemoryBPXEx; + using DebuggerX::RemoveMemoryBPX; + using DebuggerX::GetContextFPUDataEx; + using DebuggerX::GetContextDataEx; + using DebuggerX::GetContextData; + using DebuggerX::SetContextFPUDataEx; + using DebuggerX::SetContextDataEx; + using DebuggerX::SetContextData; + using DebuggerX::ClearExceptionNumber; + using DebuggerX::CurrentExceptionNumber; + using DebuggerX::MatchPatternEx; + using DebuggerX::MatchPattern; + using DebuggerX::FindEx; + using DebuggerX::Find; + using DebuggerX::FillEx; + using DebuggerX::Fill; + using DebuggerX::PatchEx; + using DebuggerX::Patch; + using DebuggerX::ReplaceEx; + using DebuggerX::Replace; + using DebuggerX::GetDebugData; + using DebuggerX::GetTerminationData; + using DebuggerX::GetExitCode; + using DebuggerX::GetDebuggedDLLBaseAddress; + using DebuggerX::GetDebuggedFileBaseAddress; + using DebuggerX::GetRemoteString; + using DebuggerX::GetFunctionParameter; + using DebuggerX::GetJumpDestinationEx; + using DebuggerX::GetJumpDestination; + using DebuggerX::IsJumpGoingToExecuteEx; + using DebuggerX::IsJumpGoingToExecute; + using DebuggerX::SetCustomHandler; + using DebuggerX::ForceClose; + using DebuggerX::StepInto; + using DebuggerX::StepOver; + using DebuggerX::SingleStep; + using DebuggerX::GetUnusedHardwareBreakPointRegister; + using DebuggerX::SetHardwareBreakPointEx; + using DebuggerX::SetHardwareBreakPoint; + using DebuggerX::DeleteHardwareBreakPoint; + using DebuggerX::RemoveAllBreakPoints; + using DebuggerX::GetProcessInformation; + using DebuggerX::GetStartupInformation; + using DebuggerX::DebugLoop; + using DebuggerX::SetDebugLoopTimeOut; + using DebuggerX::SetNextDbgContinueStatus; + using DebuggerX::AttachDebugger; + using DebuggerX::DetachDebugger; + using DebuggerX::DetachDebuggerEx; + using DebuggerX::DebugLoopEx; + using DebuggerA::AutoDebugEx; + using DebuggerW::AutoDebugEx; + using DebuggerX::IsFileBeingDebugged; + using DebuggerX::SetErrorModel; }; class FindOEPX { protected: - static void Init() - { - return UE::FindOEPInit(); - } + static void Init() + { + return UE::FindOEPInit(); + } }; class FindOEPA { public: - static bool Generically(char* szFileName, Debugger::fBreakPointCallback TraceInitCallBack, Debugger::fBreakPointCallback CallBack) - { - return UE::FindOEPGenerically(szFileName, (void*)TraceInitCallBack, (void*)CallBack); - } + static bool Generically(char* szFileName, Debugger::fBreakPointCallback TraceInitCallBack, Debugger::fBreakPointCallback CallBack) + { + return UE::FindOEPGenerically(szFileName, (void*)TraceInitCallBack, (void*)CallBack); + } }; class FindOEPW { public: - static bool Generically(wchar_t* szFileName, Debugger::fBreakPointCallback TraceInitCallBack, Debugger::fBreakPointCallback CallBack) - { - return UE::FindOEPGenericallyW(szFileName, (void*)TraceInitCallBack, (void*)CallBack); - } + static bool Generically(wchar_t* szFileName, Debugger::fBreakPointCallback TraceInitCallBack, Debugger::fBreakPointCallback CallBack) + { + return UE::FindOEPGenericallyW(szFileName, (void*)TraceInitCallBack, (void*)CallBack); + } }; class FindOEP : FindOEPX, FindOEPA, FindOEPW { public: - using FindOEPX::Init; - using FindOEPA::Generically; - using FindOEPW::Generically; + using FindOEPX::Init; + using FindOEPA::Generically; + using FindOEPW::Generically; }; class ImporterA; @@ -1635,183 +1635,185 @@ class ImporterW; class ImporterX { - friend class ImporterA; - friend class ImporterW; + friend class ImporterA; + friend class ImporterW; + +public: + + typedef UE::ImportEnumData ImportEnumData; protected: - typedef UE::ImportEnumData ImportEnumData; + typedef void (TITCALL *fImportEnumCallBack)(void* ptrImportEnumData); + typedef void* (TITCALL *fImportFixCallback)(void* fIATPointer); - typedef void (TITCALL *fImportEnumCallBack)(const ImportEnumData* ptrImportEnumData); - typedef void* (TITCALL *fImportFixCallback)(void* fIATPointer); - - static void Cleanup() - { - UE::ImporterCleanup(); - } - static void SetImageBase(ULONG_PTR ImageBase) - { - UE::ImporterSetImageBase(ImageBase); - } - static void SetUnknownDelta(ULONG_PTR DeltaAddress) - { - UE::ImporterSetUnknownDelta(DeltaAddress); - } - static long long GetCurrentDelta() - { - return UE::ImporterGetCurrentDelta(); - } - static void Init(DWORD MemorySize, ULONG_PTR ImageBase) - { - UE::ImporterInit(MemorySize, ImageBase); - } - static void AddNewDll(const char* szDLLName, ULONG_PTR FirstThunk) - { - UE::ImporterAddNewDll((char*)szDLLName, FirstThunk); - } - static void AddNewAPI(const char* szAPIName, ULONG_PTR ThunkValue) - { - UE::ImporterAddNewAPI((char*)szAPIName, ThunkValue); - } - static void AddNewOrdinalAPI(ULONG_PTR OrdinalNumber, ULONG_PTR ThunkValue) - { - UE::ImporterAddNewOrdinalAPI(OrdinalNumber, ThunkValue); - } - static long GetAddedDllCount() - { - return UE::ImporterGetAddedDllCount(); - } - static long GetAddedAPICount() - { - return UE::ImporterGetAddedAPICount(); - } - static const char* GetLastAddedDLLName() - { - return (const char*)UE::ImporterGetLastAddedDLLName(); - } - static void MoveIAT() - { - UE::ImporterMoveIAT(); - } - static bool ExportIAT(ULONG_PTR StorePlace, ULONG_PTR FileMapVA, HANDLE hFileMap) - { - return UE::ImporterExportIAT(StorePlace, FileMapVA, hFileMap); - } - static long EstimatedSize() - { - return UE::ImporterEstimatedSize(); - } - static long long FindAPIWriteLocation(const char* szAPIName) - { - return UE::ImporterFindAPIWriteLocation((char*)szAPIName); - } - static long long FindOrdinalAPIWriteLocation(ULONG_PTR OrdinalNumber) - { - return UE::ImporterFindOrdinalAPIWriteLocation(OrdinalNumber); - } - static long long FindAPIByWriteLocation(ULONG_PTR APIWriteLocation) - { - return UE::ImporterFindAPIByWriteLocation(APIWriteLocation); - } - static long long FindDLLByWriteLocation(ULONG_PTR APIWriteLocation) - { - return UE::ImporterFindDLLByWriteLocation(APIWriteLocation); - } - static const char* GetDLLName(ULONG_PTR APIAddress) - { - return (const char*)UE::ImporterGetDLLName(APIAddress); - } - static const char* GetAPIName(ULONG_PTR APIAddress) - { - return (const char*)UE::ImporterGetAPIName(APIAddress); - } - static long long GetAPIOrdinalNumber(ULONG_PTR APIAddress) - { - return UE::ImporterGetAPIOrdinalNumber(APIAddress); - } - static const char* GetAPINameEx(ULONG_PTR APIAddress, const HMODULE* DLLBasesList) - { - return (const char*)UE::ImporterGetAPINameEx(APIAddress, (ULONG_PTR)DLLBasesList); - } - static long long GetRemoteAPIAddress(HANDLE hProcess, ULONG_PTR APIAddress) - { - return UE::ImporterGetRemoteAPIAddress(hProcess, APIAddress); - } - static long long GetRemoteAPIAddressEx(const char* szDLLName, const char* szAPIName) - { - return UE::ImporterGetRemoteAPIAddressEx((char*)szDLLName, (char*)szAPIName); - } - static long long GetLocalAPIAddress(HANDLE hProcess, ULONG_PTR APIAddress) - { - return UE::ImporterGetLocalAPIAddress(hProcess, APIAddress); - } - static const char* GetDLLNameFromDebugee(HANDLE hProcess, ULONG_PTR APIAddress) - { - return (const char*)UE::ImporterGetDLLNameFromDebugee(hProcess, APIAddress); - } - static const char* GetAPINameFromDebugee(HANDLE hProcess, ULONG_PTR APIAddress) - { - return (const char*)UE::ImporterGetAPINameFromDebugee(hProcess, APIAddress); - } - static long long GetAPIOrdinalNumberFromDebugee(HANDLE hProcess, ULONG_PTR APIAddress) - { - return UE::ImporterGetAPIOrdinalNumberFromDebugee(hProcess, APIAddress); - } - static long GetDLLIndexEx(ULONG_PTR APIAddress, const HMODULE* DLLBasesList) - { - return UE::ImporterGetDLLIndexEx(APIAddress, (ULONG_PTR)DLLBasesList); - } - static long GetDLLIndex(HANDLE hProcess, ULONG_PTR APIAddress, const HMODULE* DLLBasesList) - { - return UE::ImporterGetDLLIndex(hProcess, APIAddress, (ULONG_PTR)DLLBasesList); - } - static long long GetRemoteDLLBase(HANDLE hProcess, HMODULE LocalModuleBase) - { - return UE::ImporterGetRemoteDLLBase(hProcess, LocalModuleBase); - } - static bool RelocateWriteLocation(ULONG_PTR AddValue) - { - return UE::ImporterRelocateWriteLocation(AddValue); - } - static bool IsForwardedAPI(HANDLE hProcess, ULONG_PTR APIAddress) - { - return UE::ImporterIsForwardedAPI(hProcess, APIAddress); - } - static const char* GetForwardedAPIName(HANDLE hProcess, ULONG_PTR APIAddress) - { - return (const char*)UE::ImporterGetForwardedAPIName(hProcess, APIAddress); - } - static const char* GetForwardedDLLName(HANDLE hProcess, ULONG_PTR APIAddress) - { - return (const char*)UE::ImporterGetForwardedDLLName(hProcess, APIAddress); - } - static long GetForwardedDLLIndex(HANDLE hProcess, ULONG_PTR APIAddress, const HMODULE* DLLBasesList) - { - return UE::ImporterGetForwardedDLLIndex(hProcess, APIAddress, (ULONG_PTR)DLLBasesList); - } - static long long GetForwardedAPIOrdinalNumber(HANDLE hProcess, ULONG_PTR APIAddress) - { - return UE::ImporterGetForwardedAPIOrdinalNumber(hProcess, APIAddress); - } - static long long GetNearestAPIAddress(HANDLE hProcess, ULONG_PTR APIAddress) - { - return UE::ImporterGetNearestAPIAddress(hProcess, APIAddress); - } - static const char* GetNearestAPIName(HANDLE hProcess, ULONG_PTR APIAddress) - { - return (const char*)UE::ImporterGetNearestAPIName(hProcess, APIAddress); - } - static void AutoSearchIATEx(DWORD ProcessId, ULONG_PTR ImageBase, ULONG_PTR SearchStart, ULONG_PTR* pIATStart, ULONG_PTR* pIATSize) - { - UE::ImporterAutoSearchIATEx(ProcessId, ImageBase, SearchStart, pIATStart, pIATSize); - } - static void EnumAddedData(fImportEnumCallBack EnumCallBack) - { - UE::ImporterEnumAddedData((void*)EnumCallBack); - } + static void Cleanup() + { + UE::ImporterCleanup(); + } + static void SetImageBase(ULONG_PTR ImageBase) + { + UE::ImporterSetImageBase(ImageBase); + } + static void SetUnknownDelta(ULONG_PTR DeltaAddress) + { + UE::ImporterSetUnknownDelta(DeltaAddress); + } + static long long GetCurrentDelta() + { + return UE::ImporterGetCurrentDelta(); + } + static void Init(DWORD MemorySize, ULONG_PTR ImageBase) + { + UE::ImporterInit(MemorySize, ImageBase); + } + static void AddNewDll(const char* szDLLName, ULONG_PTR FirstThunk) + { + UE::ImporterAddNewDll((char*)szDLLName, FirstThunk); + } + static void AddNewAPI(const char* szAPIName, ULONG_PTR ThunkValue) + { + UE::ImporterAddNewAPI((char*)szAPIName, ThunkValue); + } + static void AddNewOrdinalAPI(ULONG_PTR OrdinalNumber, ULONG_PTR ThunkValue) + { + UE::ImporterAddNewOrdinalAPI(OrdinalNumber, ThunkValue); + } + static long GetAddedDllCount() + { + return UE::ImporterGetAddedDllCount(); + } + static long GetAddedAPICount() + { + return UE::ImporterGetAddedAPICount(); + } + static const char* GetLastAddedDLLName() + { + return (const char*)UE::ImporterGetLastAddedDLLName(); + } + static void MoveIAT() + { + UE::ImporterMoveIAT(); + } + static bool ExportIAT(ULONG_PTR StorePlace, ULONG_PTR FileMapVA, HANDLE hFileMap) + { + return UE::ImporterExportIAT(StorePlace, FileMapVA, hFileMap); + } + static long EstimatedSize() + { + return UE::ImporterEstimatedSize(); + } + static long long FindAPIWriteLocation(const char* szAPIName) + { + return UE::ImporterFindAPIWriteLocation((char*)szAPIName); + } + static long long FindOrdinalAPIWriteLocation(ULONG_PTR OrdinalNumber) + { + return UE::ImporterFindOrdinalAPIWriteLocation(OrdinalNumber); + } + static long long FindAPIByWriteLocation(ULONG_PTR APIWriteLocation) + { + return UE::ImporterFindAPIByWriteLocation(APIWriteLocation); + } + static long long FindDLLByWriteLocation(ULONG_PTR APIWriteLocation) + { + return UE::ImporterFindDLLByWriteLocation(APIWriteLocation); + } + static const char* GetDLLName(ULONG_PTR APIAddress) + { + return (const char*)UE::ImporterGetDLLName(APIAddress); + } + static const char* GetAPIName(ULONG_PTR APIAddress) + { + return (const char*)UE::ImporterGetAPIName(APIAddress); + } + static long long GetAPIOrdinalNumber(ULONG_PTR APIAddress) + { + return UE::ImporterGetAPIOrdinalNumber(APIAddress); + } + static const char* GetAPINameEx(ULONG_PTR APIAddress, const HMODULE* DLLBasesList) + { + return (const char*)UE::ImporterGetAPINameEx(APIAddress, (ULONG_PTR)DLLBasesList); + } + static long long GetRemoteAPIAddress(HANDLE hProcess, ULONG_PTR APIAddress) + { + return UE::ImporterGetRemoteAPIAddress(hProcess, APIAddress); + } + static long long GetRemoteAPIAddressEx(const char* szDLLName, const char* szAPIName) + { + return UE::ImporterGetRemoteAPIAddressEx((char*)szDLLName, (char*)szAPIName); + } + static long long GetLocalAPIAddress(HANDLE hProcess, ULONG_PTR APIAddress) + { + return UE::ImporterGetLocalAPIAddress(hProcess, APIAddress); + } + static const char* GetDLLNameFromDebugee(HANDLE hProcess, ULONG_PTR APIAddress) + { + return (const char*)UE::ImporterGetDLLNameFromDebugee(hProcess, APIAddress); + } + static const char* GetAPINameFromDebugee(HANDLE hProcess, ULONG_PTR APIAddress) + { + return (const char*)UE::ImporterGetAPINameFromDebugee(hProcess, APIAddress); + } + static long long GetAPIOrdinalNumberFromDebugee(HANDLE hProcess, ULONG_PTR APIAddress) + { + return UE::ImporterGetAPIOrdinalNumberFromDebugee(hProcess, APIAddress); + } + static long GetDLLIndexEx(ULONG_PTR APIAddress, const HMODULE* DLLBasesList) + { + return UE::ImporterGetDLLIndexEx(APIAddress, (ULONG_PTR)DLLBasesList); + } + static long GetDLLIndex(HANDLE hProcess, ULONG_PTR APIAddress, const HMODULE* DLLBasesList) + { + return UE::ImporterGetDLLIndex(hProcess, APIAddress, (ULONG_PTR)DLLBasesList); + } + static long long GetRemoteDLLBase(HANDLE hProcess, HMODULE LocalModuleBase) + { + return UE::ImporterGetRemoteDLLBase(hProcess, LocalModuleBase); + } + static bool RelocateWriteLocation(ULONG_PTR AddValue) + { + return UE::ImporterRelocateWriteLocation(AddValue); + } + static bool IsForwardedAPI(HANDLE hProcess, ULONG_PTR APIAddress) + { + return UE::ImporterIsForwardedAPI(hProcess, APIAddress); + } + static const char* GetForwardedAPIName(HANDLE hProcess, ULONG_PTR APIAddress) + { + return (const char*)UE::ImporterGetForwardedAPIName(hProcess, APIAddress); + } + static const char* GetForwardedDLLName(HANDLE hProcess, ULONG_PTR APIAddress) + { + return (const char*)UE::ImporterGetForwardedDLLName(hProcess, APIAddress); + } + static long GetForwardedDLLIndex(HANDLE hProcess, ULONG_PTR APIAddress, const HMODULE* DLLBasesList) + { + return UE::ImporterGetForwardedDLLIndex(hProcess, APIAddress, (ULONG_PTR)DLLBasesList); + } + static long long GetForwardedAPIOrdinalNumber(HANDLE hProcess, ULONG_PTR APIAddress) + { + return UE::ImporterGetForwardedAPIOrdinalNumber(hProcess, APIAddress); + } + static long long GetNearestAPIAddress(HANDLE hProcess, ULONG_PTR APIAddress) + { + return UE::ImporterGetNearestAPIAddress(hProcess, APIAddress); + } + static const char* GetNearestAPIName(HANDLE hProcess, ULONG_PTR APIAddress) + { + return (const char*)UE::ImporterGetNearestAPIName(hProcess, APIAddress); + } + static void AutoSearchIATEx(DWORD ProcessId, ULONG_PTR ImageBase, ULONG_PTR SearchStart, ULONG_PTR* pIATStart, ULONG_PTR* pIATSize) + { + UE::ImporterAutoSearchIATEx(ProcessId, ImageBase, SearchStart, pIATStart, pIATSize); + } + static void EnumAddedData(fImportEnumCallBack EnumCallBack) + { + UE::ImporterEnumAddedData((void*)EnumCallBack); + } static bool DeleteAPI(DWORD_PTR apiAddr) { - return UE::ImporterDeleteAPI(apiAddr); + return UE::ImporterDeleteAPI(apiAddr); } }; @@ -1819,133 +1821,133 @@ class ImporterA { public: - static bool ExportIATEx(const char* szDumpFileName, const char* szExportFileName, const char* szSectionName) - { - return UE::ImporterExportIATEx((char*)szDumpFileName, (char*)szExportFileName, (char*)szSectionName); - } - static bool CopyOriginalIAT(const char* szOriginalFile, const char* szDumpFile) - { - return UE::ImporterCopyOriginalIAT((char*)szOriginalFile, (char*)szDumpFile); - } - static bool LoadImportTable(const char* szFileName) - { - return UE::ImporterLoadImportTable((char*)szFileName); - } - static bool MoveOriginalIAT(const char* szOriginalFile, const char* szDumpFile, const char* szSectionName) - { - return UE::ImporterMoveOriginalIAT((char*)szOriginalFile, (char*)szDumpFile, (char*)szSectionName); - } - static void AutoSearchIAT(DWORD ProcessId, char* szFileName, ULONG_PTR SearchStart, LPVOID pIATStart, LPVOID pIATSize) - { - UE::ImporterAutoSearchIAT(ProcessId, (char*)szFileName, SearchStart, pIATStart, pIATSize); - } - static long AutoFixIATEx(DWORD ProcessId, const char* szDumpedFile, const char* szSectionName, bool DumpRunningProcess, bool RealignFile, ULONG_PTR EntryPointAddress, ULONG_PTR ImageBase, ULONG_PTR SearchStart, DWORD SearchSize, DWORD SearchStep, bool TryAutoFix, bool FixEliminations, ImporterX::fImportFixCallback UnknownPointerFixCallback) - { - return UE::ImporterAutoFixIATEx(ProcessId, (char*)szDumpedFile, (char*)szSectionName, DumpRunningProcess, RealignFile, EntryPointAddress, ImageBase, SearchStart, TryAutoFix, FixEliminations, (void*)UnknownPointerFixCallback); - } - static long AutoFixIAT(DWORD ProcessId, const char* szDumpedFile, ULONG_PTR SearchStart) - { - return UE::ImporterAutoFixIAT(ProcessId, (char*)szDumpedFile, SearchStart); - } + static bool ExportIATEx(const char* szDumpFileName, const char* szExportFileName, const char* szSectionName) + { + return UE::ImporterExportIATEx((char*)szDumpFileName, (char*)szExportFileName, (char*)szSectionName); + } + static bool CopyOriginalIAT(const char* szOriginalFile, const char* szDumpFile) + { + return UE::ImporterCopyOriginalIAT((char*)szOriginalFile, (char*)szDumpFile); + } + static bool LoadImportTable(const char* szFileName) + { + return UE::ImporterLoadImportTable((char*)szFileName); + } + static bool MoveOriginalIAT(const char* szOriginalFile, const char* szDumpFile, const char* szSectionName) + { + return UE::ImporterMoveOriginalIAT((char*)szOriginalFile, (char*)szDumpFile, (char*)szSectionName); + } + static void AutoSearchIAT(DWORD ProcessId, char* szFileName, ULONG_PTR SearchStart, LPVOID pIATStart, LPVOID pIATSize) + { + UE::ImporterAutoSearchIAT(ProcessId, (char*)szFileName, SearchStart, pIATStart, pIATSize); + } + static long AutoFixIATEx(DWORD ProcessId, const char* szDumpedFile, const char* szSectionName, bool DumpRunningProcess, bool RealignFile, ULONG_PTR EntryPointAddress, ULONG_PTR ImageBase, ULONG_PTR SearchStart, DWORD SearchSize, DWORD SearchStep, bool TryAutoFix, bool FixEliminations, ImporterX::fImportFixCallback UnknownPointerFixCallback) + { + return UE::ImporterAutoFixIATEx(ProcessId, (char*)szDumpedFile, (char*)szSectionName, DumpRunningProcess, RealignFile, EntryPointAddress, ImageBase, SearchStart, TryAutoFix, FixEliminations, (void*)UnknownPointerFixCallback); + } + static long AutoFixIAT(DWORD ProcessId, const char* szDumpedFile, ULONG_PTR SearchStart) + { + return UE::ImporterAutoFixIAT(ProcessId, (char*)szDumpedFile, SearchStart); + } }; class ImporterW { public: - static bool ExportIATEx(const wchar_t* szDumpFileName, const wchar_t* szExportFileName, const wchar_t* szSectionName) - { - return UE::ImporterExportIATExW((wchar_t*)szDumpFileName, (wchar_t*)szExportFileName, (wchar_t*)szSectionName); - } - static bool CopyOriginalIAT(const wchar_t* szOriginalFile, const wchar_t* szDumpFile) - { - return UE::ImporterCopyOriginalIATW((wchar_t*)szOriginalFile, (wchar_t*)szDumpFile); - } - static bool LoadImportTable(const wchar_t* szFileName) - { - return UE::ImporterLoadImportTableW((wchar_t*)szFileName); - } - static bool MoveOriginalIAT(const wchar_t* szOriginalFile, const wchar_t* szDumpFile, const char* szSectionName) - { - return UE::ImporterMoveOriginalIATW((wchar_t*)szOriginalFile, (wchar_t*)szDumpFile, (char*)szSectionName); - } - static void AutoSearchIAT(DWORD ProcessId, const wchar_t* szFileName, ULONG_PTR SearchStart, ULONG_PTR* pIATStart, ULONG_PTR* pIATSize) - { - UE::ImporterAutoSearchIATW(ProcessId, (wchar_t*)szFileName, SearchStart, pIATStart, pIATSize); - } - static long AutoFixIATEx(DWORD ProcessId, const wchar_t* szDumpedFile, const char* szSectionName, bool DumpRunningProcess, bool RealignFile, ULONG_PTR EntryPointAddress, ULONG_PTR ImageBase, ULONG_PTR SearchStart, bool TryAutoFix, bool FixEliminations, ImporterX::fImportFixCallback UnknownPointerFixCallback) - { - return UE::ImporterAutoFixIATExW(ProcessId, (wchar_t*)szDumpedFile, (char*)szSectionName, DumpRunningProcess, RealignFile, EntryPointAddress, ImageBase, SearchStart, TryAutoFix, FixEliminations, (void*)UnknownPointerFixCallback); - } - static long AutoFixIAT(DWORD ProcessId, const wchar_t* szDumpedFile, ULONG_PTR SearchStart) - { - return UE::ImporterAutoFixIATW(ProcessId, (wchar_t*)szDumpedFile, SearchStart); - } + static bool ExportIATEx(const wchar_t* szDumpFileName, const wchar_t* szExportFileName, const wchar_t* szSectionName) + { + return UE::ImporterExportIATExW((wchar_t*)szDumpFileName, (wchar_t*)szExportFileName, (wchar_t*)szSectionName); + } + static bool CopyOriginalIAT(const wchar_t* szOriginalFile, const wchar_t* szDumpFile) + { + return UE::ImporterCopyOriginalIATW((wchar_t*)szOriginalFile, (wchar_t*)szDumpFile); + } + static bool LoadImportTable(const wchar_t* szFileName) + { + return UE::ImporterLoadImportTableW((wchar_t*)szFileName); + } + static bool MoveOriginalIAT(const wchar_t* szOriginalFile, const wchar_t* szDumpFile, const char* szSectionName) + { + return UE::ImporterMoveOriginalIATW((wchar_t*)szOriginalFile, (wchar_t*)szDumpFile, (char*)szSectionName); + } + static void AutoSearchIAT(DWORD ProcessId, const wchar_t* szFileName, ULONG_PTR SearchStart, ULONG_PTR* pIATStart, ULONG_PTR* pIATSize) + { + UE::ImporterAutoSearchIATW(ProcessId, (wchar_t*)szFileName, SearchStart, pIATStart, pIATSize); + } + static long AutoFixIATEx(DWORD ProcessId, const wchar_t* szDumpedFile, const char* szSectionName, bool DumpRunningProcess, bool RealignFile, ULONG_PTR EntryPointAddress, ULONG_PTR ImageBase, ULONG_PTR SearchStart, bool TryAutoFix, bool FixEliminations, ImporterX::fImportFixCallback UnknownPointerFixCallback) + { + return UE::ImporterAutoFixIATExW(ProcessId, (wchar_t*)szDumpedFile, (char*)szSectionName, DumpRunningProcess, RealignFile, EntryPointAddress, ImageBase, SearchStart, TryAutoFix, FixEliminations, (void*)UnknownPointerFixCallback); + } + static long AutoFixIAT(DWORD ProcessId, const wchar_t* szDumpedFile, ULONG_PTR SearchStart) + { + return UE::ImporterAutoFixIATW(ProcessId, (wchar_t*)szDumpedFile, SearchStart); + } }; -class Importer : ImporterX, ImporterA, ImporterW +class Importer : public ImporterX, ImporterA, ImporterW { public: - using ImporterX::fImportEnumCallBack; - using ImporterX::fImportFixCallback; + using ImporterX::fImportEnumCallBack; + using ImporterX::fImportFixCallback; - using ImporterX::Cleanup; - using ImporterX::SetImageBase; - using ImporterX::SetUnknownDelta; - using ImporterX::GetCurrentDelta; - using ImporterX::Init; - using ImporterX::AddNewDll; - using ImporterX::AddNewAPI; - using ImporterX::AddNewOrdinalAPI; - using ImporterX::GetAddedDllCount; - using ImporterX::GetAddedAPICount; - using ImporterX::GetLastAddedDLLName; - using ImporterX::MoveIAT; - using ImporterX::ExportIAT; - using ImporterX::EstimatedSize; - using ImporterA::ExportIATEx; - using ImporterW::ExportIATEx; - using ImporterX::FindAPIWriteLocation; - using ImporterX::FindOrdinalAPIWriteLocation; - using ImporterX::FindAPIByWriteLocation; - using ImporterX::FindDLLByWriteLocation; - using ImporterX::GetDLLName; - using ImporterX::GetAPIName; - using ImporterX::GetAPIOrdinalNumber; - using ImporterX::GetAPINameEx; - using ImporterX::GetRemoteAPIAddress; - using ImporterX::GetRemoteAPIAddressEx; - using ImporterX::GetLocalAPIAddress; - using ImporterX::GetDLLNameFromDebugee; - using ImporterX::GetAPINameFromDebugee; - using ImporterX::GetAPIOrdinalNumberFromDebugee; - using ImporterX::GetDLLIndexEx; - using ImporterX::GetDLLIndex; - using ImporterX::GetRemoteDLLBase; - using ImporterX::RelocateWriteLocation; - using ImporterX::IsForwardedAPI; - using ImporterX::GetForwardedAPIName; - using ImporterX::GetForwardedDLLName; - using ImporterX::GetForwardedDLLIndex; - using ImporterX::GetForwardedAPIOrdinalNumber; - using ImporterX::GetNearestAPIAddress; - using ImporterX::GetNearestAPIName; - using ImporterA::CopyOriginalIAT; - using ImporterW::CopyOriginalIAT; - using ImporterA::LoadImportTable; - using ImporterW::LoadImportTable; - using ImporterA::MoveOriginalIAT; - using ImporterW::MoveOriginalIAT; - using ImporterA::AutoSearchIAT; - using ImporterW::AutoSearchIAT; - using ImporterX::AutoSearchIATEx; - using ImporterX::EnumAddedData; + using ImporterX::Cleanup; + using ImporterX::SetImageBase; + using ImporterX::SetUnknownDelta; + using ImporterX::GetCurrentDelta; + using ImporterX::Init; + using ImporterX::AddNewDll; + using ImporterX::AddNewAPI; + using ImporterX::AddNewOrdinalAPI; + using ImporterX::GetAddedDllCount; + using ImporterX::GetAddedAPICount; + using ImporterX::GetLastAddedDLLName; + using ImporterX::MoveIAT; + using ImporterX::ExportIAT; + using ImporterX::EstimatedSize; + using ImporterA::ExportIATEx; + using ImporterW::ExportIATEx; + using ImporterX::FindAPIWriteLocation; + using ImporterX::FindOrdinalAPIWriteLocation; + using ImporterX::FindAPIByWriteLocation; + using ImporterX::FindDLLByWriteLocation; + using ImporterX::GetDLLName; + using ImporterX::GetAPIName; + using ImporterX::GetAPIOrdinalNumber; + using ImporterX::GetAPINameEx; + using ImporterX::GetRemoteAPIAddress; + using ImporterX::GetRemoteAPIAddressEx; + using ImporterX::GetLocalAPIAddress; + using ImporterX::GetDLLNameFromDebugee; + using ImporterX::GetAPINameFromDebugee; + using ImporterX::GetAPIOrdinalNumberFromDebugee; + using ImporterX::GetDLLIndexEx; + using ImporterX::GetDLLIndex; + using ImporterX::GetRemoteDLLBase; + using ImporterX::RelocateWriteLocation; + using ImporterX::IsForwardedAPI; + using ImporterX::GetForwardedAPIName; + using ImporterX::GetForwardedDLLName; + using ImporterX::GetForwardedDLLIndex; + using ImporterX::GetForwardedAPIOrdinalNumber; + using ImporterX::GetNearestAPIAddress; + using ImporterX::GetNearestAPIName; + using ImporterA::CopyOriginalIAT; + using ImporterW::CopyOriginalIAT; + using ImporterA::LoadImportTable; + using ImporterW::LoadImportTable; + using ImporterA::MoveOriginalIAT; + using ImporterW::MoveOriginalIAT; + using ImporterA::AutoSearchIAT; + using ImporterW::AutoSearchIAT; + using ImporterX::AutoSearchIATEx; + using ImporterX::EnumAddedData; using ImporterX::DeleteAPI; - using ImporterA::AutoFixIATEx; - using ImporterW::AutoFixIATEx; - using ImporterA::AutoFixIAT; - using ImporterW::AutoFixIAT; + using ImporterA::AutoFixIATEx; + using ImporterW::AutoFixIATEx; + using ImporterA::AutoFixIAT; + using ImporterW::AutoFixIAT; }; // --- @@ -1954,472 +1956,472 @@ class LibrarianX { protected: - typedef void (TITCALL *fLibraryBreakPointCallback)(const LOAD_DLL_DEBUG_INFO* SpecialDBG); + typedef void (TITCALL *fLibraryBreakPointCallback)(const LOAD_DLL_DEBUG_INFO* SpecialDBG); - static bool SetBreakPoint(const char* szLibraryName, eLibraryEvent bpxType, bool SingleShoot, fLibraryBreakPointCallback bpxCallBack) - { - return UE::LibrarianSetBreakPoint((char*)szLibraryName, bpxType, SingleShoot, (void*)bpxCallBack); - } - static bool RemoveBreakPoint(const char* szLibraryName, eLibraryEvent bpxType) - { - return UE::LibrarianRemoveBreakPoint((char*)szLibraryName, bpxType); - } + static bool SetBreakPoint(const char* szLibraryName, eLibraryEvent bpxType, bool SingleShoot, fLibraryBreakPointCallback bpxCallBack) + { + return UE::LibrarianSetBreakPoint((char*)szLibraryName, bpxType, SingleShoot, (void*)bpxCallBack); + } + static bool RemoveBreakPoint(const char* szLibraryName, eLibraryEvent bpxType) + { + return UE::LibrarianRemoveBreakPoint((char*)szLibraryName, bpxType); + } }; class LibrarianA { public: - typedef UE::LIBRARY_ITEM_DATA LIBRARY_ITEM_DATA; + typedef UE::LIBRARY_ITEM_DATA LIBRARY_ITEM_DATA; - typedef void (TITCALL *fLibraryEnumCallback)(const LIBRARY_ITEM_DATA* fLibraryDetail); + typedef void (TITCALL *fLibraryEnumCallback)(const LIBRARY_ITEM_DATA* fLibraryDetail); - static const LIBRARY_ITEM_DATA* GetLibraryInfo(const char* szLibraryName) - { - return (const LIBRARY_ITEM_DATA*)UE::LibrarianGetLibraryInfo((char*)szLibraryName); - } - static const LIBRARY_ITEM_DATA* GetLibraryInfoEx(void* BaseOfDll) - { - return (const LIBRARY_ITEM_DATA*)UE::LibrarianGetLibraryInfoEx(BaseOfDll); - } - static void EnumLibraryInfo(fLibraryEnumCallback EnumCallBack) - { - UE::LibrarianEnumLibraryInfo((void*)EnumCallBack); - } + static const LIBRARY_ITEM_DATA* GetLibraryInfo(const char* szLibraryName) + { + return (const LIBRARY_ITEM_DATA*)UE::LibrarianGetLibraryInfo((char*)szLibraryName); + } + static const LIBRARY_ITEM_DATA* GetLibraryInfoEx(void* BaseOfDll) + { + return (const LIBRARY_ITEM_DATA*)UE::LibrarianGetLibraryInfoEx(BaseOfDll); + } + static void EnumLibraryInfo(fLibraryEnumCallback EnumCallBack) + { + UE::LibrarianEnumLibraryInfo((void*)EnumCallBack); + } }; class LibrarianW { public: - typedef UE::LIBRARY_ITEM_DATAW LIBRARY_ITEM_DATA; + typedef UE::LIBRARY_ITEM_DATAW LIBRARY_ITEM_DATA; - typedef void (TITCALL *fLibraryEnumCallback)(const LIBRARY_ITEM_DATA* fLibraryDetail); + typedef void (TITCALL *fLibraryEnumCallback)(const LIBRARY_ITEM_DATA* fLibraryDetail); - static const LIBRARY_ITEM_DATA* GetLibraryInfo(const wchar_t* szLibraryName) - { - return (const LIBRARY_ITEM_DATA*)UE::LibrarianGetLibraryInfoW((wchar_t*)szLibraryName); - } - static const LIBRARY_ITEM_DATA* GetLibraryInfoEx(void* BaseOfDll) - { - return (const LIBRARY_ITEM_DATA*)UE::LibrarianGetLibraryInfoExW(BaseOfDll); - } - static void EnumLibraryInfo(fLibraryEnumCallback EnumCallBack) - { - UE::LibrarianEnumLibraryInfoW((void*)EnumCallBack); - } + static const LIBRARY_ITEM_DATA* GetLibraryInfo(const wchar_t* szLibraryName) + { + return (const LIBRARY_ITEM_DATA*)UE::LibrarianGetLibraryInfoW((wchar_t*)szLibraryName); + } + static const LIBRARY_ITEM_DATA* GetLibraryInfoEx(void* BaseOfDll) + { + return (const LIBRARY_ITEM_DATA*)UE::LibrarianGetLibraryInfoExW(BaseOfDll); + } + static void EnumLibraryInfo(fLibraryEnumCallback EnumCallBack) + { + UE::LibrarianEnumLibraryInfoW((void*)EnumCallBack); + } }; class Librarian : LibrarianX, LibrarianA, LibrarianW { public: - #ifndef UNICODE - typedef LibrarianA::LIBRARY_ITEM_DATA LIBRARY_ITEM_DATA; - #else - typedef LibrarianW::LIBRARY_ITEM_DATA LIBRARY_ITEM_DATA; - #endif +#ifndef UNICODE + typedef LibrarianA::LIBRARY_ITEM_DATA LIBRARY_ITEM_DATA; +#else + typedef LibrarianW::LIBRARY_ITEM_DATA LIBRARY_ITEM_DATA; +#endif - using LibrarianX::fLibraryBreakPointCallback; - #ifndef UNICODE - typedef LibrarianA::fLibraryEnumCallback fLibraryEnumCallback; - #else - typedef LibrarianW::fLibraryEnumCallback fLibraryEnumCallback; - #endif + using LibrarianX::fLibraryBreakPointCallback; +#ifndef UNICODE + typedef LibrarianA::fLibraryEnumCallback fLibraryEnumCallback; +#else + typedef LibrarianW::fLibraryEnumCallback fLibraryEnumCallback; +#endif - using LibrarianX::SetBreakPoint; - using LibrarianX::RemoveBreakPoint; - using LibrarianA::GetLibraryInfo; - using LibrarianW::GetLibraryInfo; - #ifndef UNICODE - using LibrarianA::GetLibraryInfoEx; - #else - using LibrarianW::GetLibraryInfoEx; - #endif - using LibrarianA::EnumLibraryInfo; - using LibrarianW::EnumLibraryInfo; + using LibrarianX::SetBreakPoint; + using LibrarianX::RemoveBreakPoint; + using LibrarianA::GetLibraryInfo; + using LibrarianW::GetLibraryInfo; +#ifndef UNICODE + using LibrarianA::GetLibraryInfoEx; +#else + using LibrarianW::GetLibraryInfoEx; +#endif + using LibrarianA::EnumLibraryInfo; + using LibrarianW::EnumLibraryInfo; }; class Hooks { public: - typedef UE::HOOK_ENTRY HOOK_ENTRY; + typedef UE::HOOK_ENTRY HOOK_ENTRY; - typedef bool(TITCALL *fHookEnumCallBack)(const HOOK_ENTRY* HookDetails, void* ptrOriginalInstructions, const LibrarianA::LIBRARY_ITEM_DATA* ModuleInformation, DWORD SizeOfImage); + typedef bool(TITCALL *fHookEnumCallBack)(const HOOK_ENTRY* HookDetails, void* ptrOriginalInstructions, const LibrarianA::LIBRARY_ITEM_DATA* ModuleInformation, DWORD SizeOfImage); - static bool SafeTransitionEx(void** HookAddressArray, int NumberOfHooks, bool TransitionStart) - { - return UE::HooksSafeTransitionEx(HookAddressArray, NumberOfHooks, TransitionStart); - } - static bool SafeTransition(void* HookAddress, bool TransitionStart) - { - return UE::HooksSafeTransition(HookAddress, TransitionStart); - } - static bool IsAddressRedirected(void* HookAddress) - { - return UE::HooksIsAddressRedirected(HookAddress); - } - static void* GetTrampolineAddress(void* HookAddress) - { - return UE::HooksGetTrampolineAddress(HookAddress); - } - static HOOK_ENTRY* GetHookEntryDetails(void* HookAddress) - { - return (HOOK_ENTRY*)UE::HooksGetHookEntryDetails(HookAddress); - } - static bool InsertNewRedirection(void* HookAddress, void* RedirectTo, eHookType HookType) - { - return UE::HooksInsertNewRedirection(HookAddress, RedirectTo, HookType); - } - static bool InsertNewIATRedirectionEx(ULONG_PTR FileMapVA, ULONG_PTR LoadedModuleBase, char* szHookFunction, void* RedirectTo) - { - return UE::HooksInsertNewIATRedirectionEx(FileMapVA, LoadedModuleBase, szHookFunction, RedirectTo); - } - static bool InsertNewIATRedirection(char* szModuleName, char* szHookFunction, void* RedirectTo) - { - return UE::HooksInsertNewIATRedirection(szModuleName, szHookFunction, RedirectTo); - } - static bool RemoveRedirection(void* HookAddress, bool RemoveAll) - { - return UE::HooksRemoveRedirection(HookAddress, RemoveAll); - } - static bool RemoveRedirectionsForModule(HMODULE ModuleBase) - { - return UE::HooksRemoveRedirectionsForModule(ModuleBase); - } - static bool RemoveIATRedirection(char* szModuleName, char* szHookFunction, bool RemoveAll) - { - return UE::HooksRemoveIATRedirection(szModuleName, szHookFunction, RemoveAll); - } - static bool DisableRedirection(void* HookAddress, bool DisableAll) - { - return UE::HooksDisableRedirection(HookAddress, DisableAll); - } - static bool DisableRedirectionsForModule(HMODULE ModuleBase) - { - return UE::HooksDisableRedirectionsForModule(ModuleBase); - } - static bool DisableIATRedirection(char* szModuleName, char* szHookFunction, bool DisableAll) - { - return UE::HooksDisableIATRedirection(szModuleName, szHookFunction, DisableAll); - } - static bool EnableRedirection(void* HookAddress, bool EnableAll) - { - return UE::HooksEnableRedirection(HookAddress, EnableAll); - } - static bool EnableRedirectionsForModule(HMODULE ModuleBase) - { - return UE::HooksEnableRedirectionsForModule(ModuleBase); - } - static bool EnableIATRedirection(char* szModuleName, char* szHookFunction, bool EnableAll) - { - return UE::HooksEnableIATRedirection(szModuleName, szHookFunction, EnableAll); - } - static void ScanModuleMemory(HMODULE ModuleBase, fHookEnumCallBack CallBack) - { - UE::HooksScanModuleMemory(ModuleBase, (void*)CallBack); - } - static void ScanEntireProcessMemory(fHookEnumCallBack CallBack) - { - UE::HooksScanEntireProcessMemory((void*)CallBack); - } - static void ScanEntireProcessMemoryEx() - { - UE::HooksScanEntireProcessMemoryEx(); - } + static bool SafeTransitionEx(void** HookAddressArray, int NumberOfHooks, bool TransitionStart) + { + return UE::HooksSafeTransitionEx(HookAddressArray, NumberOfHooks, TransitionStart); + } + static bool SafeTransition(void* HookAddress, bool TransitionStart) + { + return UE::HooksSafeTransition(HookAddress, TransitionStart); + } + static bool IsAddressRedirected(void* HookAddress) + { + return UE::HooksIsAddressRedirected(HookAddress); + } + static void* GetTrampolineAddress(void* HookAddress) + { + return UE::HooksGetTrampolineAddress(HookAddress); + } + static HOOK_ENTRY* GetHookEntryDetails(void* HookAddress) + { + return (HOOK_ENTRY*)UE::HooksGetHookEntryDetails(HookAddress); + } + static bool InsertNewRedirection(void* HookAddress, void* RedirectTo, eHookType HookType) + { + return UE::HooksInsertNewRedirection(HookAddress, RedirectTo, HookType); + } + static bool InsertNewIATRedirectionEx(ULONG_PTR FileMapVA, ULONG_PTR LoadedModuleBase, char* szHookFunction, void* RedirectTo) + { + return UE::HooksInsertNewIATRedirectionEx(FileMapVA, LoadedModuleBase, szHookFunction, RedirectTo); + } + static bool InsertNewIATRedirection(char* szModuleName, char* szHookFunction, void* RedirectTo) + { + return UE::HooksInsertNewIATRedirection(szModuleName, szHookFunction, RedirectTo); + } + static bool RemoveRedirection(void* HookAddress, bool RemoveAll) + { + return UE::HooksRemoveRedirection(HookAddress, RemoveAll); + } + static bool RemoveRedirectionsForModule(HMODULE ModuleBase) + { + return UE::HooksRemoveRedirectionsForModule(ModuleBase); + } + static bool RemoveIATRedirection(char* szModuleName, char* szHookFunction, bool RemoveAll) + { + return UE::HooksRemoveIATRedirection(szModuleName, szHookFunction, RemoveAll); + } + static bool DisableRedirection(void* HookAddress, bool DisableAll) + { + return UE::HooksDisableRedirection(HookAddress, DisableAll); + } + static bool DisableRedirectionsForModule(HMODULE ModuleBase) + { + return UE::HooksDisableRedirectionsForModule(ModuleBase); + } + static bool DisableIATRedirection(char* szModuleName, char* szHookFunction, bool DisableAll) + { + return UE::HooksDisableIATRedirection(szModuleName, szHookFunction, DisableAll); + } + static bool EnableRedirection(void* HookAddress, bool EnableAll) + { + return UE::HooksEnableRedirection(HookAddress, EnableAll); + } + static bool EnableRedirectionsForModule(HMODULE ModuleBase) + { + return UE::HooksEnableRedirectionsForModule(ModuleBase); + } + static bool EnableIATRedirection(char* szModuleName, char* szHookFunction, bool EnableAll) + { + return UE::HooksEnableIATRedirection(szModuleName, szHookFunction, EnableAll); + } + static void ScanModuleMemory(HMODULE ModuleBase, fHookEnumCallBack CallBack) + { + UE::HooksScanModuleMemory(ModuleBase, (void*)CallBack); + } + static void ScanEntireProcessMemory(fHookEnumCallBack CallBack) + { + UE::HooksScanEntireProcessMemory((void*)CallBack); + } + static void ScanEntireProcessMemoryEx() + { + UE::HooksScanEntireProcessMemoryEx(); + } }; class Tracer { public: - static void Init() - { - UE::TracerInit(); - } - static long long Level1(HANDLE hProcess, ULONG_PTR AddressToTrace) - { - return UE::TracerLevel1(hProcess, AddressToTrace); - } - static long long HashTracerLevel1(HANDLE hProcess, ULONG_PTR AddressToTrace, DWORD InputNumberOfInstructions) - { - return UE::HashTracerLevel1(hProcess, AddressToTrace, InputNumberOfInstructions); - } - static long DetectRedirection(HANDLE hProcess, ULONG_PTR AddressToTrace) - { - return UE::TracerDetectRedirection(hProcess, AddressToTrace); - } - static long long FixKnownRedirection(HANDLE hProcess, ULONG_PTR AddressToTrace, DWORD RedirectionId) - { - return UE::TracerFixKnownRedirection(hProcess, AddressToTrace, RedirectionId); - } - static long long FixRedirectionViaModule(HMODULE hModuleHandle, HANDLE hProcess, ULONG_PTR AddressToTrace, DWORD IdParameter) - { - return UE::TracerFixRedirectionViaModule(hModuleHandle, hProcess, AddressToTrace, IdParameter); - } - static long long DetectRedirectionViaModule(HMODULE hModuleHandle, HANDLE hProcess, ULONG_PTR AddressToTrace, DWORD* ReturnedId) - { - return UE::TracerDetectRedirectionViaModule(hModuleHandle, hProcess, AddressToTrace, ReturnedId); - } - static long FixRedirectionViaImpRecPlugin(HANDLE hProcess, const char* szPluginName, ULONG_PTR AddressToTrace) - { - return UE::TracerFixRedirectionViaImpRecPlugin(hProcess, (char*)szPluginName, AddressToTrace); - } + static void Init() + { + UE::TracerInit(); + } + static long long Level1(HANDLE hProcess, ULONG_PTR AddressToTrace) + { + return UE::TracerLevel1(hProcess, AddressToTrace); + } + static long long HashTracerLevel1(HANDLE hProcess, ULONG_PTR AddressToTrace, DWORD InputNumberOfInstructions) + { + return UE::HashTracerLevel1(hProcess, AddressToTrace, InputNumberOfInstructions); + } + static long DetectRedirection(HANDLE hProcess, ULONG_PTR AddressToTrace) + { + return UE::TracerDetectRedirection(hProcess, AddressToTrace); + } + static long long FixKnownRedirection(HANDLE hProcess, ULONG_PTR AddressToTrace, DWORD RedirectionId) + { + return UE::TracerFixKnownRedirection(hProcess, AddressToTrace, RedirectionId); + } + static long long FixRedirectionViaModule(HMODULE hModuleHandle, HANDLE hProcess, ULONG_PTR AddressToTrace, DWORD IdParameter) + { + return UE::TracerFixRedirectionViaModule(hModuleHandle, hProcess, AddressToTrace, IdParameter); + } + static long long DetectRedirectionViaModule(HMODULE hModuleHandle, HANDLE hProcess, ULONG_PTR AddressToTrace, DWORD* ReturnedId) + { + return UE::TracerDetectRedirectionViaModule(hModuleHandle, hProcess, AddressToTrace, ReturnedId); + } + static long FixRedirectionViaImpRecPlugin(HANDLE hProcess, const char* szPluginName, ULONG_PTR AddressToTrace) + { + return UE::TracerFixRedirectionViaImpRecPlugin(hProcess, (char*)szPluginName, AddressToTrace); + } }; class ExporterX { protected: - static void Cleanup() - { - UE::ExporterCleanup(); - } - static void SetImageBase(ULONG_PTR ImageBase) - { - UE::ExporterSetImageBase(ImageBase); - } - static void Init(DWORD MemorySize, ULONG_PTR ImageBase, DWORD ExportOrdinalBase, const char* szExportModuleName) - { - UE::ExporterInit(MemorySize, ImageBase, ExportOrdinalBase, (char*)szExportModuleName); - } - static bool AddNewExport(const char* szExportName, DWORD ExportRelativeAddress) - { - return UE::ExporterAddNewExport((char*)szExportName, ExportRelativeAddress); - } - static bool AddNewOrdinalExport(DWORD OrdinalNumber, DWORD ExportRelativeAddress) - { - return UE::ExporterAddNewOrdinalExport(OrdinalNumber, ExportRelativeAddress); - } - static long GetAddedExportCount() - { - return UE::ExporterGetAddedExportCount(); - } - static long EstimatedSize() - { - return UE::ExporterEstimatedSize(); - } - static bool BuildExportTable(ULONG_PTR StorePlace, ULONG_PTR FileMapVA) - { - return UE::ExporterBuildExportTable(StorePlace, FileMapVA); - } + static void Cleanup() + { + UE::ExporterCleanup(); + } + static void SetImageBase(ULONG_PTR ImageBase) + { + UE::ExporterSetImageBase(ImageBase); + } + static void Init(DWORD MemorySize, ULONG_PTR ImageBase, DWORD ExportOrdinalBase, const char* szExportModuleName) + { + UE::ExporterInit(MemorySize, ImageBase, ExportOrdinalBase, (char*)szExportModuleName); + } + static bool AddNewExport(const char* szExportName, DWORD ExportRelativeAddress) + { + return UE::ExporterAddNewExport((char*)szExportName, ExportRelativeAddress); + } + static bool AddNewOrdinalExport(DWORD OrdinalNumber, DWORD ExportRelativeAddress) + { + return UE::ExporterAddNewOrdinalExport(OrdinalNumber, ExportRelativeAddress); + } + static long GetAddedExportCount() + { + return UE::ExporterGetAddedExportCount(); + } + static long EstimatedSize() + { + return UE::ExporterEstimatedSize(); + } + static bool BuildExportTable(ULONG_PTR StorePlace, ULONG_PTR FileMapVA) + { + return UE::ExporterBuildExportTable(StorePlace, FileMapVA); + } }; class ExporterA { public: - static bool BuildExportTableEx(const char* szExportFileName, const char* szSectionName) - { - return UE::ExporterBuildExportTableEx((char*)szExportFileName, (char*)szSectionName); - } - static bool LoadExportTable(const char* szFileName) - { - return UE::ExporterLoadExportTable((char*)szFileName); - } + static bool BuildExportTableEx(const char* szExportFileName, const char* szSectionName) + { + return UE::ExporterBuildExportTableEx((char*)szExportFileName, (char*)szSectionName); + } + static bool LoadExportTable(const char* szFileName) + { + return UE::ExporterLoadExportTable((char*)szFileName); + } }; class ExporterW { public: - static bool BuildExportTableEx(const wchar_t* szExportFileName, const char* szSectionName) - { - return UE::ExporterBuildExportTableExW((wchar_t*)szExportFileName, (char*)szSectionName); - } - static bool LoadExportTable(const wchar_t* szFileName) - { - return UE::ExporterLoadExportTableW((wchar_t*)szFileName); - } + static bool BuildExportTableEx(const wchar_t* szExportFileName, const char* szSectionName) + { + return UE::ExporterBuildExportTableExW((wchar_t*)szExportFileName, (char*)szSectionName); + } + static bool LoadExportTable(const wchar_t* szFileName) + { + return UE::ExporterLoadExportTableW((wchar_t*)szFileName); + } }; class Exporter : ExporterX, ExporterA, ExporterW { public: - using ExporterX::Cleanup; - using ExporterX::SetImageBase; - using ExporterX::Init; - using ExporterX::AddNewExport; - using ExporterX::AddNewOrdinalExport; - using ExporterX::GetAddedExportCount; - using ExporterX::EstimatedSize; - using ExporterX::BuildExportTable; - using ExporterA::BuildExportTableEx; - using ExporterW::BuildExportTableEx; - using ExporterA::LoadExportTable; - using ExporterW::LoadExportTable; + using ExporterX::Cleanup; + using ExporterX::SetImageBase; + using ExporterX::Init; + using ExporterX::AddNewExport; + using ExporterX::AddNewOrdinalExport; + using ExporterX::GetAddedExportCount; + using ExporterX::EstimatedSize; + using ExporterX::BuildExportTable; + using ExporterA::BuildExportTableEx; + using ExporterW::BuildExportTableEx; + using ExporterA::LoadExportTable; + using ExporterW::LoadExportTable; }; class ProcessX { protected: - typedef void(TITCALL *fProcessWithLibraryEnumCallback)(DWORD ProcessId, HMODULE ModuleBaseAddress); + typedef void(TITCALL *fProcessWithLibraryEnumCallback)(DWORD ProcessId, HMODULE ModuleBaseAddress); - static void EnumProcessesWithLibrary(char* szLibraryName, fProcessWithLibraryEnumCallback EnumFunction) - { - UE::EnumProcessesWithLibrary(szLibraryName, (void*)EnumFunction); - } + static void EnumProcessesWithLibrary(char* szLibraryName, fProcessWithLibraryEnumCallback EnumFunction) + { + UE::EnumProcessesWithLibrary(szLibraryName, (void*)EnumFunction); + } }; class ProcessA { public: - static long GetActiveProcessId(char* szImageName) - { - return UE::GetActiveProcessId(szImageName); - } + static long GetActiveProcessId(char* szImageName) + { + return UE::GetActiveProcessId(szImageName); + } }; class ProcessW { public: - static long GetActiveProcessId(wchar_t* szImageName) - { - return UE::GetActiveProcessIdW(szImageName); - } + static long GetActiveProcessId(wchar_t* szImageName) + { + return UE::GetActiveProcessIdW(szImageName); + } }; class Process : ProcessX, ProcessA, ProcessW { public: - using ProcessX::fProcessWithLibraryEnumCallback; + using ProcessX::fProcessWithLibraryEnumCallback; - using ProcessA::GetActiveProcessId; - using ProcessW::GetActiveProcessId; - using ProcessX::EnumProcessesWithLibrary; + using ProcessA::GetActiveProcessId; + using ProcessW::GetActiveProcessId; + using ProcessX::EnumProcessesWithLibrary; }; class TLSX { protected: - static bool BreakOnCallBack(const ULONG_PTR* ArrayOfCallBacks, DWORD NumberOfCallBacks, Debugger::fBreakPointCallback bpxCallBack) - { - return UE::TLSBreakOnCallBack((void*)ArrayOfCallBacks, NumberOfCallBacks, (void*)bpxCallBack); - } - static bool RestoreData() - { - return UE::TLSRestoreData(); - } - static bool BuildNewTable(ULONG_PTR FileMapVA, ULONG_PTR StorePlace, ULONG_PTR StorePlaceRVA, const ULONG_PTR* ArrayOfCallBacks, DWORD NumberOfCallBacks) - { - return UE::TLSBuildNewTable(FileMapVA, StorePlace, StorePlaceRVA, (void*)ArrayOfCallBacks, NumberOfCallBacks); - } + static bool BreakOnCallBack(const ULONG_PTR* ArrayOfCallBacks, DWORD NumberOfCallBacks, Debugger::fBreakPointCallback bpxCallBack) + { + return UE::TLSBreakOnCallBack((void*)ArrayOfCallBacks, NumberOfCallBacks, (void*)bpxCallBack); + } + static bool RestoreData() + { + return UE::TLSRestoreData(); + } + static bool BuildNewTable(ULONG_PTR FileMapVA, ULONG_PTR StorePlace, ULONG_PTR StorePlaceRVA, const ULONG_PTR* ArrayOfCallBacks, DWORD NumberOfCallBacks) + { + return UE::TLSBuildNewTable(FileMapVA, StorePlace, StorePlaceRVA, (void*)ArrayOfCallBacks, NumberOfCallBacks); + } }; class TLSA { public: - static bool GrabCallBackData(const char* szFileName, ULONG_PTR* ArrayOfCallBacks, DWORD* NumberOfCallBacks) - { - return UE::TLSGrabCallBackData((char*)szFileName, (void*)ArrayOfCallBacks, NumberOfCallBacks); - } - static bool BreakOnCallBackEx(const char* szFileName, Debugger::fBreakPointCallback bpxCallBack) - { - return UE::TLSBreakOnCallBackEx((char*)szFileName, (void*)bpxCallBack); - } - static bool RemoveCallback(const char* szFileName) - { - return UE::TLSRemoveCallback((char*)szFileName); - } - static bool RemoveTable(const char* szFileName) - { - return UE::TLSRemoveTable((char*)szFileName); - } - static bool BackupData(const char* szFileName) - { - return UE::TLSBackupData((char*)szFileName); - } - static bool BuildNewTableEx(const char* szFileName, const char* szSectionName, const ULONG_PTR* ArrayOfCallBacks, DWORD NumberOfCallBacks) - { - return UE::TLSBuildNewTableEx((char*)szFileName, (char*)szSectionName, (void*)ArrayOfCallBacks, NumberOfCallBacks); - } + static bool GrabCallBackData(const char* szFileName, ULONG_PTR* ArrayOfCallBacks, DWORD* NumberOfCallBacks) + { + return UE::TLSGrabCallBackData((char*)szFileName, (void*)ArrayOfCallBacks, NumberOfCallBacks); + } + static bool BreakOnCallBackEx(const char* szFileName, Debugger::fBreakPointCallback bpxCallBack) + { + return UE::TLSBreakOnCallBackEx((char*)szFileName, (void*)bpxCallBack); + } + static bool RemoveCallback(const char* szFileName) + { + return UE::TLSRemoveCallback((char*)szFileName); + } + static bool RemoveTable(const char* szFileName) + { + return UE::TLSRemoveTable((char*)szFileName); + } + static bool BackupData(const char* szFileName) + { + return UE::TLSBackupData((char*)szFileName); + } + static bool BuildNewTableEx(const char* szFileName, const char* szSectionName, const ULONG_PTR* ArrayOfCallBacks, DWORD NumberOfCallBacks) + { + return UE::TLSBuildNewTableEx((char*)szFileName, (char*)szSectionName, (void*)ArrayOfCallBacks, NumberOfCallBacks); + } }; class TLSW { public: - static bool GrabCallBackData(const wchar_t* szFileName, ULONG_PTR* ArrayOfCallBacks, DWORD* NumberOfCallBacks) - { - return UE::TLSGrabCallBackDataW((wchar_t*)szFileName, (void*)ArrayOfCallBacks, NumberOfCallBacks); - } - static bool BreakOnCallBackEx(const wchar_t* szFileName, Debugger::fBreakPointCallback bpxCallBack) - { - return UE::TLSBreakOnCallBackExW((wchar_t*)szFileName, (void*)bpxCallBack); - } - static bool RemoveCallback(const wchar_t* szFileName) - { - return UE::TLSRemoveCallbackW((wchar_t*)szFileName); - } - static bool RemoveTable(const wchar_t* szFileName) - { - return UE::TLSRemoveTableW((wchar_t*)szFileName); - } - static bool BackupData(const wchar_t* szFileName) - { - return UE::TLSBackupDataW((wchar_t*)szFileName); - } - static bool BuildNewTableEx(const wchar_t* szFileName, const char* szSectionName, const ULONG_PTR* ArrayOfCallBacks, DWORD NumberOfCallBacks) - { - return UE::TLSBuildNewTableExW((wchar_t*)szFileName, (char*)szSectionName, (void*)ArrayOfCallBacks, NumberOfCallBacks); - } + static bool GrabCallBackData(const wchar_t* szFileName, ULONG_PTR* ArrayOfCallBacks, DWORD* NumberOfCallBacks) + { + return UE::TLSGrabCallBackDataW((wchar_t*)szFileName, (void*)ArrayOfCallBacks, NumberOfCallBacks); + } + static bool BreakOnCallBackEx(const wchar_t* szFileName, Debugger::fBreakPointCallback bpxCallBack) + { + return UE::TLSBreakOnCallBackExW((wchar_t*)szFileName, (void*)bpxCallBack); + } + static bool RemoveCallback(const wchar_t* szFileName) + { + return UE::TLSRemoveCallbackW((wchar_t*)szFileName); + } + static bool RemoveTable(const wchar_t* szFileName) + { + return UE::TLSRemoveTableW((wchar_t*)szFileName); + } + static bool BackupData(const wchar_t* szFileName) + { + return UE::TLSBackupDataW((wchar_t*)szFileName); + } + static bool BuildNewTableEx(const wchar_t* szFileName, const char* szSectionName, const ULONG_PTR* ArrayOfCallBacks, DWORD NumberOfCallBacks) + { + return UE::TLSBuildNewTableExW((wchar_t*)szFileName, (char*)szSectionName, (void*)ArrayOfCallBacks, NumberOfCallBacks); + } }; class TLS : TLSX, TLSA, TLSW { public: - using TLSX::BreakOnCallBack; - using TLSA::GrabCallBackData; - using TLSW::GrabCallBackData; - using TLSA::BreakOnCallBackEx; - using TLSW::BreakOnCallBackEx; - using TLSA::RemoveCallback; - using TLSW::RemoveCallback; - using TLSA::RemoveTable; - using TLSW::RemoveTable; - using TLSA::BackupData; - using TLSW::BackupData; - using TLSX::RestoreData; - using TLSX::BuildNewTable; - using TLSA::BuildNewTableEx; - using TLSW::BuildNewTableEx; + using TLSX::BreakOnCallBack; + using TLSA::GrabCallBackData; + using TLSW::GrabCallBackData; + using TLSA::BreakOnCallBackEx; + using TLSW::BreakOnCallBackEx; + using TLSA::RemoveCallback; + using TLSW::RemoveCallback; + using TLSA::RemoveTable; + using TLSW::RemoveTable; + using TLSA::BackupData; + using TLSW::BackupData; + using TLSX::RestoreData; + using TLSX::BuildNewTable; + using TLSA::BuildNewTableEx; + using TLSW::BuildNewTableEx; }; class TranslateA { public: - static const char* NativeName(char* szNativeName) - { - return (const char*)UE::TranslateNativeName(szNativeName); - } + static const char* NativeName(char* szNativeName) + { + return (const char*)UE::TranslateNativeName(szNativeName); + } }; class TranslateW { public: - static const wchar_t* NativeName(wchar_t* szNativeName) - { - return (const wchar_t*)UE::TranslateNativeNameW(szNativeName); - } + static const wchar_t* NativeName(wchar_t* szNativeName) + { + return (const wchar_t*)UE::TranslateNativeNameW(szNativeName); + } }; class Translate : TranslateA, TranslateW { public: - using TranslateA::NativeName; - using TranslateW::NativeName; + using TranslateA::NativeName; + using TranslateW::NativeName; }; class HandlerA; @@ -2427,416 +2429,416 @@ class HandlerW; class HandlerX { - friend class HandlerA; - friend class HandlerW; + friend class HandlerA; + friend class HandlerW; protected: - typedef UE::HandlerArray HandlerArray; + typedef UE::HandlerArray HandlerArray; - static long GetActiveHandleCount(DWORD ProcessId) - { - return UE::HandlerGetActiveHandleCount(ProcessId); - } - static bool IsHandleOpen(DWORD ProcessId, HANDLE hHandle) - { - return UE::HandlerIsHandleOpen(ProcessId, hHandle); - } - static long EnumerateOpenHandles(DWORD ProcessId, HandlerArray* HandleBuffer, DWORD MaxHandleCount) - { - return UE::HandlerEnumerateOpenHandles(ProcessId, HandleBuffer, MaxHandleCount); - } - static long long GetHandleDetails(HANDLE hProcess, DWORD ProcessId, HANDLE hHandle, eHandlerReturnType InformationReturn) - { - return UE::HandlerGetHandleDetails(hProcess, ProcessId, hHandle, InformationReturn); - } - static bool CloseRemoteHandle(HANDLE hProcess, HANDLE hHandle) - { - return UE::HandlerCloseRemoteHandle(hProcess, hHandle); - } - static long EnumerateOpenMutexes(HANDLE hProcess, DWORD ProcessId, HANDLE* HandleBuffer, DWORD MaxHandleCount) - { - return UE::HandlerEnumerateOpenMutexes(hProcess, ProcessId, HandleBuffer, MaxHandleCount); - } + static long GetActiveHandleCount(DWORD ProcessId) + { + return UE::HandlerGetActiveHandleCount(ProcessId); + } + static bool IsHandleOpen(DWORD ProcessId, HANDLE hHandle) + { + return UE::HandlerIsHandleOpen(ProcessId, hHandle); + } + static long EnumerateOpenHandles(DWORD ProcessId, HandlerArray* HandleBuffer, DWORD MaxHandleCount) + { + return UE::HandlerEnumerateOpenHandles(ProcessId, HandleBuffer, MaxHandleCount); + } + static long long GetHandleDetails(HANDLE hProcess, DWORD ProcessId, HANDLE hHandle, eHandlerReturnType InformationReturn) + { + return UE::HandlerGetHandleDetails(hProcess, ProcessId, hHandle, InformationReturn); + } + static bool CloseRemoteHandle(HANDLE hProcess, HANDLE hHandle) + { + return UE::HandlerCloseRemoteHandle(hProcess, hHandle); + } + static long EnumerateOpenMutexes(HANDLE hProcess, DWORD ProcessId, HANDLE* HandleBuffer, DWORD MaxHandleCount) + { + return UE::HandlerEnumerateOpenMutexes(hProcess, ProcessId, HandleBuffer, MaxHandleCount); + } }; class HandlerA { public: - static const char* GetHandleName(HANDLE hProcess, DWORD ProcessId, HANDLE hHandle, bool TranslateName) - { - return (const char*)UE::HandlerGetHandleName(hProcess, ProcessId, hHandle, TranslateName); - } - static long EnumerateLockHandles(char* szFileOrFolderName, bool NameIsFolder, bool NameIsTranslated, HandlerX::HandlerArray* HandleDataBuffer, DWORD MaxHandleCount) - { - return UE::HandlerEnumerateLockHandles(szFileOrFolderName, NameIsFolder, NameIsTranslated, HandleDataBuffer, MaxHandleCount); - } - static bool CloseAllLockHandles(char* szFileOrFolderName, bool NameIsFolder, bool NameIsTranslated) - { - return UE::HandlerCloseAllLockHandles(szFileOrFolderName, NameIsFolder, NameIsTranslated); - } - static bool IsFileLocked(char* szFileOrFolderName, bool NameIsFolder, bool NameIsTranslated) - { - return UE::HandlerIsFileLocked(szFileOrFolderName, NameIsFolder, NameIsTranslated); - } - static long long GetOpenMutexHandle(HANDLE hProcess, DWORD ProcessId, char* szMutexString) - { - return UE::HandlerGetOpenMutexHandle(hProcess, ProcessId, szMutexString); - } - static long GetProcessIdWhichCreatedMutex(char* szMutexString) - { - return UE::HandlerGetProcessIdWhichCreatedMutex(szMutexString); - } + static const char* GetHandleName(HANDLE hProcess, DWORD ProcessId, HANDLE hHandle, bool TranslateName) + { + return (const char*)UE::HandlerGetHandleName(hProcess, ProcessId, hHandle, TranslateName); + } + static long EnumerateLockHandles(char* szFileOrFolderName, bool NameIsFolder, bool NameIsTranslated, HandlerX::HandlerArray* HandleDataBuffer, DWORD MaxHandleCount) + { + return UE::HandlerEnumerateLockHandles(szFileOrFolderName, NameIsFolder, NameIsTranslated, HandleDataBuffer, MaxHandleCount); + } + static bool CloseAllLockHandles(char* szFileOrFolderName, bool NameIsFolder, bool NameIsTranslated) + { + return UE::HandlerCloseAllLockHandles(szFileOrFolderName, NameIsFolder, NameIsTranslated); + } + static bool IsFileLocked(char* szFileOrFolderName, bool NameIsFolder, bool NameIsTranslated) + { + return UE::HandlerIsFileLocked(szFileOrFolderName, NameIsFolder, NameIsTranslated); + } + static long long GetOpenMutexHandle(HANDLE hProcess, DWORD ProcessId, char* szMutexString) + { + return UE::HandlerGetOpenMutexHandle(hProcess, ProcessId, szMutexString); + } + static long GetProcessIdWhichCreatedMutex(char* szMutexString) + { + return UE::HandlerGetProcessIdWhichCreatedMutex(szMutexString); + } }; class HandlerW { public: - static const wchar_t* GetHandleName(HANDLE hProcess, DWORD ProcessId, HANDLE hHandle, bool TranslateName) - { - return (const wchar_t*)UE::HandlerGetHandleNameW(hProcess, ProcessId, hHandle, TranslateName); - } - static long EnumerateLockHandles(wchar_t* szFileOrFolderName, bool NameIsFolder, bool NameIsTranslated, HandlerX::HandlerArray* HandleDataBuffer, DWORD MaxHandleCount) - { - return UE::HandlerEnumerateLockHandlesW(szFileOrFolderName, NameIsFolder, NameIsTranslated, HandleDataBuffer, MaxHandleCount); - } - static bool CloseAllLockHandles(wchar_t* szFileOrFolderName, bool NameIsFolder, bool NameIsTranslated) - { - return UE::HandlerCloseAllLockHandlesW(szFileOrFolderName, NameIsFolder, NameIsTranslated); - } - static bool IsFileLocked(wchar_t* szFileOrFolderName, bool NameIsFolder, bool NameIsTranslated) - { - return UE::HandlerIsFileLockedW(szFileOrFolderName, NameIsFolder, NameIsTranslated); - } - static long long GetOpenMutexHandle(HANDLE hProcess, DWORD ProcessId, wchar_t* szMutexString) - { - return UE::HandlerGetOpenMutexHandleW(hProcess, ProcessId, szMutexString); - } - static long GetProcessIdWhichCreatedMutex(wchar_t* szMutexString) - { - return UE::HandlerGetProcessIdWhichCreatedMutexW(szMutexString); - } + static const wchar_t* GetHandleName(HANDLE hProcess, DWORD ProcessId, HANDLE hHandle, bool TranslateName) + { + return (const wchar_t*)UE::HandlerGetHandleNameW(hProcess, ProcessId, hHandle, TranslateName); + } + static long EnumerateLockHandles(wchar_t* szFileOrFolderName, bool NameIsFolder, bool NameIsTranslated, HandlerX::HandlerArray* HandleDataBuffer, DWORD MaxHandleCount) + { + return UE::HandlerEnumerateLockHandlesW(szFileOrFolderName, NameIsFolder, NameIsTranslated, HandleDataBuffer, MaxHandleCount); + } + static bool CloseAllLockHandles(wchar_t* szFileOrFolderName, bool NameIsFolder, bool NameIsTranslated) + { + return UE::HandlerCloseAllLockHandlesW(szFileOrFolderName, NameIsFolder, NameIsTranslated); + } + static bool IsFileLocked(wchar_t* szFileOrFolderName, bool NameIsFolder, bool NameIsTranslated) + { + return UE::HandlerIsFileLockedW(szFileOrFolderName, NameIsFolder, NameIsTranslated); + } + static long long GetOpenMutexHandle(HANDLE hProcess, DWORD ProcessId, wchar_t* szMutexString) + { + return UE::HandlerGetOpenMutexHandleW(hProcess, ProcessId, szMutexString); + } + static long GetProcessIdWhichCreatedMutex(wchar_t* szMutexString) + { + return UE::HandlerGetProcessIdWhichCreatedMutexW(szMutexString); + } }; class Handler : HandlerX, HandlerA, HandlerW { public: - using HandlerX::HandlerArray; + using HandlerX::HandlerArray; - using HandlerX::GetActiveHandleCount; - using HandlerX::IsHandleOpen; - #ifndef UNICODE - using HandlerA::GetHandleName; - #else - using HandlerW::GetHandleName; - #endif - using HandlerX::EnumerateOpenHandles; - using HandlerX::GetHandleDetails; - using HandlerX::CloseRemoteHandle; - using HandlerA::EnumerateLockHandles; - using HandlerW::EnumerateLockHandles; - using HandlerA::CloseAllLockHandles; - using HandlerW::CloseAllLockHandles; - using HandlerA::IsFileLocked; - using HandlerW::IsFileLocked; - using HandlerX::EnumerateOpenMutexes; - using HandlerA::GetOpenMutexHandle; - using HandlerW::GetOpenMutexHandle; - using HandlerA::GetProcessIdWhichCreatedMutex; - using HandlerW::GetProcessIdWhichCreatedMutex; + using HandlerX::GetActiveHandleCount; + using HandlerX::IsHandleOpen; +#ifndef UNICODE + using HandlerA::GetHandleName; +#else + using HandlerW::GetHandleName; +#endif + using HandlerX::EnumerateOpenHandles; + using HandlerX::GetHandleDetails; + using HandlerX::CloseRemoteHandle; + using HandlerA::EnumerateLockHandles; + using HandlerW::EnumerateLockHandles; + using HandlerA::CloseAllLockHandles; + using HandlerW::CloseAllLockHandles; + using HandlerA::IsFileLocked; + using HandlerW::IsFileLocked; + using HandlerX::EnumerateOpenMutexes; + using HandlerA::GetOpenMutexHandle; + using HandlerW::GetOpenMutexHandle; + using HandlerA::GetProcessIdWhichCreatedMutex; + using HandlerW::GetProcessIdWhichCreatedMutex; }; class RemoteX { protected: - static bool ExitProcess(HANDLE hProcess, DWORD ExitCode) - { - return UE::RemoteExitProcess(hProcess, ExitCode); - } + static bool ExitProcess(HANDLE hProcess, DWORD ExitCode) + { + return UE::RemoteExitProcess(hProcess, ExitCode); + } }; class RemoteA { public: - static bool LoadLibrary(HANDLE hProcess, const char* szLibraryFile, bool WaitForThreadExit) - { - return UE::RemoteLoadLibrary(hProcess, (char*)szLibraryFile, WaitForThreadExit); - } - static bool FreeLibrary(HANDLE hProcess, HMODULE hModule, const char* szLibraryFile, bool WaitForThreadExit) - { - return UE::RemoteFreeLibrary(hProcess, hModule, (char*)szLibraryFile, WaitForThreadExit); - } + static bool LoadLibrary(HANDLE hProcess, const char* szLibraryFile, bool WaitForThreadExit) + { + return UE::RemoteLoadLibrary(hProcess, (char*)szLibraryFile, WaitForThreadExit); + } + static bool FreeLibrary(HANDLE hProcess, HMODULE hModule, const char* szLibraryFile, bool WaitForThreadExit) + { + return UE::RemoteFreeLibrary(hProcess, hModule, (char*)szLibraryFile, WaitForThreadExit); + } }; class RemoteW { public: - static bool LoadLibrary(HANDLE hProcess, const wchar_t* szLibraryFile, bool WaitForThreadExit) - { - return UE::RemoteLoadLibraryW(hProcess, (wchar_t*)szLibraryFile, WaitForThreadExit); - } - static bool FreeLibrary(HANDLE hProcess, HMODULE hModule, const wchar_t* szLibraryFile, bool WaitForThreadExit) - { - return UE::RemoteFreeLibraryW(hProcess, hModule, (wchar_t*)szLibraryFile, WaitForThreadExit); - } + static bool LoadLibrary(HANDLE hProcess, const wchar_t* szLibraryFile, bool WaitForThreadExit) + { + return UE::RemoteLoadLibraryW(hProcess, (wchar_t*)szLibraryFile, WaitForThreadExit); + } + static bool FreeLibrary(HANDLE hProcess, HMODULE hModule, const wchar_t* szLibraryFile, bool WaitForThreadExit) + { + return UE::RemoteFreeLibraryW(hProcess, hModule, (wchar_t*)szLibraryFile, WaitForThreadExit); + } }; class Remote : RemoteX, RemoteA, RemoteW { public: - using RemoteA::LoadLibrary; - using RemoteW::LoadLibrary; - using RemoteA::FreeLibrary; - using RemoteW::FreeLibrary; - using RemoteX::ExitProcess; + using RemoteA::LoadLibrary; + using RemoteW::LoadLibrary; + using RemoteA::FreeLibrary; + using RemoteW::FreeLibrary; + using RemoteX::ExitProcess; }; class StaticX { protected: - typedef bool (__stdcall *fStaticDecryptCallback)(void* sMemoryStart, int sKeySize); + typedef bool (__stdcall *fStaticDecryptCallback)(void* sMemoryStart, int sKeySize); - static bool FileGetContent(HANDLE FileHandle, DWORD FilePositionLow, const DWORD* FilePositionHigh, void* Buffer, DWORD Size) - { - return UE::StaticFileGetContent(FileHandle, FilePositionLow, (DWORD*)FilePositionHigh, Buffer, Size); - } - static void FileClose(HANDLE FileHandle) - { - UE::StaticFileClose(FileHandle); - } - static void MemoryDecrypt(void* MemoryStart, DWORD MemorySize, eDecryptionType DecryptionType, eDecryptionKeySize DecryptionKeySize, ULONG_PTR DecryptionKey) - { - UE::StaticMemoryDecrypt(MemoryStart, MemorySize, DecryptionType, DecryptionKeySize, DecryptionKey); - } - static void MemoryDecryptEx(void* MemoryStart, DWORD MemorySize, eDecryptionKeySize DecryptionKeySize, fStaticDecryptCallback DecryptionCallBack) - { - UE::StaticMemoryDecryptEx(MemoryStart, MemorySize, DecryptionKeySize, (void*)DecryptionCallBack); - } - static void MemoryDecryptSpecial(void* MemoryStart, DWORD MemorySize, eDecryptionKeySize DecryptionKeySize, eDecryptionDirection SpecDecryptionType, fStaticDecryptCallback DecryptionCallBack) - { - UE::StaticMemoryDecryptSpecial(MemoryStart, MemorySize, DecryptionKeySize, SpecDecryptionType, (void*)DecryptionCallBack); - } - static void SectionDecrypt(ULONG_PTR FileMapVA, DWORD SectionNumber, bool SimulateLoad, eDecryptionType DecryptionType, eDecryptionKeySize DecryptionKeySize, ULONG_PTR DecryptionKey) - { - UE::StaticSectionDecrypt(FileMapVA, SectionNumber, SimulateLoad, DecryptionType, DecryptionKeySize, DecryptionKey); - } - static bool MemoryDecompress(const void* Source, DWORD SourceSize, void* Destination, DWORD DestinationSize, eCompressionAlgorithm Algorithm) - { - return UE::StaticMemoryDecompress((void*)Source, SourceSize, Destination, DestinationSize, Algorithm); - } - static bool HashMemory(const void* MemoryToHash, DWORD SizeOfMemory, void* HashDigest, bool OutputString, eHashAlgorithm Algorithm) - { - return UE::StaticHashMemory((void*)MemoryToHash, SizeOfMemory, HashDigest, OutputString, Algorithm); - } + static bool FileGetContent(HANDLE FileHandle, DWORD FilePositionLow, const DWORD* FilePositionHigh, void* Buffer, DWORD Size) + { + return UE::StaticFileGetContent(FileHandle, FilePositionLow, (DWORD*)FilePositionHigh, Buffer, Size); + } + static void FileClose(HANDLE FileHandle) + { + UE::StaticFileClose(FileHandle); + } + static void MemoryDecrypt(void* MemoryStart, DWORD MemorySize, eDecryptionType DecryptionType, eDecryptionKeySize DecryptionKeySize, ULONG_PTR DecryptionKey) + { + UE::StaticMemoryDecrypt(MemoryStart, MemorySize, DecryptionType, DecryptionKeySize, DecryptionKey); + } + static void MemoryDecryptEx(void* MemoryStart, DWORD MemorySize, eDecryptionKeySize DecryptionKeySize, fStaticDecryptCallback DecryptionCallBack) + { + UE::StaticMemoryDecryptEx(MemoryStart, MemorySize, DecryptionKeySize, (void*)DecryptionCallBack); + } + static void MemoryDecryptSpecial(void* MemoryStart, DWORD MemorySize, eDecryptionKeySize DecryptionKeySize, eDecryptionDirection SpecDecryptionType, fStaticDecryptCallback DecryptionCallBack) + { + UE::StaticMemoryDecryptSpecial(MemoryStart, MemorySize, DecryptionKeySize, SpecDecryptionType, (void*)DecryptionCallBack); + } + static void SectionDecrypt(ULONG_PTR FileMapVA, DWORD SectionNumber, bool SimulateLoad, eDecryptionType DecryptionType, eDecryptionKeySize DecryptionKeySize, ULONG_PTR DecryptionKey) + { + UE::StaticSectionDecrypt(FileMapVA, SectionNumber, SimulateLoad, DecryptionType, DecryptionKeySize, DecryptionKey); + } + static bool MemoryDecompress(const void* Source, DWORD SourceSize, void* Destination, DWORD DestinationSize, eCompressionAlgorithm Algorithm) + { + return UE::StaticMemoryDecompress((void*)Source, SourceSize, Destination, DestinationSize, Algorithm); + } + static bool HashMemory(const void* MemoryToHash, DWORD SizeOfMemory, void* HashDigest, bool OutputString, eHashAlgorithm Algorithm) + { + return UE::StaticHashMemory((void*)MemoryToHash, SizeOfMemory, HashDigest, OutputString, Algorithm); + } }; class StaticA { public: - static bool FileLoad(const char* szFileName, eAccess DesiredAccess, bool SimulateLoad, HANDLE* FileHandle, DWORD* LoadedSize, HANDLE* FileMap, ULONG_PTR* FileMapVA) - { - return UE::StaticFileLoad((char*)szFileName, DesiredAccess, SimulateLoad, FileHandle, LoadedSize, FileMap, FileMapVA); - } - static bool FileUnload(const char* szFileName, bool CommitChanges, HANDLE FileHandle, DWORD LoadedSize, HANDLE FileMap, ULONG_PTR FileMapVA) - { - return UE::StaticFileUnload((char*)szFileName, CommitChanges, FileHandle, LoadedSize, FileMap, FileMapVA); - } - static bool FileOpen(const char* szFileName, DWORD DesiredAccess, HANDLE* FileHandle, DWORD* FileSizeLow, DWORD* FileSizeHigh) - { - return UE::StaticFileOpen((char*)szFileName, DesiredAccess, FileHandle, FileSizeLow, FileSizeHigh); - } - static bool RawMemoryCopy(HANDLE hFile, ULONG_PTR FileMapVA, ULONG_PTR VitualAddressToCopy, DWORD Size, bool AddressIsRVA, const char* szDumpFileName) - { - return UE::StaticRawMemoryCopy(hFile, FileMapVA, VitualAddressToCopy, Size, AddressIsRVA, (char*)szDumpFileName); - } - static bool RawMemoryCopyEx(HANDLE hFile, DWORD RawAddressToCopy, DWORD Size, const char* szDumpFileName) - { - return UE::StaticRawMemoryCopyEx(hFile, RawAddressToCopy, Size, (char*)szDumpFileName); - } - static bool RawMemoryCopyEx64(HANDLE hFile, DWORD64 RawAddressToCopy, DWORD64 Size, const char* szDumpFileName) - { - return UE::StaticRawMemoryCopyEx64(hFile, RawAddressToCopy, Size, (char*)szDumpFileName); - } - static bool HashFile(const char* szFileName, void* HashDigest, bool OutputString, eHashAlgorithm Algorithm) - { - return UE::StaticHashFile((char*)szFileName, (char*)HashDigest, OutputString, Algorithm); - } + static bool FileLoad(const char* szFileName, eAccess DesiredAccess, bool SimulateLoad, HANDLE* FileHandle, DWORD* LoadedSize, HANDLE* FileMap, ULONG_PTR* FileMapVA) + { + return UE::StaticFileLoad((char*)szFileName, DesiredAccess, SimulateLoad, FileHandle, LoadedSize, FileMap, FileMapVA); + } + static bool FileUnload(const char* szFileName, bool CommitChanges, HANDLE FileHandle, DWORD LoadedSize, HANDLE FileMap, ULONG_PTR FileMapVA) + { + return UE::StaticFileUnload((char*)szFileName, CommitChanges, FileHandle, LoadedSize, FileMap, FileMapVA); + } + static bool FileOpen(const char* szFileName, DWORD DesiredAccess, HANDLE* FileHandle, DWORD* FileSizeLow, DWORD* FileSizeHigh) + { + return UE::StaticFileOpen((char*)szFileName, DesiredAccess, FileHandle, FileSizeLow, FileSizeHigh); + } + static bool RawMemoryCopy(HANDLE hFile, ULONG_PTR FileMapVA, ULONG_PTR VitualAddressToCopy, DWORD Size, bool AddressIsRVA, const char* szDumpFileName) + { + return UE::StaticRawMemoryCopy(hFile, FileMapVA, VitualAddressToCopy, Size, AddressIsRVA, (char*)szDumpFileName); + } + static bool RawMemoryCopyEx(HANDLE hFile, DWORD RawAddressToCopy, DWORD Size, const char* szDumpFileName) + { + return UE::StaticRawMemoryCopyEx(hFile, RawAddressToCopy, Size, (char*)szDumpFileName); + } + static bool RawMemoryCopyEx64(HANDLE hFile, DWORD64 RawAddressToCopy, DWORD64 Size, const char* szDumpFileName) + { + return UE::StaticRawMemoryCopyEx64(hFile, RawAddressToCopy, Size, (char*)szDumpFileName); + } + static bool HashFile(const char* szFileName, void* HashDigest, bool OutputString, eHashAlgorithm Algorithm) + { + return UE::StaticHashFile((char*)szFileName, (char*)HashDigest, OutputString, Algorithm); + } }; class StaticW { public: - static bool FileLoad(const wchar_t* szFileName, eAccess DesiredAccess, bool SimulateLoad, HANDLE* FileHandle, DWORD* LoadedSize, HANDLE* FileMap, ULONG_PTR* FileMapVA) - { - return UE::StaticFileLoadW((wchar_t*)szFileName, DesiredAccess, SimulateLoad, FileHandle, LoadedSize, FileMap, FileMapVA); - } - static bool FileUnload(const wchar_t* szFileName, bool CommitChanges, HANDLE FileHandle, DWORD LoadedSize, HANDLE FileMap, ULONG_PTR FileMapVA) - { - return UE::StaticFileUnloadW((wchar_t*)szFileName, CommitChanges, FileHandle, LoadedSize, FileMap, FileMapVA); - } - static bool FileOpen(const wchar_t* szFileName, DWORD DesiredAccess, HANDLE* FileHandle, DWORD* FileSizeLow, DWORD* FileSizeHigh) - { - return UE::StaticFileOpenW((wchar_t*)szFileName, DesiredAccess, FileHandle, FileSizeLow, FileSizeHigh); - } - static bool RawMemoryCopy(HANDLE hFile, ULONG_PTR FileMapVA, ULONG_PTR VitualAddressToCopy, DWORD Size, bool AddressIsRVA, const wchar_t* szDumpFileName) - { - return UE::StaticRawMemoryCopyW(hFile, FileMapVA, VitualAddressToCopy, Size, AddressIsRVA, (wchar_t*)szDumpFileName); - } - static bool RawMemoryCopyEx(HANDLE hFile, DWORD RawAddressToCopy, DWORD Size, const wchar_t* szDumpFileName) - { - return UE::StaticRawMemoryCopyExW(hFile, RawAddressToCopy, Size, (wchar_t*)szDumpFileName); - } - static bool RawMemoryCopyEx64(HANDLE hFile, DWORD64 RawAddressToCopy, DWORD64 Size, const wchar_t* szDumpFileName) - { - return UE::StaticRawMemoryCopyEx64W(hFile, RawAddressToCopy, Size, (wchar_t*)szDumpFileName); - } - static bool HashFile(const wchar_t* szFileName, void* HashDigest, bool OutputString, eHashAlgorithm Algorithm) - { - return UE::StaticHashFileW((wchar_t*)szFileName, (char*)HashDigest, OutputString, Algorithm); - } + static bool FileLoad(const wchar_t* szFileName, eAccess DesiredAccess, bool SimulateLoad, HANDLE* FileHandle, DWORD* LoadedSize, HANDLE* FileMap, ULONG_PTR* FileMapVA) + { + return UE::StaticFileLoadW((wchar_t*)szFileName, DesiredAccess, SimulateLoad, FileHandle, LoadedSize, FileMap, FileMapVA); + } + static bool FileUnload(const wchar_t* szFileName, bool CommitChanges, HANDLE FileHandle, DWORD LoadedSize, HANDLE FileMap, ULONG_PTR FileMapVA) + { + return UE::StaticFileUnloadW((wchar_t*)szFileName, CommitChanges, FileHandle, LoadedSize, FileMap, FileMapVA); + } + static bool FileOpen(const wchar_t* szFileName, DWORD DesiredAccess, HANDLE* FileHandle, DWORD* FileSizeLow, DWORD* FileSizeHigh) + { + return UE::StaticFileOpenW((wchar_t*)szFileName, DesiredAccess, FileHandle, FileSizeLow, FileSizeHigh); + } + static bool RawMemoryCopy(HANDLE hFile, ULONG_PTR FileMapVA, ULONG_PTR VitualAddressToCopy, DWORD Size, bool AddressIsRVA, const wchar_t* szDumpFileName) + { + return UE::StaticRawMemoryCopyW(hFile, FileMapVA, VitualAddressToCopy, Size, AddressIsRVA, (wchar_t*)szDumpFileName); + } + static bool RawMemoryCopyEx(HANDLE hFile, DWORD RawAddressToCopy, DWORD Size, const wchar_t* szDumpFileName) + { + return UE::StaticRawMemoryCopyExW(hFile, RawAddressToCopy, Size, (wchar_t*)szDumpFileName); + } + static bool RawMemoryCopyEx64(HANDLE hFile, DWORD64 RawAddressToCopy, DWORD64 Size, const wchar_t* szDumpFileName) + { + return UE::StaticRawMemoryCopyEx64W(hFile, RawAddressToCopy, Size, (wchar_t*)szDumpFileName); + } + static bool HashFile(const wchar_t* szFileName, void* HashDigest, bool OutputString, eHashAlgorithm Algorithm) + { + return UE::StaticHashFileW((wchar_t*)szFileName, (char*)HashDigest, OutputString, Algorithm); + } }; class Static : StaticX, StaticA, StaticW { public: - using StaticX::fStaticDecryptCallback; + using StaticX::fStaticDecryptCallback; - using StaticA::FileLoad; - using StaticW::FileLoad; - using StaticA::FileUnload; - using StaticW::FileUnload; - using StaticA::FileOpen; - using StaticW::FileOpen; - using StaticX::FileGetContent; - using StaticX::FileClose; - using StaticX::MemoryDecrypt; - using StaticX::MemoryDecryptEx; - using StaticX::MemoryDecryptSpecial; - using StaticX::SectionDecrypt; - using StaticX::MemoryDecompress; - using StaticA::RawMemoryCopy; - using StaticW::RawMemoryCopy; - using StaticA::RawMemoryCopyEx; - using StaticW::RawMemoryCopyEx; - using StaticA::RawMemoryCopyEx64; - using StaticW::RawMemoryCopyEx64; - using StaticX::HashMemory; - using StaticA::HashFile; - using StaticW::HashFile; + using StaticA::FileLoad; + using StaticW::FileLoad; + using StaticA::FileUnload; + using StaticW::FileUnload; + using StaticA::FileOpen; + using StaticW::FileOpen; + using StaticX::FileGetContent; + using StaticX::FileClose; + using StaticX::MemoryDecrypt; + using StaticX::MemoryDecryptEx; + using StaticX::MemoryDecryptSpecial; + using StaticX::SectionDecrypt; + using StaticX::MemoryDecompress; + using StaticA::RawMemoryCopy; + using StaticW::RawMemoryCopy; + using StaticA::RawMemoryCopyEx; + using StaticW::RawMemoryCopyEx; + using StaticA::RawMemoryCopyEx64; + using StaticW::RawMemoryCopyEx64; + using StaticX::HashMemory; + using StaticA::HashFile; + using StaticW::HashFile; }; class EngineX { protected: - static void SetEngineVariable(eEngineVariable VariableId, bool VariableSet) - { - UE::SetEngineVariable(VariableId, VariableSet); - } - static bool FakeMissingDependencies(HANDLE hProcess) - { - return UE::EngineFakeMissingDependencies(hProcess); - } - static bool DeleteCreatedDependencies() - { - return UE::EngineDeleteCreatedDependencies(); - } - static bool CreateUnpackerWindow(char* WindowUnpackerTitle, char* WindowUnpackerLongTitle, char* WindowUnpackerName, char* WindowUnpackerAuthor, void* StartUnpackingCallBack) - { - return UE::EngineCreateUnpackerWindow(WindowUnpackerTitle, WindowUnpackerLongTitle, WindowUnpackerName, WindowUnpackerAuthor, StartUnpackingCallBack); - } - static void AddUnpackerWindowLogMessage(char* szLogMessage) - { - return UE::EngineAddUnpackerWindowLogMessage(szLogMessage); - } + static void SetEngineVariable(eEngineVariable VariableId, bool VariableSet) + { + UE::SetEngineVariable(VariableId, VariableSet); + } + static bool FakeMissingDependencies(HANDLE hProcess) + { + return UE::EngineFakeMissingDependencies(hProcess); + } + static bool DeleteCreatedDependencies() + { + return UE::EngineDeleteCreatedDependencies(); + } + static bool CreateUnpackerWindow(char* WindowUnpackerTitle, char* WindowUnpackerLongTitle, char* WindowUnpackerName, char* WindowUnpackerAuthor, void* StartUnpackingCallBack) + { + return UE::EngineCreateUnpackerWindow(WindowUnpackerTitle, WindowUnpackerLongTitle, WindowUnpackerName, WindowUnpackerAuthor, StartUnpackingCallBack); + } + static void AddUnpackerWindowLogMessage(char* szLogMessage) + { + return UE::EngineAddUnpackerWindowLogMessage(szLogMessage); + } }; class EngineA { public: - static bool CreateMissingDependencies(char* szFileName, char* szOutputFolder, bool LogCreatedFiles) - { - return UE::EngineCreateMissingDependencies(szFileName, szOutputFolder, LogCreatedFiles); - } + static bool CreateMissingDependencies(char* szFileName, char* szOutputFolder, bool LogCreatedFiles) + { + return UE::EngineCreateMissingDependencies(szFileName, szOutputFolder, LogCreatedFiles); + } }; class EngineW { public: - static bool CreateMissingDependencies(wchar_t* szFileName, wchar_t* szOutputFolder, bool LogCreatedFiles) - { - return UE::EngineCreateMissingDependenciesW(szFileName, szOutputFolder, LogCreatedFiles); - } + static bool CreateMissingDependencies(wchar_t* szFileName, wchar_t* szOutputFolder, bool LogCreatedFiles) + { + return UE::EngineCreateMissingDependenciesW(szFileName, szOutputFolder, LogCreatedFiles); + } }; class Engine : EngineX, EngineA, EngineW { public: - using EngineX::SetEngineVariable; - using EngineA::CreateMissingDependencies; - using EngineW::CreateMissingDependencies; - using EngineX::FakeMissingDependencies; - using EngineX::DeleteCreatedDependencies; - using EngineX::CreateUnpackerWindow; - using EngineX::AddUnpackerWindowLogMessage; + using EngineX::SetEngineVariable; + using EngineA::CreateMissingDependencies; + using EngineW::CreateMissingDependencies; + using EngineX::FakeMissingDependencies; + using EngineX::DeleteCreatedDependencies; + using EngineX::CreateUnpackerWindow; + using EngineX::AddUnpackerWindowLogMessage; }; class ExtensionManager { public: - typedef UE::PluginInformation PluginInformation; + typedef UE::PluginInformation PluginInformation; - static bool IsPluginLoaded(char* szPluginName) - { - return UE::ExtensionManagerIsPluginLoaded(szPluginName); - } - static bool IsPluginEnabled(char* szPluginName) - { - return UE::ExtensionManagerIsPluginEnabled(szPluginName); - } - static bool DisableAllPlugins() - { - return UE::ExtensionManagerDisableAllPlugins(); - } - static bool DisablePlugin(char* szPluginName) - { - return UE::ExtensionManagerDisablePlugin(szPluginName); - } - static bool EnableAllPlugins() - { - return UE::ExtensionManagerEnableAllPlugins(); - } - static bool EnablePlugin(char* szPluginName) - { - return UE::ExtensionManagerEnablePlugin(szPluginName); - } - static bool UnloadAllPlugins() - { - return UE::ExtensionManagerUnloadAllPlugins(); - } - static bool UnloadPlugin(char* szPluginName) - { - return UE::ExtensionManagerUnloadPlugin(szPluginName); - } - static PluginInformation* GetPluginInfo(char* szPluginName) - { - return (PluginInformation*)UE::ExtensionManagerGetPluginInfo(szPluginName); - } + static bool IsPluginLoaded(char* szPluginName) + { + return UE::ExtensionManagerIsPluginLoaded(szPluginName); + } + static bool IsPluginEnabled(char* szPluginName) + { + return UE::ExtensionManagerIsPluginEnabled(szPluginName); + } + static bool DisableAllPlugins() + { + return UE::ExtensionManagerDisableAllPlugins(); + } + static bool DisablePlugin(char* szPluginName) + { + return UE::ExtensionManagerDisablePlugin(szPluginName); + } + static bool EnableAllPlugins() + { + return UE::ExtensionManagerEnableAllPlugins(); + } + static bool EnablePlugin(char* szPluginName) + { + return UE::ExtensionManagerEnablePlugin(szPluginName); + } + static bool UnloadAllPlugins() + { + return UE::ExtensionManagerUnloadAllPlugins(); + } + static bool UnloadPlugin(char* szPluginName) + { + return UE::ExtensionManagerUnloadPlugin(szPluginName); + } + static PluginInformation* GetPluginInfo(char* szPluginName) + { + return (PluginInformation*)UE::ExtensionManagerGetPluginInfo(szPluginName); + } }; } /* namespace TE */ diff --git a/TitanEngine/3rdparty-definitions.h b/TitanEngine/3rdparty-definitions.h index 7f47454..3b33c12 100644 --- a/TitanEngine/3rdparty-definitions.h +++ b/TitanEngine/3rdparty-definitions.h @@ -18,6 +18,7 @@ int scylla_fixDump(WCHAR* dumpFile, WCHAR* iatFixFile, WCHAR* sectionName = L".s int scylla_fixMappedDump(DWORD_PTR iatVA, DWORD_PTR FileMapVA, HANDLE hFileMap); int scylla_getModuleCount(); int scylla_getImportCount(); +void scylla_enumImportTree(LPVOID enumCallBack); #ifdef __cplusplus } #endif /*__cplusplus*/ diff --git a/TitanEngine/TitanEngine.cpp b/TitanEngine/TitanEngine.cpp index f3625dc..f7f5f9a 100644 --- a/TitanEngine/TitanEngine.cpp +++ b/TitanEngine/TitanEngine.cpp @@ -19472,86 +19472,7 @@ __declspec(dllexport) void TITCALL ImporterAutoSearchIATEx(DWORD ProcessId, ULON } __declspec(dllexport) void TITCALL ImporterEnumAddedData(LPVOID EnumCallBack) { - //TODO scylla enable - return; - /* - int i = 0; - int j = 0; - int x = 0; - bool OrdinalImport; - DWORD DLLNumber = NULL; - DWORD NumberOfAPIs = NULL; - LPVOID NameReadPlace = NULL; - ULONG_PTR CurrentAPILocation = NULL; - DWORD APINameRelativeOffset = NULL; - typedef void(TITCALL *fEnumCallBack)(LPVOID fImportDetail); - fEnumCallBack myEnumCallBack = (fEnumCallBack)EnumCallBack; - ImportEnumData myImportEnumData; - char szOrdinalAPIName[MAX_PATH]; - - if(EnumCallBack != NULL && ImporterGetAddedDllCount() > NULL) - { - DLLNumber = impDLLNumber + 1; - while(DLLNumber > NULL) - { - #if !defined(_WIN64) - NameReadPlace = (LPVOID)(impDLLDataList[i][0] + 12); - #else - NameReadPlace = (LPVOID)(impDLLDataList[i][0] + 20); - #endif - RtlMoveMemory(&CurrentAPILocation, (LPVOID)(impDLLDataList[i][0]), sizeof ULONG_PTR); - RtlMoveMemory(&NumberOfAPIs, (LPVOID)(impDLLDataList[i][0] + 2 * sizeof ULONG_PTR), 4); - RtlZeroMemory(&myImportEnumData, sizeof ImportEnumData); - myImportEnumData.NumberOfImports = (int)(NumberOfAPIs - 1); - myImportEnumData.BaseImportThunk = CurrentAPILocation; - myImportEnumData.ImageBase = impImageBase; - myImportEnumData.NewDll = true; - while(NumberOfAPIs > 1) - { - RtlMoveMemory(&APINameRelativeOffset, NameReadPlace, 4); - myImportEnumData.ImportThunk = CurrentAPILocation; - OrdinalImport = false; - for(j = 0; j < 1000; j++) - { - if(impOrdinalList[j][0] == CurrentAPILocation) - { - OrdinalImport = true; - x = j; - j = 1000; - } - else if(impOrdinalList[j][0] == NULL) - { - j = 1000; - } - } - if(OrdinalImport) - { - wsprintfA(szOrdinalAPIName, "%08X", impOrdinalList[x][1] & IMAGE_ORDINAL_FLAG); - myImportEnumData.APIName = (char*)(szOrdinalAPIName); - } - else - { - myImportEnumData.APIName = (char*)((ULONG_PTR)impDLLStringList[i][0] + APINameRelativeOffset + 2); - } - myImportEnumData.DLLName = (char*)((ULONG_PTR)impDLLStringList[i][0]); - __try - { - myEnumCallBack(&myImportEnumData); - } - __except(EXCEPTION_EXECUTE_HANDLER) - { - NumberOfAPIs = 2; - } - myImportEnumData.NewDll = false; - CurrentAPILocation = CurrentAPILocation + sizeof ULONG_PTR; - NameReadPlace = (LPVOID)((ULONG_PTR)NameReadPlace + sizeof ULONG_PTR); - NumberOfAPIs--; - } - DLLNumber--; - i++; - } - } - */ + return scylla_enumImportTree(EnumCallBack); } __declspec(dllexport) long TITCALL ImporterAutoFixIATEx(DWORD ProcessId, char* szDumpedFile, char* szSectionName, bool DumpRunningProcess, bool RealignFile, ULONG_PTR EntryPointAddress, ULONG_PTR ImageBase, ULONG_PTR SearchStart, bool TryAutoFix, bool FixEliminations, LPVOID UnknownPointerFixCallback) { diff --git a/TitanEngine/scylla_wrapper_x64.lib b/TitanEngine/scylla_wrapper_x64.lib index 6e84e181a4ed5e92ce9de665c86eae0e36d17110..7a81f94f2b7d82b4ce40dad5bbf5d8d720376fb1 100644 GIT binary patch delta 155865 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 z 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 E0htT?8vpy5NHcjL8by_618OzK@lj$ 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

VYVSD3Kp{!j2TpdlJ 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 delta 155113 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 diff --git a/TitanEngine/scylla_wrapperd_x86.lib b/TitanEngine/scylla_wrapperd_x86.lib index 72a98541833dfefea1bc63e4d23c4685d4b67ead..e97e82617a6353537755dfb8cc049124dd508bf1 100644 GIT binary patch delta 135793 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%0AGFy! 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

%Fj)#ZVM_PD`Rr1#%tRr@(ZAvqA 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 BY?J^1 delta 127840 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�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

O>Y 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 diff --git a/scylla_integration.txt b/scylla_integration.txt index 9972bff..b2841ff 100644 --- a/scylla_integration.txt +++ b/scylla_integration.txt @@ -17,7 +17,6 @@ AddNewDLL AddNewAPI AddNewOrdinal GetLastAddedDLLName -EnumAddedData //useful for investigating complete iat moduleList EstimatedSize GetDLLIndexEx GetDLLIndex

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 Tg&mj0bTIu#qTX9#QX~Ec$$F=` delta 145144 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