-
Notifications
You must be signed in to change notification settings - Fork 16
Expand file tree
/
Copy pathEngineHandler.h
More file actions
32 lines (24 loc) · 787 Bytes
/
EngineHandler.h
File metadata and controls
32 lines (24 loc) · 787 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
#pragma once
#include "interface.h"
#include <Tlhelp32.h>
#include <winioctl.h>
class CEngine
{
static HANDLE hEngine;
DATA_STATE *pContext;
bool fStartedByThisProgram;
bool fStartedByThisCopy;
void GetEngineHandle(bool fShowError);
void Create(HMODULE hDllHandle);
void Delete();
void Control(DWORD dwCode,void *pInData,DWORD dwInSize,void *pOutData,DWORD dwOutSize) const;
public:
CEngine(HMODULE hDllHandle);
~CEngine();
void Hook(DWORD dwPID,DWORD dwInt1,DWORD dwInt0d,DWORD dwInt0e) const;
void GetState(DATA_STATE *pData) const;
void SetState(DATA_STATE *pData);
DWORD_PTR GetModHandle(DWORD dwPID,const TCHAR *szModuleName) const;
void EmulateRDTSC(DWORD dwHook,DWORD dwShift) const;
void EmulateCPUID(DWORD dwHook) const;
};