2013-04-04 12:17:08 -04:00
|
|
|
extern int HookDirectDraw(HMODULE, int);
|
|
|
|
extern int HookDirect3D(HMODULE, int);
|
2013-11-10 11:38:21 -05:00
|
|
|
extern int HookDirect3D7(HMODULE, int);
|
2013-06-15 12:21:25 -04:00
|
|
|
extern void HookOle32(HMODULE);
|
2013-07-21 12:38:09 -04:00
|
|
|
extern void HookGDI32(HMODULE);
|
2015-11-22 11:42:31 -05:00
|
|
|
extern void HookDirectInput(HMODULE);
|
|
|
|
extern void HookDirectInput8(HMODULE);
|
2015-01-24 11:40:16 -05:00
|
|
|
extern void HookDirectSound(HMODULE);
|
2013-04-04 12:17:08 -04:00
|
|
|
extern void HookImeLib(HMODULE);
|
2013-02-06 11:19:16 -05:00
|
|
|
extern void HookKernel32(HMODULE);
|
2013-06-15 12:21:25 -04:00
|
|
|
extern void HookUser32(HMODULE);
|
2016-06-21 12:46:09 -04:00
|
|
|
extern void HookTrust(HMODULE);
|
2015-11-19 11:42:28 -05:00
|
|
|
extern void HookWinMM(HMODULE, char *libname);
|
2013-10-08 12:38:12 -04:00
|
|
|
extern void HookAdvApi32(HMODULE);
|
2014-08-10 12:39:50 -04:00
|
|
|
extern void HookImagehlp(HMODULE);
|
2014-12-28 11:40:12 -05:00
|
|
|
extern void HookSmackW32(HMODULE);
|
2015-06-22 12:40:59 -04:00
|
|
|
extern void HookAVIFil32(HMODULE);
|
|
|
|
extern void HookComDlg32(HMODULE);
|
2016-06-21 12:46:09 -04:00
|
|
|
extern void HookComCtl32(HMODULE);
|
2016-12-22 11:48:51 -05:00
|
|
|
extern void HookWinG32(HMODULE);
|
2013-02-06 11:19:16 -05:00
|
|
|
|
2013-12-02 11:17:07 -05:00
|
|
|
extern void InitPosition(int, int, int, int, int, int);
|
2013-01-19 11:16:54 -05:00
|
|
|
//void InitWindowPos(int, int, int, int);
|
2012-12-24 10:20:23 -05:00
|
|
|
extern LPCSTR ProcToString(LPCSTR proc);
|
2013-02-06 11:19:16 -05:00
|
|
|
extern HRESULT HookDxDiag(REFIID, LPVOID FAR*);
|
|
|
|
|
2016-06-21 12:46:09 -04:00
|
|
|
extern FARPROC Remap_AVIFil32_ProcAddress(LPCSTR, HMODULE);
|
2013-02-06 11:19:16 -05:00
|
|
|
extern FARPROC Remap_ddraw_ProcAddress(LPCSTR, HMODULE);
|
2013-11-10 11:38:21 -05:00
|
|
|
extern FARPROC Remap_d3d7_ProcAddress(LPCSTR, HMODULE);
|
2013-02-06 11:19:16 -05:00
|
|
|
extern FARPROC Remap_d3d8_ProcAddress(LPCSTR, HMODULE);
|
|
|
|
extern FARPROC Remap_d3d9_ProcAddress(LPCSTR, HMODULE);
|
|
|
|
extern FARPROC Remap_d3d10_ProcAddress(LPCSTR, HMODULE);
|
|
|
|
extern FARPROC Remap_d3d10_1_ProcAddress(LPCSTR, HMODULE);
|
|
|
|
extern FARPROC Remap_d3d11_ProcAddress(LPCSTR, HMODULE);
|
|
|
|
extern FARPROC Remap_gl_ProcAddress(LPCSTR, HMODULE);
|
|
|
|
extern FARPROC Remap_smack_ProcAddress(LPCSTR, HMODULE);
|
|
|
|
extern FARPROC Remap_user32_ProcAddress(LPCSTR, HMODULE);
|
2014-08-29 12:39:42 -04:00
|
|
|
extern FARPROC Remap_GDI32_ProcAddress(LPCSTR, HMODULE);
|
2013-02-06 11:19:16 -05:00
|
|
|
extern FARPROC Remap_kernel32_ProcAddress(LPCSTR, HMODULE);
|
|
|
|
extern FARPROC Remap_ole32_ProcAddress(LPCSTR, HMODULE);
|
2013-06-15 12:21:25 -04:00
|
|
|
extern FARPROC Remap_trust_ProcAddress(LPCSTR, HMODULE);
|
|
|
|
extern FARPROC Remap_WinMM_ProcAddress(LPCSTR, HMODULE);
|
|
|
|
extern FARPROC Remap_ImeLib_ProcAddress(LPCSTR, HMODULE);
|
2013-07-21 12:38:09 -04:00
|
|
|
extern FARPROC Remap_vfw_ProcAddress(LPCSTR, HMODULE);
|
2013-10-08 12:38:12 -04:00
|
|
|
extern FARPROC Remap_AdvApi32_ProcAddress(LPCSTR, HMODULE);
|
2014-01-19 11:38:43 -05:00
|
|
|
extern FARPROC Remap_Glide_ProcAddress(LPCSTR, HMODULE);
|
2014-08-10 12:39:50 -04:00
|
|
|
extern FARPROC Remap_Imagehlp_ProcAddress(LPCSTR, HMODULE);
|
2015-12-11 11:42:26 -05:00
|
|
|
extern FARPROC Remap_DInput_ProcAddress(LPCSTR, HMODULE);
|
|
|
|
extern FARPROC Remap_DInput8_ProcAddress(LPCSTR, HMODULE);
|
2016-06-21 12:46:09 -04:00
|
|
|
extern FARPROC Remap_ComCtl32_ProcAddress(LPCSTR, HMODULE);
|
|
|
|
extern FARPROC Remap_ComDlg32_ProcAddress(LPCSTR, HMODULE);
|
2016-11-30 11:48:25 -05:00
|
|
|
extern FARPROC Remap_DSound_ProcAddress(LPCSTR, HMODULE);
|
2016-12-22 11:48:51 -05:00
|
|
|
extern FARPROC Remap_WinG32_ProcAddress(LPCSTR, HMODULE);
|
2013-02-06 11:19:16 -05:00
|
|
|
|
2014-05-14 12:39:12 -04:00
|
|
|
typedef enum {
|
|
|
|
HOOK_IAT_CANDIDATE = 0,
|
|
|
|
HOOK_HOT_CANDIDATE,
|
2016-04-03 12:42:48 -04:00
|
|
|
HOOK_HOT_REQUIRED,
|
2014-05-14 12:39:12 -04:00
|
|
|
HOOK_IAT_LINKED,
|
|
|
|
HOOK_HOT_LINKED
|
|
|
|
} HookEntry_Status;
|
|
|
|
|
2013-06-15 12:21:25 -04:00
|
|
|
typedef struct {
|
2014-05-14 12:39:12 -04:00
|
|
|
HookEntry_Status HookStatus;
|
2016-12-03 11:45:15 -05:00
|
|
|
DWORD ordinal;
|
2013-06-15 12:21:25 -04:00
|
|
|
char *APIName;
|
|
|
|
FARPROC OriginalAddress;
|
|
|
|
FARPROC *StoreAddress;
|
|
|
|
FARPROC HookerAddress;
|
2016-12-03 11:45:15 -05:00
|
|
|
} HookEntryEx_Type;
|
2013-06-15 12:21:25 -04:00
|
|
|
|
2016-12-03 11:45:15 -05:00
|
|
|
extern FARPROC RemapLibraryEx(LPCSTR, HMODULE, HookEntryEx_Type *);
|
|
|
|
extern void HookLibraryEx(HMODULE, HookEntryEx_Type *, char *);
|
|
|
|
extern void PinLibraryEx(HookEntryEx_Type *, char *);
|
|
|
|
extern void HookLibInitEx(HookEntryEx_Type *);
|
|
|
|
extern BOOL IsHotPatchedEx(HookEntryEx_Type *, char *);
|
2017-02-21 11:50:21 -05:00
|
|
|
|
|
|
|
#define MISSING ((FARPROC)-1)
|