MCPcopy Create free account
hub / github.com/WinDurango/WinDurango / XWinePatchImport

Function XWinePatchImport

projects/WinDurango.KernelX/src/Hooks.cpp:97–114  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

95}
96
97HRESULT XWinePatchImport(_In_opt_ HMODULE Module, _In_ HMODULE ImportModule, _In_ PCSTR Import, _In_ PVOID Function)
98{
99 DWORD protect;
100 PIMAGE_THUNK_DATA pThunk;
101 HRESULT hr = XWineGetImport(Module, ImportModule, Import, &pThunk);
102 if (FAILED(hr))
103 return hr;
104
105 if (!VirtualProtect(&pThunk->u1.Function, sizeof(ULONG_PTR), PAGE_READWRITE, &protect))
106 return GetLastError();
107
108 pThunk->u1.Function = (ULONG_PTR)Function;
109
110 if (!VirtualProtect(&pThunk->u1.Function, sizeof(ULONG_PTR), protect, &protect))
111 return GetLastError();
112
113 return S_OK;
114}
115
116HRESULT PatchNeededImports(_In_opt_ HMODULE Module, _In_ HMODULE ImportModule, _In_ PCSTR Import, _In_ PVOID Function)
117{

Callers 3

PatchNeededImportsFunction · 0.85
WdRoInitializeLibrariesFunction · 0.85
KernelxInitializeFunction · 0.85

Calls 2

XWineGetImportFunction · 0.85
GetLastErrorFunction · 0.85

Tested by

no test coverage detected