11{
12 BYTE Bits[100] = {0,1,2,3,4,5,6,7,8,9};
18
22
23
27
28
34
37
38
42
43
47
48
52
53
57
58
62
63
67
68
72
76
80
81
85
89
93
97
101
103
104
108
112
116
120
124
126
128
129
130
133
139
141
147
155
160
177
196
217
219
220
221
223
232
238
245
253
258
275
294
315
318
321
322
323
325
334
340
347
355
360
377
396
417
420
423}
#define ok_long(expression, result)
#define ok_int(expression, result)
#define ERROR_INVALID_HANDLE
#define FillMemory(BUF, SIZ, MASK)
__kernel_entry W32KAPI LONG APIENTRY NtGdiGetBitmapBits(_In_ HBITMAP hbm, _In_ ULONG cjMax, _Out_writes_bytes_opt_(cjMax) PBYTE pjOut)
__kernel_entry W32KAPI LONG APIENTRY NtGdiSetBitmapBits(_In_ HBITMAP hbm, _In_ ULONG cj, _In_reads_bytes_(cj) PBYTE pjInit)
BITMAPINFOHEADER bmiHeader
LPVOID NTAPI VirtualAlloc(IN LPVOID lpAddress, IN SIZE_T dwSize, IN DWORD flAllocationType, IN DWORD flProtect)
BOOL NTAPI VirtualFree(IN LPVOID lpAddress, IN SIZE_T dwSize, IN DWORD dwFreeType)
HBITMAP WINAPI CreateDIBSection(HDC hDC, CONST BITMAPINFO *BitmapInfo, UINT Usage, VOID **Bits, HANDLE hSection, DWORD dwOffset)
DWORD WINAPI GetLastError(void)
HBITMAP WINAPI CreateBitmap(_In_ INT cx, _In_ INT cy, _In_ UINT cPlanes, _In_ UINT cBitsPerPel, _In_opt_ const VOID *pvBits)
HDC WINAPI CreateCompatibleDC(_In_opt_ HDC hdc)
BOOL WINAPI DeleteDC(_In_ HDC)
HPEN WINAPI CreatePen(_In_ int, _In_ int, _In_ COLORREF)