From 69259012048ccb9eebbaac2c14ba2639a8f0359a Mon Sep 17 00:00:00 2001 From: mrexodia Date: Sun, 29 Jan 2017 00:37:32 +0100 Subject: [PATCH 1/3] greatly simplify building - no more hardcoded paths in the project - more versatile .gitignore (works up to VS2017) - include detours.lib directly in the project - remove x64 platform (Dark Souls is 32 bit) - remove Debug platform (the readme explicitly states this should not be used) - add filters file to categorize source files - added direction to DirectX SDK in the source (at the place it would error) --- .gitignore | 6 +- DSfix.sln | 9 - DSfix.v11.suo | Bin 105984 -> 0 bytes DSfix.vcxproj | 201 +------------- DSfix.vcxproj.filters | 154 +++++++++++ Detouring.h | 4 +- d3d9.h | 2 + detours/detours.h | 626 ++++++++++++++++++++++++++++++++++++++++++ detours/detours.lib | Bin 0 -> 266538 bytes 9 files changed, 796 insertions(+), 206 deletions(-) delete mode 100644 DSfix.v11.suo create mode 100644 DSfix.vcxproj.filters create mode 100644 detours/detours.h create mode 100644 detours/detours.lib diff --git a/.gitignore b/.gitignore index a426adb..40ff47d 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,8 @@ *.sdf *.user *.opensdf -Release \ No newline at end of file +*.suo +Release +Debug/ +Release/ +.vs/ \ No newline at end of file diff --git a/DSfix.sln b/DSfix.sln index 8548d66..ea6106c 100644 --- a/DSfix.sln +++ b/DSfix.sln @@ -4,20 +4,11 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "DSfix", "DSfix.vcxproj", "{ EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution - Debug|Win32 = Debug|Win32 - Debug|x64 = Debug|x64 Release|Win32 = Release|Win32 - Release|x64 = Release|x64 EndGlobalSection GlobalSection(ProjectConfigurationPlatforms) = postSolution - {E004A114-54E0-B15C-BDA5-46681084E257}.Debug|Win32.ActiveCfg = Debug|Win32 - {E004A114-54E0-B15C-BDA5-46681084E257}.Debug|Win32.Build.0 = Debug|Win32 - {E004A114-54E0-B15C-BDA5-46681084E257}.Debug|x64.ActiveCfg = Debug|x64 - {E004A114-54E0-B15C-BDA5-46681084E257}.Debug|x64.Build.0 = Debug|x64 {E004A114-54E0-B15C-BDA5-46681084E257}.Release|Win32.ActiveCfg = Release|Win32 {E004A114-54E0-B15C-BDA5-46681084E257}.Release|Win32.Build.0 = Release|Win32 - {E004A114-54E0-B15C-BDA5-46681084E257}.Release|x64.ActiveCfg = Release|x64 - {E004A114-54E0-B15C-BDA5-46681084E257}.Release|x64.Build.0 = Release|x64 EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE diff --git a/DSfix.v11.suo b/DSfix.v11.suo deleted file mode 100644 index aaa1b111702b9624b872309718d35baddada5090..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 105984 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 diff --git a/DSfix.vcxproj b/DSfix.vcxproj index ce32a8a..aa064a4 100644 --- a/DSfix.vcxproj +++ b/DSfix.vcxproj @@ -1,22 +1,10 @@  - - Debug - Win32 - - - Debug - x64 - Release Win32 - - Release - x64 - @@ -26,25 +14,7 @@ {E004A114-54E0-B15C-BDA5-46681084E257} - - DynamicLibrary - false - MultiByte - v110 - - - DynamicLibrary - false - MultiByte - v110 - - DynamicLibrary - false - MultiByte - v100 - - DynamicLibrary false MultiByte @@ -53,38 +23,20 @@ - - - - - - - - - <_ProjectFileVersion>10.0.30319.1 .\Release\ .\Release\ false - false - .\Debug\ - .\Debug\ - false - false - C:\dev\OculusSDK\LibOVR\Include;C:\dev\Detours Express 3.0\include;$(IncludePath) - E:\Program Files %28x86%29\Microsoft DirectX SDK %28June 2010%29\Include;$(IncludePath) + $(DXSDK_DIR)\Include;$(IncludePath) DINPUT8 - d3d9 - DINPUT8 - d3d9 - C:\dev\OculusSDK\LibOVR\Lib\Win32;C:\Program Files (x86)\Microsoft DirectX SDK (August 2009)\Lib\x86;C:\dev\Detours Express 3.0\lib.X86;$(LibraryPath) + $(DXSDK_DIR)\Lib\x86;$(LibraryPath) @@ -104,6 +56,7 @@ true Speed StreamingSIMDExtensions2 + 4005 true @@ -112,7 +65,7 @@ MachineX86 E:\Program Files %28x86%29\Microsoft DirectX SDK %28June 2010%29\Lib\x86;%(AdditionalLibraryDirectories) DINPUT8.def - winmm.lib;detours.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;psapi.lib;%(AdditionalDependencies) + winmm.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;psapi.lib;%(AdditionalDependencies) Default @@ -130,126 +83,14 @@ 0x0409 - cp $(TargetPath) "E:\Steam\steamapps\common\Dark Souls Prepare to Die Edition\DATA" + + - - - MaxSpeed - OnlyExplicitInline - WIN32;NDEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) - true - MultiThreaded - true - - - .\Release/ - .\Release/ - .\Release/ - Level3 - true - - - true - C:\Program Files %28x86%29\Microsoft DirectX SDK %28June 2010%29\Lib\x86;%(AdditionalLibraryDirectories) - - - NDEBUG;%(PreprocessorDefinitions) - true - true - - - - - NDEBUG;%(PreprocessorDefinitions) - 0x0409 - - - - - Disabled - WIN32;_DEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) - EnableFastChecks - MultiThreadedDebug - - - .\Debug/ - .\Debug/ - .\Debug/ - true - Level3 - true - EditAndContinue - C:\Program Files %28x86%29\Microsoft DirectX SDK %28June 2010%29\Include;%(AdditionalIncludeDirectories) - - - true - true - MachineX86 - C:\Program Files %28x86%29\Microsoft DirectX SDK %28June 2010%29\Lib\x86;%(AdditionalLibraryDirectories) - - - _DEBUG;%(PreprocessorDefinitions) - true - true - Win32 - - - - - _DEBUG;%(PreprocessorDefinitions) - 0x0409 - - - - - Disabled - WIN32;_DEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) - EnableFastChecks - MultiThreadedDebug - - - .\Debug/ - .\Debug/ - .\Debug/ - true - Level3 - true - ProgramDatabase - E:\Program Files %28x86%29\Microsoft DirectX SDK %28June 2010%29\Include;%(AdditionalIncludeDirectories) - - - .\Debug/d3d9.dll - true - true - E:\Program Files %28x86%29\Microsoft DirectX SDK %28June 2010%29\Lib\x86;%(AdditionalLibraryDirectories) - - - _DEBUG;%(PreprocessorDefinitions) - true - true - - - - - _DEBUG;%(PreprocessorDefinitions) - 0x0409 - - - Disabled - Disabled - WIN32;_DEBUG;_WINDOWS;_MBCS;_USRDLL - WIN32;_DEBUG;_WINDOWS;_MBCS;_USRDLL - EnableFastChecks - EnableFastChecks - true - true MaxSpeed - MaxSpeed WIN32;NDEBUG;_WINDOWS;_MBCS;_USRDLL - WIN32;NDEBUG;_WINDOWS;_MBCS;_USRDLL @@ -261,46 +102,16 @@ - Disabled - Disabled - WIN32;_DEBUG;_WINDOWS;_MBCS;_USRDLL - WIN32;_DEBUG;_WINDOWS;_MBCS;_USRDLL - EnableFastChecks - EnableFastChecks - true - true MaxSpeed - MaxSpeed WIN32;NDEBUG;_WINDOWS;_MBCS;_USRDLL - WIN32;NDEBUG;_WINDOWS;_MBCS;_USRDLL - Disabled - Disabled - WIN32;_DEBUG;_WINDOWS;_MBCS;_USRDLL - WIN32;_DEBUG;_WINDOWS;_MBCS;_USRDLL - EnableFastChecks - EnableFastChecks - true - true MaxSpeed - MaxSpeed WIN32;NDEBUG;_WINDOWS;_MBCS;_USRDLL - WIN32;NDEBUG;_WINDOWS;_MBCS;_USRDLL - Disabled - Disabled - WIN32;_DEBUG;_WINDOWS;_MBCS;_USRDLL - WIN32;_DEBUG;_WINDOWS;_MBCS;_USRDLL - EnableFastChecks - EnableFastChecks - true - true MaxSpeed - MaxSpeed WIN32;NDEBUG;_WINDOWS;_MBCS;_USRDLL - WIN32;NDEBUG;_WINDOWS;_MBCS;_USRDLL diff --git a/DSfix.vcxproj.filters b/DSfix.vcxproj.filters new file mode 100644 index 0000000..703042d --- /dev/null +++ b/DSfix.vcxproj.filters @@ -0,0 +1,154 @@ + + + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + + + + + + + + + + {b7358087-4926-4614-a239-dcc17176b6d8} + + + {55ebbcd6-421b-458a-abd5-c9d7c082044d} + + + \ No newline at end of file diff --git a/Detouring.h b/Detouring.h index ebd5f7a..d793007 100644 --- a/Detouring.h +++ b/Detouring.h @@ -2,7 +2,9 @@ #include "main.h" -#include +#include "detours\detours.h" + +#pragma comment(lib, "detours\\detours.lib") static DWORD (WINAPI * TrueSleepEx)(DWORD dwMilliseconds, BOOL bAlertable) = SleepEx; diff --git a/d3d9.h b/d3d9.h index d512f4b..45cbc0a 100644 --- a/d3d9.h +++ b/d3d9.h @@ -1,5 +1,7 @@ #pragma once +//Download & Install https://www.microsoft.com/en-us/download/details.aspx?id=6812 + #pragma comment(lib, "d3d9.lib") #pragma comment(lib, "d3dx9.lib") #pragma comment(lib, "dxguid.lib") diff --git a/detours/detours.h b/detours/detours.h new file mode 100644 index 0000000..7d265df --- /dev/null +++ b/detours/detours.h @@ -0,0 +1,626 @@ +////////////////////////////////////////////////////////////////////////////// +// +// Core Detours Functionality (detours.h of detours.lib) +// +// Microsoft Research Detours Package, Version 3.0 Build_316. +// +// Copyright (c) Microsoft Corporation. All rights reserved. +// + +#pragma once +#ifndef _DETOURS_H_ +#define _DETOURS_H_ + +#define DETOURS_VERSION 30000 // 3.00.00 + +////////////////////////////////////////////////////////////////////////////// +// + +#if (_MSC_VER < 1299) +typedef LONG LONG_PTR; +typedef ULONG ULONG_PTR; +#endif + +#ifndef __in_z +#define __in_z +#endif + +////////////////////////////////////////////////////////////////////////////// +// +#ifndef GUID_DEFINED +#define GUID_DEFINED +typedef struct _GUID +{ + DWORD Data1; + WORD Data2; + WORD Data3; + BYTE Data4[ 8 ]; +} GUID; + +#ifdef INITGUID +#define DEFINE_GUID(name, l, w1, w2, b1, b2, b3, b4, b5, b6, b7, b8) \ + const GUID name \ + = { l, w1, w2, { b1, b2, b3, b4, b5, b6, b7, b8 } } +#else +#define DEFINE_GUID(name, l, w1, w2, b1, b2, b3, b4, b5, b6, b7, b8) \ + const GUID name +#endif // INITGUID +#endif // !GUID_DEFINED + +#if defined(__cplusplus) +#ifndef _REFGUID_DEFINED +#define _REFGUID_DEFINED +#define REFGUID const GUID & +#endif // !_REFGUID_DEFINED +#else // !__cplusplus +#ifndef _REFGUID_DEFINED +#define _REFGUID_DEFINED +#define REFGUID const GUID * const +#endif // !_REFGUID_DEFINED +#endif // !__cplusplus + +// +////////////////////////////////////////////////////////////////////////////// + +#ifdef __cplusplus +extern "C" { +#endif // __cplusplus + +/////////////////////////////////////////////////// Instruction Target Macros. +// +#define DETOUR_INSTRUCTION_TARGET_NONE ((PVOID)0) +#define DETOUR_INSTRUCTION_TARGET_DYNAMIC ((PVOID)(LONG_PTR)-1) +#define DETOUR_SECTION_HEADER_SIGNATURE 0x00727444 // "Dtr\0" + +extern const GUID DETOUR_EXE_RESTORE_GUID; +extern const GUID DETOUR_EXE_HELPER_GUID; + +#define DETOUR_TRAMPOLINE_SIGNATURE 0x21727444 // Dtr! +typedef struct _DETOUR_TRAMPOLINE DETOUR_TRAMPOLINE, *PDETOUR_TRAMPOLINE; + +/////////////////////////////////////////////////////////// Binary Structures. +// +#pragma pack(push, 8) +typedef struct _DETOUR_SECTION_HEADER +{ + DWORD cbHeaderSize; + DWORD nSignature; + DWORD nDataOffset; + DWORD cbDataSize; + + DWORD nOriginalImportVirtualAddress; + DWORD nOriginalImportSize; + DWORD nOriginalBoundImportVirtualAddress; + DWORD nOriginalBoundImportSize; + + DWORD nOriginalIatVirtualAddress; + DWORD nOriginalIatSize; + DWORD nOriginalSizeOfImage; + DWORD cbPrePE; + + DWORD nOriginalClrFlags; + DWORD reserved1; + DWORD reserved2; + DWORD reserved3; + + // Followed by cbPrePE bytes of data. +} DETOUR_SECTION_HEADER, *PDETOUR_SECTION_HEADER; + +typedef struct _DETOUR_SECTION_RECORD +{ + DWORD cbBytes; + DWORD nReserved; + GUID guid; +} DETOUR_SECTION_RECORD, *PDETOUR_SECTION_RECORD; + +typedef struct _DETOUR_CLR_HEADER +{ + // Header versioning + ULONG cb; + USHORT MajorRuntimeVersion; + USHORT MinorRuntimeVersion; + + // Symbol table and startup information + IMAGE_DATA_DIRECTORY MetaData; + ULONG Flags; + + // Followed by the rest of the IMAGE_COR20_HEADER +} DETOUR_CLR_HEADER, *PDETOUR_CLR_HEADER; + +typedef struct _DETOUR_EXE_RESTORE +{ + DWORD cb; + DWORD cbidh; + DWORD cbinh; + DWORD cbclr; + + PBYTE pidh; + PBYTE pinh; + PBYTE pclr; + + IMAGE_DOS_HEADER idh; + union { + IMAGE_NT_HEADERS inh; + IMAGE_NT_HEADERS32 inh32; + IMAGE_NT_HEADERS64 inh64; + BYTE raw[sizeof(IMAGE_NT_HEADERS64) + + sizeof(IMAGE_SECTION_HEADER) * 32]; + }; + DETOUR_CLR_HEADER clr; + +} DETOUR_EXE_RESTORE, *PDETOUR_EXE_RESTORE; + +typedef struct _DETOUR_EXE_HELPER +{ + DWORD cb; + DWORD pid; + CHAR DllName[MAX_PATH]; + +} DETOUR_EXE_HELPER, *PDETOUR_EXE_HELPER; + +#pragma pack(pop) + +#define DETOUR_SECTION_HEADER_DECLARE(cbSectionSize) \ +{ \ + sizeof(DETOUR_SECTION_HEADER),\ + DETOUR_SECTION_HEADER_SIGNATURE,\ + sizeof(DETOUR_SECTION_HEADER),\ + (cbSectionSize),\ + \ + 0,\ + 0,\ + 0,\ + 0,\ + \ + 0,\ + 0,\ + 0,\ + 0,\ +} + +/////////////////////////////////////////////////////////////// Helper Macros. +// +#define DETOURS_STRINGIFY(x) DETOURS_STRINGIFY_(x) +#define DETOURS_STRINGIFY_(x) #x + +///////////////////////////////////////////////////////////// Binary Typedefs. +// +typedef BOOL (CALLBACK *PF_DETOUR_BINARY_BYWAY_CALLBACK)(PVOID pContext, + PCHAR pszFile, + PCHAR *ppszOutFile); + +typedef BOOL (CALLBACK *PF_DETOUR_BINARY_FILE_CALLBACK)(PVOID pContext, + PCHAR pszOrigFile, + PCHAR pszFile, + PCHAR *ppszOutFile); + +typedef BOOL (CALLBACK *PF_DETOUR_BINARY_SYMBOL_CALLBACK)(PVOID pContext, + ULONG nOrigOrdinal, + ULONG nOrdinal, + ULONG *pnOutOrdinal, + PCHAR pszOrigSymbol, + PCHAR pszSymbol, + PCHAR *ppszOutSymbol); + +typedef BOOL (CALLBACK *PF_DETOUR_BINARY_COMMIT_CALLBACK)(PVOID pContext); + +typedef BOOL (CALLBACK *PF_DETOUR_ENUMERATE_EXPORT_CALLBACK)(PVOID pContext, + ULONG nOrdinal, + PCHAR pszName, + PVOID pCode); + +typedef BOOL (CALLBACK *PF_DETOUR_IMPORT_FILE_CALLBACK)(PVOID pContext, + HMODULE hModule, + PCSTR pszFile); + +typedef BOOL (CALLBACK *PF_DETOUR_IMPORT_FUNC_CALLBACK)(PVOID pContext, + DWORD nOrdinal, + PCSTR pszFunc, + PVOID pvFunc); + +typedef VOID * PDETOUR_BINARY; +typedef VOID * PDETOUR_LOADED_BINARY; + +//////////////////////////////////////////////////////////// Transaction APIs. +// +LONG WINAPI DetourTransactionBegin(VOID); +LONG WINAPI DetourTransactionAbort(VOID); +LONG WINAPI DetourTransactionCommit(VOID); +LONG WINAPI DetourTransactionCommitEx(PVOID **pppFailedPointer); + +LONG WINAPI DetourUpdateThread(HANDLE hThread); + +LONG WINAPI DetourAttach(PVOID *ppPointer, + PVOID pDetour); + +LONG WINAPI DetourAttachEx(PVOID *ppPointer, + PVOID pDetour, + PDETOUR_TRAMPOLINE *ppRealTrampoline, + PVOID *ppRealTarget, + PVOID *ppRealDetour); + +LONG WINAPI DetourDetach(PVOID *ppPointer, + PVOID pDetour); + +BOOL WINAPI DetourSetIgnoreTooSmall(BOOL fIgnore); +BOOL WINAPI DetourSetRetainRegions(BOOL fRetain); + +////////////////////////////////////////////////////////////// Code Functions. +// +PVOID WINAPI DetourFindFunction(PCSTR pszModule, PCSTR pszFunction); +PVOID WINAPI DetourCodeFromPointer(PVOID pPointer, PVOID *ppGlobals); +PVOID WINAPI DetourCopyInstruction(PVOID pDst, + PVOID *pDstPool, + PVOID pSrc, + PVOID *ppTarget, + LONG *plExtra); + +///////////////////////////////////////////////////// Loaded Binary Functions. +// +HMODULE WINAPI DetourGetContainingModule(PVOID pvAddr); +HMODULE WINAPI DetourEnumerateModules(HMODULE hModuleLast); +PVOID WINAPI DetourGetEntryPoint(HMODULE hModule); +ULONG WINAPI DetourGetModuleSize(HMODULE hModule); +BOOL WINAPI DetourEnumerateExports(HMODULE hModule, + PVOID pContext, + PF_DETOUR_ENUMERATE_EXPORT_CALLBACK pfExport); +BOOL WINAPI DetourEnumerateImports(HMODULE hModule, + PVOID pContext, + PF_DETOUR_IMPORT_FILE_CALLBACK pfImportFile, + PF_DETOUR_IMPORT_FUNC_CALLBACK pfImportFunc); + +PVOID WINAPI DetourFindPayload(HMODULE hModule, REFGUID rguid, DWORD *pcbData); +PVOID WINAPI DetourFindPayloadEx(REFGUID rguid, DWORD * pcbData); +DWORD WINAPI DetourGetSizeOfPayloads(HMODULE hModule); + +///////////////////////////////////////////////// Persistent Binary Functions. +// + +PDETOUR_BINARY WINAPI DetourBinaryOpen(HANDLE hFile); +PVOID WINAPI DetourBinaryEnumeratePayloads(PDETOUR_BINARY pBinary, + GUID *pGuid, + DWORD *pcbData, + DWORD *pnIterator); +PVOID WINAPI DetourBinaryFindPayload(PDETOUR_BINARY pBinary, + REFGUID rguid, + DWORD *pcbData); +PVOID WINAPI DetourBinarySetPayload(PDETOUR_BINARY pBinary, + REFGUID rguid, + PVOID pData, + DWORD cbData); +BOOL WINAPI DetourBinaryDeletePayload(PDETOUR_BINARY pBinary, REFGUID rguid); +BOOL WINAPI DetourBinaryPurgePayloads(PDETOUR_BINARY pBinary); +BOOL WINAPI DetourBinaryResetImports(PDETOUR_BINARY pBinary); +BOOL WINAPI DetourBinaryEditImports(PDETOUR_BINARY pBinary, + PVOID pContext, + PF_DETOUR_BINARY_BYWAY_CALLBACK pfByway, + PF_DETOUR_BINARY_FILE_CALLBACK pfFile, + PF_DETOUR_BINARY_SYMBOL_CALLBACK pfSymbol, + PF_DETOUR_BINARY_COMMIT_CALLBACK pfCommit); +BOOL WINAPI DetourBinaryWrite(PDETOUR_BINARY pBinary, HANDLE hFile); +BOOL WINAPI DetourBinaryClose(PDETOUR_BINARY pBinary); + +/////////////////////////////////////////////////// Create Process & Load Dll. +// +typedef BOOL (WINAPI *PDETOUR_CREATE_PROCESS_ROUTINEA) + (LPCSTR lpApplicationName, + LPSTR lpCommandLine, + LPSECURITY_ATTRIBUTES lpProcessAttributes, + LPSECURITY_ATTRIBUTES lpThreadAttributes, + BOOL bInheritHandles, + DWORD dwCreationFlags, + LPVOID lpEnvironment, + LPCSTR lpCurrentDirectory, + LPSTARTUPINFOA lpStartupInfo, + LPPROCESS_INFORMATION lpProcessInformation); + +typedef BOOL (WINAPI *PDETOUR_CREATE_PROCESS_ROUTINEW) + (LPCWSTR lpApplicationName, + LPWSTR lpCommandLine, + LPSECURITY_ATTRIBUTES lpProcessAttributes, + LPSECURITY_ATTRIBUTES lpThreadAttributes, + BOOL bInheritHandles, + DWORD dwCreationFlags, + LPVOID lpEnvironment, + LPCWSTR lpCurrentDirectory, + LPSTARTUPINFOW lpStartupInfo, + LPPROCESS_INFORMATION lpProcessInformation); + +BOOL WINAPI DetourCreateProcessWithDllA(LPCSTR lpApplicationName, + __in_z LPSTR lpCommandLine, + LPSECURITY_ATTRIBUTES lpProcessAttributes, + LPSECURITY_ATTRIBUTES lpThreadAttributes, + BOOL bInheritHandles, + DWORD dwCreationFlags, + LPVOID lpEnvironment, + LPCSTR lpCurrentDirectory, + LPSTARTUPINFOA lpStartupInfo, + LPPROCESS_INFORMATION lpProcessInformation, + LPCSTR lpDllName, + PDETOUR_CREATE_PROCESS_ROUTINEA + pfCreateProcessA); + +BOOL WINAPI DetourCreateProcessWithDllW(LPCWSTR lpApplicationName, + __in_z LPWSTR lpCommandLine, + LPSECURITY_ATTRIBUTES lpProcessAttributes, + LPSECURITY_ATTRIBUTES lpThreadAttributes, + BOOL bInheritHandles, + DWORD dwCreationFlags, + LPVOID lpEnvironment, + LPCWSTR lpCurrentDirectory, + LPSTARTUPINFOW lpStartupInfo, + LPPROCESS_INFORMATION lpProcessInformation, + LPCSTR lpDllName, + PDETOUR_CREATE_PROCESS_ROUTINEW + pfCreateProcessW); + +#ifdef UNICODE +#define DetourCreateProcessWithDll DetourCreateProcessWithDllW +#define PDETOUR_CREATE_PROCESS_ROUTINE PDETOUR_CREATE_PROCESS_ROUTINEW +#else +#define DetourCreateProcessWithDll DetourCreateProcessWithDllA +#define PDETOUR_CREATE_PROCESS_ROUTINE PDETOUR_CREATE_PROCESS_ROUTINEA +#endif // !UNICODE + +BOOL WINAPI DetourCreateProcessWithDllExA(LPCSTR lpApplicationName, + __in_z LPSTR lpCommandLine, + LPSECURITY_ATTRIBUTES lpProcessAttributes, + LPSECURITY_ATTRIBUTES lpThreadAttributes, + BOOL bInheritHandles, + DWORD dwCreationFlags, + LPVOID lpEnvironment, + LPCSTR lpCurrentDirectory, + LPSTARTUPINFOA lpStartupInfo, + LPPROCESS_INFORMATION lpProcessInformation, + LPCSTR lpDllName, + PDETOUR_CREATE_PROCESS_ROUTINEA + pfCreateProcessA); + +BOOL WINAPI DetourCreateProcessWithDllExW(LPCWSTR lpApplicationName, + __in_z LPWSTR lpCommandLine, + LPSECURITY_ATTRIBUTES lpProcessAttributes, + LPSECURITY_ATTRIBUTES lpThreadAttributes, + BOOL bInheritHandles, + DWORD dwCreationFlags, + LPVOID lpEnvironment, + LPCWSTR lpCurrentDirectory, + LPSTARTUPINFOW lpStartupInfo, + LPPROCESS_INFORMATION lpProcessInformation, + LPCSTR lpDllName, + PDETOUR_CREATE_PROCESS_ROUTINEW + pfCreateProcessW); + +#ifdef UNICODE +#define DetourCreateProcessWithDllEx DetourCreateProcessWithDllExW +#define PDETOUR_CREATE_PROCESS_ROUTINE PDETOUR_CREATE_PROCESS_ROUTINEW +#else +#define DetourCreateProcessWithDllEx DetourCreateProcessWithDllExA +#define PDETOUR_CREATE_PROCESS_ROUTINE PDETOUR_CREATE_PROCESS_ROUTINEA +#endif // !UNICODE + +BOOL WINAPI DetourProcessViaHelperA(DWORD dwTargetPid, + LPCSTR lpDllName, + PDETOUR_CREATE_PROCESS_ROUTINEA pfCreateProcessA); + +BOOL WINAPI DetourProcessViaHelperW(DWORD dwTargetPid, + LPCSTR lpDllName, + PDETOUR_CREATE_PROCESS_ROUTINEW pfCreateProcessW); + +#ifdef UNICODE +#define DetourProcessViaHelper DetourProcessViaHelperW +#else +#define DetourProcessViaHelper DetourProcessViaHelperA +#endif // !UNICODE + +BOOL WINAPI DetourUpdateProcessWithDll(HANDLE hProcess, + LPCSTR *plpDlls, + DWORD nDlls); + +BOOL WINAPI DetourCopyPayloadToProcess(HANDLE hProcess, + REFGUID rguid, + PVOID pvData, + DWORD cbData); +BOOL WINAPI DetourRestoreAfterWith(VOID); +BOOL WINAPI DetourRestoreAfterWithEx(PVOID pvData, DWORD cbData); +BOOL WINAPI DetourIsHelperProcess(VOID); +VOID CALLBACK DetourFinishHelperProcess(HWND, HINSTANCE, LPSTR, INT); + +// +////////////////////////////////////////////////////////////////////////////// +#ifdef __cplusplus +} +#endif // __cplusplus + +//////////////////////////////////////////////// Detours Internal Definitions. +// +#ifdef __cplusplus +#ifdef DETOURS_INTERNAL + +#ifndef __deref_out +#define __deref_out +#endif + +#ifndef __deref +#define __deref +#endif + +////////////////////////////////////////////////////////////////////////////// +// +#if (_MSC_VER < 1299) +#include +typedef IMAGEHLP_MODULE IMAGEHLP_MODULE64; +typedef PIMAGEHLP_MODULE PIMAGEHLP_MODULE64; +typedef IMAGEHLP_SYMBOL SYMBOL_INFO; +typedef PIMAGEHLP_SYMBOL PSYMBOL_INFO; + +static inline +LONG InterlockedCompareExchange(LONG *ptr, LONG nval, LONG oval) +{ + return (LONG)::InterlockedCompareExchange((PVOID*)ptr, (PVOID)nval, (PVOID)oval); +} +#else +#include +#endif + +#ifdef IMAGEAPI // defined by DBGHELP.H +typedef LPAPI_VERSION (NTAPI *PF_ImagehlpApiVersionEx)(LPAPI_VERSION AppVersion); + +typedef BOOL (NTAPI *PF_SymInitialize)(IN HANDLE hProcess, + IN LPCSTR UserSearchPath, + IN BOOL fInvadeProcess); +typedef DWORD (NTAPI *PF_SymSetOptions)(IN DWORD SymOptions); +typedef DWORD (NTAPI *PF_SymGetOptions)(VOID); +typedef DWORD64 (NTAPI *PF_SymLoadModule64)(IN HANDLE hProcess, + IN HANDLE hFile, + IN PSTR ImageName, + IN PSTR ModuleName, + IN DWORD64 BaseOfDll, + IN DWORD SizeOfDll); +typedef BOOL (NTAPI *PF_SymGetModuleInfo64)(IN HANDLE hProcess, + IN DWORD64 qwAddr, + OUT PIMAGEHLP_MODULE64 ModuleInfo); +typedef BOOL (NTAPI *PF_SymFromName)(IN HANDLE hProcess, + IN LPSTR Name, + OUT PSYMBOL_INFO Symbol); + +typedef struct _DETOUR_SYM_INFO +{ + HANDLE hProcess; + HMODULE hDbgHelp; + PF_ImagehlpApiVersionEx pfImagehlpApiVersionEx; + PF_SymInitialize pfSymInitialize; + PF_SymSetOptions pfSymSetOptions; + PF_SymGetOptions pfSymGetOptions; + PF_SymLoadModule64 pfSymLoadModule64; + PF_SymGetModuleInfo64 pfSymGetModuleInfo64; + PF_SymFromName pfSymFromName; +} DETOUR_SYM_INFO, *PDETOUR_SYM_INFO; + +PDETOUR_SYM_INFO DetourLoadDbgHelp(VOID); + +#endif // IMAGEAPI + +#ifndef DETOUR_TRACE +#if DETOUR_DEBUG +#define DETOUR_TRACE(x) printf x +#define DETOUR_BREAK() __debugbreak() +#include +#include +#else +#define DETOUR_TRACE(x) +#define DETOUR_BREAK() +#endif +#endif + +#ifdef DETOURS_IA64 +#error Feature not supported in this release. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +#endif // DETOURS_IA64 + +#ifdef DETOURS_ARM +#error Feature not supported in this release. + + + +#endif // DETOURS_ARM + +////////////////////////////////////////////////////////////////////////////// + +#endif // DETOURS_INTERNAL +#endif // __cplusplus + +#endif // _DETOURS_H_ +// +//////////////////////////////////////////////////////////////// End of File. diff --git a/detours/detours.lib b/detours/detours.lib new file mode 100644 index 0000000000000000000000000000000000000000..30d5d46fdd642f11ab8d0793e2d9f1a748e2d045 GIT binary patch literal 266538 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

