CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutSign UpSign In
rapid7

CoCalc provides the best real-time collaborative environment for Jupyter Notebooks, LaTeX documents, and SageMath, scalable from individual users to large groups and classes!

GitHub Repository: rapid7/metasploit-framework
Path: blob/master/data/headers/windows/c_payload_util/kernel32_util.h
Views: 1904
1
#ifndef _KERNEL_UTIL
2
#define _KERNEL_UTIL
3
4
typedef BOOL (WINAPI *FuncCreateProcess) (
5
LPCTSTR lpApplicationName,
6
LPTSTR lpCommandLine,
7
LPSECURITY_ATTRIBUTES lpProcessAttributes,
8
LPSECURITY_ATTRIBUTES lpThreadAttributes,
9
BOOL bInheritHandles,
10
DWORD dwCreationFlags,
11
LPVOID lpEnvironment,
12
LPCTSTR lpCurrentDirectory,
13
LPSTARTUPINFO lpStartupInfo,
14
LPPROCESS_INFORMATION lpProcessInformation
15
);
16
17
typedef BOOL (WINAPI *FuncSetHandleInformation)
18
(
19
HANDLE hObject,
20
DWORD dwMask,
21
DWORD dwFlags
22
);
23
24
typedef BOOL (WINAPI *FuncReadFile)
25
(
26
HANDLE hFile,
27
LPVOID lpBuffer,
28
DWORD nNumberOfBytesToRead,
29
LPDWORD lpNumberOfBytesToRead,
30
LPOVERLAPPED lpOverlapped
31
);
32
33
typedef BOOL (WINAPI *FuncWriteFile)
34
(
35
HANDLE hFile,
36
LPCVOID lpBuffer,
37
DWORD nNumberOfBytesToWrite,
38
LPDWORD lpNumberOfBytesWritten,
39
LPOVERLAPPED lpOverlapped
40
);
41
42
typedef BOOL (WINAPI *FuncPeekNamedPipe)
43
(
44
HANDLE hNamedPipe,
45
LPVOID lpBuffer,
46
DWORD nBufferSize,
47
LPDWORD nBytesRead,
48
LPDWORD lpTotalBytesAvailable,
49
LPDWORD lpBytesLeftThisMessage
50
);
51
52
typedef BOOL (WINAPI *FuncCreatePipe)
53
(
54
PHANDLE hReadPipe,
55
PHANDLE hWritePipe,
56
LPSECURITY_ATTRIBUTES lpPipeAttributes,
57
DWORD nSize
58
);
59
60
typedef BOOL (WINAPI *FuncCloseHandle)
61
(
62
HANDLE hObject
63
);
64
65
typedef HGLOBAL (WINAPI *FuncGlobalAlloc)
66
(
67
UINT uFlags,
68
SIZE_T dwBytes
69
);
70
71
typedef HGLOBAL (WINAPI *FuncGlobalFree)
72
(
73
HGLOBAL hMem
74
);
75
76
typedef HANDLE (WINAPI *FuncHeapCreate)
77
(
78
DWORD flOptions,
79
SIZE_T dwInitialize,
80
SIZE_T dwMaximumSize
81
);
82
83
typedef LPVOID (WINAPI *FuncHeapAlloc)
84
(
85
HANDLE hHeap,
86
DWORD dwFlags,
87
SIZE_T dwBytes
88
);
89
90
typedef VOID (WINAPI *FuncSleep)
91
(
92
DWORD dwMilliseconds
93
);
94
95
typedef HANDLE (WINAPI *FuncGetCurrentProcess) ();
96
97
typedef BOOL (WINAPI *FuncGetExitCodeProcess)
98
(
99
HANDLE hProcess,
100
LPDWORD lpExitCode
101
);
102
103
typedef VOID (WINAPI *FuncExitProcess)
104
(
105
UINT uExitCode
106
);
107
108
typedef BOOL (WINAPI *FuncCloseHandle)
109
(
110
HANDLE hObject
111
);
112
113
typedef BOOL (WINAPI *FuncVirtualProtect)
114
(
115
LPVOID lpAddress,
116
SIZE_T dwSize,
117
DWORD flNewProtect,
118
PDWORD lpflOldProtect
119
);
120
121
typedef LPVOID (WINAPI *FuncVirtualAlloc)
122
(
123
LPVOID lpAddress,
124
SIZE_T dwSize,
125
DWORD flAllocationType,
126
DWORD flProtect
127
);
128
129
typedef BOOL (WINAPI *FuncVirtualFree)
130
(
131
LPVOID lpAddress,
132
SIZE_T dwSize,
133
DWORD dwFreeType
134
);
135
136
#endif
137
138