1RMI2ul!DAQ#VWYZ0czi-2G7*;>Dp7(& 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 fr-p(lmm< Date: Sun, 29 Jan 2017 22:18:55 +0100 Subject: [PATCH 2/3] Fix remaining build warnings, other cleanups This change removes an unused library search path from the project settings, and adds some VS2015-specific files to .gitignore . --- .gitignore | 4 +++- DSfix.vcxproj | 2 +- SaveManager.cpp | 4 ++-- d3d9dev.cpp | 2 +- 4 files changed, 7 insertions(+), 5 deletions(-) diff --git a/.gitignore b/.gitignore index 40ff47d..f2f1ba5 100644 --- a/.gitignore +++ b/.gitignore @@ -5,4 +5,6 @@ Release Debug/ Release/ -.vs/ \ No newline at end of file +.vs/ +*.VC.VC.opendb +*.VC.db diff --git a/DSfix.vcxproj b/DSfix.vcxproj index aa064a4..adf09cf 100644 --- a/DSfix.vcxproj +++ b/DSfix.vcxproj @@ -63,7 +63,7 @@ MachineX86 - E:\Program Files %28x86%29\Microsoft DirectX SDK %28June 2010%29\Lib\x86;%(AdditionalLibraryDirectories) + %(AdditionalLibraryDirectories) DINPUT8.def winmm.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;psapi.lib;%(AdditionalDependencies) diff --git a/SaveManager.cpp b/SaveManager.cpp index 0a53d32..dcdf7fb 100644 --- a/SaveManager.cpp +++ b/SaveManager.cpp @@ -26,7 +26,7 @@ void SaveManager::init() { if(searchHandle != INVALID_HANDLE_VALUE) { do { std::string fn = userSaveFolderData.cFileName; - bool dir = userSaveFolderData.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY; + bool dir = !!(userSaveFolderData.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY); bool saveFile = fn.substr(fn.find_last_of(".") + 1) == "sl2"; // newer versions don't contain an additional folder under NBGI\\DarkSouls if (fn.size() > 2 && (dir || saveFile)) { @@ -103,7 +103,7 @@ void SaveManager::backup(const time_t curTime) { vector saveFiles = getSaveFiles(); for(size_t i=0; i(curTime)); string newPath = string(buffer) + fn + ".bak"; if(CopyFile(saveFiles[i].c_str(), newPath.c_str(), false) == 0) { SDLOG(0, "ERROR: SaveManager failed to back up file! (Copying %s to %s)\n", saveFiles[i].c_str(), buffer); diff --git a/d3d9dev.cpp b/d3d9dev.cpp index 4d1f86a..57dbed1 100644 --- a/d3d9dev.cpp +++ b/d3d9dev.cpp @@ -579,7 +579,7 @@ HRESULT APIENTRY hkIDirect3DDevice9::SetPixelShaderConstantF(UINT StartRegister, UINT width; UINT height; - getDofRes(HALF_X_RESOLUTION, HALF_Y_RESOLUTION, width, height); + getDofRes(static_cast(HALF_X_RESOLUTION), static_cast(HALF_Y_RESOLUTION), width, height); pBuffer[offset] = static_cast(width); pBuffer[offset + 1] = static_cast(height); pBuffer[offset + 2] = 1.f / width; From 742a67e3540a5fde75056fee53af65119545a605 Mon Sep 17 00:00:00 2001 From: Nicklas Lindgren Date: Thu, 22 Dec 2016 20:29:33 +0100 Subject: [PATCH 3/3] Replace Detours with MinHook This change removes the dependency on the proprietary Microsoft Detours and replaces it with MinHook, which is BSD licensed. This will allow making releases in accordance with the GPL. This commit adds a binary release of MinHook. It is a release build by VS2012, made from commit fea705c5e545c1ddd1c791d28c19db82121b9ec9 of https://github.com/RaMMicHaeL/minhook.git . --- DSfix.vcxproj | 2 +- Detouring.cpp | 93 +++--- Detouring.h | 5 +- detours/detours.h | 626 ------------------------------------- detours/detours.lib | Bin 266538 -> 0 bytes minhook/MinHook.h | 166 ++++++++++ minhook/libMinHook.x86.lib | Bin 0 -> 263596 bytes 7 files changed, 225 insertions(+), 667 deletions(-) delete mode 100644 detours/detours.h delete mode 100644 detours/detours.lib create mode 100644 minhook/MinHook.h create mode 100644 minhook/libMinHook.x86.lib diff --git a/DSfix.vcxproj b/DSfix.vcxproj index adf09cf..fad2fff 100644 --- a/DSfix.vcxproj +++ b/DSfix.vcxproj @@ -68,7 +68,7 @@ winmm.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;psapi.lib;%(AdditionalDependencies) - Default + UseLinkTimeCodeGeneration NDEBUG;%(PreprocessorDefinitions) diff --git a/Detouring.cpp b/Detouring.cpp index ac2b7c8..8141f17 100644 --- a/Detouring.cpp +++ b/Detouring.cpp @@ -74,49 +74,68 @@ HRESULT WINAPI DetouredD3DXCompileShader(_In_ LPCSTR pSrcData, _In_ UINT srcData return res; } +void hookFunction(const char* name, const char* dllname, void** ppTarget, void* const pDetour, void** ppOriginal) { + HMODULE dllHandle = GetModuleHandle(dllname); + *ppTarget = GetProcAddress(dllHandle, name); + MH_STATUS ret = MH_CreateHook(*ppTarget, pDetour, ppOriginal); + if (ret == MH_OK) { + SDLOG(2, "MH_CreateHook for %s in %s succeeded\n", name, dllname); + } + else { + SDLOG(0, "MH_CreateHook for %s in %s failed\n", name, dllname); + SDLOG(0, "dllHandle = %p\n", dllHandle); + SDLOG(0, "*ppTarget = %p\n", *ppTarget); + } + ret = MH_EnableHook(*ppTarget); + if (ret == MH_OK) { + SDLOG(2, "MH_EnableHook succeeded\n"); + } + else { + SDLOG(0, "MH_EnableHook failed\n"); + } +} + +namespace { + void* TargetDirect3DCreate9; + void* TargetQueryPerformanceCounter; + void* TargetD3DXCreateTextureFromFileInMemory; + void* TargetD3DXCreateTextureFromFileInMemoryEx; +} + void earlyDetour() { QueryPerformanceFrequency(&countsPerSec); - DetourTransactionBegin(); - DetourUpdateThread(GetCurrentThread()); - DetourAttach(&(PVOID&)oDirect3DCreate9, hkDirect3DCreate9); - DetourTransactionCommit(); + MH_Initialize(); + hookFunction("Direct3DCreate9", + "d3d9.dll", + &TargetDirect3DCreate9, + &hkDirect3DCreate9, + reinterpret_cast(&oDirect3DCreate9)); } -void startDetour() { - DetourTransactionBegin(); - DetourUpdateThread(GetCurrentThread()); - //DetourAttach(&(PVOID&)TrueSleepEx, DetouredSleepEx); - //DetourAttach(&(PVOID&)TrueTimeGetTime, DetouredTimeGetTime); - if(Settings::get().getSkipIntro()) DetourAttach(&(PVOID&)TrueQueryPerformanceCounter, DetouredQueryPerformanceCounter); - //TrueD3DXCreateTexture = (D3DXCreateTexture_FNType)DetourFindFunction("d3dx9_43.dll", "D3DXCreateTexture"); - TrueD3DXCreateTextureFromFileInMemory = (D3DXCreateTextureFromFileInMemory_FNType)DetourFindFunction("d3dx9_43.dll", "D3DXCreateTextureFromFileInMemory"); - TrueD3DXCreateTextureFromFileInMemoryEx = (D3DXCreateTextureFromFileInMemoryEx_FNType)DetourFindFunction("d3dx9_43.dll", "D3DXCreateTextureFromFileInMemoryEx"); - //DetourAttach(&(PVOID&)TrueD3DXCreateTexture, DetouredD3DXCreateTexture); - DetourAttach(&(PVOID&)TrueD3DXCreateTextureFromFileInMemory, DetouredD3DXCreateTextureFromFileInMemory); - DetourAttach(&(PVOID&)TrueD3DXCreateTextureFromFileInMemoryEx, DetouredD3DXCreateTextureFromFileInMemoryEx); - //TrueD3DXCompileShader = (D3DXCompileShader_FNType)DetourFindFunction("d3dx9_43.dll", "D3DXCompileShader"); - //SDLOG(0, "Detouring: compile shader: %p\n", TrueD3DXCompileShader); - //DetourAttach(&(PVOID&)TrueD3DXCompileShader, DetouredD3DXCompileShader); - - if(DetourTransactionCommit() == NO_ERROR) { - SDLOG(0, "Detouring: Detoured successfully\n"); - } else { - SDLOG(0, "Detouring: Error detouring\n"); +void startDetour() { + if (Settings::get().getSkipIntro()) { + hookFunction("QueryPerformanceCounter", + "kernel32.dll", + &TargetQueryPerformanceCounter, + &DetouredQueryPerformanceCounter, + reinterpret_cast(&TrueQueryPerformanceCounter)); } + hookFunction("D3DXCreateTextureFromFileInMemory", + "d3dx9_43.dll", + &TargetD3DXCreateTextureFromFileInMemory, + &DetouredD3DXCreateTextureFromFileInMemory, + reinterpret_cast(&TrueD3DXCreateTextureFromFileInMemory)); + hookFunction("D3DXCreateTextureFromFileInMemoryEx", + "d3dx9_43.dll", + &TargetD3DXCreateTextureFromFileInMemoryEx, + &DetouredD3DXCreateTextureFromFileInMemoryEx, + reinterpret_cast(&TrueD3DXCreateTextureFromFileInMemoryEx)); } void endDetour() { - //if(Settings::get().getSkipIntro()) { - DetourTransactionBegin(); - DetourUpdateThread(GetCurrentThread()); - //DetourDetach(&(PVOID&)TrueSleepEx, DetouredSleepEx); - //DetourDetach(&(PVOID&)TrueTimeGetTime, DetouredTimeGetTime); - if(Settings::get().getSkipIntro()) DetourDetach(&(PVOID&)TrueQueryPerformanceCounter, DetouredQueryPerformanceCounter); - //DetourDetach(&(PVOID&)TrueD3DXCreateTexture, DetouredD3DXCreateTexture); - DetourDetach(&(PVOID&)TrueD3DXCreateTextureFromFileInMemory, DetouredD3DXCreateTextureFromFileInMemory); - DetourDetach(&(PVOID&)TrueD3DXCreateTextureFromFileInMemoryEx, DetouredD3DXCreateTextureFromFileInMemoryEx); - DetourDetach(&(PVOID&)oDirect3DCreate9, hkDirect3DCreate9); - //DetourDetach(&(PVOID&)TrueD3DXCompileShader, DetouredD3DXCompileShader); - DetourTransactionCommit(); - //} + MH_RemoveHook(TargetDirect3DCreate9); + MH_RemoveHook(TargetQueryPerformanceCounter); + MH_RemoveHook(TargetD3DXCreateTextureFromFileInMemory); + MH_RemoveHook(TargetD3DXCreateTextureFromFileInMemoryEx); + MH_Uninitialize(); } diff --git a/Detouring.h b/Detouring.h index d793007..93ef0cc 100644 --- a/Detouring.h +++ b/Detouring.h @@ -2,9 +2,8 @@ #include "main.h" -#include "detours\detours.h" - -#pragma comment(lib, "detours\\detours.lib") +#include "minhook/MinHook.h" +#pragma comment(lib, "minhook\\libMinhook.x86.lib") static DWORD (WINAPI * TrueSleepEx)(DWORD dwMilliseconds, BOOL bAlertable) = SleepEx; diff --git a/detours/detours.h b/detours/detours.h deleted file mode 100644 index 7d265df..0000000 --- a/detours/detours.h +++ /dev/null @@ -1,626 +0,0 @@ -////////////////////////////////////////////////////////////////////////////// -// -// Core Detours Functionality (detours.h of detours.lib) -// -// Microsoft Research Detours Package, Version 3.0 Build_316. -// -// Copyright (c) Microsoft Corporation. All rights reserved. -// - -#pragma once -#ifndef _DETOURS_H_ -#define _DETOURS_H_ - -#define DETOURS_VERSION 30000 // 3.00.00 - -////////////////////////////////////////////////////////////////////////////// -// - -#if (_MSC_VER < 1299) -typedef LONG LONG_PTR; -typedef ULONG ULONG_PTR; -#endif - -#ifndef __in_z -#define __in_z -#endif - -////////////////////////////////////////////////////////////////////////////// -// -#ifndef GUID_DEFINED -#define GUID_DEFINED -typedef struct _GUID -{ - DWORD Data1; - WORD Data2; - WORD Data3; - BYTE Data4[ 8 ]; -} GUID; - -#ifdef INITGUID -#define DEFINE_GUID(name, l, w1, w2, b1, b2, b3, b4, b5, b6, b7, b8) \ - const GUID name \ - = { l, w1, w2, { b1, b2, b3, b4, b5, b6, b7, b8 } } -#else -#define DEFINE_GUID(name, l, w1, w2, b1, b2, b3, b4, b5, b6, b7, b8) \ - const GUID name -#endif // INITGUID -#endif // !GUID_DEFINED - -#if defined(__cplusplus) -#ifndef _REFGUID_DEFINED -#define _REFGUID_DEFINED -#define REFGUID const GUID & -#endif // !_REFGUID_DEFINED -#else // !__cplusplus -#ifndef _REFGUID_DEFINED -#define _REFGUID_DEFINED -#define REFGUID const GUID * const -#endif // !_REFGUID_DEFINED -#endif // !__cplusplus - -// -////////////////////////////////////////////////////////////////////////////// - -#ifdef __cplusplus -extern "C" { -#endif // __cplusplus - -/////////////////////////////////////////////////// Instruction Target Macros. -// -#define DETOUR_INSTRUCTION_TARGET_NONE ((PVOID)0) -#define DETOUR_INSTRUCTION_TARGET_DYNAMIC ((PVOID)(LONG_PTR)-1) -#define DETOUR_SECTION_HEADER_SIGNATURE 0x00727444 // "Dtr\0" - -extern const GUID DETOUR_EXE_RESTORE_GUID; -extern const GUID DETOUR_EXE_HELPER_GUID; - -#define DETOUR_TRAMPOLINE_SIGNATURE 0x21727444 // Dtr! -typedef struct _DETOUR_TRAMPOLINE DETOUR_TRAMPOLINE, *PDETOUR_TRAMPOLINE; - -/////////////////////////////////////////////////////////// Binary Structures. -// -#pragma pack(push, 8) -typedef struct _DETOUR_SECTION_HEADER -{ - DWORD cbHeaderSize; - DWORD nSignature; - DWORD nDataOffset; - DWORD cbDataSize; - - DWORD nOriginalImportVirtualAddress; - DWORD nOriginalImportSize; - DWORD nOriginalBoundImportVirtualAddress; - DWORD nOriginalBoundImportSize; - - DWORD nOriginalIatVirtualAddress; - DWORD nOriginalIatSize; - DWORD nOriginalSizeOfImage; - DWORD cbPrePE; - - DWORD nOriginalClrFlags; - DWORD reserved1; - DWORD reserved2; - DWORD reserved3; - - // Followed by cbPrePE bytes of data. -} DETOUR_SECTION_HEADER, *PDETOUR_SECTION_HEADER; - -typedef struct _DETOUR_SECTION_RECORD -{ - DWORD cbBytes; - DWORD nReserved; - GUID guid; -} DETOUR_SECTION_RECORD, *PDETOUR_SECTION_RECORD; - -typedef struct _DETOUR_CLR_HEADER -{ - // Header versioning - ULONG cb; - USHORT MajorRuntimeVersion; - USHORT MinorRuntimeVersion; - - // Symbol table and startup information - IMAGE_DATA_DIRECTORY MetaData; - ULONG Flags; - - // Followed by the rest of the IMAGE_COR20_HEADER -} DETOUR_CLR_HEADER, *PDETOUR_CLR_HEADER; - -typedef struct _DETOUR_EXE_RESTORE -{ - DWORD cb; - DWORD cbidh; - DWORD cbinh; - DWORD cbclr; - - PBYTE pidh; - PBYTE pinh; - PBYTE pclr; - - IMAGE_DOS_HEADER idh; - union { - IMAGE_NT_HEADERS inh; - IMAGE_NT_HEADERS32 inh32; - IMAGE_NT_HEADERS64 inh64; - BYTE raw[sizeof(IMAGE_NT_HEADERS64) + - sizeof(IMAGE_SECTION_HEADER) * 32]; - }; - DETOUR_CLR_HEADER clr; - -} DETOUR_EXE_RESTORE, *PDETOUR_EXE_RESTORE; - -typedef struct _DETOUR_EXE_HELPER -{ - DWORD cb; - DWORD pid; - CHAR DllName[MAX_PATH]; - -} DETOUR_EXE_HELPER, *PDETOUR_EXE_HELPER; - -#pragma pack(pop) - -#define DETOUR_SECTION_HEADER_DECLARE(cbSectionSize) \ -{ \ - sizeof(DETOUR_SECTION_HEADER),\ - DETOUR_SECTION_HEADER_SIGNATURE,\ - sizeof(DETOUR_SECTION_HEADER),\ - (cbSectionSize),\ - \ - 0,\ - 0,\ - 0,\ - 0,\ - \ - 0,\ - 0,\ - 0,\ - 0,\ -} - -/////////////////////////////////////////////////////////////// Helper Macros. -// -#define DETOURS_STRINGIFY(x) DETOURS_STRINGIFY_(x) -#define DETOURS_STRINGIFY_(x) #x - -///////////////////////////////////////////////////////////// Binary Typedefs. -// -typedef BOOL (CALLBACK *PF_DETOUR_BINARY_BYWAY_CALLBACK)(PVOID pContext, - PCHAR pszFile, - PCHAR *ppszOutFile); - -typedef BOOL (CALLBACK *PF_DETOUR_BINARY_FILE_CALLBACK)(PVOID pContext, - PCHAR pszOrigFile, - PCHAR pszFile, - PCHAR *ppszOutFile); - -typedef BOOL (CALLBACK *PF_DETOUR_BINARY_SYMBOL_CALLBACK)(PVOID pContext, - ULONG nOrigOrdinal, - ULONG nOrdinal, - ULONG *pnOutOrdinal, - PCHAR pszOrigSymbol, - PCHAR pszSymbol, - PCHAR *ppszOutSymbol); - -typedef BOOL (CALLBACK *PF_DETOUR_BINARY_COMMIT_CALLBACK)(PVOID pContext); - -typedef BOOL (CALLBACK *PF_DETOUR_ENUMERATE_EXPORT_CALLBACK)(PVOID pContext, - ULONG nOrdinal, - PCHAR pszName, - PVOID pCode); - -typedef BOOL (CALLBACK *PF_DETOUR_IMPORT_FILE_CALLBACK)(PVOID pContext, - HMODULE hModule, - PCSTR pszFile); - -typedef BOOL (CALLBACK *PF_DETOUR_IMPORT_FUNC_CALLBACK)(PVOID pContext, - DWORD nOrdinal, - PCSTR pszFunc, - PVOID pvFunc); - -typedef VOID * PDETOUR_BINARY; -typedef VOID * PDETOUR_LOADED_BINARY; - -//////////////////////////////////////////////////////////// Transaction APIs. -// -LONG WINAPI DetourTransactionBegin(VOID); -LONG WINAPI DetourTransactionAbort(VOID); -LONG WINAPI DetourTransactionCommit(VOID); -LONG WINAPI DetourTransactionCommitEx(PVOID **pppFailedPointer); - -LONG WINAPI DetourUpdateThread(HANDLE hThread); - -LONG WINAPI DetourAttach(PVOID *ppPointer, - PVOID pDetour); - -LONG WINAPI DetourAttachEx(PVOID *ppPointer, - PVOID pDetour, - PDETOUR_TRAMPOLINE *ppRealTrampoline, - PVOID *ppRealTarget, - PVOID *ppRealDetour); - -LONG WINAPI DetourDetach(PVOID *ppPointer, - PVOID pDetour); - -BOOL WINAPI DetourSetIgnoreTooSmall(BOOL fIgnore); -BOOL WINAPI DetourSetRetainRegions(BOOL fRetain); - -////////////////////////////////////////////////////////////// Code Functions. -// -PVOID WINAPI DetourFindFunction(PCSTR pszModule, PCSTR pszFunction); -PVOID WINAPI DetourCodeFromPointer(PVOID pPointer, PVOID *ppGlobals); -PVOID WINAPI DetourCopyInstruction(PVOID pDst, - PVOID *pDstPool, - PVOID pSrc, - PVOID *ppTarget, - LONG *plExtra); - -///////////////////////////////////////////////////// Loaded Binary Functions. -// -HMODULE WINAPI DetourGetContainingModule(PVOID pvAddr); -HMODULE WINAPI DetourEnumerateModules(HMODULE hModuleLast); -PVOID WINAPI DetourGetEntryPoint(HMODULE hModule); -ULONG WINAPI DetourGetModuleSize(HMODULE hModule); -BOOL WINAPI DetourEnumerateExports(HMODULE hModule, - PVOID pContext, - PF_DETOUR_ENUMERATE_EXPORT_CALLBACK pfExport); -BOOL WINAPI DetourEnumerateImports(HMODULE hModule, - PVOID pContext, - PF_DETOUR_IMPORT_FILE_CALLBACK pfImportFile, - PF_DETOUR_IMPORT_FUNC_CALLBACK pfImportFunc); - -PVOID WINAPI DetourFindPayload(HMODULE hModule, REFGUID rguid, DWORD *pcbData); -PVOID WINAPI DetourFindPayloadEx(REFGUID rguid, DWORD * pcbData); -DWORD WINAPI DetourGetSizeOfPayloads(HMODULE hModule); - -///////////////////////////////////////////////// Persistent Binary Functions. -// - -PDETOUR_BINARY WINAPI DetourBinaryOpen(HANDLE hFile); -PVOID WINAPI DetourBinaryEnumeratePayloads(PDETOUR_BINARY pBinary, - GUID *pGuid, - DWORD *pcbData, - DWORD *pnIterator); -PVOID WINAPI DetourBinaryFindPayload(PDETOUR_BINARY pBinary, - REFGUID rguid, - DWORD *pcbData); -PVOID WINAPI DetourBinarySetPayload(PDETOUR_BINARY pBinary, - REFGUID rguid, - PVOID pData, - DWORD cbData); -BOOL WINAPI DetourBinaryDeletePayload(PDETOUR_BINARY pBinary, REFGUID rguid); -BOOL WINAPI DetourBinaryPurgePayloads(PDETOUR_BINARY pBinary); -BOOL WINAPI DetourBinaryResetImports(PDETOUR_BINARY pBinary); -BOOL WINAPI DetourBinaryEditImports(PDETOUR_BINARY pBinary, - PVOID pContext, - PF_DETOUR_BINARY_BYWAY_CALLBACK pfByway, - PF_DETOUR_BINARY_FILE_CALLBACK pfFile, - PF_DETOUR_BINARY_SYMBOL_CALLBACK pfSymbol, - PF_DETOUR_BINARY_COMMIT_CALLBACK pfCommit); -BOOL WINAPI DetourBinaryWrite(PDETOUR_BINARY pBinary, HANDLE hFile); -BOOL WINAPI DetourBinaryClose(PDETOUR_BINARY pBinary); - -/////////////////////////////////////////////////// Create Process & Load Dll. -// -typedef BOOL (WINAPI *PDETOUR_CREATE_PROCESS_ROUTINEA) - (LPCSTR lpApplicationName, - LPSTR lpCommandLine, - LPSECURITY_ATTRIBUTES lpProcessAttributes, - LPSECURITY_ATTRIBUTES lpThreadAttributes, - BOOL bInheritHandles, - DWORD dwCreationFlags, - LPVOID lpEnvironment, - LPCSTR lpCurrentDirectory, - LPSTARTUPINFOA lpStartupInfo, - LPPROCESS_INFORMATION lpProcessInformation); - -typedef BOOL (WINAPI *PDETOUR_CREATE_PROCESS_ROUTINEW) - (LPCWSTR lpApplicationName, - LPWSTR lpCommandLine, - LPSECURITY_ATTRIBUTES lpProcessAttributes, - LPSECURITY_ATTRIBUTES lpThreadAttributes, - BOOL bInheritHandles, - DWORD dwCreationFlags, - LPVOID lpEnvironment, - LPCWSTR lpCurrentDirectory, - LPSTARTUPINFOW lpStartupInfo, - LPPROCESS_INFORMATION lpProcessInformation); - -BOOL WINAPI DetourCreateProcessWithDllA(LPCSTR lpApplicationName, - __in_z LPSTR lpCommandLine, - LPSECURITY_ATTRIBUTES lpProcessAttributes, - LPSECURITY_ATTRIBUTES lpThreadAttributes, - BOOL bInheritHandles, - DWORD dwCreationFlags, - LPVOID lpEnvironment, - LPCSTR lpCurrentDirectory, - LPSTARTUPINFOA lpStartupInfo, - LPPROCESS_INFORMATION lpProcessInformation, - LPCSTR lpDllName, - PDETOUR_CREATE_PROCESS_ROUTINEA - pfCreateProcessA); - -BOOL WINAPI DetourCreateProcessWithDllW(LPCWSTR lpApplicationName, - __in_z LPWSTR lpCommandLine, - LPSECURITY_ATTRIBUTES lpProcessAttributes, - LPSECURITY_ATTRIBUTES lpThreadAttributes, - BOOL bInheritHandles, - DWORD dwCreationFlags, - LPVOID lpEnvironment, - LPCWSTR lpCurrentDirectory, - LPSTARTUPINFOW lpStartupInfo, - LPPROCESS_INFORMATION lpProcessInformation, - LPCSTR lpDllName, - PDETOUR_CREATE_PROCESS_ROUTINEW - pfCreateProcessW); - -#ifdef UNICODE -#define DetourCreateProcessWithDll DetourCreateProcessWithDllW -#define PDETOUR_CREATE_PROCESS_ROUTINE PDETOUR_CREATE_PROCESS_ROUTINEW -#else -#define DetourCreateProcessWithDll DetourCreateProcessWithDllA -#define PDETOUR_CREATE_PROCESS_ROUTINE PDETOUR_CREATE_PROCESS_ROUTINEA -#endif // !UNICODE - -BOOL WINAPI DetourCreateProcessWithDllExA(LPCSTR lpApplicationName, - __in_z LPSTR lpCommandLine, - LPSECURITY_ATTRIBUTES lpProcessAttributes, - LPSECURITY_ATTRIBUTES lpThreadAttributes, - BOOL bInheritHandles, - DWORD dwCreationFlags, - LPVOID lpEnvironment, - LPCSTR lpCurrentDirectory, - LPSTARTUPINFOA lpStartupInfo, - LPPROCESS_INFORMATION lpProcessInformation, - LPCSTR lpDllName, - PDETOUR_CREATE_PROCESS_ROUTINEA - pfCreateProcessA); - -BOOL WINAPI DetourCreateProcessWithDllExW(LPCWSTR lpApplicationName, - __in_z LPWSTR lpCommandLine, - LPSECURITY_ATTRIBUTES lpProcessAttributes, - LPSECURITY_ATTRIBUTES lpThreadAttributes, - BOOL bInheritHandles, - DWORD dwCreationFlags, - LPVOID lpEnvironment, - LPCWSTR lpCurrentDirectory, - LPSTARTUPINFOW lpStartupInfo, - LPPROCESS_INFORMATION lpProcessInformation, - LPCSTR lpDllName, - PDETOUR_CREATE_PROCESS_ROUTINEW - pfCreateProcessW); - -#ifdef UNICODE -#define DetourCreateProcessWithDllEx DetourCreateProcessWithDllExW -#define PDETOUR_CREATE_PROCESS_ROUTINE PDETOUR_CREATE_PROCESS_ROUTINEW -#else -#define DetourCreateProcessWithDllEx DetourCreateProcessWithDllExA -#define PDETOUR_CREATE_PROCESS_ROUTINE PDETOUR_CREATE_PROCESS_ROUTINEA -#endif // !UNICODE - -BOOL WINAPI DetourProcessViaHelperA(DWORD dwTargetPid, - LPCSTR lpDllName, - PDETOUR_CREATE_PROCESS_ROUTINEA pfCreateProcessA); - -BOOL WINAPI DetourProcessViaHelperW(DWORD dwTargetPid, - LPCSTR lpDllName, - PDETOUR_CREATE_PROCESS_ROUTINEW pfCreateProcessW); - -#ifdef UNICODE -#define DetourProcessViaHelper DetourProcessViaHelperW -#else -#define DetourProcessViaHelper DetourProcessViaHelperA -#endif // !UNICODE - -BOOL WINAPI DetourUpdateProcessWithDll(HANDLE hProcess, - LPCSTR *plpDlls, - DWORD nDlls); - -BOOL WINAPI DetourCopyPayloadToProcess(HANDLE hProcess, - REFGUID rguid, - PVOID pvData, - DWORD cbData); -BOOL WINAPI DetourRestoreAfterWith(VOID); -BOOL WINAPI DetourRestoreAfterWithEx(PVOID pvData, DWORD cbData); -BOOL WINAPI DetourIsHelperProcess(VOID); -VOID CALLBACK DetourFinishHelperProcess(HWND, HINSTANCE, LPSTR, INT); - -// -////////////////////////////////////////////////////////////////////////////// -#ifdef __cplusplus -} -#endif // __cplusplus - -//////////////////////////////////////////////// Detours Internal Definitions. -// -#ifdef __cplusplus -#ifdef DETOURS_INTERNAL - -#ifndef __deref_out -#define __deref_out -#endif - -#ifndef __deref -#define __deref -#endif - -////////////////////////////////////////////////////////////////////////////// -// -#if (_MSC_VER < 1299) -#include -typedef IMAGEHLP_MODULE IMAGEHLP_MODULE64; -typedef PIMAGEHLP_MODULE PIMAGEHLP_MODULE64; -typedef IMAGEHLP_SYMBOL SYMBOL_INFO; -typedef PIMAGEHLP_SYMBOL PSYMBOL_INFO; - -static inline -LONG InterlockedCompareExchange(LONG *ptr, LONG nval, LONG oval) -{ - return (LONG)::InterlockedCompareExchange((PVOID*)ptr, (PVOID)nval, (PVOID)oval); -} -#else -#include -#endif - -#ifdef IMAGEAPI // defined by DBGHELP.H -typedef LPAPI_VERSION (NTAPI *PF_ImagehlpApiVersionEx)(LPAPI_VERSION AppVersion); - -typedef BOOL (NTAPI *PF_SymInitialize)(IN HANDLE hProcess, - IN LPCSTR UserSearchPath, - IN BOOL fInvadeProcess); -typedef DWORD (NTAPI *PF_SymSetOptions)(IN DWORD SymOptions); -typedef DWORD (NTAPI *PF_SymGetOptions)(VOID); -typedef DWORD64 (NTAPI *PF_SymLoadModule64)(IN HANDLE hProcess, - IN HANDLE hFile, - IN PSTR ImageName, - IN PSTR ModuleName, - IN DWORD64 BaseOfDll, - IN DWORD SizeOfDll); -typedef BOOL (NTAPI *PF_SymGetModuleInfo64)(IN HANDLE hProcess, - IN DWORD64 qwAddr, - OUT PIMAGEHLP_MODULE64 ModuleInfo); -typedef BOOL (NTAPI *PF_SymFromName)(IN HANDLE hProcess, - IN LPSTR Name, - OUT PSYMBOL_INFO Symbol); - -typedef struct _DETOUR_SYM_INFO -{ - HANDLE hProcess; - HMODULE hDbgHelp; - PF_ImagehlpApiVersionEx pfImagehlpApiVersionEx; - PF_SymInitialize pfSymInitialize; - PF_SymSetOptions pfSymSetOptions; - PF_SymGetOptions pfSymGetOptions; - PF_SymLoadModule64 pfSymLoadModule64; - PF_SymGetModuleInfo64 pfSymGetModuleInfo64; - PF_SymFromName pfSymFromName; -} DETOUR_SYM_INFO, *PDETOUR_SYM_INFO; - -PDETOUR_SYM_INFO DetourLoadDbgHelp(VOID); - -#endif // IMAGEAPI - -#ifndef DETOUR_TRACE -#if DETOUR_DEBUG -#define DETOUR_TRACE(x) printf x -#define DETOUR_BREAK() __debugbreak() -#include -#include -#else -#define DETOUR_TRACE(x) -#define DETOUR_BREAK() -#endif -#endif - -#ifdef DETOURS_IA64 -#error Feature not supported in this release. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -#endif // DETOURS_IA64 - -#ifdef DETOURS_ARM -#error Feature not supported in this release. - - - -#endif // DETOURS_ARM - -////////////////////////////////////////////////////////////////////////////// - -#endif // DETOURS_INTERNAL -#endif // __cplusplus - -#endif // _DETOURS_H_ -// -//////////////////////////////////////////////////////////////// End of File. diff --git a/detours/detours.lib b/detours/detours.lib deleted file mode 100644 index 30d5d46fdd642f11ab8d0793e2d9f1a748e2d045..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 266538 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

1RMI2ul!DAQ#VWYZ0czi-2G7*;>Dp7(& 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 fr-p(lmm< + +// MinHook Error Codes. +typedef enum MH_STATUS +{ + // Unknown error. Should not be returned. + MH_UNKNOWN = -1, + + // Successful. + MH_OK = 0, + + // MinHook is already initialized. + MH_ERROR_ALREADY_INITIALIZED, + + // MinHook is not initialized yet, or already uninitialized. + MH_ERROR_NOT_INITIALIZED, + + // The hook for the specified target function is already created. + MH_ERROR_ALREADY_CREATED, + + // The hook for the specified target function is not created yet. + MH_ERROR_NOT_CREATED, + + // The hook for the specified target function is already enabled. + MH_ERROR_ENABLED, + + // The hook for the specified target function is not enabled yet, or already + // disabled. + MH_ERROR_DISABLED, + + // The specified pointer is invalid. It points the address of non-allocated + // and/or non-executable region. + MH_ERROR_NOT_EXECUTABLE, + + // The specified target function cannot be hooked. + MH_ERROR_UNSUPPORTED_FUNCTION, + + // Failed to allocate memory. + MH_ERROR_MEMORY_ALLOC, + + // Failed to change the memory protection. + MH_ERROR_MEMORY_PROTECT, + + // The specified module is not loaded. + MH_ERROR_MODULE_NOT_FOUND, + + // The specified function is not found. + MH_ERROR_FUNCTION_NOT_FOUND +} +MH_STATUS; + +// Can be passed as a parameter to MH_EnableHook, MH_DisableHook, +// MH_QueueEnableHook or MH_QueueDisableHook. +#define MH_ALL_HOOKS NULL + +#ifdef __cplusplus +extern "C" { +#endif + + // Initialize the MinHook library. You must call this function EXACTLY ONCE + // at the beginning of your program. + MH_STATUS WINAPI MH_Initialize(VOID); + + // Uninitialize the MinHook library. You must call this function EXACTLY + // ONCE at the end of your program. + MH_STATUS WINAPI MH_Uninitialize(VOID); + + // Creates a Hook for the specified target function, in disabled state. + // Parameters: + // pTarget [in] A pointer to the target function, which will be + // overridden by the detour function. + // pDetour [in] A pointer to the detour function, which will override + // the target function. + // ppOriginal [out] A pointer to the trampoline function, which will be + // used to call the original target function. + // This parameter can be NULL. + MH_STATUS WINAPI MH_CreateHook(LPVOID pTarget, LPVOID pDetour, LPVOID *ppOriginal); + + // Creates a Hook for the specified API function, in disabled state. + // Parameters: + // pszModule [in] A pointer to the loaded module name which contains the + // target function. + // pszTarget [in] A pointer to the target function name, which will be + // overridden by the detour function. + // pDetour [in] A pointer to the detour function, which will override + // the target function. + // ppOriginal [out] A pointer to the trampoline function, which will be + // used to call the original target function. + // This parameter can be NULL. + MH_STATUS WINAPI MH_CreateHookApi( + LPCWSTR pszModule, LPCSTR pszProcName, LPVOID pDetour, LPVOID *ppOriginal); + + // Removes an already created hook. + // Parameters: + // pTarget [in] A pointer to the target function. + MH_STATUS WINAPI MH_RemoveHook(LPVOID pTarget); + + // Enables an already created hook. + // Parameters: + // pTarget [in] A pointer to the target function. + // If this parameter is MH_ALL_HOOKS, all created hooks are + // enabled in one go. + MH_STATUS WINAPI MH_EnableHook(LPVOID pTarget); + + // Disables an already created hook. + // Parameters: + // pTarget [in] A pointer to the target function. + // If this parameter is MH_ALL_HOOKS, all created hooks are + // disabled in one go. + MH_STATUS WINAPI MH_DisableHook(LPVOID pTarget); + + // Queues to enable an already created hook. + // Parameters: + // pTarget [in] A pointer to the target function. + // If this parameter is MH_ALL_HOOKS, all created hooks are + // queued to be enabled. + MH_STATUS WINAPI MH_QueueEnableHook(LPVOID pTarget); + + // Queues to disable an already created hook. + // Parameters: + // pTarget [in] A pointer to the target function. + // If this parameter is MH_ALL_HOOKS, all created hooks are + // queued to be disabled. + MH_STATUS WINAPI MH_QueueDisableHook(LPVOID pTarget); + + // Applies all queued changes in one go. + MH_STATUS WINAPI MH_ApplyQueued(VOID); + +#ifdef __cplusplus +} +#endif + diff --git a/minhook/libMinHook.x86.lib b/minhook/libMinHook.x86.lib new file mode 100644 index 0000000000000000000000000000000000000000..f7f0e393b61757b7f04d2e94bc5317567108ed72 GIT binary patch literal 263596 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 literal 0 HcmV?d00001