0000: 6d 6f 64 75 6c 65 20 77 69 6e 33 32 2e 77 69 6e module win32.win
0010: 6e 74 3b 0d 0a 0d 0a 2f 2f 20 54 72 61 6e 73 6c nt;....// Transl
0020: 61 74 65 64 20 66 72 6f 6d 20 4d 69 63 72 6f 73 ated from Micros
0030: 6f 66 74 20 50 6c 61 74 66 6f 72 6d 20 53 44 4b oft Platform SDK
0040: 20 41 75 67 75 73 74 20 32 30 30 31 20 45 64 69 August 2001 Edi
0050: 74 69 6f 6e 0d 0a 2f 2f 20 62 79 20 59 2e 54 6f tion..// by Y.To
0060: 6d 69 6e 6f 20 28 64 65 6d 6f 6f 6e 6c 69 74 40 mino (demoonlit@
0070: 69 6e 74 65 72 37 2e 6a 70 29 0d 0a 0d 0a 69 6d inter7.jp)....im
0080: 70 6f 72 74 20 77 69 6e 33 32 2e 77 69 6e 64 65 port win32.winde
0090: 66 3b 0d 0a 61 6c 69 61 73 20 76 6f 69 64 20 5f f;..alias void _
00a0: 54 45 42 3b 0d 0a 61 6c 69 61 73 20 76 6f 69 64 TEB;..alias void
00b0: 20 5f 45 58 43 45 50 54 49 4f 4e 5f 52 45 47 49 _EXCEPTION_REGI
00c0: 53 54 52 41 54 49 4f 4e 5f 52 45 43 4f 52 44 3b STRATION_RECORD;
00d0: 0d 0a 70 72 69 76 61 74 65 20 65 78 74 65 72 6e ..private extern
00e0: 28 43 29 20 7b 0d 0a 20 20 69 6e 74 20 6d 65 6d (C) {.. int mem
00f0: 63 6d 70 28 76 6f 69 64 2a 2c 20 76 6f 69 64 2a cmp(void*, void*
0100: 2c 20 75 69 6e 74 29 3b 0d 0a 20 20 76 6f 69 64 , uint);.. void
0110: 2a 20 6d 65 6d 6d 6f 76 65 28 76 6f 69 64 2a 2c * memmove(void*,
0120: 20 76 6f 69 64 2a 2c 20 75 69 6e 74 29 3b 0d 0a void*, uint);..
0130: 20 20 76 6f 69 64 2a 20 6d 65 6d 63 70 79 28 76 void* memcpy(v
0140: 6f 69 64 2a 2c 20 76 6f 69 64 2a 2c 20 75 69 6e oid*, void*, uin
0150: 74 29 3b 0d 0a 20 20 76 6f 69 64 2a 20 6d 65 6d t);.. void* mem
0160: 73 65 74 28 76 6f 69 64 2a 2c 20 75 69 6e 74 2c set(void*, uint,
0170: 20 75 69 6e 74 29 3b 0d 0a 7d 0d 0a 0d 0a 2f 2f uint);..}....//
0180: 20 23 69 66 6e 64 65 66 20 5f 57 49 4e 4e 54 5f #ifndef _WINNT_
0190: 0d 0a 2f 2f 20 23 64 65 66 69 6e 65 20 5f 57 49 ..// #define _WI
01a0: 4e 4e 54 5f 0d 0a 0d 0a 2f 2f 20 23 69 66 64 65 NNT_....// #ifde
01b0: 66 20 5f 5f 63 70 6c 75 73 70 6c 75 73 0d 0a 2f f __cplusplus../
01c0: 2f 20 65 78 74 65 72 6e 20 22 43 22 20 7b 0d 0a / extern "C" {..
01d0: 2f 2f 20 23 65 6e 64 69 66 0d 0a 0d 0a 2f 2f 20 // #endif....//
01e0: 23 69 6e 63 6c 75 64 65 20 3c 63 74 79 70 65 2e #include <ctype.
01f0: 68 3e 20 20 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e h> ..enum : uin
0200: 74 20 7b 20 41 4e 59 53 49 5a 45 5f 41 52 52 41 t { ANYSIZE_ARRA
0210: 59 20 3d 20 31 20 7d 0d 0a 0d 0a 2f 2f 20 23 69 Y = 1 }....// #i
0220: 66 20 64 65 66 69 6e 65 64 28 5f 4d 5f 4d 52 58 f defined(_M_MRX
0230: 30 30 30 29 20 26 26 20 21 28 64 65 66 69 6e 65 000) && !(define
0240: 64 28 4d 49 44 4c 5f 50 41 53 53 29 20 7c 7c 20 d(MIDL_PASS) ||
0250: 64 65 66 69 6e 65 64 28 52 43 5f 49 4e 56 4f 4b defined(RC_INVOK
0260: 45 44 29 29 20 26 26 20 64 65 66 69 6e 65 64 28 ED)) && defined(
0270: 45 4e 41 42 4c 45 5f 52 45 53 54 52 49 43 54 45 ENABLE_RESTRICTE
0280: 44 29 0d 0a 2f 2f 20 23 2e 2e 2e 0d 0a 2f 2f 20 D)..// #.....//
0290: 23 65 6c 73 65 0d 0a 2f 2f 20 23 64 65 66 69 6e #else..// #defin
02a0: 65 20 52 45 53 54 52 49 43 54 45 44 5f 50 4f 49 e RESTRICTED_POI
02b0: 4e 54 45 52 0d 0a 2f 2f 20 23 65 6e 64 69 66 0d NTER..// #endif.
02c0: 0a 0d 0a 2f 2f 20 23 69 66 20 64 65 66 69 6e 65 ...// #if define
02d0: 64 28 5f 4d 5f 4d 52 58 30 30 30 29 20 7c 7c 20 d(_M_MRX000) ||
02e0: 64 65 66 69 6e 65 64 28 5f 4d 5f 41 4c 50 48 41 defined(_M_ALPHA
02f0: 29 20 7c 7c 20 64 65 66 69 6e 65 64 28 5f 4d 5f ) || defined(_M_
0300: 50 50 43 29 20 7c 7c 20 64 65 66 69 6e 65 64 28 PPC) || defined(
0310: 5f 4d 5f 49 41 36 34 29 20 7c 7c 20 64 65 66 69 _M_IA64) || defi
0320: 6e 65 64 28 5f 4d 5f 41 4d 44 36 34 29 0d 0a 2f ned(_M_AMD64)../
0330: 2f 20 23 2e 2e 2e 0d 0a 2f 2f 20 23 69 66 20 64 / #.....// #if d
0340: 65 66 69 6e 65 64 28 5f 57 49 4e 36 34 29 0d 0a efined(_WIN64)..
0350: 2f 2f 20 23 2e 2e 2e 0d 0a 2f 2f 20 23 65 6c 73 // #.....// #els
0360: 65 0d 0a 2f 2f 20 23 2e 2e 2e 0d 0a 2f 2f 20 23 e..// #.....// #
0370: 65 6e 64 69 66 0d 0a 2f 2f 20 23 65 6c 73 65 0d endif..// #else.
0380: 0a 2f 2f 20 23 64 65 66 69 6e 65 20 55 4e 41 4c .// #define UNAL
0390: 49 47 4e 45 44 0d 0a 2f 2f 20 23 64 65 66 69 6e IGNED..// #defin
03a0: 65 20 55 4e 41 4c 49 47 4e 45 44 36 34 0d 0a 2f e UNALIGNED64../
03b0: 2f 20 23 65 6e 64 69 66 0d 0a 0d 0a 2f 2f 20 23 / #endif....// #
03c0: 69 66 20 64 65 66 69 6e 65 64 28 5f 57 49 4e 36 if defined(_WIN6
03d0: 34 29 20 7c 7c 20 64 65 66 69 6e 65 64 28 5f 4d 4) || defined(_M
03e0: 5f 41 4c 50 48 41 29 0d 0a 2f 2f 20 23 2e 2e 2e _ALPHA)..// #...
03f0: 0d 0a 2f 2f 20 23 2e 2e 2e 0d 0a 2f 2f 20 23 65 ..// #.....// #e
0400: 6c 73 65 0d 0a 63 6f 6e 73 74 20 75 69 6e 74 20 lse..const uint
0410: 4d 41 58 5f 4e 41 54 55 52 41 4c 5f 41 4c 49 47 MAX_NATURAL_ALIG
0420: 4e 4d 45 4e 54 20 3d 20 44 57 4f 52 44 2e 73 69 NMENT = DWORD.si
0430: 7a 65 6f 66 3b 0d 0a 65 6e 75 6d 20 3a 20 75 69 zeof;..enum : ui
0440: 6e 74 20 7b 20 4d 45 4d 4f 52 59 5f 41 4c 4c 4f nt { MEMORY_ALLO
0450: 43 41 54 49 4f 4e 5f 41 4c 49 47 4e 4d 45 4e 54 CATION_ALIGNMENT
0460: 20 3d 20 38 20 7d 0d 0a 2f 2f 20 23 65 6e 64 69 = 8 }..// #endi
0470: 66 0d 0a 0d 0a 2f 2f 20 23 69 66 64 65 66 20 5f f....// #ifdef _
0480: 5f 63 70 6c 75 73 70 6c 75 73 0d 0a 2f 2f 20 23 _cplusplus..// #
0490: 69 66 20 5f 4d 53 43 5f 56 45 52 20 3e 3d 20 31 if _MSC_VER >= 1
04a0: 33 30 30 0d 0a 2f 2f 20 23 64 65 66 69 6e 65 20 300..// #define
04b0: 54 59 50 45 5f 41 4c 49 47 4e 4d 45 4e 54 28 20 TYPE_ALIGNMENT(
04c0: 74 20 29 20 5f 5f 61 6c 69 67 6e 6f 66 28 74 29 t ) __alignof(t)
04d0: 0d 0a 2f 2f 20 23 65 6e 64 69 66 0d 0a 2f 2f 20 ..// #endif..//
04e0: 23 65 6c 73 65 0d 0a 2f 2f 20 23 2e 2e 2e 0d 0a #else..// #.....
04f0: 2f 2f 20 2e 2e 2e 0d 0a 2f 2f 20 23 65 6e 64 69 // .....// #endi
0500: 66 0d 0a 0d 0a 2f 2f 20 23 69 66 20 64 65 66 69 f....// #if defi
0510: 6e 65 64 28 5f 57 49 4e 36 34 29 0d 0a 0d 0a 2f ned(_WIN64)..../
0520: 2f 20 23 2e 2e 2e 0d 0a 2f 2f 20 2e 2e 2e 0d 0a / #.....// .....
0530: 0d 0a 2f 2f 20 23 2e 2e 2e 0d 0a 0d 0a 2f 2f 20 ..// #.......//
0540: 23 65 6c 73 65 0d 0a 0d 0a 2f 2f 20 23 64 65 66 #else....// #def
0550: 69 6e 65 20 50 52 4f 42 45 5f 41 4c 49 47 4e 4d ine PROBE_ALIGNM
0560: 45 4e 54 28 20 5f 73 20 29 20 54 59 50 45 5f 41 ENT( _s ) TYPE_A
0570: 4c 49 47 4e 4d 45 4e 54 28 20 44 57 4f 52 44 20 LIGNMENT( DWORD
0580: 29 0d 0a 0d 0a 2f 2f 20 23 65 6e 64 69 66 0d 0a )....// #endif..
0590: 0d 0a 2f 2f 20 23 64 65 66 69 6e 65 20 43 5f 41 ..// #define C_A
05a0: 53 53 45 52 54 28 65 29 20 74 79 70 65 64 65 66 SSERT(e) typedef
05b0: 20 63 68 61 72 20 5f 5f 43 5f 41 53 53 45 52 54 char __C_ASSERT
05c0: 5f 5f 5b 28 65 29 3f 31 3a 2d 31 5d 0d 0a 0d 0a __[(e)?1:-1]....
05d0: 2f 2f 20 23 69 66 20 21 64 65 66 69 6e 65 64 28 // #if !defined(
05e0: 5f 4d 41 43 29 20 26 26 20 28 64 65 66 69 6e 65 _MAC) && (define
05f0: 64 28 5f 4d 5f 4d 52 58 30 30 30 29 20 7c 7c 20 d(_M_MRX000) ||
0600: 64 65 66 69 6e 65 64 28 5f 4d 5f 41 4d 44 36 34 defined(_M_AMD64
0610: 29 20 7c 7c 20 64 65 66 69 6e 65 64 28 5f 4d 5f ) || defined(_M_
0620: 49 41 36 34 29 29 20 26 26 20 28 5f 4d 53 43 5f IA64)) && (_MSC_
0630: 56 45 52 20 3e 3d 20 31 31 30 30 29 20 26 26 20 VER >= 1100) &&
0640: 21 28 64 65 66 69 6e 65 64 28 4d 49 44 4c 5f 50 !(defined(MIDL_P
0650: 41 53 53 29 20 7c 7c 20 64 65 66 69 6e 65 64 28 ASS) || defined(
0660: 52 43 5f 49 4e 56 4f 4b 45 44 29 29 0d 0a 2f 2f RC_INVOKED))..//
0670: 20 23 2e 2e 2e 0d 0a 2f 2f 20 2e 2e 2e 0d 0a 2f #.....// ...../
0680: 2f 20 23 69 66 20 64 65 66 69 6e 65 64 28 5f 57 / #if defined(_W
0690: 49 4e 36 34 29 0d 0a 2f 2f 20 23 2e 2e 2e 0d 0a IN64)..// #.....
06a0: 2f 2f 20 23 65 6c 73 65 0d 0a 2f 2f 20 23 2e 2e // #else..// #..
06b0: 2e 0d 0a 2f 2f 20 23 65 6e 64 69 66 0d 0a 2f 2f ...// #endif..//
06c0: 20 23 65 6c 73 65 0d 0a 2f 2f 20 23 69 66 20 64 #else..// #if d
06d0: 65 66 69 6e 65 64 28 5f 4d 41 43 29 20 26 26 20 efined(_MAC) &&
06e0: 64 65 66 69 6e 65 64 28 5f 4d 41 43 5f 49 4e 54 defined(_MAC_INT
06f0: 5f 36 34 29 0d 0a 2f 2f 20 23 2e 2e 2e 0d 0a 2f _64)..// #...../
0700: 2f 20 2e 2e 2e 0d 0a 2f 2f 20 23 65 6c 73 65 0d / .....// #else.
0710: 0a 2f 2f 20 23 64 65 66 69 6e 65 20 50 4f 49 4e .// #define POIN
0720: 54 45 52 5f 36 34 0d 0a 61 6c 69 61 73 20 75 69 TER_64..alias ui
0730: 6e 74 20 50 4f 49 4e 54 45 52 5f 36 34 5f 49 4e nt POINTER_64_IN
0740: 54 3b 0d 0a 2f 2f 20 23 65 6e 64 69 66 0d 0a 61 T;..// #endif..a
0750: 6c 69 61 73 20 76 6f 69 64 2a 20 50 4f 49 4e 54 lias void* POINT
0760: 45 52 5f 33 32 3b 0d 0a 2f 2f 20 23 65 6e 64 69 ER_32;..// #endi
0770: 66 0d 0a 0d 0a 2f 2f 20 23 69 66 20 64 65 66 69 f....// #if defi
0780: 6e 65 64 28 5f 49 41 36 34 5f 29 20 7c 7c 20 64 ned(_IA64_) || d
0790: 65 66 69 6e 65 64 28 5f 41 4d 44 36 34 5f 29 0d efined(_AMD64_).
07a0: 0a 2f 2f 20 23 2e 2e 2e 0d 0a 2f 2f 20 23 65 6c .// #.....// #el
07b0: 73 65 0d 0a 61 6c 69 61 73 20 50 4f 49 4e 54 45 se..alias POINTE
07c0: 52 5f 33 32 20 46 49 52 4d 57 41 52 45 5f 50 54 R_32 FIRMWARE_PT
07d0: 52 3b 0d 0a 2f 2f 20 23 65 6e 64 69 66 0d 0a 0d R;..// #endif...
07e0: 0a 2f 2f 20 23 69 6e 63 6c 75 64 65 20 3c 62 61 .// #include <ba
07f0: 73 65 74 73 64 2e 68 3e 0d 0a 0d 0a 2f 2f 20 23 setsd.h>....// #
0800: 69 66 20 28 64 65 66 69 6e 65 64 28 5f 4d 5f 49 if (defined(_M_I
0810: 58 38 36 29 20 7c 7c 20 64 65 66 69 6e 65 64 28 X86) || defined(
0820: 5f 4d 5f 49 41 36 34 29 20 7c 7c 20 64 65 66 69 _M_IA64) || defi
0830: 6e 65 64 28 5f 4d 5f 41 4d 44 36 34 29 29 20 26 ned(_M_AMD64)) &
0840: 26 20 21 64 65 66 69 6e 65 64 28 4d 49 44 4c 5f & !defined(MIDL_
0850: 50 41 53 53 29 0d 0a 2f 2f 20 23 64 65 66 69 6e PASS)..// #defin
0860: 65 20 44 45 43 4c 53 50 45 43 5f 49 4d 50 4f 52 e DECLSPEC_IMPOR
0870: 54 20 5f 5f 64 65 63 6c 73 70 65 63 28 64 6c 6c T __declspec(dll
0880: 69 6d 70 6f 72 74 29 0d 0a 2f 2f 20 23 65 6c 73 import)..// #els
0890: 65 0d 0a 2f 2f 20 23 2e 2e 2e 0d 0a 2f 2f 20 23 e..// #.....// #
08a0: 65 6e 64 69 66 0d 0a 0d 0a 2f 2f 20 23 69 66 6e endif....// #ifn
08b0: 64 65 66 20 44 45 43 4c 53 50 45 43 5f 4e 4f 52 def DECLSPEC_NOR
08c0: 45 54 55 52 4e 0d 0a 2f 2f 20 23 69 66 20 28 5f ETURN..// #if (_
08d0: 4d 53 43 5f 56 45 52 20 3e 3d 20 31 32 30 30 29 MSC_VER >= 1200)
08e0: 20 26 26 20 21 64 65 66 69 6e 65 64 28 4d 49 44 && !defined(MID
08f0: 4c 5f 50 41 53 53 29 0d 0a 2f 2f 20 23 64 65 66 L_PASS)..// #def
0900: 69 6e 65 20 44 45 43 4c 53 50 45 43 5f 4e 4f 52 ine DECLSPEC_NOR
0910: 45 54 55 52 4e 20 5f 5f 64 65 63 6c 73 70 65 63 ETURN __declspec
0920: 28 6e 6f 72 65 74 75 72 6e 29 0d 0a 2f 2f 20 23 (noreturn)..// #
0930: 65 6c 73 65 0d 0a 2f 2f 20 23 2e 2e 2e 0d 0a 2f else..// #...../
0940: 2f 20 23 65 6e 64 69 66 0d 0a 2f 2f 20 23 65 6e / #endif..// #en
0950: 64 69 66 0d 0a 0d 0a 2f 2f 20 23 69 66 6e 64 65 dif....// #ifnde
0960: 66 20 44 45 43 4c 53 50 45 43 5f 41 4c 49 47 4e f DECLSPEC_ALIGN
0970: 0d 0a 2f 2f 20 23 69 66 20 28 5f 4d 53 43 5f 56 ..// #if (_MSC_V
0980: 45 52 20 3e 3d 20 31 33 30 30 29 20 26 26 20 21 ER >= 1300) && !
0990: 64 65 66 69 6e 65 64 28 4d 49 44 4c 5f 50 41 53 defined(MIDL_PAS
09a0: 53 29 0d 0a 2f 2f 20 23 64 65 66 69 6e 65 20 44 S)..// #define D
09b0: 45 43 4c 53 50 45 43 5f 41 4c 49 47 4e 28 78 29 ECLSPEC_ALIGN(x)
09c0: 20 5f 5f 64 65 63 6c 73 70 65 63 28 61 6c 69 67 __declspec(alig
09d0: 6e 28 78 29 29 0d 0a 2f 2f 20 23 65 6c 73 65 0d n(x))..// #else.
09e0: 0a 2f 2f 20 23 2e 2e 2e 0d 0a 2f 2f 20 23 65 6e .// #.....// #en
09f0: 64 69 66 0d 0a 2f 2f 20 23 65 6e 64 69 66 0d 0a dif..// #endif..
0a00: 0d 0a 2f 2f 20 23 69 66 6e 64 65 66 20 44 45 43 ..// #ifndef DEC
0a10: 4c 53 50 45 43 5f 43 41 43 48 45 41 4c 49 47 4e LSPEC_CACHEALIGN
0a20: 0d 0a 2f 2f 20 23 64 65 66 69 6e 65 20 44 45 43 ..// #define DEC
0a30: 4c 53 50 45 43 5f 43 41 43 48 45 41 4c 49 47 4e LSPEC_CACHEALIGN
0a40: 20 44 45 43 4c 53 50 45 43 5f 41 4c 49 47 4e 28 DECLSPEC_ALIGN(
0a50: 31 32 38 29 0d 0a 2f 2f 20 23 65 6e 64 69 66 0d 128)..// #endif.
0a60: 0a 0d 0a 2f 2f 20 23 69 66 6e 64 65 66 20 44 45 ...// #ifndef DE
0a70: 43 4c 53 50 45 43 5f 55 55 49 44 0d 0a 2f 2f 20 CLSPEC_UUID..//
0a80: 23 69 66 20 28 5f 4d 53 43 5f 56 45 52 20 3e 3d #if (_MSC_VER >=
0a90: 20 31 31 30 30 29 20 26 26 20 64 65 66 69 6e 65 1100) && define
0aa0: 64 20 28 5f 5f 63 70 6c 75 73 70 6c 75 73 29 0d d (__cplusplus).
0ab0: 0a 2f 2f 20 23 64 65 66 69 6e 65 20 44 45 43 4c .// #define DECL
0ac0: 53 50 45 43 5f 55 55 49 44 28 78 29 20 5f 5f 64 SPEC_UUID(x) __d
0ad0: 65 63 6c 73 70 65 63 28 75 75 69 64 28 78 29 29 eclspec(uuid(x))
0ae0: 0d 0a 2f 2f 20 23 65 6c 73 65 0d 0a 2f 2f 20 23 ..// #else..// #
0af0: 2e 2e 2e 0d 0a 2f 2f 20 23 65 6e 64 69 66 0d 0a .....// #endif..
0b00: 2f 2f 20 23 65 6e 64 69 66 0d 0a 0d 0a 2f 2f 20 // #endif....//
0b10: 23 69 66 6e 64 65 66 20 44 45 43 4c 53 50 45 43 #ifndef DECLSPEC
0b20: 5f 4e 4f 56 54 41 42 4c 45 0d 0a 2f 2f 20 23 69 _NOVTABLE..// #i
0b30: 66 20 28 5f 4d 53 43 5f 56 45 52 20 3e 3d 20 31 f (_MSC_VER >= 1
0b40: 31 30 30 29 20 26 26 20 64 65 66 69 6e 65 64 28 100) && defined(
0b50: 5f 5f 63 70 6c 75 73 70 6c 75 73 29 0d 0a 2f 2f __cplusplus)..//
0b60: 20 23 64 65 66 69 6e 65 20 44 45 43 4c 53 50 45 #define DECLSPE
0b70: 43 5f 4e 4f 56 54 41 42 4c 45 20 5f 5f 64 65 63 C_NOVTABLE __dec
0b80: 6c 73 70 65 63 28 6e 6f 76 74 61 62 6c 65 29 0d lspec(novtable).
0b90: 0a 2f 2f 20 23 65 6c 73 65 0d 0a 2f 2f 20 23 2e .// #else..// #.
0ba0: 2e 2e 0d 0a 2f 2f 20 23 65 6e 64 69 66 0d 0a 2f ....// #endif../
0bb0: 2f 20 23 65 6e 64 69 66 0d 0a 0d 0a 2f 2f 20 23 / #endif....// #
0bc0: 69 66 6e 64 65 66 20 44 45 43 4c 53 50 45 43 5f ifndef DECLSPEC_
0bd0: 53 45 4c 45 43 54 41 4e 59 0d 0a 2f 2f 20 23 69 SELECTANY..// #i
0be0: 66 20 28 5f 4d 53 43 5f 56 45 52 20 3e 3d 20 31 f (_MSC_VER >= 1
0bf0: 31 30 30 29 0d 0a 2f 2f 20 23 64 65 66 69 6e 65 100)..// #define
0c00: 20 44 45 43 4c 53 50 45 43 5f 53 45 4c 45 43 54 DECLSPEC_SELECT
0c10: 41 4e 59 20 5f 5f 64 65 63 6c 73 70 65 63 28 73 ANY __declspec(s
0c20: 65 6c 65 63 74 61 6e 79 29 0d 0a 2f 2f 20 23 65 electany)..// #e
0c30: 6c 73 65 0d 0a 2f 2f 20 23 2e 2e 2e 0d 0a 2f 2f lse..// #.....//
0c40: 20 23 65 6e 64 69 66 0d 0a 2f 2f 20 23 65 6e 64 #endif..// #end
0c50: 69 66 0d 0a 0d 0a 2f 2f 20 23 69 66 6e 64 65 66 if....// #ifndef
0c60: 20 4e 4f 50 5f 46 55 4e 43 54 49 4f 4e 0d 0a 2f NOP_FUNCTION../
0c70: 2f 20 23 69 66 20 28 5f 4d 53 43 5f 56 45 52 20 / #if (_MSC_VER
0c80: 3e 3d 20 31 32 31 30 29 0d 0a 2f 2f 20 23 2e 2e >= 1210)..// #..
0c90: 2e 0d 0a 2f 2f 20 23 65 6c 73 65 0d 0a 2f 2f 20 ...// #else..//
0ca0: 23 2e 2e 2e 0d 0a 2f 2f 20 23 65 6e 64 69 66 0d #.....// #endif.
0cb0: 0a 2f 2f 20 23 65 6e 64 69 66 0d 0a 0d 0a 2f 2f .// #endif....//
0cc0: 20 23 69 66 6e 64 65 66 20 44 45 43 4c 53 50 45 #ifndef DECLSPE
0cd0: 43 5f 41 44 44 52 53 41 46 45 0d 0a 2f 2f 20 23 C_ADDRSAFE..// #
0ce0: 69 66 20 28 5f 4d 53 43 5f 56 45 52 20 3e 3d 20 if (_MSC_VER >=
0cf0: 31 32 30 30 29 20 26 26 20 28 64 65 66 69 6e 65 1200) && (define
0d00: 64 28 5f 4d 5f 41 4c 50 48 41 29 20 7c 7c 20 64 d(_M_ALPHA) || d
0d10: 65 66 69 6e 65 64 28 5f 4d 5f 41 58 50 36 34 29 efined(_M_AXP64)
0d20: 29 0d 0a 2f 2f 20 23 2e 2e 2e 0d 0a 2f 2f 20 23 )..// #.....// #
0d30: 65 6c 73 65 0d 0a 2f 2f 20 23 64 65 66 69 6e 65 else..// #define
0d40: 20 44 45 43 4c 53 50 45 43 5f 41 44 44 52 53 41 DECLSPEC_ADDRSA
0d50: 46 45 0d 0a 2f 2f 20 23 65 6e 64 69 66 0d 0a 2f FE..// #endif../
0d60: 2f 20 23 65 6e 64 69 66 0d 0a 0d 0a 2f 2f 20 23 / #endif....// #
0d70: 69 66 6e 64 65 66 20 46 4f 52 43 45 49 4e 4c 49 ifndef FORCEINLI
0d80: 4e 45 0d 0a 2f 2f 20 23 69 66 20 28 5f 4d 53 43 NE..// #if (_MSC
0d90: 5f 56 45 52 20 3e 3d 20 31 32 30 30 29 0d 0a 2f _VER >= 1200)../
0da0: 2f 20 23 64 65 66 69 6e 65 20 46 4f 52 43 45 49 / #define FORCEI
0db0: 4e 4c 49 4e 45 20 5f 5f 66 6f 72 63 65 69 6e 6c NLINE __forceinl
0dc0: 69 6e 65 0d 0a 2f 2f 20 23 65 6c 73 65 0d 0a 2f ine..// #else../
0dd0: 2f 20 23 2e 2e 2e 0d 0a 2f 2f 20 23 65 6e 64 69 / #.....// #endi
0de0: 66 0d 0a 2f 2f 20 23 65 6e 64 69 66 0d 0a 0d 0a f..// #endif....
0df0: 2f 2f 20 23 69 66 6e 64 65 66 20 44 45 43 4c 53 // #ifndef DECLS
0e00: 50 45 43 5f 44 45 50 52 45 43 41 54 45 44 0d 0a PEC_DEPRECATED..
0e10: 2f 2f 20 23 69 66 20 28 5f 4d 53 43 5f 56 45 52 // #if (_MSC_VER
0e20: 20 3e 3d 20 31 33 30 30 29 20 26 26 20 21 64 65 >= 1300) && !de
0e30: 66 69 6e 65 64 28 4d 49 44 4c 5f 50 41 53 53 29 fined(MIDL_PASS)
0e40: 0d 0a 2f 2f 20 23 64 65 66 69 6e 65 20 44 45 43 ..// #define DEC
0e50: 4c 53 50 45 43 5f 44 45 50 52 45 43 41 54 45 44 LSPEC_DEPRECATED
0e60: 20 5f 5f 64 65 63 6c 73 70 65 63 28 64 65 70 72 __declspec(depr
0e70: 65 63 61 74 65 64 29 0d 0a 2f 2f 20 23 64 65 66 ecated)..// #def
0e80: 69 6e 65 20 44 45 50 52 45 43 41 54 45 5f 53 55 ine DEPRECATE_SU
0e90: 50 50 4f 52 54 45 44 0d 0a 2f 2f 20 23 65 6c 73 PPORTED..// #els
0ea0: 65 0d 0a 2f 2f 20 23 2e 2e 2e 0d 0a 2f 2f 20 23 e..// #.....// #
0eb0: 2e 2e 2e 0d 0a 2f 2f 20 23 65 6e 64 69 66 0d 0a .....// #endif..
0ec0: 2f 2f 20 23 65 6e 64 69 66 0d 0a 0d 0a 61 6c 69 // #endif....ali
0ed0: 61 73 20 76 6f 69 64 2a 20 50 56 4f 49 44 3b 0d as void* PVOID;.
0ee0: 0a 64 65 70 72 65 63 61 74 65 64 20 61 6c 69 61 .deprecated alia
0ef0: 73 20 76 6f 69 64 2a 20 50 56 4f 49 44 36 34 3b s void* PVOID64;
0f00: 20 2f 2a 20 77 61 72 6e 69 6e 67 3a 20 36 34 2d /* warning: 64-
0f10: 62 69 74 20 2a 2f 20 0d 0a 0d 0a 2f 2f 20 23 69 bit */ ....// #i
0f20: 66 20 28 28 5f 4d 53 43 5f 56 45 52 20 3e 3d 20 f ((_MSC_VER >=
0f30: 38 30 30 29 20 7c 7c 20 64 65 66 69 6e 65 64 28 800) || defined(
0f40: 5f 53 54 44 43 41 4c 4c 5f 53 55 50 50 4f 52 54 _STDCALL_SUPPORT
0f50: 45 44 29 29 20 26 26 20 21 64 65 66 69 6e 65 64 ED)) && !defined
0f60: 28 5f 4d 5f 41 4d 44 36 34 29 0d 0a 2f 2f 20 23 (_M_AMD64)..// #
0f70: 64 65 66 69 6e 65 20 4e 54 41 50 49 20 5f 5f 73 define NTAPI __s
0f80: 74 64 63 61 6c 6c 0d 0a 2f 2f 20 23 65 6c 73 65 tdcall..// #else
0f90: 0d 0a 2f 2f 20 23 2e 2e 2e 0d 0a 2f 2f 20 23 2e ..// #.....// #.
0fa0: 2e 2e 0d 0a 2f 2f 20 23 65 6e 64 69 66 0d 0a 0d ....// #endif...
0fb0: 0a 2f 2f 20 23 69 66 20 21 64 65 66 69 6e 65 64 .// #if !defined
0fc0: 28 5f 4e 54 53 59 53 54 45 4d 5f 29 0d 0a 2f 2f (_NTSYSTEM_)..//
0fd0: 20 23 64 65 66 69 6e 65 20 4e 54 53 59 53 41 50 #define NTSYSAP
0fe0: 49 20 44 45 43 4c 53 50 45 43 5f 49 4d 50 4f 52 I DECLSPEC_IMPOR
0ff0: 54 0d 0a 2f 2f 20 23 64 65 66 69 6e 65 20 4e 54 T..// #define NT
1000: 53 59 53 43 41 4c 4c 41 50 49 20 44 45 43 4c 53 SYSCALLAPI DECLS
1010: 50 45 43 5f 49 4d 50 4f 52 54 0d 0a 2f 2f 20 23 PEC_IMPORT..// #
1020: 65 6c 73 65 0d 0a 2f 2f 20 23 2e 2e 2e 0d 0a 2f else..// #...../
1030: 2f 20 23 69 66 20 64 65 66 69 6e 65 64 28 5f 4e / #if defined(_N
1040: 54 44 4c 4c 42 55 49 4c 44 5f 29 0d 0a 2f 2f 20 TDLLBUILD_)..//
1050: 23 2e 2e 2e 0d 0a 2f 2f 20 23 65 6c 73 65 0d 0a #.....// #else..
1060: 2f 2f 20 23 2e 2e 2e 0d 0a 2f 2f 20 23 65 6e 64 // #.....// #end
1070: 69 66 0d 0a 0d 0a 2f 2f 20 23 65 6e 64 69 66 0d if....// #endif.
1080: 0a 0d 0a 2f 2f 20 23 69 66 6e 64 65 66 20 56 4f ...// #ifndef VO
1090: 49 44 0d 0a 61 6c 69 61 73 20 76 6f 69 64 20 56 ID..alias void V
10a0: 4f 49 44 3b 0d 0a 61 6c 69 61 73 20 63 68 61 72 OID;..alias char
10b0: 20 43 48 41 52 3b 0d 0a 61 6c 69 61 73 20 73 68 CHAR;..alias sh
10c0: 6f 72 74 20 53 48 4f 52 54 3b 0d 0a 61 6c 69 61 ort SHORT;..alia
10d0: 73 20 69 6e 74 20 4c 4f 4e 47 3b 0d 0a 2f 2f 20 s int LONG;..//
10e0: 23 65 6e 64 69 66 0d 0a 0d 0a 2f 2f 20 23 69 66 #endif....// #if
10f0: 6e 64 65 66 20 5f 4d 41 43 0d 0a 61 6c 69 61 73 ndef _MAC..alias
1100: 20 77 63 68 61 72 20 57 43 48 41 52 3b 0d 0a 2f wchar WCHAR;../
1110: 2f 20 23 65 6c 73 65 0d 0a 0d 0a 2f 2f 20 2e 2e / #else....// ..
1120: 2e 0d 0a 2f 2f 20 23 65 6e 64 69 66 0d 0a 0d 0a ...// #endif....
1130: 61 6c 69 61 73 20 57 43 48 41 52 2a 20 50 57 43 alias WCHAR* PWC
1140: 48 41 52 3b 0d 0a 61 6c 69 61 73 20 57 43 48 41 HAR;..alias WCHA
1150: 52 2a 20 4c 50 57 43 48 3b 0d 0a 61 6c 69 61 73 R* LPWCH;..alias
1160: 20 57 43 48 41 52 2a 20 50 57 43 48 3b 0d 0a 61 WCHAR* PWCH;..a
1170: 6c 69 61 73 20 57 43 48 41 52 2a 20 4c 50 43 57 lias WCHAR* LPCW
1180: 43 48 3b 0d 0a 61 6c 69 61 73 20 57 43 48 41 52 CH;..alias WCHAR
1190: 2a 20 50 43 57 43 48 3b 0d 0a 61 6c 69 61 73 20 * PCWCH;..alias
11a0: 57 43 48 41 52 2a 20 4e 57 50 53 54 52 3b 0d 0a WCHAR* NWPSTR;..
11b0: 61 6c 69 61 73 20 57 43 48 41 52 2a 20 4c 50 57 alias WCHAR* LPW
11c0: 53 54 52 3b 0d 0a 61 6c 69 61 73 20 57 43 48 41 STR;..alias WCHA
11d0: 52 2a 20 50 57 53 54 52 3b 0d 0a 61 6c 69 61 73 R* PWSTR;..alias
11e0: 20 57 43 48 41 52 2a 20 4c 50 55 57 53 54 52 3b WCHAR* LPUWSTR;
11f0: 0d 0a 61 6c 69 61 73 20 57 43 48 41 52 2a 20 50 ..alias WCHAR* P
1200: 55 57 53 54 52 3b 0d 0a 0d 0a 61 6c 69 61 73 20 UWSTR;....alias
1210: 57 43 48 41 52 2a 20 4c 50 43 57 53 54 52 3b 0d WCHAR* LPCWSTR;.
1220: 0a 61 6c 69 61 73 20 57 43 48 41 52 2a 20 50 43 .alias WCHAR* PC
1230: 57 53 54 52 3b 0d 0a 61 6c 69 61 73 20 57 43 48 WSTR;..alias WCH
1240: 41 52 2a 20 4c 50 43 55 57 53 54 52 3b 0d 0a 61 AR* LPCUWSTR;..a
1250: 6c 69 61 73 20 57 43 48 41 52 2a 20 50 43 55 57 lias WCHAR* PCUW
1260: 53 54 52 3b 0d 0a 0d 0a 61 6c 69 61 73 20 43 48 STR;....alias CH
1270: 41 52 2a 20 50 43 48 41 52 3b 0d 0a 61 6c 69 61 AR* PCHAR;..alia
1280: 73 20 43 48 41 52 2a 20 4c 50 43 48 3b 0d 0a 61 s CHAR* LPCH;..a
1290: 6c 69 61 73 20 43 48 41 52 2a 20 50 43 48 3b 0d lias CHAR* PCH;.
12a0: 0a 0d 0a 61 6c 69 61 73 20 43 48 41 52 2a 20 4c ...alias CHAR* L
12b0: 50 43 43 48 3b 0d 0a 61 6c 69 61 73 20 43 48 41 PCCH;..alias CHA
12c0: 52 2a 20 50 43 43 48 3b 0d 0a 61 6c 69 61 73 20 R* PCCH;..alias
12d0: 43 48 41 52 2a 20 4e 50 53 54 52 3b 0d 0a 61 6c CHAR* NPSTR;..al
12e0: 69 61 73 20 43 48 41 52 2a 20 4c 50 53 54 52 3b ias CHAR* LPSTR;
12f0: 0d 0a 61 6c 69 61 73 20 43 48 41 52 2a 20 50 53 ..alias CHAR* PS
1300: 54 52 3b 0d 0a 61 6c 69 61 73 20 43 48 41 52 2a TR;..alias CHAR*
1310: 20 4c 50 43 53 54 52 3b 0d 0a 61 6c 69 61 73 20 LPCSTR;..alias
1320: 43 48 41 52 2a 20 50 43 53 54 52 3b 0d 0a 0d 0a CHAR* PCSTR;....
1330: 2f 2f 20 23 69 66 64 65 66 20 20 55 4e 49 43 4f // #ifdef UNICO
1340: 44 45 20 20 20 20 20 20 20 20 20 20 20 20 20 20 DE
1350: 20 20 20 20 20 20 20 2f 2f 20 72 5f 77 69 6e 6e // r_winn
1360: 74 0d 0a 0d 0a 2f 2f 20 23 69 66 6e 64 65 66 20 t....// #ifndef
1370: 5f 54 43 48 41 52 5f 44 45 46 49 4e 45 44 0d 0a _TCHAR_DEFINED..
1380: 61 6c 69 61 73 20 57 43 48 41 52 20 54 43 48 41 alias WCHAR TCHA
1390: 52 3b 0d 0a 61 6c 69 61 73 20 57 43 48 41 52 2a R;..alias WCHAR*
13a0: 20 50 54 43 48 41 52 3b 0d 0a 61 6c 69 61 73 20 PTCHAR;..alias
13b0: 57 43 48 41 52 20 54 42 59 54 45 3b 0d 0a 61 6c WCHAR TBYTE;..al
13c0: 69 61 73 20 57 43 48 41 52 2a 20 50 54 42 59 54 ias WCHAR* PTBYT
13d0: 45 3b 0d 0a 2f 2f 20 23 64 65 66 69 6e 65 20 5f E;..// #define _
13e0: 54 43 48 41 52 5f 44 45 46 49 4e 45 44 0d 0a 2f TCHAR_DEFINED../
13f0: 2f 20 23 65 6e 64 69 66 20 2f 2a 20 21 5f 54 43 / #endif /* !_TC
1400: 48 41 52 5f 44 45 46 49 4e 45 44 20 2a 2f 0d 0a HAR_DEFINED */..
1410: 0d 0a 61 6c 69 61 73 20 4c 50 57 53 54 52 20 4c ..alias LPWSTR L
1420: 50 54 43 48 3b 0d 0a 61 6c 69 61 73 20 4c 50 57 PTCH;..alias LPW
1430: 53 54 52 20 50 54 43 48 3b 0d 0a 61 6c 69 61 73 STR PTCH;..alias
1440: 20 4c 50 57 53 54 52 20 50 54 53 54 52 3b 0d 0a LPWSTR PTSTR;..
1450: 61 6c 69 61 73 20 4c 50 57 53 54 52 20 4c 50 54 alias LPWSTR LPT
1460: 53 54 52 3b 0d 0a 61 6c 69 61 73 20 4c 50 43 57 STR;..alias LPCW
1470: 53 54 52 20 50 43 54 53 54 52 3b 0d 0a 61 6c 69 STR PCTSTR;..ali
1480: 61 73 20 4c 50 43 57 53 54 52 20 4c 50 43 54 53 as LPCWSTR LPCTS
1490: 54 52 3b 0d 0a 61 6c 69 61 73 20 4c 50 55 57 53 TR;..alias LPUWS
14a0: 54 52 20 50 55 54 53 54 52 3b 0d 0a 61 6c 69 61 TR PUTSTR;..alia
14b0: 73 20 4c 50 55 57 53 54 52 20 4c 50 55 54 53 54 s LPUWSTR LPUTST
14c0: 52 3b 0d 0a 61 6c 69 61 73 20 4c 50 43 55 57 53 R;..alias LPCUWS
14d0: 54 52 20 50 43 55 54 53 54 52 3b 0d 0a 61 6c 69 TR PCUTSTR;..ali
14e0: 61 73 20 4c 50 43 55 57 53 54 52 20 4c 50 43 55 as LPCUWSTR LPCU
14f0: 54 53 54 52 3b 0d 0a 61 6c 69 61 73 20 4c 50 57 TSTR;..alias LPW
1500: 53 54 52 20 4c 50 3b 0d 0a 2f 2f 20 23 64 65 66 STR LP;..// #def
1510: 69 6e 65 20 5f 5f 54 45 58 54 28 71 75 6f 74 65 ine __TEXT(quote
1520: 29 20 4c 23 23 71 75 6f 74 65 0d 0a 0d 0a 2f 2f ) L##quote....//
1530: 20 23 65 6c 73 65 20 20 20 2f 2a 20 55 4e 49 43 #else /* UNIC
1540: 4f 44 45 20 2a 2f 20 20 20 20 20 20 20 20 20 20 ODE */
1550: 20 20 20 20 20 2f 2f 20 72 5f 77 69 6e 6e 74 0d // r_winnt.
1560: 0a 0d 0a 2f 2f 20 23 69 66 6e 64 65 66 20 5f 54 ...// #ifndef _T
1570: 43 48 41 52 5f 44 45 46 49 4e 45 44 0d 0a 2f 2f CHAR_DEFINED..//
1580: 20 2e 2e 2e 0d 0a 2f 2f 20 23 2e 2e 2e 0d 0a 2f .....// #...../
1590: 2f 20 23 65 6e 64 69 66 20 2f 2a 20 21 5f 54 43 / #endif /* !_TC
15a0: 48 41 52 5f 44 45 46 49 4e 45 44 20 2a 2f 0d 0a HAR_DEFINED */..
15b0: 0d 0a 2f 2f 20 2e 2e 2e 0d 0a 2f 2f 20 23 2e 2e ..// .....// #..
15c0: 2e 0d 0a 0d 0a 2f 2f 20 23 65 6e 64 69 66 20 2f .....// #endif /
15d0: 2a 20 55 4e 49 43 4f 44 45 20 2a 2f 20 20 20 20 * UNICODE */
15e0: 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 72 // r
15f0: 5f 77 69 6e 6e 74 0d 0a 54 43 48 41 52 5b 5d 20 _winnt..TCHAR[]
1600: 54 45 58 54 28 54 43 48 41 52 5b 5d 20 71 75 6f TEXT(TCHAR[] quo
1610: 74 65 29 7b 20 72 65 74 75 72 6e 20 71 75 6f 74 te){ return quot
1620: 65 3b 20 7d 0d 0a 0d 0a 61 6c 69 61 73 20 53 48 e; }....alias SH
1630: 4f 52 54 2a 20 50 53 48 4f 52 54 3b 0d 0a 61 6c ORT* PSHORT;..al
1640: 69 61 73 20 4c 4f 4e 47 2a 20 50 4c 4f 4e 47 3b ias LONG* PLONG;
1650: 0d 0a 0d 0a 2f 2f 20 23 69 66 64 65 66 20 53 54 ....// #ifdef ST
1660: 52 49 43 54 0d 0a 61 6c 69 61 73 20 76 6f 69 64 RICT..alias void
1670: 2a 20 48 41 4e 44 4c 45 3b 0d 0a 2f 2f 20 23 64 * HANDLE;..// #d
1680: 65 66 69 6e 65 20 44 45 43 4c 41 52 45 5f 48 41 efine DECLARE_HA
1690: 4e 44 4c 45 28 6e 61 6d 65 29 20 73 74 72 75 63 NDLE(name) struc
16a0: 74 20 6e 61 6d 65 23 23 5f 5f 20 7b 20 69 6e 74 t name##__ { int
16b0: 20 75 6e 75 73 65 64 3b 20 7d 3b 20 74 79 70 65 unused; }; type
16c0: 64 65 66 20 73 74 72 75 63 74 20 6e 61 6d 65 23 def struct name#
16d0: 23 5f 5f 20 2a 6e 61 6d 65 0d 0a 2f 2f 20 23 65 #__ *name..// #e
16e0: 6c 73 65 0d 0a 2f 2f 20 2e 2e 2e 0d 0a 2f 2f 20 lse..// .....//
16f0: 23 2e 2e 2e 0d 0a 2f 2f 20 23 65 6e 64 69 66 0d #.....// #endif.
1700: 0a 61 6c 69 61 73 20 48 41 4e 44 4c 45 2a 20 50 .alias HANDLE* P
1710: 48 41 4e 44 4c 45 3b 0d 0a 0d 0a 61 6c 69 61 73 HANDLE;....alias
1720: 20 42 59 54 45 20 46 43 48 41 52 3b 0d 0a 61 6c BYTE FCHAR;..al
1730: 69 61 73 20 57 4f 52 44 20 46 53 48 4f 52 54 3b ias WORD FSHORT;
1740: 0d 0a 61 6c 69 61 73 20 44 57 4f 52 44 20 46 4c ..alias DWORD FL
1750: 4f 4e 47 3b 0d 0a 0d 0a 2f 2f 20 23 69 66 6e 64 ONG;....// #ifnd
1760: 65 66 20 5f 48 52 45 53 55 4c 54 5f 44 45 46 49 ef _HRESULT_DEFI
1770: 4e 45 44 0d 0a 2f 2f 20 23 64 65 66 69 6e 65 20 NED..// #define
1780: 5f 48 52 45 53 55 4c 54 5f 44 45 46 49 4e 45 44 _HRESULT_DEFINED
1790: 0d 0a 61 6c 69 61 73 20 4c 4f 4e 47 20 48 52 45 ..alias LONG HRE
17a0: 53 55 4c 54 3b 0d 0a 0d 0a 2f 2f 20 23 65 6e 64 SULT;....// #end
17b0: 69 66 20 2f 2f 20 21 5f 48 52 45 53 55 4c 54 5f if // !_HRESULT_
17c0: 44 45 46 49 4e 45 44 0d 0a 0d 0a 2f 2f 20 23 69 DEFINED....// #i
17d0: 66 64 65 66 20 5f 5f 63 70 6c 75 73 70 6c 75 73 fdef __cplusplus
17e0: 0d 0a 2f 2f 20 20 20 20 20 23 64 65 66 69 6e 65 ..// #define
17f0: 20 45 58 54 45 52 4e 5f 43 20 65 78 74 65 72 6e EXTERN_C extern
1800: 20 22 43 22 0d 0a 2f 2f 20 23 65 6c 73 65 0d 0a "C"..// #else..
1810: 2f 2f 20 23 2e 2e 2e 0d 0a 2f 2f 20 23 65 6e 64 // #.....// #end
1820: 69 66 0d 0a 0d 0a 2f 2f 20 23 69 66 20 64 65 66 if....// #if def
1830: 69 6e 65 64 28 5f 57 49 4e 33 32 29 20 7c 7c 20 ined(_WIN32) ||
1840: 64 65 66 69 6e 65 64 28 5f 4d 50 50 43 5f 29 0d defined(_MPPC_).
1850: 0a 0d 0a 2f 2f 20 23 69 66 64 65 66 20 5f 36 38 ...// #ifdef _68
1860: 4b 5f 0d 0a 2f 2f 20 23 2e 2e 2e 0d 0a 2f 2f 20 K_..// #.....//
1870: 23 65 6c 73 65 0d 0a 2f 2f 20 23 64 65 66 69 6e #else..// #defin
1880: 65 20 53 54 44 4d 45 54 48 4f 44 43 41 4c 4c 54 e STDMETHODCALLT
1890: 59 50 45 20 5f 5f 73 74 64 63 61 6c 6c 0d 0a 2f YPE __stdcall../
18a0: 2f 20 23 65 6e 64 69 66 0d 0a 2f 2f 20 23 64 65 / #endif..// #de
18b0: 66 69 6e 65 20 53 54 44 4d 45 54 48 4f 44 56 43 fine STDMETHODVC
18c0: 41 4c 4c 54 59 50 45 20 5f 5f 63 64 65 63 6c 0d ALLTYPE __cdecl.
18d0: 0a 0d 0a 2f 2f 20 23 64 65 66 69 6e 65 20 53 54 ...// #define ST
18e0: 44 41 50 49 43 41 4c 4c 54 59 50 45 20 5f 5f 73 DAPICALLTYPE __s
18f0: 74 64 63 61 6c 6c 0d 0a 2f 2f 20 23 64 65 66 69 tdcall..// #defi
1900: 6e 65 20 53 54 44 41 50 49 56 43 41 4c 4c 54 59 ne STDAPIVCALLTY
1910: 50 45 20 5f 5f 63 64 65 63 6c 0d 0a 0d 0a 2f 2f PE __cdecl....//
1920: 20 23 65 6c 73 65 0d 0a 0d 0a 2f 2f 20 23 2e 2e #else....// #..
1930: 2e 0d 0a 2f 2f 20 23 2e 2e 2e 0d 0a 0d 0a 2f 2f ...// #.......//
1940: 20 23 2e 2e 2e 0d 0a 2f 2f 20 23 2e 2e 2e 0d 0a #.....// #.....
1950: 0d 0a 2f 2f 20 23 65 6e 64 69 66 0d 0a 0d 0a 2f ..// #endif..../
1960: 2f 20 23 64 65 66 69 6e 65 20 53 54 44 41 50 49 / #define STDAPI
1970: 20 45 58 54 45 52 4e 5f 43 20 48 52 45 53 55 4c EXTERN_C HRESUL
1980: 54 20 53 54 44 41 50 49 43 41 4c 4c 54 59 50 45 T STDAPICALLTYPE
1990: 0d 0a 2f 2f 20 23 64 65 66 69 6e 65 20 53 54 44 ..// #define STD
19a0: 41 50 49 5f 28 74 79 70 65 29 20 45 58 54 45 52 API_(type) EXTER
19b0: 4e 5f 43 20 74 79 70 65 20 53 54 44 41 50 49 43 N_C type STDAPIC
19c0: 41 4c 4c 54 59 50 45 0d 0a 0d 0a 2f 2f 20 23 64 ALLTYPE....// #d
19d0: 65 66 69 6e 65 20 53 54 44 4d 45 54 48 4f 44 49 efine STDMETHODI
19e0: 4d 50 20 48 52 45 53 55 4c 54 20 53 54 44 4d 45 MP HRESULT STDME
19f0: 54 48 4f 44 43 41 4c 4c 54 59 50 45 0d 0a 2f 2f THODCALLTYPE..//
1a00: 20 23 64 65 66 69 6e 65 20 53 54 44 4d 45 54 48 #define STDMETH
1a10: 4f 44 49 4d 50 5f 28 74 79 70 65 29 20 74 79 70 ODIMP_(type) typ
1a20: 65 20 53 54 44 4d 45 54 48 4f 44 43 41 4c 4c 54 e STDMETHODCALLT
1a30: 59 50 45 0d 0a 0d 0a 2f 2f 20 23 64 65 66 69 6e YPE....// #defin
1a40: 65 20 53 54 44 41 50 49 56 20 45 58 54 45 52 4e e STDAPIV EXTERN
1a50: 5f 43 20 48 52 45 53 55 4c 54 20 53 54 44 41 50 _C HRESULT STDAP
1a60: 49 56 43 41 4c 4c 54 59 50 45 0d 0a 2f 2f 20 23 IVCALLTYPE..// #
1a70: 64 65 66 69 6e 65 20 53 54 44 41 50 49 56 5f 28 define STDAPIV_(
1a80: 74 79 70 65 29 20 45 58 54 45 52 4e 5f 43 20 74 type) EXTERN_C t
1a90: 79 70 65 20 53 54 44 41 50 49 56 43 41 4c 4c 54 ype STDAPIVCALLT
1aa0: 59 50 45 0d 0a 0d 0a 2f 2f 20 23 64 65 66 69 6e YPE....// #defin
1ab0: 65 20 53 54 44 4d 45 54 48 4f 44 49 4d 50 56 20 e STDMETHODIMPV
1ac0: 48 52 45 53 55 4c 54 20 53 54 44 4d 45 54 48 4f HRESULT STDMETHO
1ad0: 44 56 43 41 4c 4c 54 59 50 45 0d 0a 2f 2f 20 23 DVCALLTYPE..// #
1ae0: 64 65 66 69 6e 65 20 53 54 44 4d 45 54 48 4f 44 define STDMETHOD
1af0: 49 4d 50 56 5f 28 74 79 70 65 29 20 74 79 70 65 IMPV_(type) type
1b00: 20 53 54 44 4d 45 54 48 4f 44 56 43 41 4c 4c 54 STDMETHODVCALLT
1b10: 59 50 45 0d 0a 0d 0a 61 6c 69 61 73 20 63 68 61 YPE....alias cha
1b20: 72 20 43 43 48 41 52 3b 0d 0a 61 6c 69 61 73 20 r CCHAR;..alias
1b30: 44 57 4f 52 44 20 4c 43 49 44 3b 0d 0a 61 6c 69 DWORD LCID;..ali
1b40: 61 73 20 50 44 57 4f 52 44 20 50 4c 43 49 44 3b as PDWORD PLCID;
1b50: 0d 0a 61 6c 69 61 73 20 57 4f 52 44 20 4c 41 4e ..alias WORD LAN
1b60: 47 49 44 3b 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e GID;..enum : uin
1b70: 74 20 7b 20 41 50 50 4c 49 43 41 54 49 4f 4e 5f t { APPLICATION_
1b80: 45 52 52 4f 52 5f 4d 41 53 4b 20 3d 20 30 78 32 ERROR_MASK = 0x2
1b90: 30 30 30 30 30 30 30 20 7d 0d 0a 65 6e 75 6d 20 0000000 }..enum
1ba0: 3a 20 75 69 6e 74 20 7b 20 45 52 52 4f 52 5f 53 : uint { ERROR_S
1bb0: 45 56 45 52 49 54 59 5f 53 55 43 43 45 53 53 20 EVERITY_SUCCESS
1bc0: 3d 20 30 78 30 30 30 30 30 30 30 30 20 7d 0d 0a = 0x00000000 }..
1bd0: 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 45 52 enum : uint { ER
1be0: 52 4f 52 5f 53 45 56 45 52 49 54 59 5f 49 4e 46 ROR_SEVERITY_INF
1bf0: 4f 52 4d 41 54 49 4f 4e 41 4c 20 3d 20 30 78 34 ORMATIONAL = 0x4
1c00: 30 30 30 30 30 30 30 20 7d 0d 0a 65 6e 75 6d 20 0000000 }..enum
1c10: 3a 20 75 69 6e 74 20 7b 20 45 52 52 4f 52 5f 53 : uint { ERROR_S
1c20: 45 56 45 52 49 54 59 5f 57 41 52 4e 49 4e 47 20 EVERITY_WARNING
1c30: 3d 20 30 78 38 30 30 30 30 30 30 30 20 7d 0d 0a = 0x80000000 }..
1c40: 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 45 52 enum : uint { ER
1c50: 52 4f 52 5f 53 45 56 45 52 49 54 59 5f 45 52 52 ROR_SEVERITY_ERR
1c60: 4f 52 20 3d 20 30 78 43 30 30 30 30 30 30 30 20 OR = 0xC0000000
1c70: 7d 0d 0a 0d 0a 2f 2f 20 23 69 66 20 64 65 66 69 }....// #if defi
1c80: 6e 65 64 28 5f 4d 5f 49 41 36 34 29 20 26 26 20 ned(_M_IA64) &&
1c90: 21 64 65 66 69 6e 65 64 28 4d 49 44 4c 5f 50 41 !defined(MIDL_PA
1ca0: 53 53 29 0d 0a 2f 2f 20 2e 2e 2e 0d 0a 2f 2f 20 SS)..// .....//
1cb0: 23 65 6e 64 69 66 0d 0a 73 74 72 75 63 74 20 5f #endif..struct _
1cc0: 46 4c 4f 41 54 31 32 38 20 7b 0d 0a 20 20 5f 5f FLOAT128 {.. __
1cd0: 69 6e 74 36 34 20 4c 6f 77 50 61 72 74 3b 0d 0a int64 LowPart;..
1ce0: 20 20 5f 5f 69 6e 74 36 34 20 48 69 67 68 50 61 __int64 HighPa
1cf0: 72 74 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 5f 46 rt;..}..alias _F
1d00: 4c 4f 41 54 31 32 38 20 46 4c 4f 41 54 31 32 38 LOAT128 FLOAT128
1d10: 3b 0d 0a 0d 0a 61 6c 69 61 73 20 46 4c 4f 41 54 ;....alias FLOAT
1d20: 31 32 38 2a 20 50 46 4c 4f 41 54 31 32 38 3b 0d 128* PFLOAT128;.
1d30: 0a 0d 0a 2f 2f 20 23 64 65 66 69 6e 65 20 5f 55 ...// #define _U
1d40: 4c 4f 4e 47 4c 4f 4e 47 5f 0d 0a 2f 2f 20 23 69 LONGLONG_..// #i
1d50: 66 20 28 21 64 65 66 69 6e 65 64 20 28 5f 4d 41 f (!defined (_MA
1d60: 43 29 20 26 26 20 28 21 64 65 66 69 6e 65 64 28 C) && (!defined(
1d70: 4d 49 44 4c 5f 50 41 53 53 29 20 7c 7c 20 64 65 MIDL_PASS) || de
1d80: 66 69 6e 65 64 28 5f 5f 6d 69 64 6c 29 29 20 26 fined(__midl)) &
1d90: 26 20 28 21 64 65 66 69 6e 65 64 28 5f 4d 5f 49 & (!defined(_M_I
1da0: 58 38 36 29 20 7c 7c 20 28 64 65 66 69 6e 65 64 X86) || (defined
1db0: 28 5f 49 4e 54 45 47 52 41 4c 5f 4d 41 58 5f 42 (_INTEGRAL_MAX_B
1dc0: 49 54 53 29 20 26 26 20 5f 49 4e 54 45 47 52 41 ITS) && _INTEGRA
1dd0: 4c 5f 4d 41 58 5f 42 49 54 53 20 3e 3d 20 36 34 L_MAX_BITS >= 64
1de0: 29 29 29 0d 0a 2f 2f 20 2e 2e 2e 0d 0a 0d 0a 2f )))..// ......./
1df0: 2f 20 23 2e 2e 2e 0d 0a 2f 2f 20 23 65 6c 73 65 / #.....// #else
1e00: 0d 0a 0d 0a 2f 2f 20 23 69 66 20 64 65 66 69 6e ....// #if defin
1e10: 65 64 28 5f 4d 41 43 29 20 26 26 20 64 65 66 69 ed(_MAC) && defi
1e20: 6e 65 64 28 5f 4d 41 43 5f 49 4e 54 5f 36 34 29 ned(_MAC_INT_64)
1e30: 0d 0a 2f 2f 20 2e 2e 2e 0d 0a 0d 0a 2f 2f 20 23 ..// .......// #
1e40: 2e 2e 2e 0d 0a 2f 2f 20 23 65 6c 73 65 0d 0a 61 .....// #else..a
1e50: 6c 69 61 73 20 64 6f 75 62 6c 65 20 4c 4f 4e 47 lias double LONG
1e60: 4c 4f 4e 47 3b 0d 0a 61 6c 69 61 73 20 64 6f 75 LONG;..alias dou
1e70: 62 6c 65 20 55 4c 4f 4e 47 4c 4f 4e 47 3b 0d 0a ble ULONGLONG;..
1e80: 2f 2f 20 23 65 6e 64 69 66 20 2f 2f 5f 4d 41 43 // #endif //_MAC
1e90: 20 61 6e 64 20 69 6e 74 36 34 0d 0a 0d 0a 2f 2f and int64....//
1ea0: 20 23 65 6e 64 69 66 0d 0a 0d 0a 61 6c 69 61 73 #endif....alias
1eb0: 20 4c 4f 4e 47 4c 4f 4e 47 2a 20 50 4c 4f 4e 47 LONGLONG* PLONG
1ec0: 4c 4f 4e 47 3b 0d 0a 61 6c 69 61 73 20 55 4c 4f LONG;..alias ULO
1ed0: 4e 47 4c 4f 4e 47 2a 20 50 55 4c 4f 4e 47 4c 4f NGLONG* PULONGLO
1ee0: 4e 47 3b 0d 0a 0d 0a 61 6c 69 61 73 20 4c 4f 4e NG;....alias LON
1ef0: 47 4c 4f 4e 47 20 55 53 4e 3b 0d 0a 0d 0a 2f 2f GLONG USN;....//
1f00: 20 23 69 66 20 64 65 66 69 6e 65 64 28 4d 49 44 #if defined(MID
1f10: 4c 5f 50 41 53 53 29 0d 0a 2f 2f 20 2e 2e 2e 0d L_PASS)..// ....
1f20: 0a 2f 2f 20 23 65 6c 73 65 20 2f 2f 20 4d 49 44 .// #else // MID
1f30: 4c 5f 50 41 53 53 0d 0a 75 6e 69 6f 6e 20 5f 4c L_PASS..union _L
1f40: 41 52 47 45 5f 49 4e 54 45 47 45 52 20 7b 0d 0a ARGE_INTEGER {..
1f50: 73 74 72 75 63 74 20 5f 30 20 7b 0d 0a 20 20 44 struct _0 {.. D
1f60: 57 4f 52 44 20 4c 6f 77 50 61 72 74 3b 0d 0a 20 WORD LowPart;..
1f70: 20 4c 4f 4e 47 20 48 69 67 68 50 61 72 74 3b 0d LONG HighPart;.
1f80: 0a 7d 0d 0a 5f 30 20 5f 3b 0d 0a 0d 0a 73 74 72 .}.._0 _;....str
1f90: 75 63 74 20 5f 31 20 7b 0d 0a 20 20 44 57 4f 52 uct _1 {.. DWOR
1fa0: 44 20 4c 6f 77 50 61 72 74 3b 0d 0a 20 20 4c 4f D LowPart;.. LO
1fb0: 4e 47 20 48 69 67 68 50 61 72 74 3b 0d 0a 7d 0d NG HighPart;..}.
1fc0: 0a 5f 31 20 75 3b 0d 0a 0d 0a 2f 2f 20 23 65 6e ._1 u;....// #en
1fd0: 64 69 66 20 2f 2f 4d 49 44 4c 5f 50 41 53 53 0d dif //MIDL_PASS.
1fe0: 0a 20 20 4c 4f 4e 47 4c 4f 4e 47 20 51 75 61 64 . LONGLONG Quad
1ff0: 50 61 72 74 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 Part;..}..alias
2000: 5f 4c 41 52 47 45 5f 49 4e 54 45 47 45 52 20 4c _LARGE_INTEGER L
2010: 41 52 47 45 5f 49 4e 54 45 47 45 52 3b 0d 0a 0d ARGE_INTEGER;...
2020: 0a 61 6c 69 61 73 20 4c 41 52 47 45 5f 49 4e 54 .alias LARGE_INT
2030: 45 47 45 52 2a 20 50 4c 41 52 47 45 5f 49 4e 54 EGER* PLARGE_INT
2040: 45 47 45 52 3b 0d 0a 0d 0a 2f 2f 20 23 69 66 20 EGER;....// #if
2050: 64 65 66 69 6e 65 64 28 4d 49 44 4c 5f 50 41 53 defined(MIDL_PAS
2060: 53 29 0d 0a 2f 2f 20 2e 2e 2e 0d 0a 2f 2f 20 23 S)..// .....// #
2070: 65 6c 73 65 20 2f 2f 20 4d 49 44 4c 5f 50 41 53 else // MIDL_PAS
2080: 53 0d 0a 75 6e 69 6f 6e 20 5f 55 4c 41 52 47 45 S..union _ULARGE
2090: 5f 49 4e 54 45 47 45 52 20 7b 0d 0a 73 74 72 75 _INTEGER {..stru
20a0: 63 74 20 5f 32 20 7b 0d 0a 20 20 44 57 4f 52 44 ct _2 {.. DWORD
20b0: 20 4c 6f 77 50 61 72 74 3b 0d 0a 20 20 44 57 4f LowPart;.. DWO
20c0: 52 44 20 48 69 67 68 50 61 72 74 3b 0d 0a 7d 0d RD HighPart;..}.
20d0: 0a 5f 32 20 5f 3b 0d 0a 0d 0a 73 74 72 75 63 74 ._2 _;....struct
20e0: 20 5f 33 20 7b 0d 0a 20 20 44 57 4f 52 44 20 4c _3 {.. DWORD L
20f0: 6f 77 50 61 72 74 3b 0d 0a 20 20 44 57 4f 52 44 owPart;.. DWORD
2100: 20 48 69 67 68 50 61 72 74 3b 0d 0a 7d 0d 0a 5f HighPart;..}.._
2110: 33 20 75 3b 0d 0a 0d 0a 2f 2f 20 23 65 6e 64 69 3 u;....// #endi
2120: 66 20 2f 2f 4d 49 44 4c 5f 50 41 53 53 0d 0a 20 f //MIDL_PASS..
2130: 20 55 4c 4f 4e 47 4c 4f 4e 47 20 51 75 61 64 50 ULONGLONG QuadP
2140: 61 72 74 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 5f art;..}..alias _
2150: 55 4c 41 52 47 45 5f 49 4e 54 45 47 45 52 20 55 ULARGE_INTEGER U
2160: 4c 41 52 47 45 5f 49 4e 54 45 47 45 52 3b 0d 0a LARGE_INTEGER;..
2170: 0d 0a 61 6c 69 61 73 20 55 4c 41 52 47 45 5f 49 ..alias ULARGE_I
2180: 4e 54 45 47 45 52 2a 20 50 55 4c 41 52 47 45 5f NTEGER* PULARGE_
2190: 49 4e 54 45 47 45 52 3b 0d 0a 0d 0a 73 74 72 75 INTEGER;....stru
21a0: 63 74 20 5f 4c 55 49 44 20 7b 0d 0a 20 20 44 57 ct _LUID {.. DW
21b0: 4f 52 44 20 4c 6f 77 50 61 72 74 3b 0d 0a 20 20 ORD LowPart;..
21c0: 4c 4f 4e 47 20 48 69 67 68 50 61 72 74 3b 0d 0a LONG HighPart;..
21d0: 7d 0d 0a 61 6c 69 61 73 20 5f 4c 55 49 44 20 4c }..alias _LUID L
21e0: 55 49 44 3b 0d 0a 61 6c 69 61 73 20 5f 4c 55 49 UID;..alias _LUI
21f0: 44 2a 20 50 4c 55 49 44 3b 0d 0a 0d 0a 2f 2f 20 D* PLUID;....//
2200: 23 64 65 66 69 6e 65 20 5f 44 57 4f 52 44 4c 4f #define _DWORDLO
2210: 4e 47 5f 0d 0a 61 6c 69 61 73 20 55 4c 4f 4e 47 NG_..alias ULONG
2220: 4c 4f 4e 47 20 44 57 4f 52 44 4c 4f 4e 47 3b 0d LONG DWORDLONG;.
2230: 0a 61 6c 69 61 73 20 44 57 4f 52 44 4c 4f 4e 47 .alias DWORDLONG
2240: 2a 20 50 44 57 4f 52 44 4c 4f 4e 47 3b 0d 0a 0d * PDWORDLONG;...
2250: 0a 2f 2f 20 23 69 66 20 64 65 66 69 6e 65 64 28 .// #if defined(
2260: 4d 49 44 4c 5f 50 41 53 53 29 20 7c 7c 20 64 65 MIDL_PASS) || de
2270: 66 69 6e 65 64 28 52 43 5f 49 4e 56 4f 4b 45 44 fined(RC_INVOKED
2280: 29 0d 0a 0d 0a 2f 2f 20 23 2e 2e 2e 0d 0a 2f 2f )....// #.....//
2290: 20 23 2e 2e 2e 0d 0a 0d 0a 2f 2f 20 23 2e 2e 2e #.......// #...
22a0: 0d 0a 2f 2f 20 23 2e 2e 2e 0d 0a 2f 2f 20 23 2e ..// #.....// #.
22b0: 2e 2e 0d 0a 0d 0a 2f 2f 20 23 65 6c 69 66 20 64 ......// #elif d
22c0: 65 66 69 6e 65 64 28 5f 4d 5f 4d 52 58 30 30 30 efined(_M_MRX000
22d0: 29 0d 0a 0d 0a 2f 2f 20 23 2e 2e 2e 0d 0a 2f 2f )....// #.....//
22e0: 20 23 2e 2e 2e 0d 0a 0d 0a 2f 2f 20 23 2e 2e 2e #.......// #...
22f0: 0d 0a 2f 2f 20 23 2e 2e 2e 0d 0a 2f 2f 20 23 2e ..// #.....// #.
2300: 2e 2e 0d 0a 0d 0a 2f 2f 20 23 69 66 20 64 65 66 ......// #if def
2310: 69 6e 65 64 20 28 5f 5f 63 70 6c 75 73 70 6c 75 ined (__cplusplu
2320: 73 29 0d 0a 2f 2f 20 2e 2e 2e 0d 0a 2f 2f 20 23 s)..// .....// #
2330: 65 6e 64 69 66 0d 0a 0d 0a 2f 2f 20 2e 2e 2e 0d endif....// ....
2340: 0a 0d 0a 2f 2f 20 2e 2e 2e 0d 0a 0d 0a 2f 2f 20 ...// .......//
2350: 2e 2e 2e 0d 0a 0d 0a 2f 2f 20 2e 2e 2e 0d 0a 0d .......// ......
2360: 0a 2f 2f 20 2e 2e 2e 0d 0a 0d 0a 2f 2f 20 23 69 .// .......// #i
2370: 66 20 64 65 66 69 6e 65 64 20 28 5f 5f 63 70 6c f defined (__cpl
2380: 75 73 70 6c 75 73 29 0d 0a 2f 2f 20 2e 2e 2e 0d usplus)..// ....
2390: 0a 2f 2f 20 23 65 6e 64 69 66 0d 0a 0d 0a 2f 2f .// #endif....//
23a0: 20 23 2e 2e 2e 0d 0a 2f 2f 20 23 2e 2e 2e 0d 0a #.....// #.....
23b0: 0d 0a 2f 2f 20 23 2e 2e 2e 0d 0a 2f 2f 20 23 2e ..// #.....// #.
23c0: 2e 2e 0d 0a 2f 2f 20 23 2e 2e 2e 0d 0a 0d 0a 2f ....// #......./
23d0: 2f 20 23 65 6c 69 66 20 64 65 66 69 6e 65 64 28 / #elif defined(
23e0: 5f 4d 5f 49 58 38 36 29 0d 0a 0d 0a 6c 6f 6e 67 _M_IX86)....long
23f0: 20 49 6e 74 33 32 78 33 32 54 6f 36 34 28 69 6e Int32x32To64(in
2400: 74 20 61 2c 20 69 6e 74 20 62 29 20 7b 20 72 65 t a, int b) { re
2410: 74 75 72 6e 20 28 63 61 73 74 28 6c 6f 6e 67 29 turn (cast(long)
2420: 61 29 20 2a 20 62 3b 20 7d 0d 0a 75 6c 6f 6e 67 a) * b; }..ulong
2430: 20 55 49 6e 74 33 32 78 33 32 54 6f 36 34 28 75 UInt32x32To64(u
2440: 69 6e 74 20 61 2c 20 75 69 6e 74 20 62 29 20 7b int a, uint b) {
2450: 20 72 65 74 75 72 6e 20 28 63 61 73 74 28 75 6c return (cast(ul
2460: 6f 6e 67 29 61 29 20 2a 20 62 3b 20 7d 0d 0a 0d ong)a) * b; }...
2470: 0a 65 78 74 65 72 6e 28 57 69 6e 64 6f 77 73 29 .extern(Windows)
2480: 20 65 78 70 6f 72 74 20 55 4c 4f 4e 47 4c 4f 4e export ULONGLON
2490: 47 20 49 6e 74 36 34 53 68 6c 6c 4d 6f 64 33 32 G Int64ShllMod32
24a0: 28 0d 0a 20 20 55 4c 4f 4e 47 4c 4f 4e 47 20 56 (.. ULONGLONG V
24b0: 61 6c 75 65 2c 0d 0a 20 20 44 57 4f 52 44 20 53 alue,.. DWORD S
24c0: 68 69 66 74 43 6f 75 6e 74 29 3b 0d 0a 0d 0a 65 hiftCount);....e
24d0: 78 74 65 72 6e 28 57 69 6e 64 6f 77 73 29 20 65 xtern(Windows) e
24e0: 78 70 6f 72 74 20 4c 4f 4e 47 4c 4f 4e 47 20 49 xport LONGLONG I
24f0: 6e 74 36 34 53 68 72 61 4d 6f 64 33 32 28 0d 0a nt64ShraMod32(..
2500: 20 20 4c 4f 4e 47 4c 4f 4e 47 20 56 61 6c 75 65 LONGLONG Value
2510: 2c 0d 0a 20 20 44 57 4f 52 44 20 53 68 69 66 74 ,.. DWORD Shift
2520: 43 6f 75 6e 74 29 3b 0d 0a 0d 0a 65 78 74 65 72 Count);....exter
2530: 6e 28 57 69 6e 64 6f 77 73 29 20 65 78 70 6f 72 n(Windows) expor
2540: 74 20 55 4c 4f 4e 47 4c 4f 4e 47 20 49 6e 74 36 t ULONGLONG Int6
2550: 34 53 68 72 6c 4d 6f 64 33 32 28 0d 0a 20 20 55 4ShrlMod32(.. U
2560: 4c 4f 4e 47 4c 4f 4e 47 20 56 61 6c 75 65 2c 0d LONGLONG Value,.
2570: 0a 20 20 44 57 4f 52 44 20 53 68 69 66 74 43 6f . DWORD ShiftCo
2580: 75 6e 74 29 3b 0d 0a 0d 0a 2f 2f 20 23 69 66 20 unt);....// #if
2590: 5f 4d 53 43 5f 56 45 52 20 3e 3d 20 31 32 30 30 _MSC_VER >= 1200
25a0: 0d 0a 2f 2f 20 23 70 72 61 67 6d 61 20 77 61 72 ..// #pragma war
25b0: 6e 69 6e 67 28 70 75 73 68 29 0d 0a 2f 2f 20 23 ning(push)..// #
25c0: 65 6e 64 69 66 0d 0a 2f 2f 20 23 70 72 61 67 6d endif..// #pragm
25d0: 61 20 77 61 72 6e 69 6e 67 28 64 69 73 61 62 6c a warning(disabl
25e0: 65 3a 34 30 33 35 29 20 20 20 20 20 20 20 20 20 e:4035)
25f0: 20 20 20 20 20 20 2f 2f 20 72 65 2d 65 6e 61 62 // re-enab
2600: 6c 65 20 62 65 6c 6f 77 0d 0a 0d 0a 2f 2f 20 5f le below....// _
2610: 5f 69 6e 6c 69 6e 65 20 55 4c 4f 4e 47 4c 4f 4e _inline ULONGLON
2620: 47 20 49 6e 74 36 34 53 68 6c 6c 4d 6f 64 33 32 G Int64ShllMod32
2630: 28 20 20 20 20 20 55 4c 4f 4e 47 4c 4f 4e 47 20 ( ULONGLONG
2640: 56 61 6c 75 65 2c 20 20 20 20 20 44 57 4f 52 44 Value, DWORD
2650: 20 53 68 69 66 74 43 6f 75 6e 74 20 20 20 20 20 ShiftCount
2660: 29 3b 0d 0a 0d 0a 2f 2f 20 5f 5f 69 6e 6c 69 6e );....// __inlin
2670: 65 20 4c 4f 4e 47 4c 4f 4e 47 20 49 6e 74 36 34 e LONGLONG Int64
2680: 53 68 72 61 4d 6f 64 33 32 28 20 20 20 20 20 4c ShraMod32( L
2690: 4f 4e 47 4c 4f 4e 47 20 56 61 6c 75 65 2c 20 20 ONGLONG Value,
26a0: 20 20 20 44 57 4f 52 44 20 53 68 69 66 74 43 6f DWORD ShiftCo
26b0: 75 6e 74 20 20 20 20 20 29 3b 0d 0a 0d 0a 2f 2f unt );....//
26c0: 20 5f 5f 69 6e 6c 69 6e 65 20 55 4c 4f 4e 47 4c __inline ULONGL
26d0: 4f 4e 47 20 49 6e 74 36 34 53 68 72 6c 4d 6f 64 ONG Int64ShrlMod
26e0: 33 32 28 20 20 20 20 20 55 4c 4f 4e 47 4c 4f 4e 32( ULONGLON
26f0: 47 20 56 61 6c 75 65 2c 20 20 20 20 20 44 57 4f G Value, DWO
2700: 52 44 20 53 68 69 66 74 43 6f 75 6e 74 20 20 20 RD ShiftCount
2710: 20 20 29 3b 0d 0a 0d 0a 2f 2f 20 23 69 66 20 5f );....// #if _
2720: 4d 53 43 5f 56 45 52 20 3e 3d 20 31 32 30 30 0d MSC_VER >= 1200.
2730: 0a 2f 2f 20 23 70 72 61 67 6d 61 20 77 61 72 6e .// #pragma warn
2740: 69 6e 67 28 70 6f 70 29 0d 0a 2f 2f 20 23 65 6c ing(pop)..// #el
2750: 73 65 0d 0a 2f 2f 20 23 2e 2e 2e 0d 0a 2f 2f 20 se..// #.....//
2760: 23 65 6e 64 69 66 0d 0a 0d 0a 2f 2f 20 23 65 6c #endif....// #el
2770: 69 66 20 64 65 66 69 6e 65 64 28 5f 4d 5f 41 4c if defined(_M_AL
2780: 50 48 41 29 0d 0a 0d 0a 2f 2f 20 23 2e 2e 2e 0d PHA)....// #....
2790: 0a 2f 2f 20 23 2e 2e 2e 0d 0a 0d 0a 2f 2f 20 23 .// #.......// #
27a0: 2e 2e 2e 0d 0a 2f 2f 20 23 2e 2e 2e 0d 0a 2f 2f .....// #.....//
27b0: 20 23 2e 2e 2e 0d 0a 0d 0a 2f 2f 20 23 65 6c 69 #.......// #eli
27c0: 66 20 64 65 66 69 6e 65 64 28 5f 4d 5f 50 50 43 f defined(_M_PPC
27d0: 29 0d 0a 0d 0a 2f 2f 20 23 2e 2e 2e 0d 0a 2f 2f )....// #.....//
27e0: 20 23 2e 2e 2e 0d 0a 0d 0a 2f 2f 20 23 2e 2e 2e #.......// #...
27f0: 0d 0a 2f 2f 20 23 2e 2e 2e 0d 0a 2f 2f 20 23 2e ..// #.....// #.
2800: 2e 2e 0d 0a 0d 0a 2f 2f 20 23 65 6c 69 66 20 64 ......// #elif d
2810: 65 66 69 6e 65 64 28 5f 36 38 4b 5f 29 20 7c 7c efined(_68K_) ||
2820: 20 64 65 66 69 6e 65 64 28 5f 4d 50 50 43 5f 29 defined(_MPPC_)
2830: 0d 0a 0d 0a 2f 2f 20 23 2e 2e 2e 0d 0a 2f 2f 20 ....// #.....//
2840: 23 2e 2e 2e 0d 0a 0d 0a 2f 2f 20 23 2e 2e 2e 0d #.......// #....
2850: 0a 2f 2f 20 23 2e 2e 2e 0d 0a 2f 2f 20 23 2e 2e .// #.....// #..
2860: 2e 0d 0a 0d 0a 2f 2f 20 23 65 6c 69 66 20 64 65 .....// #elif de
2870: 66 69 6e 65 64 28 5f 4d 5f 49 41 36 34 29 20 7c fined(_M_IA64) |
2880: 7c 20 64 65 66 69 6e 65 64 28 5f 4d 5f 41 4d 44 | defined(_M_AMD
2890: 36 34 29 0d 0a 0d 0a 2f 2f 20 23 2e 2e 2e 0d 0a 64)....// #.....
28a0: 2f 2f 20 23 2e 2e 2e 0d 0a 0d 0a 2f 2f 20 23 2e // #.......// #.
28b0: 2e 2e 0d 0a 2f 2f 20 23 2e 2e 2e 0d 0a 2f 2f 20 ....// #.....//
28c0: 23 2e 2e 2e 0d 0a 0d 0a 2f 2f 20 23 65 6c 73 65 #.......// #else
28d0: 0d 0a 0d 0a 2f 2f 20 23 2e 2e 2e 0d 0a 0d 0a 2f ....// #......./
28e0: 2f 20 23 65 6e 64 69 66 0d 0a 0d 0a 65 6e 75 6d / #endif....enum
28f0: 20 3a 20 43 48 41 52 20 7b 20 41 4e 53 49 5f 4e : CHAR { ANSI_N
2900: 55 4c 4c 20 3d 20 30 20 7d 0d 0a 65 6e 75 6d 20 ULL = 0 }..enum
2910: 3a 20 57 43 48 41 52 20 7b 20 55 4e 49 43 4f 44 : WCHAR { UNICOD
2920: 45 5f 4e 55 4c 4c 20 3d 20 30 20 7d 0d 0a 65 6e E_NULL = 0 }..en
2930: 75 6d 20 3a 20 57 4f 52 44 20 7b 20 55 4e 49 43 um : WORD { UNIC
2940: 4f 44 45 5f 53 54 52 49 4e 47 5f 4d 41 58 5f 42 ODE_STRING_MAX_B
2950: 59 54 45 53 20 3d 20 36 35 35 33 34 20 7d 0d 0a YTES = 65534 }..
2960: 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 55 4e enum : uint { UN
2970: 49 43 4f 44 45 5f 53 54 52 49 4e 47 5f 4d 41 58 ICODE_STRING_MAX
2980: 5f 43 48 41 52 53 20 3d 20 33 32 37 36 37 20 7d _CHARS = 32767 }
2990: 0d 0a 61 6c 69 61 73 20 42 59 54 45 20 42 4f 4f ..alias BYTE BOO
29a0: 4c 45 41 4e 3b 0d 0a 61 6c 69 61 73 20 42 4f 4f LEAN;..alias BOO
29b0: 4c 45 41 4e 2a 20 50 42 4f 4f 4c 45 41 4e 3b 0d LEAN* PBOOLEAN;.
29c0: 0a 0d 0a 73 74 72 75 63 74 20 5f 4c 49 53 54 5f ...struct _LIST_
29d0: 45 4e 54 52 59 20 7b 0d 0a 20 20 5f 4c 49 53 54 ENTRY {.. _LIST
29e0: 5f 45 4e 54 52 59 20 2a 46 6c 69 6e 6b 3b 0d 0a _ENTRY *Flink;..
29f0: 20 20 5f 4c 49 53 54 5f 45 4e 54 52 59 20 2a 42 _LIST_ENTRY *B
2a00: 6c 69 6e 6b 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 link;..}..alias
2a10: 5f 4c 49 53 54 5f 45 4e 54 52 59 20 4c 49 53 54 _LIST_ENTRY LIST
2a20: 5f 45 4e 54 52 59 3b 0d 0a 61 6c 69 61 73 20 5f _ENTRY;..alias _
2a30: 4c 49 53 54 5f 45 4e 54 52 59 2a 20 50 4c 49 53 LIST_ENTRY* PLIS
2a40: 54 5f 45 4e 54 52 59 3b 0d 0a 61 6c 69 61 73 20 T_ENTRY;..alias
2a50: 5f 4c 49 53 54 5f 45 4e 54 52 59 2a 20 52 45 53 _LIST_ENTRY* RES
2a60: 54 52 49 43 54 45 44 5f 50 4f 49 4e 54 45 52 50 TRICTED_POINTERP
2a70: 52 4c 49 53 54 5f 45 4e 54 52 59 3b 0d 0a 0d 0a RLIST_ENTRY;....
2a80: 73 74 72 75 63 74 20 5f 53 49 4e 47 4c 45 5f 4c struct _SINGLE_L
2a90: 49 53 54 5f 45 4e 54 52 59 20 7b 0d 0a 20 20 5f IST_ENTRY {.. _
2aa0: 53 49 4e 47 4c 45 5f 4c 49 53 54 5f 45 4e 54 52 SINGLE_LIST_ENTR
2ab0: 59 20 2a 4e 65 78 74 3b 0d 0a 7d 0d 0a 61 6c 69 Y *Next;..}..ali
2ac0: 61 73 20 5f 53 49 4e 47 4c 45 5f 4c 49 53 54 5f as _SINGLE_LIST_
2ad0: 45 4e 54 52 59 20 53 49 4e 47 4c 45 5f 4c 49 53 ENTRY SINGLE_LIS
2ae0: 54 5f 45 4e 54 52 59 3b 0d 0a 61 6c 69 61 73 20 T_ENTRY;..alias
2af0: 5f 53 49 4e 47 4c 45 5f 4c 49 53 54 5f 45 4e 54 _SINGLE_LIST_ENT
2b00: 52 59 2a 20 50 53 49 4e 47 4c 45 5f 4c 49 53 54 RY* PSINGLE_LIST
2b10: 5f 45 4e 54 52 59 3b 0d 0a 0d 0a 73 74 72 75 63 _ENTRY;....struc
2b20: 74 20 4c 49 53 54 5f 45 4e 54 52 59 33 32 20 7b t LIST_ENTRY32 {
2b30: 0d 0a 20 20 44 57 4f 52 44 20 46 6c 69 6e 6b 3b .. DWORD Flink;
2b40: 0d 0a 20 20 44 57 4f 52 44 20 42 6c 69 6e 6b 3b .. DWORD Blink;
2b50: 0d 0a 7d 0d 0a 0d 0a 61 6c 69 61 73 20 4c 49 53 ..}....alias LIS
2b60: 54 5f 45 4e 54 52 59 33 32 2a 20 50 4c 49 53 54 T_ENTRY32* PLIST
2b70: 5f 45 4e 54 52 59 33 32 3b 0d 0a 0d 0a 73 74 72 _ENTRY32;....str
2b80: 75 63 74 20 4c 49 53 54 5f 45 4e 54 52 59 36 34 uct LIST_ENTRY64
2b90: 20 7b 0d 0a 20 20 55 4c 4f 4e 47 4c 4f 4e 47 20 {.. ULONGLONG
2ba0: 46 6c 69 6e 6b 3b 0d 0a 20 20 55 4c 4f 4e 47 4c Flink;.. ULONGL
2bb0: 4f 4e 47 20 42 6c 69 6e 6b 3b 0d 0a 7d 0d 0a 0d ONG Blink;..}...
2bc0: 0a 61 6c 69 61 73 20 4c 49 53 54 5f 45 4e 54 52 .alias LIST_ENTR
2bd0: 59 36 34 2a 20 50 4c 49 53 54 5f 45 4e 54 52 59 Y64* PLIST_ENTRY
2be0: 36 34 3b 0d 0a 0d 0a 69 6d 70 6f 72 74 20 77 69 64;....import wi
2bf0: 6e 33 32 2e 67 75 69 64 64 65 66 3b 0d 0a 0d 0a n32.guiddef;....
2c00: 2f 2f 20 23 69 66 6e 64 65 66 20 5f 5f 4f 42 4a // #ifndef __OBJ
2c10: 45 43 54 49 44 5f 44 45 46 49 4e 45 44 0d 0a 2f ECTID_DEFINED../
2c20: 2f 20 23 64 65 66 69 6e 65 20 5f 5f 4f 42 4a 45 / #define __OBJE
2c30: 43 54 49 44 5f 44 45 46 49 4e 45 44 0d 0a 0d 0a CTID_DEFINED....
2c40: 73 74 72 75 63 74 20 5f 4f 42 4a 45 43 54 49 44 struct _OBJECTID
2c50: 20 7b 0d 0a 20 20 47 55 49 44 20 4c 69 6e 65 61 {.. GUID Linea
2c60: 67 65 3b 0d 0a 20 20 44 57 4f 52 44 20 55 6e 69 ge;.. DWORD Uni
2c70: 71 75 69 66 69 65 72 3b 0d 0a 7d 0d 0a 61 6c 69 quifier;..}..ali
2c80: 61 73 20 5f 4f 42 4a 45 43 54 49 44 20 4f 42 4a as _OBJECTID OBJ
2c90: 45 43 54 49 44 3b 0d 0a 0d 0a 2f 2f 20 23 65 6e ECTID;....// #en
2ca0: 64 69 66 20 2f 2f 20 21 5f 4f 42 4a 45 43 54 49 dif // !_OBJECTI
2cb0: 44 5f 44 45 46 49 4e 45 44 0d 0a 0d 0a 65 6e 75 D_DEFINED....enu
2cc0: 6d 20 3a 20 75 69 6e 74 20 7b 20 4d 49 4e 43 48 m : uint { MINCH
2cd0: 41 52 20 3d 20 30 78 38 30 20 7d 0d 0a 65 6e 75 AR = 0x80 }..enu
2ce0: 6d 20 3a 20 75 69 6e 74 20 7b 20 4d 41 58 43 48 m : uint { MAXCH
2cf0: 41 52 20 3d 20 30 78 37 66 20 7d 0d 0a 65 6e 75 AR = 0x7f }..enu
2d00: 6d 20 3a 20 75 69 6e 74 20 7b 20 4d 49 4e 53 48 m : uint { MINSH
2d10: 4f 52 54 20 3d 20 30 78 38 30 30 30 20 7d 0d 0a ORT = 0x8000 }..
2d20: 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 4d 41 enum : uint { MA
2d30: 58 53 48 4f 52 54 20 3d 20 30 78 37 66 66 66 20 XSHORT = 0x7fff
2d40: 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b }..enum : uint {
2d50: 20 4d 49 4e 4c 4f 4e 47 20 3d 20 30 78 38 30 30 MINLONG = 0x800
2d60: 30 30 30 30 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 00000 }..enum :
2d70: 75 69 6e 74 20 7b 20 4d 41 58 4c 4f 4e 47 20 3d uint { MAXLONG =
2d80: 20 30 78 37 66 66 66 66 66 66 66 20 7d 0d 0a 65 0x7fffffff }..e
2d90: 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 4d 41 58 num : uint { MAX
2da0: 42 59 54 45 20 3d 20 30 78 66 66 20 7d 0d 0a 65 BYTE = 0xff }..e
2db0: 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 4d 41 58 num : uint { MAX
2dc0: 57 4f 52 44 20 3d 20 30 78 66 66 66 66 20 7d 0d WORD = 0xffff }.
2dd0: 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 4d .enum : uint { M
2de0: 41 58 44 57 4f 52 44 20 3d 20 30 78 66 66 66 66 AXDWORD = 0xffff
2df0: 66 66 66 66 20 7d 0d 0a 0d 0a 2f 2f 20 23 64 65 ffff }....// #de
2e00: 66 69 6e 65 20 46 49 45 4c 44 5f 4f 46 46 53 45 fine FIELD_OFFSE
2e10: 54 28 74 79 70 65 2c 20 66 69 65 6c 64 29 20 28 T(type, field) (
2e20: 28 4c 4f 4e 47 29 28 4c 4f 4e 47 5f 50 54 52 29 (LONG)(LONG_PTR)
2e30: 26 28 28 28 74 79 70 65 20 2a 29 30 29 2d 3e 66 &(((type *)0)->f
2e40: 69 65 6c 64 29 29 0d 0a 0d 0a 2f 2f 20 23 69 66 ield))....// #if
2e50: 28 5f 57 49 4e 33 32 5f 57 49 4e 4e 54 20 3e 20 (_WIN32_WINNT >
2e60: 30 78 30 35 30 30 29 0d 0a 0d 0a 2f 2f 20 23 64 0x0500)....// #d
2e70: 65 66 69 6e 65 20 52 54 4c 5f 46 49 45 4c 44 5f efine RTL_FIELD_
2e80: 53 49 5a 45 28 74 79 70 65 2c 20 66 69 65 6c 64 SIZE(type, field
2e90: 29 20 28 73 69 7a 65 6f 66 28 28 28 74 79 70 65 ) (sizeof(((type
2ea0: 20 2a 29 30 29 2d 3e 66 69 65 6c 64 29 29 0d 0a *)0)->field))..
2eb0: 0d 0a 2f 2f 20 23 64 65 66 69 6e 65 20 52 54 4c ..// #define RTL
2ec0: 5f 53 49 5a 45 4f 46 5f 54 48 52 4f 55 47 48 5f _SIZEOF_THROUGH_
2ed0: 46 49 45 4c 44 28 74 79 70 65 2c 20 66 69 65 6c FIELD(type, fiel
2ee0: 64 29 20 28 46 49 45 4c 44 5f 4f 46 46 53 45 54 d) (FIELD_OFFSET
2ef0: 28 74 79 70 65 2c 20 66 69 65 6c 64 29 20 2b 20 (type, field) +
2f00: 52 54 4c 5f 46 49 45 4c 44 5f 53 49 5a 45 28 74 RTL_FIELD_SIZE(t
2f10: 79 70 65 2c 20 66 69 65 6c 64 29 29 0d 0a 0d 0a ype, field))....
2f20: 2f 2f 20 23 64 65 66 69 6e 65 20 52 54 4c 5f 43 // #define RTL_C
2f30: 4f 4e 54 41 49 4e 53 5f 46 49 45 4c 44 28 53 74 ONTAINS_FIELD(St
2f40: 72 75 63 74 2c 20 53 69 7a 65 2c 20 46 69 65 6c ruct, Size, Fiel
2f50: 64 29 20 28 20 28 28 28 50 43 48 41 52 29 28 26 d) ( (((PCHAR)(&
2f60: 28 53 74 72 75 63 74 29 2d 3e 46 69 65 6c 64 29 (Struct)->Field)
2f70: 29 20 2b 20 73 69 7a 65 6f 66 28 28 53 74 72 75 ) + sizeof((Stru
2f80: 63 74 29 2d 3e 46 69 65 6c 64 29 29 20 3c 3d 20 ct)->Field)) <=
2f90: 28 28 28 50 43 48 41 52 29 28 53 74 72 75 63 74 (((PCHAR)(Struct
2fa0: 29 29 2b 28 53 69 7a 65 29 29 20 29 0d 0a 0d 0a ))+(Size)) )....
2fb0: 2f 2f 20 23 64 65 66 69 6e 65 20 52 54 4c 5f 4e // #define RTL_N
2fc0: 55 4d 42 45 52 5f 4f 46 28 41 29 20 28 73 69 7a UMBER_OF(A) (siz
2fd0: 65 6f 66 28 41 29 2f 73 69 7a 65 6f 66 28 28 41 eof(A)/sizeof((A
2fe0: 29 5b 30 5d 29 29 0d 0a 0d 0a 2f 2f 20 23 64 65 )[0]))....// #de
2ff0: 66 69 6e 65 20 52 54 4c 5f 46 49 45 4c 44 5f 54 fine RTL_FIELD_T
3000: 59 50 45 28 74 79 70 65 2c 20 66 69 65 6c 64 29 YPE(type, field)
3010: 20 28 28 28 74 79 70 65 2a 29 30 29 2d 3e 66 69 (((type*)0)->fi
3020: 65 6c 64 29 0d 0a 0d 0a 2f 2f 20 23 64 65 66 69 eld)....// #defi
3030: 6e 65 20 52 54 4c 5f 4e 55 4d 42 45 52 5f 4f 46 ne RTL_NUMBER_OF
3040: 5f 46 49 45 4c 44 28 74 79 70 65 2c 20 66 69 65 _FIELD(type, fie
3050: 6c 64 29 20 28 52 54 4c 5f 4e 55 4d 42 45 52 5f ld) (RTL_NUMBER_
3060: 4f 46 28 52 54 4c 5f 46 49 45 4c 44 5f 54 59 50 OF(RTL_FIELD_TYP
3070: 45 28 74 79 70 65 2c 20 66 69 65 6c 64 29 29 29 E(type, field)))
3080: 0d 0a 0d 0a 2f 2f 20 23 64 65 66 69 6e 65 20 52 ....// #define R
3090: 54 4c 5f 50 41 44 44 49 4e 47 5f 42 45 54 57 45 TL_PADDING_BETWE
30a0: 45 4e 5f 46 49 45 4c 44 53 28 54 2c 20 46 31 2c EN_FIELDS(T, F1,
30b0: 20 46 32 29 20 28 28 46 49 45 4c 44 5f 4f 46 46 F2) ((FIELD_OFF
30c0: 53 45 54 28 54 2c 20 46 32 29 20 3e 20 46 49 45 SET(T, F2) > FIE
30d0: 4c 44 5f 4f 46 46 53 45 54 28 54 2c 20 46 31 29 LD_OFFSET(T, F1)
30e0: 29 20 3f 20 28 46 49 45 4c 44 5f 4f 46 46 53 45 ) ? (FIELD_OFFSE
30f0: 54 28 54 2c 20 46 32 29 20 2d 20 46 49 45 4c 44 T(T, F2) - FIELD
3100: 5f 4f 46 46 53 45 54 28 54 2c 20 46 31 29 20 2d _OFFSET(T, F1) -
3110: 20 52 54 4c 5f 46 49 45 4c 44 5f 53 49 5a 45 28 RTL_FIELD_SIZE(
3120: 54 2c 20 46 31 29 29 20 3a 20 28 46 49 45 4c 44 T, F1)) : (FIELD
3130: 5f 4f 46 46 53 45 54 28 54 2c 20 46 31 29 20 2d _OFFSET(T, F1) -
3140: 20 46 49 45 4c 44 5f 4f 46 46 53 45 54 28 54 2c FIELD_OFFSET(T,
3150: 20 46 32 29 20 2d 20 52 54 4c 5f 46 49 45 4c 44 F2) - RTL_FIELD
3160: 5f 53 49 5a 45 28 54 2c 20 46 32 29 29 29 0d 0a _SIZE(T, F2)))..
3170: 0d 0a 2f 2f 20 23 69 66 20 64 65 66 69 6e 65 64 ..// #if defined
3180: 28 5f 5f 63 70 6c 75 73 70 6c 75 73 29 0d 0a 2f (__cplusplus)../
3190: 2f 20 23 64 65 66 69 6e 65 20 52 54 4c 5f 43 4f / #define RTL_CO
31a0: 4e 53 54 5f 43 41 53 54 28 74 79 70 65 29 20 63 NST_CAST(type) c
31b0: 6f 6e 73 74 5f 63 61 73 74 3c 74 79 70 65 3e 0d onst_cast<type>.
31c0: 0a 2f 2f 20 23 65 6c 73 65 0d 0a 2f 2f 20 23 2e .// #else..// #.
31d0: 2e 2e 0d 0a 2f 2f 20 23 65 6e 64 69 66 0d 0a 0d ....// #endif...
31e0: 0a 2f 2f 20 23 64 65 66 69 6e 65 20 52 54 4c 5f .// #define RTL_
31f0: 42 49 54 53 5f 4f 46 28 73 69 7a 65 4f 66 41 72 BITS_OF(sizeOfAr
3200: 67 29 20 28 73 69 7a 65 6f 66 28 73 69 7a 65 4f g) (sizeof(sizeO
3210: 66 41 72 67 29 20 2a 20 38 29 0d 0a 0d 0a 2f 2f fArg) * 8)....//
3220: 20 23 64 65 66 69 6e 65 20 52 54 4c 5f 42 49 54 #define RTL_BIT
3230: 53 5f 4f 46 5f 46 49 45 4c 44 28 74 79 70 65 2c S_OF_FIELD(type,
3240: 20 66 69 65 6c 64 29 20 28 52 54 4c 5f 42 49 54 field) (RTL_BIT
3250: 53 5f 4f 46 28 52 54 4c 5f 46 49 45 4c 44 5f 54 S_OF(RTL_FIELD_T
3260: 59 50 45 28 74 79 70 65 2c 20 66 69 65 6c 64 29 YPE(type, field)
3270: 29 29 0d 0a 0d 0a 2f 2f 20 23 65 6e 64 69 66 20 ))....// #endif
3280: 2f 2a 20 5f 57 49 4e 33 32 5f 57 49 4e 4e 54 20 /* _WIN32_WINNT
3290: 3e 20 30 78 30 35 30 30 20 2a 2f 0d 0a 0d 0a 2f > 0x0500 */..../
32a0: 2f 20 23 64 65 66 69 6e 65 20 43 4f 4e 54 41 49 / #define CONTAI
32b0: 4e 49 4e 47 5f 52 45 43 4f 52 44 28 61 64 64 72 NING_RECORD(addr
32c0: 65 73 73 2c 20 74 79 70 65 2c 20 66 69 65 6c 64 ess, type, field
32d0: 29 20 28 28 74 79 70 65 20 2a 29 28 20 28 50 43 ) ((type *)( (PC
32e0: 48 41 52 29 28 61 64 64 72 65 73 73 29 20 2d 20 HAR)(address) -
32f0: 28 55 4c 4f 4e 47 5f 50 54 52 29 28 26 28 28 74 (ULONG_PTR)(&((t
3300: 79 70 65 20 2a 29 30 29 2d 3e 66 69 65 6c 64 29 ype *)0)->field)
3310: 29 29 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e ))....enum : uin
3320: 74 20 7b 20 56 45 52 5f 53 45 52 56 45 52 5f 4e t { VER_SERVER_N
3330: 54 20 3d 20 30 78 38 30 30 30 30 30 30 30 20 7d T = 0x80000000 }
3340: 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
3350: 56 45 52 5f 57 4f 52 4b 53 54 41 54 49 4f 4e 5f VER_WORKSTATION_
3360: 4e 54 20 3d 20 30 78 34 30 30 30 30 30 30 30 20 NT = 0x40000000
3370: 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b }..enum : uint {
3380: 20 56 45 52 5f 53 55 49 54 45 5f 53 4d 41 4c 4c VER_SUITE_SMALL
3390: 42 55 53 49 4e 45 53 53 20 3d 20 30 78 30 30 30 BUSINESS = 0x000
33a0: 30 30 30 30 31 20 7d 0d 0a 65 6e 75 6d 20 3a 20 00001 }..enum :
33b0: 75 69 6e 74 20 7b 20 56 45 52 5f 53 55 49 54 45 uint { VER_SUITE
33c0: 5f 45 4e 54 45 52 50 52 49 53 45 20 3d 20 30 78 _ENTERPRISE = 0x
33d0: 30 30 30 30 30 30 30 32 20 7d 0d 0a 65 6e 75 6d 00000002 }..enum
33e0: 20 3a 20 75 69 6e 74 20 7b 20 56 45 52 5f 53 55 : uint { VER_SU
33f0: 49 54 45 5f 42 41 43 4b 4f 46 46 49 43 45 20 3d ITE_BACKOFFICE =
3400: 20 30 78 30 30 30 30 30 30 30 34 20 7d 0d 0a 65 0x00000004 }..e
3410: 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 56 45 52 num : uint { VER
3420: 5f 53 55 49 54 45 5f 43 4f 4d 4d 55 4e 49 43 41 _SUITE_COMMUNICA
3430: 54 49 4f 4e 53 20 3d 20 30 78 30 30 30 30 30 30 TIONS = 0x000000
3440: 30 38 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 08 }..enum : uin
3450: 74 20 7b 20 56 45 52 5f 53 55 49 54 45 5f 54 45 t { VER_SUITE_TE
3460: 52 4d 49 4e 41 4c 20 3d 20 30 78 30 30 30 30 30 RMINAL = 0x00000
3470: 30 31 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 010 }..enum : ui
3480: 6e 74 20 7b 20 56 45 52 5f 53 55 49 54 45 5f 53 nt { VER_SUITE_S
3490: 4d 41 4c 4c 42 55 53 49 4e 45 53 53 5f 52 45 53 MALLBUSINESS_RES
34a0: 54 52 49 43 54 45 44 20 3d 20 30 78 30 30 30 30 TRICTED = 0x0000
34b0: 30 30 32 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 0020 }..enum : u
34c0: 69 6e 74 20 7b 20 56 45 52 5f 53 55 49 54 45 5f int { VER_SUITE_
34d0: 45 4d 42 45 44 44 45 44 4e 54 20 3d 20 30 78 30 EMBEDDEDNT = 0x0
34e0: 30 30 30 30 30 34 30 20 7d 0d 0a 65 6e 75 6d 20 0000040 }..enum
34f0: 3a 20 75 69 6e 74 20 7b 20 56 45 52 5f 53 55 49 : uint { VER_SUI
3500: 54 45 5f 44 41 54 41 43 45 4e 54 45 52 20 3d 20 TE_DATACENTER =
3510: 30 78 30 30 30 30 30 30 38 30 20 7d 0d 0a 65 6e 0x00000080 }..en
3520: 75 6d 20 3a 20 75 69 6e 74 20 7b 20 56 45 52 5f um : uint { VER_
3530: 53 55 49 54 45 5f 53 49 4e 47 4c 45 55 53 45 52 SUITE_SINGLEUSER
3540: 54 53 20 3d 20 30 78 30 30 30 30 30 31 30 30 20 TS = 0x00000100
3550: 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b }..enum : uint {
3560: 20 56 45 52 5f 53 55 49 54 45 5f 50 45 52 53 4f VER_SUITE_PERSO
3570: 4e 41 4c 20 3d 20 30 78 30 30 30 30 30 32 30 30 NAL = 0x00000200
3580: 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 }..enum : uint
3590: 7b 20 56 45 52 5f 53 55 49 54 45 5f 42 4c 41 44 { VER_SUITE_BLAD
35a0: 45 20 3d 20 30 78 30 30 30 30 30 34 30 30 20 7d E = 0x00000400 }
35b0: 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 ....enum : uint
35c0: 7b 20 4c 41 4e 47 5f 4e 45 55 54 52 41 4c 20 3d { LANG_NEUTRAL =
35d0: 20 30 78 30 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 0x00 }..enum :
35e0: 75 69 6e 74 20 7b 20 4c 41 4e 47 5f 49 4e 56 41 uint { LANG_INVA
35f0: 52 49 41 4e 54 20 3d 20 30 78 37 66 20 7d 0d 0a RIANT = 0x7f }..
3600: 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
3610: 4c 41 4e 47 5f 41 46 52 49 4b 41 41 4e 53 20 3d LANG_AFRIKAANS =
3620: 20 30 78 33 36 20 7d 0d 0a 65 6e 75 6d 20 3a 20 0x36 }..enum :
3630: 75 69 6e 74 20 7b 20 4c 41 4e 47 5f 41 4c 42 41 uint { LANG_ALBA
3640: 4e 49 41 4e 20 3d 20 30 78 31 63 20 7d 0d 0a 65 NIAN = 0x1c }..e
3650: 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 4c 41 4e num : uint { LAN
3660: 47 5f 41 52 41 42 49 43 20 3d 20 30 78 30 31 20 G_ARABIC = 0x01
3670: 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b }..enum : uint {
3680: 20 4c 41 4e 47 5f 41 52 4d 45 4e 49 41 4e 20 3d LANG_ARMENIAN =
3690: 20 30 78 32 62 20 7d 0d 0a 65 6e 75 6d 20 3a 20 0x2b }..enum :
36a0: 75 69 6e 74 20 7b 20 4c 41 4e 47 5f 41 53 53 41 uint { LANG_ASSA
36b0: 4d 45 53 45 20 3d 20 30 78 34 64 20 7d 0d 0a 65 MESE = 0x4d }..e
36c0: 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 4c 41 4e num : uint { LAN
36d0: 47 5f 41 5a 45 52 49 20 3d 20 30 78 32 63 20 7d G_AZERI = 0x2c }
36e0: 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
36f0: 4c 41 4e 47 5f 42 41 53 51 55 45 20 3d 20 30 78 LANG_BASQUE = 0x
3700: 32 64 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 2d }..enum : uin
3710: 74 20 7b 20 4c 41 4e 47 5f 42 45 4c 41 52 55 53 t { LANG_BELARUS
3720: 49 41 4e 20 3d 20 30 78 32 33 20 7d 0d 0a 65 6e IAN = 0x23 }..en
3730: 75 6d 20 3a 20 75 69 6e 74 20 7b 20 4c 41 4e 47 um : uint { LANG
3740: 5f 42 45 4e 47 41 4c 49 20 3d 20 30 78 34 35 20 _BENGALI = 0x45
3750: 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b }..enum : uint {
3760: 20 4c 41 4e 47 5f 42 55 4c 47 41 52 49 41 4e 20 LANG_BULGARIAN
3770: 3d 20 30 78 30 32 20 7d 0d 0a 65 6e 75 6d 20 3a = 0x02 }..enum :
3780: 20 75 69 6e 74 20 7b 20 4c 41 4e 47 5f 43 41 54 uint { LANG_CAT
3790: 41 4c 41 4e 20 3d 20 30 78 30 33 20 7d 0d 0a 65 ALAN = 0x03 }..e
37a0: 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 4c 41 4e num : uint { LAN
37b0: 47 5f 43 48 49 4e 45 53 45 20 3d 20 30 78 30 34 G_CHINESE = 0x04
37c0: 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 }..enum : uint
37d0: 7b 20 4c 41 4e 47 5f 43 52 4f 41 54 49 41 4e 20 { LANG_CROATIAN
37e0: 3d 20 30 78 31 61 20 7d 0d 0a 65 6e 75 6d 20 3a = 0x1a }..enum :
37f0: 20 75 69 6e 74 20 7b 20 4c 41 4e 47 5f 43 5a 45 uint { LANG_CZE
3800: 43 48 20 3d 20 30 78 30 35 20 7d 0d 0a 65 6e 75 CH = 0x05 }..enu
3810: 6d 20 3a 20 75 69 6e 74 20 7b 20 4c 41 4e 47 5f m : uint { LANG_
3820: 44 41 4e 49 53 48 20 3d 20 30 78 30 36 20 7d 0d DANISH = 0x06 }.
3830: 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 4c .enum : uint { L
3840: 41 4e 47 5f 44 49 56 45 48 49 20 3d 20 30 78 36 ANG_DIVEHI = 0x6
3850: 35 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 5 }..enum : uint
3860: 20 7b 20 4c 41 4e 47 5f 44 55 54 43 48 20 3d 20 { LANG_DUTCH =
3870: 30 78 31 33 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 0x13 }..enum : u
3880: 69 6e 74 20 7b 20 4c 41 4e 47 5f 45 4e 47 4c 49 int { LANG_ENGLI
3890: 53 48 20 3d 20 30 78 30 39 20 7d 0d 0a 65 6e 75 SH = 0x09 }..enu
38a0: 6d 20 3a 20 75 69 6e 74 20 7b 20 4c 41 4e 47 5f m : uint { LANG_
38b0: 45 53 54 4f 4e 49 41 4e 20 3d 20 30 78 32 35 20 ESTONIAN = 0x25
38c0: 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b }..enum : uint {
38d0: 20 4c 41 4e 47 5f 46 41 45 52 4f 45 53 45 20 3d LANG_FAEROESE =
38e0: 20 30 78 33 38 20 7d 0d 0a 65 6e 75 6d 20 3a 20 0x38 }..enum :
38f0: 75 69 6e 74 20 7b 20 4c 41 4e 47 5f 46 41 52 53 uint { LANG_FARS
3900: 49 20 3d 20 30 78 32 39 20 7d 0d 0a 65 6e 75 6d I = 0x29 }..enum
3910: 20 3a 20 75 69 6e 74 20 7b 20 4c 41 4e 47 5f 46 : uint { LANG_F
3920: 49 4e 4e 49 53 48 20 3d 20 30 78 30 62 20 7d 0d INNISH = 0x0b }.
3930: 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 4c .enum : uint { L
3940: 41 4e 47 5f 46 52 45 4e 43 48 20 3d 20 30 78 30 ANG_FRENCH = 0x0
3950: 63 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 c }..enum : uint
3960: 20 7b 20 4c 41 4e 47 5f 47 41 4c 49 43 49 41 4e { LANG_GALICIAN
3970: 20 3d 20 30 78 35 36 20 7d 0d 0a 65 6e 75 6d 20 = 0x56 }..enum
3980: 3a 20 75 69 6e 74 20 7b 20 4c 41 4e 47 5f 47 45 : uint { LANG_GE
3990: 4f 52 47 49 41 4e 20 3d 20 30 78 33 37 20 7d 0d ORGIAN = 0x37 }.
39a0: 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 4c .enum : uint { L
39b0: 41 4e 47 5f 47 45 52 4d 41 4e 20 3d 20 30 78 30 ANG_GERMAN = 0x0
39c0: 37 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 7 }..enum : uint
39d0: 20 7b 20 4c 41 4e 47 5f 47 52 45 45 4b 20 3d 20 { LANG_GREEK =
39e0: 30 78 30 38 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 0x08 }..enum : u
39f0: 69 6e 74 20 7b 20 4c 41 4e 47 5f 47 55 4a 41 52 int { LANG_GUJAR
3a00: 41 54 49 20 3d 20 30 78 34 37 20 7d 0d 0a 65 6e ATI = 0x47 }..en
3a10: 75 6d 20 3a 20 75 69 6e 74 20 7b 20 4c 41 4e 47 um : uint { LANG
3a20: 5f 48 45 42 52 45 57 20 3d 20 30 78 30 64 20 7d _HEBREW = 0x0d }
3a30: 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
3a40: 4c 41 4e 47 5f 48 49 4e 44 49 20 3d 20 30 78 33 LANG_HINDI = 0x3
3a50: 39 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 9 }..enum : uint
3a60: 20 7b 20 4c 41 4e 47 5f 48 55 4e 47 41 52 49 41 { LANG_HUNGARIA
3a70: 4e 20 3d 20 30 78 30 65 20 7d 0d 0a 65 6e 75 6d N = 0x0e }..enum
3a80: 20 3a 20 75 69 6e 74 20 7b 20 4c 41 4e 47 5f 49 : uint { LANG_I
3a90: 43 45 4c 41 4e 44 49 43 20 3d 20 30 78 30 66 20 CELANDIC = 0x0f
3aa0: 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b }..enum : uint {
3ab0: 20 4c 41 4e 47 5f 49 4e 44 4f 4e 45 53 49 41 4e LANG_INDONESIAN
3ac0: 20 3d 20 30 78 32 31 20 7d 0d 0a 65 6e 75 6d 20 = 0x21 }..enum
3ad0: 3a 20 75 69 6e 74 20 7b 20 4c 41 4e 47 5f 49 54 : uint { LANG_IT
3ae0: 41 4c 49 41 4e 20 3d 20 30 78 31 30 20 7d 0d 0a ALIAN = 0x10 }..
3af0: 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 4c 41 enum : uint { LA
3b00: 4e 47 5f 4a 41 50 41 4e 45 53 45 20 3d 20 30 78 NG_JAPANESE = 0x
3b10: 31 31 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 11 }..enum : uin
3b20: 74 20 7b 20 4c 41 4e 47 5f 4b 41 4e 4e 41 44 41 t { LANG_KANNADA
3b30: 20 3d 20 30 78 34 62 20 7d 0d 0a 65 6e 75 6d 20 = 0x4b }..enum
3b40: 3a 20 75 69 6e 74 20 7b 20 4c 41 4e 47 5f 4b 41 : uint { LANG_KA
3b50: 53 48 4d 49 52 49 20 3d 20 30 78 36 30 20 7d 0d SHMIRI = 0x60 }.
3b60: 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 4c .enum : uint { L
3b70: 41 4e 47 5f 4b 41 5a 41 4b 20 3d 20 30 78 33 66 ANG_KAZAK = 0x3f
3b80: 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 }..enum : uint
3b90: 7b 20 4c 41 4e 47 5f 4b 4f 4e 4b 41 4e 49 20 3d { LANG_KONKANI =
3ba0: 20 30 78 35 37 20 7d 0d 0a 65 6e 75 6d 20 3a 20 0x57 }..enum :
3bb0: 75 69 6e 74 20 7b 20 4c 41 4e 47 5f 4b 4f 52 45 uint { LANG_KORE
3bc0: 41 4e 20 3d 20 30 78 31 32 20 7d 0d 0a 65 6e 75 AN = 0x12 }..enu
3bd0: 6d 20 3a 20 75 69 6e 74 20 7b 20 4c 41 4e 47 5f m : uint { LANG_
3be0: 4b 59 52 47 59 5a 20 3d 20 30 78 34 30 20 7d 0d KYRGYZ = 0x40 }.
3bf0: 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 4c .enum : uint { L
3c00: 41 4e 47 5f 4c 41 54 56 49 41 4e 20 3d 20 30 78 ANG_LATVIAN = 0x
3c10: 32 36 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 26 }..enum : uin
3c20: 74 20 7b 20 4c 41 4e 47 5f 4c 49 54 48 55 41 4e t { LANG_LITHUAN
3c30: 49 41 4e 20 3d 20 30 78 32 37 20 7d 0d 0a 65 6e IAN = 0x27 }..en
3c40: 75 6d 20 3a 20 75 69 6e 74 20 7b 20 4c 41 4e 47 um : uint { LANG
3c50: 5f 4d 41 43 45 44 4f 4e 49 41 4e 20 3d 20 30 78 _MACEDONIAN = 0x
3c60: 32 66 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 2f }..enum : uin
3c70: 74 20 7b 20 4c 41 4e 47 5f 4d 41 4c 41 59 20 3d t { LANG_MALAY =
3c80: 20 30 78 33 65 20 7d 0d 0a 65 6e 75 6d 20 3a 20 0x3e }..enum :
3c90: 75 69 6e 74 20 7b 20 4c 41 4e 47 5f 4d 41 4c 41 uint { LANG_MALA
3ca0: 59 41 4c 41 4d 20 3d 20 30 78 34 63 20 7d 0d 0a YALAM = 0x4c }..
3cb0: 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 4c 41 enum : uint { LA
3cc0: 4e 47 5f 4d 41 4e 49 50 55 52 49 20 3d 20 30 78 NG_MANIPURI = 0x
3cd0: 35 38 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 58 }..enum : uin
3ce0: 74 20 7b 20 4c 41 4e 47 5f 4d 41 52 41 54 48 49 t { LANG_MARATHI
3cf0: 20 3d 20 30 78 34 65 20 7d 0d 0a 65 6e 75 6d 20 = 0x4e }..enum
3d00: 3a 20 75 69 6e 74 20 7b 20 4c 41 4e 47 5f 4d 4f : uint { LANG_MO
3d10: 4e 47 4f 4c 49 41 4e 20 3d 20 30 78 35 30 20 7d NGOLIAN = 0x50 }
3d20: 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
3d30: 4c 41 4e 47 5f 4e 45 50 41 4c 49 20 3d 20 30 78 LANG_NEPALI = 0x
3d40: 36 31 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 61 }..enum : uin
3d50: 74 20 7b 20 4c 41 4e 47 5f 4e 4f 52 57 45 47 49 t { LANG_NORWEGI
3d60: 41 4e 20 3d 20 30 78 31 34 20 7d 0d 0a 65 6e 75 AN = 0x14 }..enu
3d70: 6d 20 3a 20 75 69 6e 74 20 7b 20 4c 41 4e 47 5f m : uint { LANG_
3d80: 4f 52 49 59 41 20 3d 20 30 78 34 38 20 7d 0d 0a ORIYA = 0x48 }..
3d90: 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 4c 41 enum : uint { LA
3da0: 4e 47 5f 50 4f 4c 49 53 48 20 3d 20 30 78 31 35 NG_POLISH = 0x15
3db0: 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 }..enum : uint
3dc0: 7b 20 4c 41 4e 47 5f 50 4f 52 54 55 47 55 45 53 { LANG_PORTUGUES
3dd0: 45 20 3d 20 30 78 31 36 20 7d 0d 0a 65 6e 75 6d E = 0x16 }..enum
3de0: 20 3a 20 75 69 6e 74 20 7b 20 4c 41 4e 47 5f 50 : uint { LANG_P
3df0: 55 4e 4a 41 42 49 20 3d 20 30 78 34 36 20 7d 0d UNJABI = 0x46 }.
3e00: 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 4c .enum : uint { L
3e10: 41 4e 47 5f 52 4f 4d 41 4e 49 41 4e 20 3d 20 30 ANG_ROMANIAN = 0
3e20: 78 31 38 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 x18 }..enum : ui
3e30: 6e 74 20 7b 20 4c 41 4e 47 5f 52 55 53 53 49 41 nt { LANG_RUSSIA
3e40: 4e 20 3d 20 30 78 31 39 20 7d 0d 0a 65 6e 75 6d N = 0x19 }..enum
3e50: 20 3a 20 75 69 6e 74 20 7b 20 4c 41 4e 47 5f 53 : uint { LANG_S
3e60: 41 4e 53 4b 52 49 54 20 3d 20 30 78 34 66 20 7d ANSKRIT = 0x4f }
3e70: 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
3e80: 4c 41 4e 47 5f 53 45 52 42 49 41 4e 20 3d 20 30 LANG_SERBIAN = 0
3e90: 78 31 61 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 x1a }..enum : ui
3ea0: 6e 74 20 7b 20 4c 41 4e 47 5f 53 49 4e 44 48 49 nt { LANG_SINDHI
3eb0: 20 3d 20 30 78 35 39 20 7d 0d 0a 65 6e 75 6d 20 = 0x59 }..enum
3ec0: 3a 20 75 69 6e 74 20 7b 20 4c 41 4e 47 5f 53 4c : uint { LANG_SL
3ed0: 4f 56 41 4b 20 3d 20 30 78 31 62 20 7d 0d 0a 65 OVAK = 0x1b }..e
3ee0: 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 4c 41 4e num : uint { LAN
3ef0: 47 5f 53 4c 4f 56 45 4e 49 41 4e 20 3d 20 30 78 G_SLOVENIAN = 0x
3f00: 32 34 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 24 }..enum : uin
3f10: 74 20 7b 20 4c 41 4e 47 5f 53 50 41 4e 49 53 48 t { LANG_SPANISH
3f20: 20 3d 20 30 78 30 61 20 7d 0d 0a 65 6e 75 6d 20 = 0x0a }..enum
3f30: 3a 20 75 69 6e 74 20 7b 20 4c 41 4e 47 5f 53 57 : uint { LANG_SW
3f40: 41 48 49 4c 49 20 3d 20 30 78 34 31 20 7d 0d 0a AHILI = 0x41 }..
3f50: 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 4c 41 enum : uint { LA
3f60: 4e 47 5f 53 57 45 44 49 53 48 20 3d 20 30 78 31 NG_SWEDISH = 0x1
3f70: 64 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 d }..enum : uint
3f80: 20 7b 20 4c 41 4e 47 5f 53 59 52 49 41 43 20 3d { LANG_SYRIAC =
3f90: 20 30 78 35 61 20 7d 0d 0a 65 6e 75 6d 20 3a 20 0x5a }..enum :
3fa0: 75 69 6e 74 20 7b 20 4c 41 4e 47 5f 54 41 4d 49 uint { LANG_TAMI
3fb0: 4c 20 3d 20 30 78 34 39 20 7d 0d 0a 65 6e 75 6d L = 0x49 }..enum
3fc0: 20 3a 20 75 69 6e 74 20 7b 20 4c 41 4e 47 5f 54 : uint { LANG_T
3fd0: 41 54 41 52 20 3d 20 30 78 34 34 20 7d 0d 0a 65 ATAR = 0x44 }..e
3fe0: 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 4c 41 4e num : uint { LAN
3ff0: 47 5f 54 45 4c 55 47 55 20 3d 20 30 78 34 61 20 G_TELUGU = 0x4a
4000: 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b }..enum : uint {
4010: 20 4c 41 4e 47 5f 54 48 41 49 20 3d 20 30 78 31 LANG_THAI = 0x1
4020: 65 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 e }..enum : uint
4030: 20 7b 20 4c 41 4e 47 5f 54 55 52 4b 49 53 48 20 { LANG_TURKISH
4040: 3d 20 30 78 31 66 20 7d 0d 0a 65 6e 75 6d 20 3a = 0x1f }..enum :
4050: 20 75 69 6e 74 20 7b 20 4c 41 4e 47 5f 55 4b 52 uint { LANG_UKR
4060: 41 49 4e 49 41 4e 20 3d 20 30 78 32 32 20 7d 0d AINIAN = 0x22 }.
4070: 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 4c .enum : uint { L
4080: 41 4e 47 5f 55 52 44 55 20 3d 20 30 78 32 30 20 ANG_URDU = 0x20
4090: 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b }..enum : uint {
40a0: 20 4c 41 4e 47 5f 55 5a 42 45 4b 20 3d 20 30 78 LANG_UZBEK = 0x
40b0: 34 33 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 43 }..enum : uin
40c0: 74 20 7b 20 4c 41 4e 47 5f 56 49 45 54 4e 41 4d t { LANG_VIETNAM
40d0: 45 53 45 20 3d 20 30 78 32 61 20 7d 0d 0a 0d 0a ESE = 0x2a }....
40e0: 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 53 55 enum : uint { SU
40f0: 42 4c 41 4e 47 5f 4e 45 55 54 52 41 4c 20 3d 20 BLANG_NEUTRAL =
4100: 30 78 30 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 0x00 }..enum : u
4110: 69 6e 74 20 7b 20 53 55 42 4c 41 4e 47 5f 44 45 int { SUBLANG_DE
4120: 46 41 55 4c 54 20 3d 20 30 78 30 31 20 7d 0d 0a FAULT = 0x01 }..
4130: 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 53 55 enum : uint { SU
4140: 42 4c 41 4e 47 5f 53 59 53 5f 44 45 46 41 55 4c BLANG_SYS_DEFAUL
4150: 54 20 3d 20 30 78 30 32 20 7d 0d 0a 0d 0a 65 6e T = 0x02 }....en
4160: 75 6d 20 3a 20 75 69 6e 74 20 7b 20 53 55 42 4c um : uint { SUBL
4170: 41 4e 47 5f 41 52 41 42 49 43 5f 53 41 55 44 49 ANG_ARABIC_SAUDI
4180: 5f 41 52 41 42 49 41 20 3d 20 30 78 30 31 20 7d _ARABIA = 0x01 }
4190: 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
41a0: 53 55 42 4c 41 4e 47 5f 41 52 41 42 49 43 5f 49 SUBLANG_ARABIC_I
41b0: 52 41 51 20 3d 20 30 78 30 32 20 7d 0d 0a 65 6e RAQ = 0x02 }..en
41c0: 75 6d 20 3a 20 75 69 6e 74 20 7b 20 53 55 42 4c um : uint { SUBL
41d0: 41 4e 47 5f 41 52 41 42 49 43 5f 45 47 59 50 54 ANG_ARABIC_EGYPT
41e0: 20 3d 20 30 78 30 33 20 7d 0d 0a 65 6e 75 6d 20 = 0x03 }..enum
41f0: 3a 20 75 69 6e 74 20 7b 20 53 55 42 4c 41 4e 47 : uint { SUBLANG
4200: 5f 41 52 41 42 49 43 5f 4c 49 42 59 41 20 3d 20 _ARABIC_LIBYA =
4210: 30 78 30 34 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 0x04 }..enum : u
4220: 69 6e 74 20 7b 20 53 55 42 4c 41 4e 47 5f 41 52 int { SUBLANG_AR
4230: 41 42 49 43 5f 41 4c 47 45 52 49 41 20 3d 20 30 ABIC_ALGERIA = 0
4240: 78 30 35 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 x05 }..enum : ui
4250: 6e 74 20 7b 20 53 55 42 4c 41 4e 47 5f 41 52 41 nt { SUBLANG_ARA
4260: 42 49 43 5f 4d 4f 52 4f 43 43 4f 20 3d 20 30 78 BIC_MOROCCO = 0x
4270: 30 36 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 06 }..enum : uin
4280: 74 20 7b 20 53 55 42 4c 41 4e 47 5f 41 52 41 42 t { SUBLANG_ARAB
4290: 49 43 5f 54 55 4e 49 53 49 41 20 3d 20 30 78 30 IC_TUNISIA = 0x0
42a0: 37 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 7 }..enum : uint
42b0: 20 7b 20 53 55 42 4c 41 4e 47 5f 41 52 41 42 49 { SUBLANG_ARABI
42c0: 43 5f 4f 4d 41 4e 20 3d 20 30 78 30 38 20 7d 0d C_OMAN = 0x08 }.
42d0: 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 53 .enum : uint { S
42e0: 55 42 4c 41 4e 47 5f 41 52 41 42 49 43 5f 59 45 UBLANG_ARABIC_YE
42f0: 4d 45 4e 20 3d 20 30 78 30 39 20 7d 0d 0a 65 6e MEN = 0x09 }..en
4300: 75 6d 20 3a 20 75 69 6e 74 20 7b 20 53 55 42 4c um : uint { SUBL
4310: 41 4e 47 5f 41 52 41 42 49 43 5f 53 59 52 49 41 ANG_ARABIC_SYRIA
4320: 20 3d 20 30 78 30 61 20 7d 0d 0a 65 6e 75 6d 20 = 0x0a }..enum
4330: 3a 20 75 69 6e 74 20 7b 20 53 55 42 4c 41 4e 47 : uint { SUBLANG
4340: 5f 41 52 41 42 49 43 5f 4a 4f 52 44 41 4e 20 3d _ARABIC_JORDAN =
4350: 20 30 78 30 62 20 7d 0d 0a 65 6e 75 6d 20 3a 20 0x0b }..enum :
4360: 75 69 6e 74 20 7b 20 53 55 42 4c 41 4e 47 5f 41 uint { SUBLANG_A
4370: 52 41 42 49 43 5f 4c 45 42 41 4e 4f 4e 20 3d 20 RABIC_LEBANON =
4380: 30 78 30 63 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 0x0c }..enum : u
4390: 69 6e 74 20 7b 20 53 55 42 4c 41 4e 47 5f 41 52 int { SUBLANG_AR
43a0: 41 42 49 43 5f 4b 55 57 41 49 54 20 3d 20 30 78 ABIC_KUWAIT = 0x
43b0: 30 64 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 0d }..enum : uin
43c0: 74 20 7b 20 53 55 42 4c 41 4e 47 5f 41 52 41 42 t { SUBLANG_ARAB
43d0: 49 43 5f 55 41 45 20 3d 20 30 78 30 65 20 7d 0d IC_UAE = 0x0e }.
43e0: 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 53 .enum : uint { S
43f0: 55 42 4c 41 4e 47 5f 41 52 41 42 49 43 5f 42 41 UBLANG_ARABIC_BA
4400: 48 52 41 49 4e 20 3d 20 30 78 30 66 20 7d 0d 0a HRAIN = 0x0f }..
4410: 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 53 55 enum : uint { SU
4420: 42 4c 41 4e 47 5f 41 52 41 42 49 43 5f 51 41 54 BLANG_ARABIC_QAT
4430: 41 52 20 3d 20 30 78 31 30 20 7d 0d 0a 65 6e 75 AR = 0x10 }..enu
4440: 6d 20 3a 20 75 69 6e 74 20 7b 20 53 55 42 4c 41 m : uint { SUBLA
4450: 4e 47 5f 41 5a 45 52 49 5f 4c 41 54 49 4e 20 3d NG_AZERI_LATIN =
4460: 20 30 78 30 31 20 7d 0d 0a 65 6e 75 6d 20 3a 20 0x01 }..enum :
4470: 75 69 6e 74 20 7b 20 53 55 42 4c 41 4e 47 5f 41 uint { SUBLANG_A
4480: 5a 45 52 49 5f 43 59 52 49 4c 4c 49 43 20 3d 20 ZERI_CYRILLIC =
4490: 30 78 30 32 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 0x02 }..enum : u
44a0: 69 6e 74 20 7b 20 53 55 42 4c 41 4e 47 5f 43 48 int { SUBLANG_CH
44b0: 49 4e 45 53 45 5f 54 52 41 44 49 54 49 4f 4e 41 INESE_TRADITIONA
44c0: 4c 20 3d 20 30 78 30 31 20 7d 0d 0a 65 6e 75 6d L = 0x01 }..enum
44d0: 20 3a 20 75 69 6e 74 20 7b 20 53 55 42 4c 41 4e : uint { SUBLAN
44e0: 47 5f 43 48 49 4e 45 53 45 5f 53 49 4d 50 4c 49 G_CHINESE_SIMPLI
44f0: 46 49 45 44 20 3d 20 30 78 30 32 20 7d 0d 0a 65 FIED = 0x02 }..e
4500: 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 53 55 42 num : uint { SUB
4510: 4c 41 4e 47 5f 43 48 49 4e 45 53 45 5f 48 4f 4e LANG_CHINESE_HON
4520: 47 4b 4f 4e 47 20 3d 20 30 78 30 33 20 7d 0d 0a GKONG = 0x03 }..
4530: 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 53 55 enum : uint { SU
4540: 42 4c 41 4e 47 5f 43 48 49 4e 45 53 45 5f 53 49 BLANG_CHINESE_SI
4550: 4e 47 41 50 4f 52 45 20 3d 20 30 78 30 34 20 7d NGAPORE = 0x04 }
4560: 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
4570: 53 55 42 4c 41 4e 47 5f 43 48 49 4e 45 53 45 5f SUBLANG_CHINESE_
4580: 4d 41 43 41 55 20 3d 20 30 78 30 35 20 7d 0d 0a MACAU = 0x05 }..
4590: 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 53 55 enum : uint { SU
45a0: 42 4c 41 4e 47 5f 44 55 54 43 48 20 3d 20 30 78 BLANG_DUTCH = 0x
45b0: 30 31 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 01 }..enum : uin
45c0: 74 20 7b 20 53 55 42 4c 41 4e 47 5f 44 55 54 43 t { SUBLANG_DUTC
45d0: 48 5f 42 45 4c 47 49 41 4e 20 3d 20 30 78 30 32 H_BELGIAN = 0x02
45e0: 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 }..enum : uint
45f0: 7b 20 53 55 42 4c 41 4e 47 5f 45 4e 47 4c 49 53 { SUBLANG_ENGLIS
4600: 48 5f 55 53 20 3d 20 30 78 30 31 20 7d 0d 0a 65 H_US = 0x01 }..e
4610: 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 53 55 42 num : uint { SUB
4620: 4c 41 4e 47 5f 45 4e 47 4c 49 53 48 5f 55 4b 20 LANG_ENGLISH_UK
4630: 3d 20 30 78 30 32 20 7d 0d 0a 65 6e 75 6d 20 3a = 0x02 }..enum :
4640: 20 75 69 6e 74 20 7b 20 53 55 42 4c 41 4e 47 5f uint { SUBLANG_
4650: 45 4e 47 4c 49 53 48 5f 41 55 53 20 3d 20 30 78 ENGLISH_AUS = 0x
4660: 30 33 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 03 }..enum : uin
4670: 74 20 7b 20 53 55 42 4c 41 4e 47 5f 45 4e 47 4c t { SUBLANG_ENGL
4680: 49 53 48 5f 43 41 4e 20 3d 20 30 78 30 34 20 7d ISH_CAN = 0x04 }
4690: 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
46a0: 53 55 42 4c 41 4e 47 5f 45 4e 47 4c 49 53 48 5f SUBLANG_ENGLISH_
46b0: 4e 5a 20 3d 20 30 78 30 35 20 7d 0d 0a 65 6e 75 NZ = 0x05 }..enu
46c0: 6d 20 3a 20 75 69 6e 74 20 7b 20 53 55 42 4c 41 m : uint { SUBLA
46d0: 4e 47 5f 45 4e 47 4c 49 53 48 5f 45 49 52 45 20 NG_ENGLISH_EIRE
46e0: 3d 20 30 78 30 36 20 7d 0d 0a 65 6e 75 6d 20 3a = 0x06 }..enum :
46f0: 20 75 69 6e 74 20 7b 20 53 55 42 4c 41 4e 47 5f uint { SUBLANG_
4700: 45 4e 47 4c 49 53 48 5f 53 4f 55 54 48 5f 41 46 ENGLISH_SOUTH_AF
4710: 52 49 43 41 20 3d 20 30 78 30 37 20 7d 0d 0a 65 RICA = 0x07 }..e
4720: 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 53 55 42 num : uint { SUB
4730: 4c 41 4e 47 5f 45 4e 47 4c 49 53 48 5f 4a 41 4d LANG_ENGLISH_JAM
4740: 41 49 43 41 20 3d 20 30 78 30 38 20 7d 0d 0a 65 AICA = 0x08 }..e
4750: 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 53 55 42 num : uint { SUB
4760: 4c 41 4e 47 5f 45 4e 47 4c 49 53 48 5f 43 41 52 LANG_ENGLISH_CAR
4770: 49 42 42 45 41 4e 20 3d 20 30 78 30 39 20 7d 0d IBBEAN = 0x09 }.
4780: 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 53 .enum : uint { S
4790: 55 42 4c 41 4e 47 5f 45 4e 47 4c 49 53 48 5f 42 UBLANG_ENGLISH_B
47a0: 45 4c 49 5a 45 20 3d 20 30 78 30 61 20 7d 0d 0a ELIZE = 0x0a }..
47b0: 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 53 55 enum : uint { SU
47c0: 42 4c 41 4e 47 5f 45 4e 47 4c 49 53 48 5f 54 52 BLANG_ENGLISH_TR
47d0: 49 4e 49 44 41 44 20 3d 20 30 78 30 62 20 7d 0d INIDAD = 0x0b }.
47e0: 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 53 .enum : uint { S
47f0: 55 42 4c 41 4e 47 5f 45 4e 47 4c 49 53 48 5f 5a UBLANG_ENGLISH_Z
4800: 49 4d 42 41 42 57 45 20 3d 20 30 78 30 63 20 7d IMBABWE = 0x0c }
4810: 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
4820: 53 55 42 4c 41 4e 47 5f 45 4e 47 4c 49 53 48 5f SUBLANG_ENGLISH_
4830: 50 48 49 4c 49 50 50 49 4e 45 53 20 3d 20 30 78 PHILIPPINES = 0x
4840: 30 64 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 0d }..enum : uin
4850: 74 20 7b 20 53 55 42 4c 41 4e 47 5f 46 52 45 4e t { SUBLANG_FREN
4860: 43 48 20 3d 20 30 78 30 31 20 7d 0d 0a 65 6e 75 CH = 0x01 }..enu
4870: 6d 20 3a 20 75 69 6e 74 20 7b 20 53 55 42 4c 41 m : uint { SUBLA
4880: 4e 47 5f 46 52 45 4e 43 48 5f 42 45 4c 47 49 41 NG_FRENCH_BELGIA
4890: 4e 20 3d 20 30 78 30 32 20 7d 0d 0a 65 6e 75 6d N = 0x02 }..enum
48a0: 20 3a 20 75 69 6e 74 20 7b 20 53 55 42 4c 41 4e : uint { SUBLAN
48b0: 47 5f 46 52 45 4e 43 48 5f 43 41 4e 41 44 49 41 G_FRENCH_CANADIA
48c0: 4e 20 3d 20 30 78 30 33 20 7d 0d 0a 65 6e 75 6d N = 0x03 }..enum
48d0: 20 3a 20 75 69 6e 74 20 7b 20 53 55 42 4c 41 4e : uint { SUBLAN
48e0: 47 5f 46 52 45 4e 43 48 5f 53 57 49 53 53 20 3d G_FRENCH_SWISS =
48f0: 20 30 78 30 34 20 7d 0d 0a 65 6e 75 6d 20 3a 20 0x04 }..enum :
4900: 75 69 6e 74 20 7b 20 53 55 42 4c 41 4e 47 5f 46 uint { SUBLANG_F
4910: 52 45 4e 43 48 5f 4c 55 58 45 4d 42 4f 55 52 47 RENCH_LUXEMBOURG
4920: 20 3d 20 30 78 30 35 20 7d 0d 0a 65 6e 75 6d 20 = 0x05 }..enum
4930: 3a 20 75 69 6e 74 20 7b 20 53 55 42 4c 41 4e 47 : uint { SUBLANG
4940: 5f 46 52 45 4e 43 48 5f 4d 4f 4e 41 43 4f 20 3d _FRENCH_MONACO =
4950: 20 30 78 30 36 20 7d 0d 0a 65 6e 75 6d 20 3a 20 0x06 }..enum :
4960: 75 69 6e 74 20 7b 20 53 55 42 4c 41 4e 47 5f 47 uint { SUBLANG_G
4970: 45 52 4d 41 4e 20 3d 20 30 78 30 31 20 7d 0d 0a ERMAN = 0x01 }..
4980: 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 53 55 enum : uint { SU
4990: 42 4c 41 4e 47 5f 47 45 52 4d 41 4e 5f 53 57 49 BLANG_GERMAN_SWI
49a0: 53 53 20 3d 20 30 78 30 32 20 7d 0d 0a 65 6e 75 SS = 0x02 }..enu
49b0: 6d 20 3a 20 75 69 6e 74 20 7b 20 53 55 42 4c 41 m : uint { SUBLA
49c0: 4e 47 5f 47 45 52 4d 41 4e 5f 41 55 53 54 52 49 NG_GERMAN_AUSTRI
49d0: 41 4e 20 3d 20 30 78 30 33 20 7d 0d 0a 65 6e 75 AN = 0x03 }..enu
49e0: 6d 20 3a 20 75 69 6e 74 20 7b 20 53 55 42 4c 41 m : uint { SUBLA
49f0: 4e 47 5f 47 45 52 4d 41 4e 5f 4c 55 58 45 4d 42 NG_GERMAN_LUXEMB
4a00: 4f 55 52 47 20 3d 20 30 78 30 34 20 7d 0d 0a 65 OURG = 0x04 }..e
4a10: 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 53 55 42 num : uint { SUB
4a20: 4c 41 4e 47 5f 47 45 52 4d 41 4e 5f 4c 49 45 43 LANG_GERMAN_LIEC
4a30: 48 54 45 4e 53 54 45 49 4e 20 3d 20 30 78 30 35 HTENSTEIN = 0x05
4a40: 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 }..enum : uint
4a50: 7b 20 53 55 42 4c 41 4e 47 5f 49 54 41 4c 49 41 { SUBLANG_ITALIA
4a60: 4e 20 3d 20 30 78 30 31 20 7d 0d 0a 65 6e 75 6d N = 0x01 }..enum
4a70: 20 3a 20 75 69 6e 74 20 7b 20 53 55 42 4c 41 4e : uint { SUBLAN
4a80: 47 5f 49 54 41 4c 49 41 4e 5f 53 57 49 53 53 20 G_ITALIAN_SWISS
4a90: 3d 20 30 78 30 32 20 7d 0d 0a 2f 2f 20 23 69 66 = 0x02 }..// #if
4aa0: 20 5f 57 49 4e 33 32 5f 57 49 4e 4e 54 20 3e 3d _WIN32_WINNT >=
4ab0: 20 30 78 30 35 30 31 0d 0a 65 6e 75 6d 20 3a 20 0x0501..enum :
4ac0: 75 69 6e 74 20 7b 20 53 55 42 4c 41 4e 47 5f 4b uint { SUBLANG_K
4ad0: 41 53 48 4d 49 52 49 5f 53 41 53 49 41 20 3d 20 ASHMIRI_SASIA =
4ae0: 30 78 30 32 20 7d 0d 0a 2f 2f 20 23 65 6e 64 69 0x02 }..// #endi
4af0: 66 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b f..enum : uint {
4b00: 20 53 55 42 4c 41 4e 47 5f 4b 41 53 48 4d 49 52 SUBLANG_KASHMIR
4b10: 49 5f 49 4e 44 49 41 20 3d 20 30 78 30 32 20 7d I_INDIA = 0x02 }
4b20: 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
4b30: 53 55 42 4c 41 4e 47 5f 4b 4f 52 45 41 4e 20 3d SUBLANG_KOREAN =
4b40: 20 30 78 30 31 20 7d 0d 0a 65 6e 75 6d 20 3a 20 0x01 }..enum :
4b50: 75 69 6e 74 20 7b 20 53 55 42 4c 41 4e 47 5f 4c uint { SUBLANG_L
4b60: 49 54 48 55 41 4e 49 41 4e 20 3d 20 30 78 30 31 ITHUANIAN = 0x01
4b70: 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 }..enum : uint
4b80: 7b 20 53 55 42 4c 41 4e 47 5f 4d 41 4c 41 59 5f { SUBLANG_MALAY_
4b90: 4d 41 4c 41 59 53 49 41 20 3d 20 30 78 30 31 20 MALAYSIA = 0x01
4ba0: 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b }..enum : uint {
4bb0: 20 53 55 42 4c 41 4e 47 5f 4d 41 4c 41 59 5f 42 SUBLANG_MALAY_B
4bc0: 52 55 4e 45 49 5f 44 41 52 55 53 53 41 4c 41 4d RUNEI_DARUSSALAM
4bd0: 20 3d 20 30 78 30 32 20 7d 0d 0a 65 6e 75 6d 20 = 0x02 }..enum
4be0: 3a 20 75 69 6e 74 20 7b 20 53 55 42 4c 41 4e 47 : uint { SUBLANG
4bf0: 5f 4e 45 50 41 4c 49 5f 49 4e 44 49 41 20 3d 20 _NEPALI_INDIA =
4c00: 30 78 30 32 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 0x02 }..enum : u
4c10: 69 6e 74 20 7b 20 53 55 42 4c 41 4e 47 5f 4e 4f int { SUBLANG_NO
4c20: 52 57 45 47 49 41 4e 5f 42 4f 4b 4d 41 4c 20 3d RWEGIAN_BOKMAL =
4c30: 20 30 78 30 31 20 7d 0d 0a 65 6e 75 6d 20 3a 20 0x01 }..enum :
4c40: 75 69 6e 74 20 7b 20 53 55 42 4c 41 4e 47 5f 4e uint { SUBLANG_N
4c50: 4f 52 57 45 47 49 41 4e 5f 4e 59 4e 4f 52 53 4b ORWEGIAN_NYNORSK
4c60: 20 3d 20 30 78 30 32 20 7d 0d 0a 65 6e 75 6d 20 = 0x02 }..enum
4c70: 3a 20 75 69 6e 74 20 7b 20 53 55 42 4c 41 4e 47 : uint { SUBLANG
4c80: 5f 50 4f 52 54 55 47 55 45 53 45 20 3d 20 30 78 _PORTUGUESE = 0x
4c90: 30 32 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 02 }..enum : uin
4ca0: 74 20 7b 20 53 55 42 4c 41 4e 47 5f 50 4f 52 54 t { SUBLANG_PORT
4cb0: 55 47 55 45 53 45 5f 42 52 41 5a 49 4c 49 41 4e UGUESE_BRAZILIAN
4cc0: 20 3d 20 30 78 30 31 20 7d 0d 0a 65 6e 75 6d 20 = 0x01 }..enum
4cd0: 3a 20 75 69 6e 74 20 7b 20 53 55 42 4c 41 4e 47 : uint { SUBLANG
4ce0: 5f 53 45 52 42 49 41 4e 5f 4c 41 54 49 4e 20 3d _SERBIAN_LATIN =
4cf0: 20 30 78 30 32 20 7d 0d 0a 65 6e 75 6d 20 3a 20 0x02 }..enum :
4d00: 75 69 6e 74 20 7b 20 53 55 42 4c 41 4e 47 5f 53 uint { SUBLANG_S
4d10: 45 52 42 49 41 4e 5f 43 59 52 49 4c 4c 49 43 20 ERBIAN_CYRILLIC
4d20: 3d 20 30 78 30 33 20 7d 0d 0a 65 6e 75 6d 20 3a = 0x03 }..enum :
4d30: 20 75 69 6e 74 20 7b 20 53 55 42 4c 41 4e 47 5f uint { SUBLANG_
4d40: 53 50 41 4e 49 53 48 20 3d 20 30 78 30 31 20 7d SPANISH = 0x01 }
4d50: 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
4d60: 53 55 42 4c 41 4e 47 5f 53 50 41 4e 49 53 48 5f SUBLANG_SPANISH_
4d70: 4d 45 58 49 43 41 4e 20 3d 20 30 78 30 32 20 7d MEXICAN = 0x02 }
4d80: 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
4d90: 53 55 42 4c 41 4e 47 5f 53 50 41 4e 49 53 48 5f SUBLANG_SPANISH_
4da0: 4d 4f 44 45 52 4e 20 3d 20 30 78 30 33 20 7d 0d MODERN = 0x03 }.
4db0: 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 53 .enum : uint { S
4dc0: 55 42 4c 41 4e 47 5f 53 50 41 4e 49 53 48 5f 47 UBLANG_SPANISH_G
4dd0: 55 41 54 45 4d 41 4c 41 20 3d 20 30 78 30 34 20 UATEMALA = 0x04
4de0: 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b }..enum : uint {
4df0: 20 53 55 42 4c 41 4e 47 5f 53 50 41 4e 49 53 48 SUBLANG_SPANISH
4e00: 5f 43 4f 53 54 41 5f 52 49 43 41 20 3d 20 30 78 _COSTA_RICA = 0x
4e10: 30 35 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 05 }..enum : uin
4e20: 74 20 7b 20 53 55 42 4c 41 4e 47 5f 53 50 41 4e t { SUBLANG_SPAN
4e30: 49 53 48 5f 50 41 4e 41 4d 41 20 3d 20 30 78 30 ISH_PANAMA = 0x0
4e40: 36 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 6 }..enum : uint
4e50: 20 7b 20 53 55 42 4c 41 4e 47 5f 53 50 41 4e 49 { SUBLANG_SPANI
4e60: 53 48 5f 44 4f 4d 49 4e 49 43 41 4e 5f 52 45 50 SH_DOMINICAN_REP
4e70: 55 42 4c 49 43 20 3d 20 30 78 30 37 20 7d 0d 0a UBLIC = 0x07 }..
4e80: 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 53 55 enum : uint { SU
4e90: 42 4c 41 4e 47 5f 53 50 41 4e 49 53 48 5f 56 45 BLANG_SPANISH_VE
4ea0: 4e 45 5a 55 45 4c 41 20 3d 20 30 78 30 38 20 7d NEZUELA = 0x08 }
4eb0: 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
4ec0: 53 55 42 4c 41 4e 47 5f 53 50 41 4e 49 53 48 5f SUBLANG_SPANISH_
4ed0: 43 4f 4c 4f 4d 42 49 41 20 3d 20 30 78 30 39 20 COLOMBIA = 0x09
4ee0: 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b }..enum : uint {
4ef0: 20 53 55 42 4c 41 4e 47 5f 53 50 41 4e 49 53 48 SUBLANG_SPANISH
4f00: 5f 50 45 52 55 20 3d 20 30 78 30 61 20 7d 0d 0a _PERU = 0x0a }..
4f10: 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 53 55 enum : uint { SU
4f20: 42 4c 41 4e 47 5f 53 50 41 4e 49 53 48 5f 41 52 BLANG_SPANISH_AR
4f30: 47 45 4e 54 49 4e 41 20 3d 20 30 78 30 62 20 7d GENTINA = 0x0b }
4f40: 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
4f50: 53 55 42 4c 41 4e 47 5f 53 50 41 4e 49 53 48 5f SUBLANG_SPANISH_
4f60: 45 43 55 41 44 4f 52 20 3d 20 30 78 30 63 20 7d ECUADOR = 0x0c }
4f70: 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
4f80: 53 55 42 4c 41 4e 47 5f 53 50 41 4e 49 53 48 5f SUBLANG_SPANISH_
4f90: 43 48 49 4c 45 20 3d 20 30 78 30 64 20 7d 0d 0a CHILE = 0x0d }..
4fa0: 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 53 55 enum : uint { SU
4fb0: 42 4c 41 4e 47 5f 53 50 41 4e 49 53 48 5f 55 52 BLANG_SPANISH_UR
4fc0: 55 47 55 41 59 20 3d 20 30 78 30 65 20 7d 0d 0a UGUAY = 0x0e }..
4fd0: 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 53 55 enum : uint { SU
4fe0: 42 4c 41 4e 47 5f 53 50 41 4e 49 53 48 5f 50 41 BLANG_SPANISH_PA
4ff0: 52 41 47 55 41 59 20 3d 20 30 78 30 66 20 7d 0d RAGUAY = 0x0f }.
5000: 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 53 .enum : uint { S
5010: 55 42 4c 41 4e 47 5f 53 50 41 4e 49 53 48 5f 42 UBLANG_SPANISH_B
5020: 4f 4c 49 56 49 41 20 3d 20 30 78 31 30 20 7d 0d OLIVIA = 0x10 }.
5030: 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 53 .enum : uint { S
5040: 55 42 4c 41 4e 47 5f 53 50 41 4e 49 53 48 5f 45 UBLANG_SPANISH_E
5050: 4c 5f 53 41 4c 56 41 44 4f 52 20 3d 20 30 78 31 L_SALVADOR = 0x1
5060: 31 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 1 }..enum : uint
5070: 20 7b 20 53 55 42 4c 41 4e 47 5f 53 50 41 4e 49 { SUBLANG_SPANI
5080: 53 48 5f 48 4f 4e 44 55 52 41 53 20 3d 20 30 78 SH_HONDURAS = 0x
5090: 31 32 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 12 }..enum : uin
50a0: 74 20 7b 20 53 55 42 4c 41 4e 47 5f 53 50 41 4e t { SUBLANG_SPAN
50b0: 49 53 48 5f 4e 49 43 41 52 41 47 55 41 20 3d 20 ISH_NICARAGUA =
50c0: 30 78 31 33 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 0x13 }..enum : u
50d0: 69 6e 74 20 7b 20 53 55 42 4c 41 4e 47 5f 53 50 int { SUBLANG_SP
50e0: 41 4e 49 53 48 5f 50 55 45 52 54 4f 5f 52 49 43 ANISH_PUERTO_RIC
50f0: 4f 20 3d 20 30 78 31 34 20 7d 0d 0a 65 6e 75 6d O = 0x14 }..enum
5100: 20 3a 20 75 69 6e 74 20 7b 20 53 55 42 4c 41 4e : uint { SUBLAN
5110: 47 5f 53 57 45 44 49 53 48 20 3d 20 30 78 30 31 G_SWEDISH = 0x01
5120: 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 }..enum : uint
5130: 7b 20 53 55 42 4c 41 4e 47 5f 53 57 45 44 49 53 { SUBLANG_SWEDIS
5140: 48 5f 46 49 4e 4c 41 4e 44 20 3d 20 30 78 30 32 H_FINLAND = 0x02
5150: 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 }..enum : uint
5160: 7b 20 53 55 42 4c 41 4e 47 5f 55 52 44 55 5f 50 { SUBLANG_URDU_P
5170: 41 4b 49 53 54 41 4e 20 3d 20 30 78 30 31 20 7d AKISTAN = 0x01 }
5180: 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
5190: 53 55 42 4c 41 4e 47 5f 55 52 44 55 5f 49 4e 44 SUBLANG_URDU_IND
51a0: 49 41 20 3d 20 30 78 30 32 20 7d 0d 0a 65 6e 75 IA = 0x02 }..enu
51b0: 6d 20 3a 20 75 69 6e 74 20 7b 20 53 55 42 4c 41 m : uint { SUBLA
51c0: 4e 47 5f 55 5a 42 45 4b 5f 4c 41 54 49 4e 20 3d NG_UZBEK_LATIN =
51d0: 20 30 78 30 31 20 7d 0d 0a 65 6e 75 6d 20 3a 20 0x01 }..enum :
51e0: 75 69 6e 74 20 7b 20 53 55 42 4c 41 4e 47 5f 55 uint { SUBLANG_U
51f0: 5a 42 45 4b 5f 43 59 52 49 4c 4c 49 43 20 3d 20 ZBEK_CYRILLIC =
5200: 30 78 30 32 20 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 0x02 }....enum :
5210: 20 75 69 6e 74 20 7b 20 53 4f 52 54 5f 44 45 46 uint { SORT_DEF
5220: 41 55 4c 54 20 3d 20 30 78 30 20 7d 0d 0a 0d 0a AULT = 0x0 }....
5230: 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 53 4f enum : uint { SO
5240: 52 54 5f 4a 41 50 41 4e 45 53 45 5f 58 4a 49 53 RT_JAPANESE_XJIS
5250: 20 3d 20 30 78 30 20 7d 0d 0a 65 6e 75 6d 20 3a = 0x0 }..enum :
5260: 20 75 69 6e 74 20 7b 20 53 4f 52 54 5f 4a 41 50 uint { SORT_JAP
5270: 41 4e 45 53 45 5f 55 4e 49 43 4f 44 45 20 3d 20 ANESE_UNICODE =
5280: 30 78 31 20 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 0x1 }....enum :
5290: 75 69 6e 74 20 7b 20 53 4f 52 54 5f 43 48 49 4e uint { SORT_CHIN
52a0: 45 53 45 5f 42 49 47 35 20 3d 20 30 78 30 20 7d ESE_BIG5 = 0x0 }
52b0: 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
52c0: 53 4f 52 54 5f 43 48 49 4e 45 53 45 5f 50 52 43 SORT_CHINESE_PRC
52d0: 50 20 3d 20 30 78 30 20 7d 0d 0a 65 6e 75 6d 20 P = 0x0 }..enum
52e0: 3a 20 75 69 6e 74 20 7b 20 53 4f 52 54 5f 43 48 : uint { SORT_CH
52f0: 49 4e 45 53 45 5f 55 4e 49 43 4f 44 45 20 3d 20 INESE_UNICODE =
5300: 30 78 31 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 0x1 }..enum : ui
5310: 6e 74 20 7b 20 53 4f 52 54 5f 43 48 49 4e 45 53 nt { SORT_CHINES
5320: 45 5f 50 52 43 20 3d 20 30 78 32 20 7d 0d 0a 65 E_PRC = 0x2 }..e
5330: 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 53 4f 52 num : uint { SOR
5340: 54 5f 43 48 49 4e 45 53 45 5f 42 4f 50 4f 4d 4f T_CHINESE_BOPOMO
5350: 46 4f 20 3d 20 30 78 33 20 7d 0d 0a 0d 0a 65 6e FO = 0x3 }....en
5360: 75 6d 20 3a 20 75 69 6e 74 20 7b 20 53 4f 52 54 um : uint { SORT
5370: 5f 4b 4f 52 45 41 4e 5f 4b 53 43 20 3d 20 30 78 _KOREAN_KSC = 0x
5380: 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 0 }..enum : uint
5390: 20 7b 20 53 4f 52 54 5f 4b 4f 52 45 41 4e 5f 55 { SORT_KOREAN_U
53a0: 4e 49 43 4f 44 45 20 3d 20 30 78 31 20 7d 0d 0a NICODE = 0x1 }..
53b0: 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
53c0: 53 4f 52 54 5f 47 45 52 4d 41 4e 5f 50 48 4f 4e SORT_GERMAN_PHON
53d0: 45 5f 42 4f 4f 4b 20 3d 20 30 78 31 20 7d 0d 0a E_BOOK = 0x1 }..
53e0: 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
53f0: 53 4f 52 54 5f 48 55 4e 47 41 52 49 41 4e 5f 44 SORT_HUNGARIAN_D
5400: 45 46 41 55 4c 54 20 3d 20 30 78 30 20 7d 0d 0a EFAULT = 0x0 }..
5410: 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 53 4f enum : uint { SO
5420: 52 54 5f 48 55 4e 47 41 52 49 41 4e 5f 54 45 43 RT_HUNGARIAN_TEC
5430: 48 4e 49 43 41 4c 20 3d 20 30 78 31 20 7d 0d 0a HNICAL = 0x1 }..
5440: 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
5450: 53 4f 52 54 5f 47 45 4f 52 47 49 41 4e 5f 54 52 SORT_GEORGIAN_TR
5460: 41 44 49 54 49 4f 4e 41 4c 20 3d 20 30 78 30 20 ADITIONAL = 0x0
5470: 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b }..enum : uint {
5480: 20 53 4f 52 54 5f 47 45 4f 52 47 49 41 4e 5f 4d SORT_GEORGIAN_M
5490: 4f 44 45 52 4e 20 3d 20 30 78 31 20 7d 0d 0a 0d ODERN = 0x1 }...
54a0: 0a 57 4f 52 44 20 4d 41 4b 45 4c 41 4e 47 49 44 .WORD MAKELANGID
54b0: 28 55 53 48 4f 52 54 20 70 2c 20 55 53 48 4f 52 (USHORT p, USHOR
54c0: 54 20 73 29 20 7b 20 72 65 74 75 72 6e 20 28 28 T s) { return ((
54d0: 28 63 61 73 74 28 57 4f 52 44 29 28 73 29 29 20 (cast(WORD)(s))
54e0: 3c 3c 20 31 30 29 20 7c 20 63 61 73 74 28 57 4f << 10) | cast(WO
54f0: 52 44 29 28 70 29 29 3b 20 7d 0d 0a 57 4f 52 44 RD)(p)); }..WORD
5500: 20 50 52 49 4d 41 52 59 4c 41 4e 47 49 44 28 57 PRIMARYLANGID(W
5510: 4f 52 44 20 6c 67 69 64 29 20 7b 20 72 65 74 75 ORD lgid) { retu
5520: 72 6e 20 6c 67 69 64 20 26 20 30 78 33 66 66 3b rn lgid & 0x3ff;
5530: 20 7d 0d 0a 57 4f 52 44 20 53 55 42 4c 41 4e 47 }..WORD SUBLANG
5540: 49 44 28 57 4f 52 44 20 6c 67 69 64 29 20 7b 20 ID(WORD lgid) {
5550: 72 65 74 75 72 6e 20 6c 67 69 64 20 3e 3e 3e 20 return lgid >>>
5560: 31 30 3b 20 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 10; }....enum :
5570: 75 69 6e 74 20 7b 20 4e 4c 53 5f 56 41 4c 49 44 uint { NLS_VALID
5580: 5f 4c 4f 43 41 4c 45 5f 4d 41 53 4b 20 3d 20 30 _LOCALE_MASK = 0
5590: 78 30 30 30 66 66 66 66 66 20 7d 0d 0a 0d 0a 44 x000fffff }....D
55a0: 57 4f 52 44 20 4d 41 4b 45 4c 43 49 44 28 57 4f WORD MAKELCID(WO
55b0: 52 44 20 6c 67 69 64 2c 20 57 4f 52 44 20 73 72 RD lgid, WORD sr
55c0: 74 69 64 29 20 7b 20 72 65 74 75 72 6e 20 28 28 tid) { return ((
55d0: 63 61 73 74 28 44 57 4f 52 44 29 73 72 74 69 64 cast(DWORD)srtid
55e0: 29 20 3c 3c 20 31 36 29 20 7c 20 28 63 61 73 74 ) << 16) | (cast
55f0: 28 44 57 4f 52 44 29 6c 67 69 64 29 3b 20 7d 0d (DWORD)lgid); }.
5600: 0a 44 57 4f 52 44 20 4d 41 4b 45 53 4f 52 54 4c .DWORD MAKESORTL
5610: 43 49 44 28 57 4f 52 44 20 6c 67 69 64 2c 20 57 CID(WORD lgid, W
5620: 4f 52 44 20 73 72 74 69 64 2c 20 57 4f 52 44 20 ORD srtid, WORD
5630: 76 65 72 29 20 7b 20 72 65 74 75 72 6e 20 28 4d ver) { return (M
5640: 41 4b 45 4c 43 49 44 28 6c 67 69 64 2c 20 73 72 AKELCID(lgid, sr
5650: 74 69 64 29 29 20 7c 20 28 28 63 61 73 74 28 44 tid)) | ((cast(D
5660: 57 4f 52 44 29 76 65 72 29 20 3c 3c 20 32 30 29 WORD)ver) << 20)
5670: 3b 20 7d 0d 0a 57 4f 52 44 20 4c 41 4e 47 49 44 ; }..WORD LANGID
5680: 46 52 4f 4d 4c 43 49 44 28 4c 43 49 44 20 6c 63 FROMLCID(LCID lc
5690: 69 64 29 20 7b 20 72 65 74 75 72 6e 20 6c 63 69 id) { return lci
56a0: 64 3b 20 7d 0d 0a 57 4f 52 44 20 53 4f 52 54 49 d; }..WORD SORTI
56b0: 44 46 52 4f 4d 4c 43 49 44 28 4c 43 49 44 20 6c DFROMLCID(LCID l
56c0: 63 69 64 29 20 7b 20 72 65 74 75 72 6e 20 28 63 cid) { return (c
56d0: 61 73 74 28 44 57 4f 52 44 29 6c 63 69 64 20 3e ast(DWORD)lcid >
56e0: 3e 3e 20 31 36 29 20 26 20 30 78 66 3b 20 7d 0d >> 16) & 0xf; }.
56f0: 0a 57 4f 52 44 20 53 4f 52 54 56 45 52 53 49 4f .WORD SORTVERSIO
5700: 4e 46 52 4f 4d 4c 43 49 44 28 4c 43 49 44 20 6c NFROMLCID(LCID l
5710: 63 69 64 29 20 7b 20 72 65 74 75 72 6e 20 28 63 cid) { return (c
5720: 61 73 74 28 44 57 4f 52 44 29 6c 63 69 64 20 3e ast(DWORD)lcid >
5730: 3e 3e 20 32 30 29 20 26 20 30 78 66 3b 20 7d 0d >> 20) & 0xf; }.
5740: 0a 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b ...enum : uint {
5750: 20 4c 41 4e 47 5f 53 59 53 54 45 4d 5f 44 45 46 LANG_SYSTEM_DEF
5760: 41 55 4c 54 20 3d 20 28 53 55 42 4c 41 4e 47 5f AULT = (SUBLANG_
5770: 53 59 53 5f 44 45 46 41 55 4c 54 20 3c 3c 20 31 SYS_DEFAULT << 1
5780: 30 29 20 7c 20 4c 41 4e 47 5f 4e 45 55 54 52 41 0) | LANG_NEUTRA
5790: 4c 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 L }..enum : uint
57a0: 20 7b 20 4c 41 4e 47 5f 55 53 45 52 5f 44 45 46 { LANG_USER_DEF
57b0: 41 55 4c 54 20 3d 20 28 53 55 42 4c 41 4e 47 5f AULT = (SUBLANG_
57c0: 44 45 46 41 55 4c 54 20 3c 3c 20 31 30 29 20 7c DEFAULT << 10) |
57d0: 20 4c 41 4e 47 5f 4e 45 55 54 52 41 4c 20 7d 0d LANG_NEUTRAL }.
57e0: 0a 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b ...enum : uint {
57f0: 20 4c 4f 43 41 4c 45 5f 53 59 53 54 45 4d 5f 44 LOCALE_SYSTEM_D
5800: 45 46 41 55 4c 54 20 3d 20 28 53 4f 52 54 5f 44 EFAULT = (SORT_D
5810: 45 46 41 55 4c 54 20 3c 3c 20 31 36 29 20 7c 20 EFAULT << 16) |
5820: 4c 41 4e 47 5f 53 59 53 54 45 4d 5f 44 45 46 41 LANG_SYSTEM_DEFA
5830: 55 4c 54 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 ULT }..enum : ui
5840: 6e 74 20 7b 20 4c 4f 43 41 4c 45 5f 55 53 45 52 nt { LOCALE_USER
5850: 5f 44 45 46 41 55 4c 54 20 3d 20 28 53 4f 52 54 _DEFAULT = (SORT
5860: 5f 44 45 46 41 55 4c 54 20 3c 3c 20 31 36 29 20 _DEFAULT << 16)
5870: 7c 20 4c 41 4e 47 5f 55 53 45 52 5f 44 45 46 41 | LANG_USER_DEFA
5880: 55 4c 54 20 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 ULT }....enum :
5890: 75 69 6e 74 20 7b 20 4c 4f 43 41 4c 45 5f 4e 45 uint { LOCALE_NE
58a0: 55 54 52 41 4c 20 3d 20 28 53 4f 52 54 5f 44 45 UTRAL = (SORT_DE
58b0: 46 41 55 4c 54 20 3c 3c 20 31 36 29 20 7c 20 28 FAULT << 16) | (
58c0: 53 55 42 4c 41 4e 47 5f 4e 45 55 54 52 41 4c 20 SUBLANG_NEUTRAL
58d0: 3c 3c 20 31 30 29 20 7c 20 4c 41 4e 47 5f 4e 45 << 10) | LANG_NE
58e0: 55 54 52 41 4c 20 7d 0d 0a 0d 0a 65 6e 75 6d 20 UTRAL }....enum
58f0: 3a 20 75 69 6e 74 20 7b 20 4c 4f 43 41 4c 45 5f : uint { LOCALE_
5900: 49 4e 56 41 52 49 41 4e 54 20 3d 20 28 53 4f 52 INVARIANT = (SOR
5910: 54 5f 44 45 46 41 55 4c 54 20 3c 3c 20 31 36 29 T_DEFAULT << 16)
5920: 20 7c 20 28 53 55 42 4c 41 4e 47 5f 4e 45 55 54 | (SUBLANG_NEUT
5930: 52 41 4c 20 3c 3c 20 31 30 29 20 7c 20 4c 41 4e RAL << 10) | LAN
5940: 47 5f 49 4e 56 41 52 49 41 4e 54 20 7d 0d 0a 0d G_INVARIANT }...
5950: 0a 2f 2f 20 23 69 66 20 21 20 64 65 66 69 6e 65 .// #if ! define
5960: 64 28 6c 69 6e 74 29 0d 0a 2f 2f 20 23 2e 2e 2e d(lint)..// #...
5970: 0d 0a 2f 2f 20 23 2e 2e 2e 0d 0a 2f 2f 20 23 2e ..// #.....// #.
5980: 2e 2e 0d 0a 0d 0a 2f 2f 20 23 65 6c 73 65 20 2f ......// #else /
5990: 2f 20 6c 69 6e 74 0d 0a 0d 0a 2f 2f 20 23 64 65 / lint....// #de
59a0: 66 69 6e 65 20 55 4e 52 45 46 45 52 45 4e 43 45 fine UNREFERENCE
59b0: 44 5f 50 41 52 41 4d 45 54 45 52 28 50 29 20 7b D_PARAMETER(P) {
59c0: 20 28 50 29 20 3d 20 28 50 29 3b 20 7d 0d 0a 2f (P) = (P); }../
59d0: 2f 20 23 64 65 66 69 6e 65 20 44 42 47 5f 55 4e / #define DBG_UN
59e0: 52 45 46 45 52 45 4e 43 45 44 5f 50 41 52 41 4d REFERENCED_PARAM
59f0: 45 54 45 52 28 50 29 20 7b 20 28 50 29 20 3d 20 ETER(P) { (P) =
5a00: 28 50 29 3b 20 7d 0d 0a 2f 2f 20 23 64 65 66 69 (P); }..// #defi
5a10: 6e 65 20 44 42 47 5f 55 4e 52 45 46 45 52 45 4e ne DBG_UNREFEREN
5a20: 43 45 44 5f 4c 4f 43 41 4c 5f 56 41 52 49 41 42 CED_LOCAL_VARIAB
5a30: 4c 45 28 56 29 20 7b 20 28 56 29 20 3d 20 28 56 LE(V) { (V) = (V
5a40: 29 3b 20 7d 0d 0a 0d 0a 2f 2f 20 23 65 6e 64 69 ); }....// #endi
5a50: 66 20 2f 2f 20 6c 69 6e 74 0d 0a 0d 0a 2f 2f 20 f // lint....//
5a60: 23 69 66 20 28 5f 4d 53 43 5f 56 45 52 20 3e 20 #if (_MSC_VER >
5a70: 31 32 30 30 29 0d 0a 2f 2f 20 23 64 65 66 69 6e 1200)..// #defin
5a80: 65 20 44 45 46 41 55 4c 54 5f 55 4e 52 45 41 43 e DEFAULT_UNREAC
5a90: 48 41 42 4c 45 20 64 65 66 61 75 6c 74 3a 20 5f HABLE default: _
5aa0: 5f 61 73 73 75 6d 65 28 30 29 0d 0a 2f 2f 20 23 _assume(0)..// #
5ab0: 65 6c 73 65 0d 0a 0d 0a 2f 2f 20 23 2e 2e 2e 0d else....// #....
5ac0: 0a 0d 0a 2f 2f 20 23 65 6e 64 69 66 0d 0a 0d 0a ...// #endif....
5ad0: 2f 2f 20 23 69 66 6e 64 65 66 20 57 49 4e 33 32 // #ifndef WIN32
5ae0: 5f 4e 4f 5f 53 54 41 54 55 53 20 0d 0a 0d 0a 65 _NO_STATUS ....e
5af0: 6e 75 6d 20 3a 20 44 57 4f 52 44 20 7b 20 53 54 num : DWORD { ST
5b00: 41 54 55 53 5f 57 41 49 54 5f 30 20 3d 20 30 78 ATUS_WAIT_0 = 0x
5b10: 30 30 30 30 30 30 30 30 20 7d 0d 0a 65 6e 75 6d 00000000 }..enum
5b20: 20 3a 20 44 57 4f 52 44 20 7b 20 53 54 41 54 55 : DWORD { STATU
5b30: 53 5f 41 42 41 4e 44 4f 4e 45 44 5f 57 41 49 54 S_ABANDONED_WAIT
5b40: 5f 30 20 3d 20 30 78 30 30 30 30 30 30 38 30 20 _0 = 0x00000080
5b50: 7d 0d 0a 65 6e 75 6d 20 3a 20 44 57 4f 52 44 20 }..enum : DWORD
5b60: 7b 20 53 54 41 54 55 53 5f 55 53 45 52 5f 41 50 { STATUS_USER_AP
5b70: 43 20 3d 20 30 78 30 30 30 30 30 30 43 30 20 7d C = 0x000000C0 }
5b80: 0d 0a 65 6e 75 6d 20 3a 20 44 57 4f 52 44 20 7b ..enum : DWORD {
5b90: 20 53 54 41 54 55 53 5f 54 49 4d 45 4f 55 54 20 STATUS_TIMEOUT
5ba0: 3d 20 30 78 30 30 30 30 30 31 30 32 20 7d 0d 0a = 0x00000102 }..
5bb0: 65 6e 75 6d 20 3a 20 44 57 4f 52 44 20 7b 20 53 enum : DWORD { S
5bc0: 54 41 54 55 53 5f 50 45 4e 44 49 4e 47 20 3d 20 TATUS_PENDING =
5bd0: 30 78 30 30 30 30 30 31 30 33 20 7d 0d 0a 65 6e 0x00000103 }..en
5be0: 75 6d 20 3a 20 44 57 4f 52 44 20 7b 20 44 42 47 um : DWORD { DBG
5bf0: 5f 45 58 43 45 50 54 49 4f 4e 5f 48 41 4e 44 4c _EXCEPTION_HANDL
5c00: 45 44 20 3d 20 30 78 30 30 30 31 30 30 30 31 20 ED = 0x00010001
5c10: 7d 0d 0a 65 6e 75 6d 20 3a 20 44 57 4f 52 44 20 }..enum : DWORD
5c20: 7b 20 44 42 47 5f 43 4f 4e 54 49 4e 55 45 20 3d { DBG_CONTINUE =
5c30: 20 30 78 30 30 30 31 30 30 30 32 20 7d 0d 0a 65 0x00010002 }..e
5c40: 6e 75 6d 20 3a 20 44 57 4f 52 44 20 7b 20 53 54 num : DWORD { ST
5c50: 41 54 55 53 5f 53 45 47 4d 45 4e 54 5f 4e 4f 54 ATUS_SEGMENT_NOT
5c60: 49 46 49 43 41 54 49 4f 4e 20 3d 20 30 78 34 30 IFICATION = 0x40
5c70: 30 30 30 30 30 35 20 7d 0d 0a 65 6e 75 6d 20 3a 000005 }..enum :
5c80: 20 44 57 4f 52 44 20 7b 20 44 42 47 5f 54 45 52 DWORD { DBG_TER
5c90: 4d 49 4e 41 54 45 5f 54 48 52 45 41 44 20 3d 20 MINATE_THREAD =
5ca0: 30 78 34 30 30 31 30 30 30 33 20 7d 0d 0a 65 6e 0x40010003 }..en
5cb0: 75 6d 20 3a 20 44 57 4f 52 44 20 7b 20 44 42 47 um : DWORD { DBG
5cc0: 5f 54 45 52 4d 49 4e 41 54 45 5f 50 52 4f 43 45 _TERMINATE_PROCE
5cd0: 53 53 20 3d 20 30 78 34 30 30 31 30 30 30 34 20 SS = 0x40010004
5ce0: 7d 0d 0a 65 6e 75 6d 20 3a 20 44 57 4f 52 44 20 }..enum : DWORD
5cf0: 7b 20 44 42 47 5f 43 4f 4e 54 52 4f 4c 5f 43 20 { DBG_CONTROL_C
5d00: 3d 20 30 78 34 30 30 31 30 30 30 35 20 7d 0d 0a = 0x40010005 }..
5d10: 65 6e 75 6d 20 3a 20 44 57 4f 52 44 20 7b 20 44 enum : DWORD { D
5d20: 42 47 5f 43 4f 4e 54 52 4f 4c 5f 42 52 45 41 4b BG_CONTROL_BREAK
5d30: 20 3d 20 30 78 34 30 30 31 30 30 30 38 20 7d 0d = 0x40010008 }.
5d40: 0a 65 6e 75 6d 20 3a 20 44 57 4f 52 44 20 7b 20 .enum : DWORD {
5d50: 53 54 41 54 55 53 5f 47 55 41 52 44 5f 50 41 47 STATUS_GUARD_PAG
5d60: 45 5f 56 49 4f 4c 41 54 49 4f 4e 20 3d 20 30 78 E_VIOLATION = 0x
5d70: 38 30 30 30 30 30 30 31 20 7d 0d 0a 65 6e 75 6d 80000001 }..enum
5d80: 20 3a 20 44 57 4f 52 44 20 7b 20 53 54 41 54 55 : DWORD { STATU
5d90: 53 5f 44 41 54 41 54 59 50 45 5f 4d 49 53 41 4c S_DATATYPE_MISAL
5da0: 49 47 4e 4d 45 4e 54 20 3d 20 30 78 38 30 30 30 IGNMENT = 0x8000
5db0: 30 30 30 32 20 7d 0d 0a 65 6e 75 6d 20 3a 20 44 0002 }..enum : D
5dc0: 57 4f 52 44 20 7b 20 53 54 41 54 55 53 5f 42 52 WORD { STATUS_BR
5dd0: 45 41 4b 50 4f 49 4e 54 20 3d 20 30 78 38 30 30 EAKPOINT = 0x800
5de0: 30 30 30 30 33 20 7d 0d 0a 65 6e 75 6d 20 3a 20 00003 }..enum :
5df0: 44 57 4f 52 44 20 7b 20 53 54 41 54 55 53 5f 53 DWORD { STATUS_S
5e00: 49 4e 47 4c 45 5f 53 54 45 50 20 3d 20 30 78 38 INGLE_STEP = 0x8
5e10: 30 30 30 30 30 30 34 20 7d 0d 0a 65 6e 75 6d 20 0000004 }..enum
5e20: 3a 20 44 57 4f 52 44 20 7b 20 44 42 47 5f 45 58 : DWORD { DBG_EX
5e30: 43 45 50 54 49 4f 4e 5f 4e 4f 54 5f 48 41 4e 44 CEPTION_NOT_HAND
5e40: 4c 45 44 20 3d 20 30 78 38 30 30 31 30 30 30 31 LED = 0x80010001
5e50: 20 7d 0d 0a 65 6e 75 6d 20 3a 20 44 57 4f 52 44 }..enum : DWORD
5e60: 20 7b 20 53 54 41 54 55 53 5f 41 43 43 45 53 53 { STATUS_ACCESS
5e70: 5f 56 49 4f 4c 41 54 49 4f 4e 20 3d 20 30 78 43 _VIOLATION = 0xC
5e80: 30 30 30 30 30 30 35 20 7d 0d 0a 65 6e 75 6d 20 0000005 }..enum
5e90: 3a 20 44 57 4f 52 44 20 7b 20 53 54 41 54 55 53 : DWORD { STATUS
5ea0: 5f 49 4e 5f 50 41 47 45 5f 45 52 52 4f 52 20 3d _IN_PAGE_ERROR =
5eb0: 20 30 78 43 30 30 30 30 30 30 36 20 7d 0d 0a 65 0xC0000006 }..e
5ec0: 6e 75 6d 20 3a 20 44 57 4f 52 44 20 7b 20 53 54 num : DWORD { ST
5ed0: 41 54 55 53 5f 49 4e 56 41 4c 49 44 5f 48 41 4e ATUS_INVALID_HAN
5ee0: 44 4c 45 20 3d 20 30 78 43 30 30 30 30 30 30 38 DLE = 0xC0000008
5ef0: 20 7d 0d 0a 65 6e 75 6d 20 3a 20 44 57 4f 52 44 }..enum : DWORD
5f00: 20 7b 20 53 54 41 54 55 53 5f 4e 4f 5f 4d 45 4d { STATUS_NO_MEM
5f10: 4f 52 59 20 3d 20 30 78 43 30 30 30 30 30 31 37 ORY = 0xC0000017
5f20: 20 7d 0d 0a 65 6e 75 6d 20 3a 20 44 57 4f 52 44 }..enum : DWORD
5f30: 20 7b 20 53 54 41 54 55 53 5f 49 4c 4c 45 47 41 { STATUS_ILLEGA
5f40: 4c 5f 49 4e 53 54 52 55 43 54 49 4f 4e 20 3d 20 L_INSTRUCTION =
5f50: 30 78 43 30 30 30 30 30 31 44 20 7d 0d 0a 65 6e 0xC000001D }..en
5f60: 75 6d 20 3a 20 44 57 4f 52 44 20 7b 20 53 54 41 um : DWORD { STA
5f70: 54 55 53 5f 4e 4f 4e 43 4f 4e 54 49 4e 55 41 42 TUS_NONCONTINUAB
5f80: 4c 45 5f 45 58 43 45 50 54 49 4f 4e 20 3d 20 30 LE_EXCEPTION = 0
5f90: 78 43 30 30 30 30 30 32 35 20 7d 0d 0a 65 6e 75 xC0000025 }..enu
5fa0: 6d 20 3a 20 44 57 4f 52 44 20 7b 20 53 54 41 54 m : DWORD { STAT
5fb0: 55 53 5f 49 4e 56 41 4c 49 44 5f 44 49 53 50 4f US_INVALID_DISPO
5fc0: 53 49 54 49 4f 4e 20 3d 20 30 78 43 30 30 30 30 SITION = 0xC0000
5fd0: 30 32 36 20 7d 0d 0a 65 6e 75 6d 20 3a 20 44 57 026 }..enum : DW
5fe0: 4f 52 44 20 7b 20 53 54 41 54 55 53 5f 41 52 52 ORD { STATUS_ARR
5ff0: 41 59 5f 42 4f 55 4e 44 53 5f 45 58 43 45 45 44 AY_BOUNDS_EXCEED
6000: 45 44 20 3d 20 30 78 43 30 30 30 30 30 38 43 20 ED = 0xC000008C
6010: 7d 0d 0a 65 6e 75 6d 20 3a 20 44 57 4f 52 44 20 }..enum : DWORD
6020: 7b 20 53 54 41 54 55 53 5f 46 4c 4f 41 54 5f 44 { STATUS_FLOAT_D
6030: 45 4e 4f 52 4d 41 4c 5f 4f 50 45 52 41 4e 44 20 ENORMAL_OPERAND
6040: 3d 20 30 78 43 30 30 30 30 30 38 44 20 7d 0d 0a = 0xC000008D }..
6050: 65 6e 75 6d 20 3a 20 44 57 4f 52 44 20 7b 20 53 enum : DWORD { S
6060: 54 41 54 55 53 5f 46 4c 4f 41 54 5f 44 49 56 49 TATUS_FLOAT_DIVI
6070: 44 45 5f 42 59 5f 5a 45 52 4f 20 3d 20 30 78 43 DE_BY_ZERO = 0xC
6080: 30 30 30 30 30 38 45 20 7d 0d 0a 65 6e 75 6d 20 000008E }..enum
6090: 3a 20 44 57 4f 52 44 20 7b 20 53 54 41 54 55 53 : DWORD { STATUS
60a0: 5f 46 4c 4f 41 54 5f 49 4e 45 58 41 43 54 5f 52 _FLOAT_INEXACT_R
60b0: 45 53 55 4c 54 20 3d 20 30 78 43 30 30 30 30 30 ESULT = 0xC00000
60c0: 38 46 20 7d 0d 0a 65 6e 75 6d 20 3a 20 44 57 4f 8F }..enum : DWO
60d0: 52 44 20 7b 20 53 54 41 54 55 53 5f 46 4c 4f 41 RD { STATUS_FLOA
60e0: 54 5f 49 4e 56 41 4c 49 44 5f 4f 50 45 52 41 54 T_INVALID_OPERAT
60f0: 49 4f 4e 20 3d 20 30 78 43 30 30 30 30 30 39 30 ION = 0xC0000090
6100: 20 7d 0d 0a 65 6e 75 6d 20 3a 20 44 57 4f 52 44 }..enum : DWORD
6110: 20 7b 20 53 54 41 54 55 53 5f 46 4c 4f 41 54 5f { STATUS_FLOAT_
6120: 4f 56 45 52 46 4c 4f 57 20 3d 20 30 78 43 30 30 OVERFLOW = 0xC00
6130: 30 30 30 39 31 20 7d 0d 0a 65 6e 75 6d 20 3a 20 00091 }..enum :
6140: 44 57 4f 52 44 20 7b 20 53 54 41 54 55 53 5f 46 DWORD { STATUS_F
6150: 4c 4f 41 54 5f 53 54 41 43 4b 5f 43 48 45 43 4b LOAT_STACK_CHECK
6160: 20 3d 20 30 78 43 30 30 30 30 30 39 32 20 7d 0d = 0xC0000092 }.
6170: 0a 65 6e 75 6d 20 3a 20 44 57 4f 52 44 20 7b 20 .enum : DWORD {
6180: 53 54 41 54 55 53 5f 46 4c 4f 41 54 5f 55 4e 44 STATUS_FLOAT_UND
6190: 45 52 46 4c 4f 57 20 3d 20 30 78 43 30 30 30 30 ERFLOW = 0xC0000
61a0: 30 39 33 20 7d 0d 0a 65 6e 75 6d 20 3a 20 44 57 093 }..enum : DW
61b0: 4f 52 44 20 7b 20 53 54 41 54 55 53 5f 49 4e 54 ORD { STATUS_INT
61c0: 45 47 45 52 5f 44 49 56 49 44 45 5f 42 59 5f 5a EGER_DIVIDE_BY_Z
61d0: 45 52 4f 20 3d 20 30 78 43 30 30 30 30 30 39 34 ERO = 0xC0000094
61e0: 20 7d 0d 0a 65 6e 75 6d 20 3a 20 44 57 4f 52 44 }..enum : DWORD
61f0: 20 7b 20 53 54 41 54 55 53 5f 49 4e 54 45 47 45 { STATUS_INTEGE
6200: 52 5f 4f 56 45 52 46 4c 4f 57 20 3d 20 30 78 43 R_OVERFLOW = 0xC
6210: 30 30 30 30 30 39 35 20 7d 0d 0a 65 6e 75 6d 20 0000095 }..enum
6220: 3a 20 44 57 4f 52 44 20 7b 20 53 54 41 54 55 53 : DWORD { STATUS
6230: 5f 50 52 49 56 49 4c 45 47 45 44 5f 49 4e 53 54 _PRIVILEGED_INST
6240: 52 55 43 54 49 4f 4e 20 3d 20 30 78 43 30 30 30 RUCTION = 0xC000
6250: 30 30 39 36 20 7d 0d 0a 65 6e 75 6d 20 3a 20 44 0096 }..enum : D
6260: 57 4f 52 44 20 7b 20 53 54 41 54 55 53 5f 53 54 WORD { STATUS_ST
6270: 41 43 4b 5f 4f 56 45 52 46 4c 4f 57 20 3d 20 30 ACK_OVERFLOW = 0
6280: 78 43 30 30 30 30 30 46 44 20 7d 0d 0a 65 6e 75 xC00000FD }..enu
6290: 6d 20 3a 20 44 57 4f 52 44 20 7b 20 53 54 41 54 m : DWORD { STAT
62a0: 55 53 5f 43 4f 4e 54 52 4f 4c 5f 43 5f 45 58 49 US_CONTROL_C_EXI
62b0: 54 20 3d 20 30 78 43 30 30 30 30 31 33 41 20 7d T = 0xC000013A }
62c0: 0d 0a 65 6e 75 6d 20 3a 20 44 57 4f 52 44 20 7b ..enum : DWORD {
62d0: 20 53 54 41 54 55 53 5f 46 4c 4f 41 54 5f 4d 55 STATUS_FLOAT_MU
62e0: 4c 54 49 50 4c 45 5f 46 41 55 4c 54 53 20 3d 20 LTIPLE_FAULTS =
62f0: 30 78 43 30 30 30 30 32 42 34 20 7d 0d 0a 65 6e 0xC00002B4 }..en
6300: 75 6d 20 3a 20 44 57 4f 52 44 20 7b 20 53 54 41 um : DWORD { STA
6310: 54 55 53 5f 46 4c 4f 41 54 5f 4d 55 4c 54 49 50 TUS_FLOAT_MULTIP
6320: 4c 45 5f 54 52 41 50 53 20 3d 20 30 78 43 30 30 LE_TRAPS = 0xC00
6330: 30 30 32 42 35 20 7d 0d 0a 65 6e 75 6d 20 3a 20 002B5 }..enum :
6340: 44 57 4f 52 44 20 7b 20 53 54 41 54 55 53 5f 52 DWORD { STATUS_R
6350: 45 47 5f 4e 41 54 5f 43 4f 4e 53 55 4d 50 54 49 EG_NAT_CONSUMPTI
6360: 4f 4e 20 3d 20 30 78 43 30 30 30 30 32 43 39 20 ON = 0xC00002C9
6370: 7d 0d 0a 2f 2f 20 23 69 66 20 64 65 66 69 6e 65 }..// #if define
6380: 64 28 53 54 41 54 55 53 5f 53 55 43 43 45 53 53 d(STATUS_SUCCESS
6390: 29 20 7c 7c 20 28 5f 57 49 4e 33 32 5f 57 49 4e ) || (_WIN32_WIN
63a0: 4e 54 20 3e 20 30 78 30 35 30 30 29 20 7c 7c 20 NT > 0x0500) ||
63b0: 28 5f 57 49 4e 33 32 5f 46 55 53 49 4f 4e 20 3e (_WIN32_FUSION >
63c0: 3d 20 30 78 30 31 30 30 29 20 0d 0a 65 6e 75 6d = 0x0100) ..enum
63d0: 20 3a 20 44 57 4f 52 44 20 7b 20 53 54 41 54 55 : DWORD { STATU
63e0: 53 5f 53 58 53 5f 45 41 52 4c 59 5f 44 45 41 43 S_SXS_EARLY_DEAC
63f0: 54 49 56 41 54 49 4f 4e 20 3d 20 30 78 43 30 31 TIVATION = 0xC01
6400: 35 30 30 30 46 20 7d 0d 0a 65 6e 75 6d 20 3a 20 5000F }..enum :
6410: 44 57 4f 52 44 20 7b 20 53 54 41 54 55 53 5f 53 DWORD { STATUS_S
6420: 58 53 5f 49 4e 56 41 4c 49 44 5f 44 45 41 43 54 XS_INVALID_DEACT
6430: 49 56 41 54 49 4f 4e 20 3d 20 30 78 43 30 31 35 IVATION = 0xC015
6440: 30 30 31 30 20 7d 0d 0a 2f 2f 20 23 65 6e 64 69 0010 }..// #endi
6450: 66 20 0d 0a 0d 0a 2f 2f 20 23 65 6e 64 69 66 20 f ....// #endif
6460: 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
6470: 4d 41 58 49 4d 55 4d 5f 57 41 49 54 5f 4f 42 4a MAXIMUM_WAIT_OBJ
6480: 45 43 54 53 20 3d 20 36 34 20 7d 0d 0a 0d 0a 61 ECTS = 64 }....a
6490: 6c 69 61 73 20 4d 41 58 43 48 41 52 20 4d 41 58 lias MAXCHAR MAX
64a0: 49 4d 55 4d 5f 53 55 53 50 45 4e 44 5f 43 4f 55 IMUM_SUSPEND_COU
64b0: 4e 54 3b 0d 0a 0d 0a 61 6c 69 61 73 20 55 4c 4f NT;....alias ULO
64c0: 4e 47 5f 50 54 52 20 4b 53 50 49 4e 5f 4c 4f 43 NG_PTR KSPIN_LOC
64d0: 4b 3b 0d 0a 61 6c 69 61 73 20 4b 53 50 49 4e 5f K;..alias KSPIN_
64e0: 4c 4f 43 4b 2a 20 50 4b 53 50 49 4e 5f 4c 4f 43 LOCK* PKSPIN_LOC
64f0: 4b 3b 0d 0a 0d 0a 2f 2f 20 23 69 66 20 64 65 66 K;....// #if def
6500: 69 6e 65 64 28 5f 41 4d 44 36 34 5f 29 0d 0a 0d ined(_AMD64_)...
6510: 0a 2f 2f 20 23 69 66 20 64 65 66 69 6e 65 64 28 .// #if defined(
6520: 5f 4d 5f 41 4d 44 36 34 29 20 26 26 20 21 64 65 _M_AMD64) && !de
6530: 66 69 6e 65 64 28 52 43 5f 49 4e 56 4f 4b 45 44 fined(RC_INVOKED
6540: 29 20 26 26 20 21 64 65 66 69 6e 65 64 28 4d 49 ) && !defined(MI
6550: 44 4c 5f 50 41 53 53 29 0d 0a 0d 0a 2f 2f 20 23 DL_PASS)....// #
6560: 2e 2e 2e 0d 0a 0d 0a 2f 2f 20 2e 2e 2e 0d 0a 0d .......// ......
6570: 0a 2f 2f 20 23 2e 2e 2e 0d 0a 0d 0a 2f 2f 20 23 .// #.......// #
6580: 2e 2e 2e 0d 0a 0d 0a 2f 2f 20 2e 2e 2e 0d 0a 0d .......// ......
6590: 0a 2f 2f 20 23 2e 2e 2e 0d 0a 0d 0a 2f 2f 20 2e .// #.......// .
65a0: 2e 2e 0d 0a 0d 0a 2f 2f 20 2e 2e 2e 0d 0a 0d 0a ......// .......
65b0: 2f 2f 20 2e 2e 2e 0d 0a 0d 0a 2f 2f 20 2e 2e 2e // .......// ...
65c0: 0d 0a 0d 0a 2f 2f 20 23 2e 2e 2e 0d 0a 2f 2f 20 ....// #.....//
65d0: 23 2e 2e 2e 0d 0a 2f 2f 20 23 2e 2e 2e 0d 0a 2f #.....// #...../
65e0: 2f 20 23 2e 2e 2e 0d 0a 0d 0a 2f 2f 20 23 2e 2e / #.......// #..
65f0: 2e 0d 0a 2f 2f 20 23 2e 2e 2e 0d 0a 0d 0a 2f 2f ...// #.......//
6600: 20 2e 2e 2e 0d 0a 0d 0a 2f 2f 20 2e 2e 2e 0d 0a .......// .....
6610: 0d 0a 2f 2f 20 23 2e 2e 2e 0d 0a 2f 2f 20 23 2e ..// #.....// #.
6620: 2e 2e 0d 0a 0d 0a 2f 2f 20 2e 2e 2e 0d 0a 0d 0a ......// .......
6630: 2f 2f 20 2e 2e 2e 0d 0a 0d 0a 2f 2f 20 2e 2e 2e // .......// ...
6640: 0d 0a 0d 0a 2f 2f 20 2e 2e 2e 0d 0a 0d 0a 2f 2f ....// .......//
6650: 20 2e 2e 2e 0d 0a 0d 0a 2f 2f 20 2e 2e 2e 0d 0a .......// .....
6660: 0d 0a 2f 2f 20 2e 2e 2e 0d 0a 0d 0a 2f 2f 20 2e ..// .......// .
6670: 2e 2e 0d 0a 0d 0a 2f 2f 20 23 2e 2e 2e 0d 0a 2f ......// #...../
6680: 2f 20 23 2e 2e 2e 0d 0a 2f 2f 20 23 2e 2e 2e 0d / #.....// #....
6690: 0a 2f 2f 20 23 2e 2e 2e 0d 0a 2f 2f 20 23 2e 2e .// #.....// #..
66a0: 2e 0d 0a 2f 2f 20 23 2e 2e 2e 0d 0a 2f 2f 20 23 ...// #.....// #
66b0: 2e 2e 2e 0d 0a 2f 2f 20 23 2e 2e 2e 0d 0a 0d 0a .....// #.......
66c0: 2f 2f 20 23 65 6e 64 69 66 20 2f 2f 20 64 65 66 // #endif // def
66d0: 69 6e 65 64 28 5f 4d 5f 41 4d 44 36 34 29 20 26 ined(_M_AMD64) &
66e0: 26 20 21 64 65 66 69 6e 65 64 28 52 43 5f 49 4e & !defined(RC_IN
66f0: 56 4f 4b 45 44 29 20 26 26 20 21 64 65 66 69 6e VOKED) && !defin
6700: 65 64 28 4d 49 44 4c 5f 50 41 53 53 29 0d 0a 0d ed(MIDL_PASS)...
6710: 0a 2f 2f 20 23 69 66 20 21 64 65 66 69 6e 65 64 .// #if !defined
6720: 28 52 43 5f 49 4e 56 4f 4b 45 44 29 0d 0a 0d 0a (RC_INVOKED)....
6730: 2f 2f 20 23 2e 2e 2e 0d 0a 0d 0a 2f 2f 20 23 2e // #.......// #.
6740: 2e 2e 0d 0a 2f 2f 20 23 2e 2e 2e 0d 0a 2f 2f 20 ....// #.....//
6750: 23 2e 2e 2e 0d 0a 2f 2f 20 23 2e 2e 2e 0d 0a 2f #.....// #...../
6760: 2f 20 23 2e 2e 2e 0d 0a 0d 0a 2f 2f 20 23 2e 2e / #.......// #..
6770: 2e 0d 0a 0d 0a 2f 2f 20 23 65 6e 64 69 66 20 2f .....// #endif /
6780: 2f 20 21 64 65 66 69 6e 65 64 28 52 43 5f 49 4e / !defined(RC_IN
6790: 56 4f 4b 45 44 29 0d 0a 0d 0a 2f 2f 20 2e 2e 2e VOKED)....// ...
67a0: 0d 0a 0d 0a 2f 2f 20 2e 2e 2e 0d 0a 0d 0a 2f 2f ....// .......//
67b0: 20 23 2e 2e 2e 0d 0a 0d 0a 2f 2f 20 2e 2e 2e 0d #.......// ....
67c0: 0a 0d 0a 2f 2f 20 2e 2e 2e 0d 0a 0d 0a 2f 2f 20 ...// .......//
67d0: 2e 2e 2e 0d 0a 0d 0a 2f 2f 20 2e 2e 2e 0d 0a 0d .......// ......
67e0: 0a 2f 2f 20 2e 2e 2e 0d 0a 0d 0a 2f 2f 20 2e 2e .// .......// ..
67f0: 2e 0d 0a 0d 0a 2f 2f 20 2e 2e 2e 0d 0a 0d 0a 2f .....// ......./
6800: 2f 20 2e 2e 2e 0d 0a 0d 0a 2f 2f 20 2e 2e 2e 0d / .......// ....
6810: 0a 0d 0a 2f 2f 20 23 65 6e 64 69 66 20 2f 2f 20 ...// #endif //
6820: 5f 41 4d 44 36 34 5f 0d 0a 0d 0a 2f 2f 20 23 69 _AMD64_....// #i
6830: 66 64 65 66 20 5f 41 4c 50 48 41 5f 20 20 20 20 fdef _ALPHA_
6840: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
6850: 20 20 20 20 20 20 2f 2f 20 77 69 6e 6e 74 0d 0a // winnt..
6860: 2f 2f 20 2e 2e 2e 0d 0a 2f 2f 20 23 69 66 20 64 // .....// #if d
6870: 65 66 69 6e 65 64 28 5f 4d 5f 41 4c 50 48 41 29 efined(_M_ALPHA)
6880: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
6890: 20 20 20 2f 2f 20 77 69 6e 6e 74 0d 0a 2f 2f 20 // winnt..//
68a0: 23 2e 2e 2e 0d 0a 2f 2f 20 23 65 6e 64 69 66 20 #.....// #endif
68b0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
68c0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
68d0: 20 2f 2f 20 77 69 6e 6e 74 0d 0a 2f 2f 20 23 65 // winnt..// #e
68e0: 6e 64 69 66 20 20 20 20 20 20 20 20 20 20 20 20 ndif
68f0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
6900: 20 20 20 20 20 20 2f 2f 20 77 69 6e 6e 74 0d 0a // winnt..
6910: 0d 0a 2f 2f 20 23 69 66 20 64 65 66 69 6e 65 64 ..// #if defined
6920: 28 5f 4d 5f 41 4c 50 48 41 29 0d 0a 2f 2f 20 23 (_M_ALPHA)..// #
6930: 2e 2e 2e 0d 0a 2f 2f 20 23 65 6c 73 65 0d 0a 65 .....// #else..e
6940: 78 74 65 72 6e 28 57 69 6e 64 6f 77 73 29 20 65 xtern(Windows) e
6950: 78 70 6f 72 74 20 5f 54 45 42 20 4e 74 43 75 72 xport _TEB NtCur
6960: 72 65 6e 74 54 65 62 28 29 3b 0d 0a 2f 2f 20 23 rentTeb();..// #
6970: 65 6e 64 69 66 0d 0a 0d 0a 2f 2f 20 23 69 66 64 endif....// #ifd
6980: 65 66 20 5f 41 4c 50 48 41 5f 0d 0a 0d 0a 2f 2f ef _ALPHA_....//
6990: 20 23 2e 2e 2e 0d 0a 2f 2f 20 23 2e 2e 2e 0d 0a #.....// #.....
69a0: 0d 0a 2f 2f 20 23 69 66 20 21 64 65 66 69 6e 65 ..// #if !define
69b0: 64 28 52 43 5f 49 4e 56 4f 4b 45 44 29 0d 0a 0d d(RC_INVOKED)...
69c0: 0a 2f 2f 20 23 2e 2e 2e 0d 0a 0d 0a 2f 2f 20 23 .// #.......// #
69d0: 2e 2e 2e 0d 0a 2f 2f 20 23 2e 2e 2e 0d 0a 2f 2f .....// #.....//
69e0: 20 23 2e 2e 2e 0d 0a 0d 0a 2f 2f 20 23 2e 2e 2e #.......// #...
69f0: 0d 0a 0d 0a 2f 2f 20 23 65 6e 64 69 66 0d 0a 0d ....// #endif...
6a00: 0a 2f 2f 20 23 69 66 6e 64 65 66 20 5f 50 4f 52 .// #ifndef _POR
6a10: 54 41 42 4c 45 5f 33 32 42 49 54 5f 43 4f 4e 54 TABLE_32BIT_CONT
6a20: 45 58 54 0d 0a 0d 0a 2f 2f 20 2e 2e 2e 0d 0a 0d EXT....// ......
6a30: 0a 2f 2f 20 2e 2e 2e 0d 0a 0d 0a 2f 2f 20 2e 2e .// .......// ..
6a40: 2e 0d 0a 0d 0a 2f 2f 20 2e 2e 2e 0d 0a 0d 0a 2f .....// ......./
6a50: 2f 20 2e 2e 2e 0d 0a 0d 0a 2f 2f 20 2e 2e 2e 0d / .......// ....
6a60: 0a 0d 0a 2f 2f 20 2e 2e 2e 0d 0a 0d 0a 2f 2f 20 ...// .......//
6a70: 23 65 6c 73 65 0d 0a 0d 0a 2f 2f 20 23 2e 2e 2e #else....// #...
6a80: 0d 0a 0d 0a 2f 2f 20 23 65 6e 64 69 66 20 2f 2f ....// #endif //
6a90: 20 5f 50 4f 52 54 41 42 4c 45 5f 33 32 42 49 54 _PORTABLE_32BIT
6aa0: 5f 43 4f 4e 54 45 58 54 0d 0a 0d 0a 2f 2f 20 23 _CONTEXT....// #
6ab0: 65 6e 64 69 66 20 2f 2f 20 5f 41 4c 50 48 41 5f endif // _ALPHA_
6ac0: 0d 0a 0d 0a 2f 2f 20 23 69 66 64 65 66 20 5f 41 ....// #ifdef _A
6ad0: 4c 50 48 41 5f 0d 0a 0d 0a 2f 2f 20 2e 2e 2e 0d LPHA_....// ....
6ae0: 0a 0d 0a 2f 2f 20 23 65 6e 64 69 66 20 2f 2f 20 ...// #endif //
6af0: 5f 41 4c 50 48 41 5f 0d 0a 0d 0a 2f 2f 20 23 69 _ALPHA_....// #i
6b00: 66 64 65 66 20 5f 58 38 36 5f 0d 0a 0d 0a 2f 2f fdef _X86_....//
6b10: 20 23 69 66 20 21 64 65 66 69 6e 65 64 28 4d 49 #if !defined(MI
6b20: 44 4c 5f 50 41 53 53 29 0d 0a 2f 2f 20 23 69 66 DL_PASS)..// #if
6b30: 20 21 64 65 66 69 6e 65 64 28 52 43 5f 49 4e 56 !defined(RC_INV
6b40: 4f 4b 45 44 29 0d 0a 0d 0a 2f 2f 20 23 69 66 20 OKED)....// #if
6b50: 5f 4d 53 43 5f 56 45 52 20 3e 3d 20 31 32 30 30 _MSC_VER >= 1200
6b60: 0d 0a 2f 2f 20 23 70 72 61 67 6d 61 20 77 61 72 ..// #pragma war
6b70: 6e 69 6e 67 28 70 75 73 68 29 0d 0a 2f 2f 20 23 ning(push)..// #
6b80: 65 6e 64 69 66 0d 0a 2f 2f 20 23 70 72 61 67 6d endif..// #pragm
6b90: 61 20 77 61 72 6e 69 6e 67 28 64 69 73 61 62 6c a warning(disabl
6ba0: 65 3a 34 31 36 34 29 20 20 20 2f 2f 20 64 69 73 e:4164) // dis
6bb0: 61 62 6c 65 20 43 34 31 36 34 20 77 61 72 6e 69 able C4164 warni
6bc0: 6e 67 20 73 6f 20 74 68 61 74 20 61 70 70 73 20 ng so that apps
6bd0: 74 68 61 74 0d 0a 0d 0a 2f 2f 20 23 69 66 64 65 that....// #ifde
6be0: 66 20 5f 4d 5f 49 58 38 36 0d 0a 2f 2f 20 23 70 f _M_IX86..// #p
6bf0: 72 61 67 6d 61 20 66 75 6e 63 74 69 6f 6e 28 5f ragma function(_
6c00: 65 6e 61 62 6c 65 29 0d 0a 2f 2f 20 23 70 72 61 enable)..// #pra
6c10: 67 6d 61 20 66 75 6e 63 74 69 6f 6e 28 5f 64 69 gma function(_di
6c20: 73 61 62 6c 65 29 0d 0a 2f 2f 20 23 65 6e 64 69 sable)..// #endi
6c30: 66 0d 0a 0d 0a 2f 2f 20 23 69 66 20 5f 4d 53 43 f....// #if _MSC
6c40: 5f 56 45 52 20 3e 3d 20 31 32 30 30 0d 0a 2f 2f _VER >= 1200..//
6c50: 20 23 70 72 61 67 6d 61 20 77 61 72 6e 69 6e 67 #pragma warning
6c60: 28 70 6f 70 29 0d 0a 2f 2f 20 23 65 6c 73 65 0d (pop)..// #else.
6c70: 0a 2f 2f 20 23 2e 2e 2e 0d 0a 2f 2f 20 23 65 6e .// #.....// #en
6c80: 64 69 66 0d 0a 0d 0a 2f 2f 20 23 65 6e 64 69 66 dif....// #endif
6c90: 0d 0a 2f 2f 20 23 65 6e 64 69 66 0d 0a 0d 0a 2f ..// #endif..../
6ca0: 2f 20 23 69 66 20 21 64 65 66 69 6e 65 64 28 4d / #if !defined(M
6cb0: 49 44 4c 5f 50 41 53 53 29 20 26 26 20 64 65 66 IDL_PASS) && def
6cc0: 69 6e 65 64 28 5f 4d 5f 49 58 38 36 29 0d 0a 2f ined(_M_IX86)../
6cd0: 2f 20 23 69 66 20 5f 4d 53 43 5f 56 45 52 20 3e / #if _MSC_VER >
6ce0: 3d 20 31 32 30 30 0d 0a 2f 2f 20 23 70 72 61 67 = 1200..// #prag
6cf0: 6d 61 20 77 61 72 6e 69 6e 67 28 70 75 73 68 29 ma warning(push)
6d00: 0d 0a 2f 2f 20 23 65 6e 64 69 66 0d 0a 2f 2f 20 ..// #endif..//
6d10: 23 70 72 61 67 6d 61 20 77 61 72 6e 69 6e 67 20 #pragma warning
6d20: 28 64 69 73 61 62 6c 65 3a 34 30 33 35 29 20 20 (disable:4035)
6d30: 20 20 20 20 20 20 2f 2f 20 64 69 73 61 62 6c 65 // disable
6d40: 20 34 30 33 35 20 28 66 75 6e 63 74 69 6f 6e 20 4035 (function
6d50: 6d 75 73 74 20 72 65 74 75 72 6e 20 73 6f 6d 65 must return some
6d60: 74 68 69 6e 67 29 0d 0a 50 56 4f 49 44 20 47 65 thing)..PVOID Ge
6d70: 74 46 69 62 65 72 44 61 74 61 28 29 20 7b 20 61 tFiberData() { a
6d80: 73 6d 20 7b 20 6d 6f 76 20 45 41 58 2c 20 46 53 sm { mov EAX, FS
6d90: 3a 5b 30 78 31 30 5d 3b 20 6d 6f 76 20 45 41 58 :[0x10]; mov EAX
6da0: 2c 20 5b 45 41 58 5d 3b 20 7d 20 7d 0d 0a 50 56 , [EAX]; } }..PV
6db0: 4f 49 44 20 47 65 74 43 75 72 72 65 6e 74 46 69 OID GetCurrentFi
6dc0: 62 65 72 28 29 20 7b 20 61 73 6d 20 7b 20 6d 6f ber() { asm { mo
6dd0: 76 20 45 41 58 2c 20 46 53 3a 5b 30 78 31 30 5d v EAX, FS:[0x10]
6de0: 3b 20 7d 20 7d 0d 0a 0d 0a 2f 2f 20 23 69 66 20 ; } }....// #if
6df0: 5f 4d 53 43 5f 56 45 52 20 3e 3d 20 31 32 30 30 _MSC_VER >= 1200
6e00: 0d 0a 2f 2f 20 23 70 72 61 67 6d 61 20 77 61 72 ..// #pragma war
6e10: 6e 69 6e 67 28 70 6f 70 29 0d 0a 2f 2f 20 23 65 ning(pop)..// #e
6e20: 6c 73 65 0d 0a 2f 2f 20 23 2e 2e 2e 0d 0a 2f 2f lse..// #.....//
6e30: 20 23 65 6e 64 69 66 0d 0a 2f 2f 20 23 65 6e 64 #endif..// #end
6e40: 69 66 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e if....enum : uin
6e50: 74 20 7b 20 53 49 5a 45 5f 4f 46 5f 38 30 33 38 t { SIZE_OF_8038
6e60: 37 5f 52 45 47 49 53 54 45 52 53 20 3d 20 38 30 7_REGISTERS = 80
6e70: 20 7d 0d 0a 0d 0a 2f 2f 20 23 69 66 20 21 64 65 }....// #if !de
6e80: 66 69 6e 65 64 28 52 43 5f 49 4e 56 4f 4b 45 44 fined(RC_INVOKED
6e90: 29 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 )....enum : uint
6ea0: 20 7b 20 43 4f 4e 54 45 58 54 5f 69 33 38 36 20 { CONTEXT_i386
6eb0: 3d 20 30 78 30 30 30 31 30 30 30 30 20 7d 0d 0a = 0x00010000 }..
6ec0: 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 43 4f enum : uint { CO
6ed0: 4e 54 45 58 54 5f 69 34 38 36 20 3d 20 30 78 30 NTEXT_i486 = 0x0
6ee0: 30 30 31 30 30 30 30 20 7d 0d 0a 0d 0a 65 6e 75 0010000 }....enu
6ef0: 6d 20 3a 20 75 69 6e 74 20 7b 20 43 4f 4e 54 45 m : uint { CONTE
6f00: 58 54 5f 43 4f 4e 54 52 4f 4c 20 3d 20 43 4f 4e XT_CONTROL = CON
6f10: 54 45 58 54 5f 69 33 38 36 20 7c 20 30 78 30 30 TEXT_i386 | 0x00
6f20: 30 30 30 30 30 31 4c 20 7d 0d 0a 65 6e 75 6d 20 000001L }..enum
6f30: 3a 20 75 69 6e 74 20 7b 20 43 4f 4e 54 45 58 54 : uint { CONTEXT
6f40: 5f 49 4e 54 45 47 45 52 20 3d 20 43 4f 4e 54 45 _INTEGER = CONTE
6f50: 58 54 5f 69 33 38 36 20 7c 20 30 78 30 30 30 30 XT_i386 | 0x0000
6f60: 30 30 30 32 4c 20 7d 0d 0a 65 6e 75 6d 20 3a 20 0002L }..enum :
6f70: 75 69 6e 74 20 7b 20 43 4f 4e 54 45 58 54 5f 53 uint { CONTEXT_S
6f80: 45 47 4d 45 4e 54 53 20 3d 20 43 4f 4e 54 45 58 EGMENTS = CONTEX
6f90: 54 5f 69 33 38 36 20 7c 20 30 78 30 30 30 30 30 T_i386 | 0x00000
6fa0: 30 30 34 4c 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 004L }..enum : u
6fb0: 69 6e 74 20 7b 20 43 4f 4e 54 45 58 54 5f 46 4c int { CONTEXT_FL
6fc0: 4f 41 54 49 4e 47 5f 50 4f 49 4e 54 20 3d 20 43 OATING_POINT = C
6fd0: 4f 4e 54 45 58 54 5f 69 33 38 36 20 7c 20 30 78 ONTEXT_i386 | 0x
6fe0: 30 30 30 30 30 30 30 38 4c 20 7d 0d 0a 65 6e 75 00000008L }..enu
6ff0: 6d 20 3a 20 75 69 6e 74 20 7b 20 43 4f 4e 54 45 m : uint { CONTE
7000: 58 54 5f 44 45 42 55 47 5f 52 45 47 49 53 54 45 XT_DEBUG_REGISTE
7010: 52 53 20 3d 20 43 4f 4e 54 45 58 54 5f 69 33 38 RS = CONTEXT_i38
7020: 36 20 7c 20 30 78 30 30 30 30 30 30 31 30 4c 20 6 | 0x00000010L
7030: 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b }..enum : uint {
7040: 20 43 4f 4e 54 45 58 54 5f 45 58 54 45 4e 44 45 CONTEXT_EXTENDE
7050: 44 5f 52 45 47 49 53 54 45 52 53 20 3d 20 43 4f D_REGISTERS = CO
7060: 4e 54 45 58 54 5f 69 33 38 36 20 7c 20 30 78 30 NTEXT_i386 | 0x0
7070: 30 30 30 30 30 32 30 4c 20 7d 0d 0a 0d 0a 65 6e 0000020L }....en
7080: 75 6d 20 3a 20 75 69 6e 74 20 7b 20 43 4f 4e 54 um : uint { CONT
7090: 45 58 54 5f 46 55 4c 4c 20 3d 20 43 4f 4e 54 45 EXT_FULL = CONTE
70a0: 58 54 5f 43 4f 4e 54 52 4f 4c 20 7c 20 43 4f 4e XT_CONTROL | CON
70b0: 54 45 58 54 5f 49 4e 54 45 47 45 52 20 7c 20 43 TEXT_INTEGER | C
70c0: 4f 4e 54 45 58 54 5f 53 45 47 4d 45 4e 54 53 20 ONTEXT_SEGMENTS
70d0: 7d 0d 0a 0d 0a 2f 2f 20 23 65 6e 64 69 66 0d 0a }....// #endif..
70e0: 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
70f0: 4d 41 58 49 4d 55 4d 5f 53 55 50 50 4f 52 54 45 MAXIMUM_SUPPORTE
7100: 44 5f 45 58 54 45 4e 53 49 4f 4e 20 3d 20 35 31 D_EXTENSION = 51
7110: 32 20 7d 0d 0a 0d 0a 73 74 72 75 63 74 20 5f 46 2 }....struct _F
7120: 4c 4f 41 54 49 4e 47 5f 53 41 56 45 5f 41 52 45 LOATING_SAVE_ARE
7130: 41 20 7b 0d 0a 20 20 44 57 4f 52 44 20 43 6f 6e A {.. DWORD Con
7140: 74 72 6f 6c 57 6f 72 64 3b 0d 0a 20 20 44 57 4f trolWord;.. DWO
7150: 52 44 20 53 74 61 74 75 73 57 6f 72 64 3b 0d 0a RD StatusWord;..
7160: 20 20 44 57 4f 52 44 20 54 61 67 57 6f 72 64 3b DWORD TagWord;
7170: 0d 0a 20 20 44 57 4f 52 44 20 45 72 72 6f 72 4f .. DWORD ErrorO
7180: 66 66 73 65 74 3b 0d 0a 20 20 44 57 4f 52 44 20 ffset;.. DWORD
7190: 45 72 72 6f 72 53 65 6c 65 63 74 6f 72 3b 0d 0a ErrorSelector;..
71a0: 20 20 44 57 4f 52 44 20 44 61 74 61 4f 66 66 73 DWORD DataOffs
71b0: 65 74 3b 0d 0a 20 20 44 57 4f 52 44 20 44 61 74 et;.. DWORD Dat
71c0: 61 53 65 6c 65 63 74 6f 72 3b 0d 0a 20 20 42 59 aSelector;.. BY
71d0: 54 45 20 52 65 67 69 73 74 65 72 41 72 65 61 5b TE RegisterArea[
71e0: 53 49 5a 45 5f 4f 46 5f 38 30 33 38 37 5f 52 45 SIZE_OF_80387_RE
71f0: 47 49 53 54 45 52 53 5d 3b 0d 0a 20 20 44 57 4f GISTERS];.. DWO
7200: 52 44 20 43 72 30 4e 70 78 53 74 61 74 65 3b 0d RD Cr0NpxState;.
7210: 0a 7d 0d 0a 61 6c 69 61 73 20 5f 46 4c 4f 41 54 .}..alias _FLOAT
7220: 49 4e 47 5f 53 41 56 45 5f 41 52 45 41 20 46 4c ING_SAVE_AREA FL
7230: 4f 41 54 49 4e 47 5f 53 41 56 45 5f 41 52 45 41 OATING_SAVE_AREA
7240: 3b 0d 0a 0d 0a 61 6c 69 61 73 20 46 4c 4f 41 54 ;....alias FLOAT
7250: 49 4e 47 5f 53 41 56 45 5f 41 52 45 41 2a 20 50 ING_SAVE_AREA* P
7260: 46 4c 4f 41 54 49 4e 47 5f 53 41 56 45 5f 41 52 FLOATING_SAVE_AR
7270: 45 41 3b 0d 0a 0d 0a 73 74 72 75 63 74 20 5f 43 EA;....struct _C
7280: 4f 4e 54 45 58 54 20 7b 0d 0a 0d 0a 20 20 44 57 ONTEXT {.... DW
7290: 4f 52 44 20 43 6f 6e 74 65 78 74 46 6c 61 67 73 ORD ContextFlags
72a0: 3b 0d 0a 0d 0a 20 20 44 57 4f 52 44 20 44 72 30 ;.... DWORD Dr0
72b0: 3b 0d 0a 20 20 44 57 4f 52 44 20 44 72 31 3b 0d ;.. DWORD Dr1;.
72c0: 0a 20 20 44 57 4f 52 44 20 44 72 32 3b 0d 0a 20 . DWORD Dr2;..
72d0: 20 44 57 4f 52 44 20 44 72 33 3b 0d 0a 20 20 44 DWORD Dr3;.. D
72e0: 57 4f 52 44 20 44 72 36 3b 0d 0a 20 20 44 57 4f WORD Dr6;.. DWO
72f0: 52 44 20 44 72 37 3b 0d 0a 0d 0a 20 20 46 4c 4f RD Dr7;.... FLO
7300: 41 54 49 4e 47 5f 53 41 56 45 5f 41 52 45 41 20 ATING_SAVE_AREA
7310: 46 6c 6f 61 74 53 61 76 65 3b 0d 0a 0d 0a 20 20 FloatSave;....
7320: 44 57 4f 52 44 20 53 65 67 47 73 3b 0d 0a 20 20 DWORD SegGs;..
7330: 44 57 4f 52 44 20 53 65 67 46 73 3b 0d 0a 20 20 DWORD SegFs;..
7340: 44 57 4f 52 44 20 53 65 67 45 73 3b 0d 0a 20 20 DWORD SegEs;..
7350: 44 57 4f 52 44 20 53 65 67 44 73 3b 0d 0a 0d 0a DWORD SegDs;....
7360: 20 20 44 57 4f 52 44 20 45 64 69 3b 0d 0a 20 20 DWORD Edi;..
7370: 44 57 4f 52 44 20 45 73 69 3b 0d 0a 20 20 44 57 DWORD Esi;.. DW
7380: 4f 52 44 20 45 62 78 3b 0d 0a 20 20 44 57 4f 52 ORD Ebx;.. DWOR
7390: 44 20 45 64 78 3b 0d 0a 20 20 44 57 4f 52 44 20 D Edx;.. DWORD
73a0: 45 63 78 3b 0d 0a 20 20 44 57 4f 52 44 20 45 61 Ecx;.. DWORD Ea
73b0: 78 3b 0d 0a 0d 0a 20 20 44 57 4f 52 44 20 45 62 x;.... DWORD Eb
73c0: 70 3b 0d 0a 20 20 44 57 4f 52 44 20 45 69 70 3b p;.. DWORD Eip;
73d0: 0d 0a 20 20 44 57 4f 52 44 20 53 65 67 43 73 3b .. DWORD SegCs;
73e0: 0d 0a 20 20 44 57 4f 52 44 20 45 46 6c 61 67 73 .. DWORD EFlags
73f0: 3b 0d 0a 20 20 44 57 4f 52 44 20 45 73 70 3b 0d ;.. DWORD Esp;.
7400: 0a 20 20 44 57 4f 52 44 20 53 65 67 53 73 3b 0d . DWORD SegSs;.
7410: 0a 0d 0a 20 20 42 59 54 45 20 45 78 74 65 6e 64 ... BYTE Extend
7420: 65 64 52 65 67 69 73 74 65 72 73 5b 4d 41 58 49 edRegisters[MAXI
7430: 4d 55 4d 5f 53 55 50 50 4f 52 54 45 44 5f 45 58 MUM_SUPPORTED_EX
7440: 54 45 4e 53 49 4f 4e 5d 3b 0d 0a 7d 0d 0a 61 6c TENSION];..}..al
7450: 69 61 73 20 5f 43 4f 4e 54 45 58 54 20 43 4f 4e ias _CONTEXT CON
7460: 54 45 58 54 3b 0d 0a 0d 0a 61 6c 69 61 73 20 43 TEXT;....alias C
7470: 4f 4e 54 45 58 54 2a 20 50 43 4f 4e 54 45 58 54 ONTEXT* PCONTEXT
7480: 3b 0d 0a 0d 0a 2f 2f 20 23 65 6e 64 69 66 20 2f ;....// #endif /
7490: 2f 5f 58 38 36 5f 0d 0a 0d 0a 2f 2f 20 23 69 66 /_X86_....// #if
74a0: 6e 64 65 66 20 5f 4c 44 54 5f 45 4e 54 52 59 5f ndef _LDT_ENTRY_
74b0: 44 45 46 49 4e 45 44 0d 0a 2f 2f 20 23 64 65 66 DEFINED..// #def
74c0: 69 6e 65 20 5f 4c 44 54 5f 45 4e 54 52 59 5f 44 ine _LDT_ENTRY_D
74d0: 45 46 49 4e 45 44 0d 0a 0d 0a 73 74 72 75 63 74 EFINED....struct
74e0: 20 5f 4c 44 54 5f 45 4e 54 52 59 20 7b 0d 0a 20 _LDT_ENTRY {..
74f0: 20 57 4f 52 44 20 4c 69 6d 69 74 4c 6f 77 3b 0d WORD LimitLow;.
7500: 0a 20 20 57 4f 52 44 20 42 61 73 65 4c 6f 77 3b . WORD BaseLow;
7510: 0d 0a 75 6e 69 6f 6e 20 7b 0d 0a 73 74 72 75 63 ..union {..struc
7520: 74 20 7b 0d 0a 20 20 42 59 54 45 20 42 61 73 65 t {.. BYTE Base
7530: 4d 69 64 3b 0d 0a 20 20 42 59 54 45 20 46 6c 61 Mid;.. BYTE Fla
7540: 67 73 31 3b 0d 0a 20 20 42 59 54 45 20 46 6c 61 gs1;.. BYTE Fla
7550: 67 73 32 3b 0d 0a 20 20 42 59 54 45 20 42 61 73 gs2;.. BYTE Bas
7560: 65 48 69 3b 0d 0a 7d 0d 0a 0d 0a 73 74 72 75 63 eHi;..}....struc
7570: 74 20 7b 0d 0a 2f 2f 20 44 57 4f 52 44 20 20 20 t {..// DWORD
7580: 42 61 73 65 4d 69 64 20 3a 20 38 3b 0d 0a 2f 2f BaseMid : 8;..//
7590: 20 44 57 4f 52 44 20 20 20 54 79 70 65 20 3a 20 DWORD Type :
75a0: 35 3b 0d 0a 2f 2f 20 44 57 4f 52 44 20 20 20 44 5;..// DWORD D
75b0: 70 6c 20 3a 20 32 3b 0d 0a 2f 2f 20 44 57 4f 52 pl : 2;..// DWOR
75c0: 44 20 20 20 50 72 65 73 20 3a 20 31 3b 0d 0a 2f D Pres : 1;../
75d0: 2f 20 44 57 4f 52 44 20 20 20 4c 69 6d 69 74 48 / DWORD LimitH
75e0: 69 20 3a 20 34 3b 0d 0a 2f 2f 20 44 57 4f 52 44 i : 4;..// DWORD
75f0: 20 20 20 53 79 73 20 3a 20 31 3b 0d 0a 2f 2f 20 Sys : 1;..//
7600: 44 57 4f 52 44 20 20 20 52 65 73 65 72 76 65 64 DWORD Reserved
7610: 5f 30 20 3a 20 31 3b 0d 0a 2f 2f 20 44 57 4f 52 _0 : 1;..// DWOR
7620: 44 20 20 20 44 65 66 61 75 6c 74 5f 42 69 67 20 D Default_Big
7630: 3a 20 31 3b 0d 0a 2f 2f 20 44 57 4f 52 44 20 20 : 1;..// DWORD
7640: 20 47 72 61 6e 75 6c 61 72 69 74 79 20 3a 20 31 Granularity : 1
7650: 3b 0d 0a 2f 2f 20 44 57 4f 52 44 20 20 20 42 61 ;..// DWORD Ba
7660: 73 65 48 69 20 3a 20 38 3b 0d 0a 7d 0d 0a 0d 0a seHi : 8;..}....
7670: 7d 0d 0a 0d 0a 7d 0d 0a 61 6c 69 61 73 20 5f 4c }....}..alias _L
7680: 44 54 5f 45 4e 54 52 59 20 4c 44 54 5f 45 4e 54 DT_ENTRY LDT_ENT
7690: 52 59 3b 0d 0a 61 6c 69 61 73 20 5f 4c 44 54 5f RY;..alias _LDT_
76a0: 45 4e 54 52 59 2a 20 50 4c 44 54 5f 45 4e 54 52 ENTRY* PLDT_ENTR
76b0: 59 3b 0d 0a 0d 0a 2f 2f 20 23 65 6e 64 69 66 0d Y;....// #endif.
76c0: 0a 0d 0a 2f 2f 20 23 69 66 20 64 65 66 69 6e 65 ...// #if define
76d0: 64 28 5f 4d 49 50 53 5f 29 0d 0a 0d 0a 2f 2f 20 d(_MIPS_)....//
76e0: 23 2e 2e 2e 0d 0a 2f 2f 20 23 2e 2e 2e 0d 0a 0d #.....// #......
76f0: 0a 2f 2f 20 23 69 66 20 21 64 65 66 69 6e 65 64 .// #if !defined
7700: 28 52 43 5f 49 4e 56 4f 4b 45 44 29 0d 0a 0d 0a (RC_INVOKED)....
7710: 2f 2f 20 23 2e 2e 2e 0d 0a 0d 0a 2f 2f 20 23 2e // #.......// #.
7720: 2e 2e 0d 0a 2f 2f 20 23 2e 2e 2e 0d 0a 2f 2f 20 ....// #.....//
7730: 23 2e 2e 2e 0d 0a 2f 2f 20 23 2e 2e 2e 0d 0a 2f #.....// #...../
7740: 2f 20 23 2e 2e 2e 0d 0a 0d 0a 2f 2f 20 23 2e 2e / #.......// #..
7750: 2e 0d 0a 2f 2f 20 2e 2e 2e 0d 0a 0d 0a 2f 2f 20 ...// .......//
7760: 23 65 6e 64 69 66 0d 0a 0d 0a 2f 2f 20 2e 2e 2e #endif....// ...
7770: 0d 0a 0d 0a 2f 2f 20 2e 2e 2e 0d 0a 0d 0a 2f 2f ....// .......//
7780: 20 2e 2e 2e 0d 0a 0d 0a 2f 2f 20 2e 2e 2e 0d 0a .......// .....
7790: 0d 0a 2f 2f 20 2e 2e 2e 0d 0a 0d 0a 2f 2f 20 2e ..// .......// .
77a0: 2e 2e 0d 0a 0d 0a 2f 2f 20 2e 2e 2e 0d 0a 0d 0a ......// .......
77b0: 2f 2f 20 2e 2e 2e 0d 0a 0d 0a 2f 2f 20 2e 2e 2e // .......// ...
77c0: 0d 0a 0d 0a 2f 2f 20 2e 2e 2e 0d 0a 0d 0a 2f 2f ....// .......//
77d0: 20 2e 2e 2e 0d 0a 0d 0a 2f 2f 20 2e 2e 2e 0d 0a .......// .....
77e0: 0d 0a 2f 2f 20 2e 2e 2e 0d 0a 0d 0a 2f 2f 20 2e ..// .......// .
77f0: 2e 2e 0d 0a 0d 0a 2f 2f 20 2e 2e 2e 0d 0a 0d 0a ......// .......
7800: 2f 2f 20 2e 2e 2e 0d 0a 0d 0a 2f 2f 20 23 2e 2e // .......// #..
7810: 2e 0d 0a 0d 0a 2f 2f 20 23 65 6e 64 69 66 20 2f .....// #endif /
7820: 2f 20 4d 49 50 53 0d 0a 0d 0a 2f 2f 20 23 69 66 / MIPS....// #if
7830: 20 64 65 66 69 6e 65 64 28 5f 4d 49 50 53 5f 29 defined(_MIPS_)
7840: 0d 0a 0d 0a 2f 2f 20 2e 2e 2e 0d 0a 0d 0a 2f 2f ....// .......//
7850: 20 23 65 6e 64 69 66 20 2f 2f 20 4d 49 50 53 0d #endif // MIPS.
7860: 0a 0d 0a 2f 2f 20 23 69 66 20 64 65 66 69 6e 65 ...// #if define
7870: 64 28 5f 50 50 43 5f 29 0d 0a 0d 0a 2f 2f 20 23 d(_PPC_)....// #
7880: 69 66 20 64 65 66 69 6e 65 64 28 5f 4d 5f 50 50 if defined(_M_PP
7890: 43 29 20 26 26 20 64 65 66 69 6e 65 64 28 5f 4d C) && defined(_M
78a0: 53 43 5f 56 45 52 29 20 26 26 20 28 5f 4d 53 43 SC_VER) && (_MSC
78b0: 5f 56 45 52 3e 3d 31 30 30 30 29 0d 0a 2f 2f 20 _VER>=1000)..//
78c0: 2e 2e 2e 0d 0a 2f 2f 20 23 2e 2e 2e 0d 0a 2f 2f .....// #.....//
78d0: 20 23 65 6c 69 66 20 64 65 66 69 6e 65 64 28 5f #elif defined(_
78e0: 4d 5f 50 50 43 29 0d 0a 2f 2f 20 2e 2e 2e 0d 0a M_PPC)..// .....
78f0: 2f 2f 20 23 2e 2e 2e 0d 0a 2f 2f 20 23 65 6e 64 // #.....// #end
7900: 69 66 0d 0a 0d 0a 2f 2f 20 23 2e 2e 2e 0d 0a 2f if....// #...../
7910: 2f 20 23 2e 2e 2e 0d 0a 0d 0a 2f 2f 20 23 69 66 / #.......// #if
7920: 20 21 64 65 66 69 6e 65 64 28 52 43 5f 49 4e 56 !defined(RC_INV
7930: 4f 4b 45 44 29 0d 0a 0d 0a 2f 2f 20 23 2e 2e 2e OKED)....// #...
7940: 0d 0a 2f 2f 20 23 2e 2e 2e 0d 0a 2f 2f 20 23 2e ..// #.....// #.
7950: 2e 2e 0d 0a 2f 2f 20 23 2e 2e 2e 0d 0a 0d 0a 2f ....// #......./
7960: 2f 20 23 2e 2e 2e 0d 0a 0d 0a 2f 2f 20 23 65 6e / #.......// #en
7970: 64 69 66 0d 0a 0d 0a 2f 2f 20 2e 2e 2e 0d 0a 0d dif....// ......
7980: 0a 2f 2f 20 2e 2e 2e 0d 0a 0d 0a 2f 2f 20 2e 2e .// .......// ..
7990: 2e 0d 0a 0d 0a 2f 2f 20 2e 2e 2e 0d 0a 0d 0a 2f .....// ......./
79a0: 2f 20 2e 2e 2e 0d 0a 0d 0a 2f 2f 20 2e 2e 2e 0d / .......// ....
79b0: 0a 0d 0a 2f 2f 20 2e 2e 2e 0d 0a 0d 0a 2f 2f 20 ...// .......//
79c0: 2e 2e 2e 0d 0a 0d 0a 2f 2f 20 2e 2e 2e 0d 0a 0d .......// ......
79d0: 0a 2f 2f 20 2e 2e 2e 0d 0a 0d 0a 2f 2f 20 2e 2e .// .......// ..
79e0: 2e 0d 0a 0d 0a 2f 2f 20 2e 2e 2e 0d 0a 0d 0a 2f .....// ......./
79f0: 2f 20 2e 2e 2e 0d 0a 0d 0a 2f 2f 20 23 65 6e 64 / .......// #end
7a00: 69 66 20 2f 2f 20 64 65 66 69 6e 65 64 28 5f 50 if // defined(_P
7a10: 50 43 5f 29 0d 0a 0d 0a 2f 2f 20 23 69 66 20 64 PC_)....// #if d
7a20: 65 66 69 6e 65 64 28 5f 4d 50 50 43 5f 29 0d 0a efined(_MPPC_)..
7a30: 0d 0a 2f 2f 20 23 69 66 20 64 65 66 69 6e 65 64 ..// #if defined
7a40: 28 5f 4d 5f 50 50 43 29 20 26 26 20 64 65 66 69 (_M_PPC) && defi
7a50: 6e 65 64 28 5f 4d 53 43 5f 56 45 52 29 20 26 26 ned(_MSC_VER) &&
7a60: 20 28 5f 4d 53 43 5f 56 45 52 3e 3d 31 30 30 30 (_MSC_VER>=1000
7a70: 29 0d 0a 2f 2f 20 2e 2e 2e 0d 0a 2f 2f 20 23 2e )..// .....// #.
7a80: 2e 2e 0d 0a 2f 2f 20 23 65 6c 69 66 20 64 65 66 ....// #elif def
7a90: 69 6e 65 64 28 5f 4d 5f 50 50 43 29 0d 0a 2f 2f ined(_M_PPC)..//
7aa0: 20 2e 2e 2e 0d 0a 2f 2f 20 23 2e 2e 2e 0d 0a 2f .....// #...../
7ab0: 2f 20 23 65 6e 64 69 66 0d 0a 0d 0a 2f 2f 20 23 / #endif....// #
7ac0: 2e 2e 2e 0d 0a 2f 2f 20 23 2e 2e 2e 0d 0a 0d 0a .....// #.......
7ad0: 2f 2f 20 23 69 66 20 21 64 65 66 69 6e 65 64 28 // #if !defined(
7ae0: 52 43 5f 49 4e 56 4f 4b 45 44 29 0d 0a 0d 0a 2f RC_INVOKED)..../
7af0: 2f 20 23 2e 2e 2e 0d 0a 2f 2f 20 23 2e 2e 2e 0d / #.....// #....
7b00: 0a 2f 2f 20 23 2e 2e 2e 0d 0a 2f 2f 20 23 2e 2e .// #.....// #..
7b10: 2e 0d 0a 0d 0a 2f 2f 20 23 2e 2e 2e 0d 0a 0d 0a .....// #.......
7b20: 2f 2f 20 23 65 6e 64 69 66 0d 0a 0d 0a 2f 2f 20 // #endif....//
7b30: 2e 2e 2e 0d 0a 0d 0a 2f 2f 20 2e 2e 2e 0d 0a 0d .......// ......
7b40: 0a 2f 2f 20 2e 2e 2e 0d 0a 0d 0a 2f 2f 20 2e 2e .// .......// ..
7b50: 2e 0d 0a 0d 0a 2f 2f 20 2e 2e 2e 0d 0a 0d 0a 2f .....// ......./
7b60: 2f 20 2e 2e 2e 0d 0a 0d 0a 2f 2f 20 2e 2e 2e 0d / .......// ....
7b70: 0a 0d 0a 2f 2f 20 2e 2e 2e 0d 0a 0d 0a 2f 2f 20 ...// .......//
7b80: 2e 2e 2e 0d 0a 0d 0a 2f 2f 20 2e 2e 2e 0d 0a 0d .......// ......
7b90: 0a 2f 2f 20 2e 2e 2e 0d 0a 0d 0a 2f 2f 20 2e 2e .// .......// ..
7ba0: 2e 0d 0a 0d 0a 2f 2f 20 2e 2e 2e 0d 0a 0d 0a 2f .....// ......./
7bb0: 2f 20 23 65 6e 64 69 66 20 2f 2f 20 64 65 66 69 / #endif // defi
7bc0: 6e 65 64 28 5f 4d 50 50 43 5f 29 0d 0a 0d 0a 2f ned(_MPPC_)..../
7bd0: 2f 20 23 69 66 20 21 64 65 66 69 6e 65 64 28 5f / #if !defined(_
7be0: 5f 6d 69 64 6c 29 20 26 26 20 21 64 65 66 69 6e _midl) && !defin
7bf0: 65 64 28 47 45 4e 55 54 49 4c 29 20 26 26 20 21 ed(GENUTIL) && !
7c00: 64 65 66 69 6e 65 64 28 5f 47 45 4e 49 41 36 34 defined(_GENIA64
7c10: 5f 29 20 26 26 20 64 65 66 69 6e 65 64 28 5f 49 _) && defined(_I
7c20: 41 36 34 5f 29 0d 0a 0d 0a 2f 2f 20 2e 2e 2e 0d A64_)....// ....
7c30: 0a 2f 2f 20 23 69 66 20 64 65 66 69 6e 65 64 28 .// #if defined(
7c40: 5f 4d 5f 49 41 36 34 29 20 20 20 20 20 20 20 20 _M_IA64)
7c50: 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 77 // w
7c60: 69 6e 6e 74 0d 0a 2f 2f 20 23 2e 2e 2e 0d 0a 2f innt..// #...../
7c70: 2f 20 23 65 6e 64 69 66 20 20 20 20 20 20 20 20 / #endif
7c80: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
7c90: 20 20 20 20 20 20 20 20 20 20 2f 2f 20 77 69 6e // win
7ca0: 6e 74 0d 0a 0d 0a 2f 2f 20 23 69 66 20 64 65 66 nt....// #if def
7cb0: 69 6e 65 64 28 5f 4d 5f 49 41 36 34 29 0d 0a 2f ined(_M_IA64)../
7cc0: 2f 20 23 2e 2e 2e 0d 0a 2f 2f 20 23 65 6c 73 65 / #.....// #else
7cd0: 0d 0a 2f 2f 20 2e 2e 2e 0d 0a 2f 2f 20 23 65 6e ..// .....// #en
7ce0: 64 69 66 0d 0a 0d 0a 2f 2f 20 23 2e 2e 2e 0d 0a dif....// #.....
7cf0: 2f 2f 20 23 2e 2e 2e 0d 0a 0d 0a 2f 2f 20 23 65 // #.......// #e
7d00: 6e 64 69 66 20 20 2f 2f 20 21 64 65 66 69 6e 65 ndif // !define
7d10: 64 28 5f 5f 6d 69 64 6c 29 20 26 26 20 21 64 65 d(__midl) && !de
7d20: 66 69 6e 65 64 28 47 45 4e 55 54 49 4c 29 20 26 fined(GENUTIL) &
7d30: 26 20 21 64 65 66 69 6e 65 64 28 5f 47 45 4e 49 & !defined(_GENI
7d40: 41 36 34 5f 29 20 26 26 20 64 65 66 69 6e 65 64 A64_) && defined
7d50: 28 5f 4d 5f 49 41 36 34 29 0d 0a 0d 0a 2f 2f 20 (_M_IA64)....//
7d60: 23 69 66 64 65 66 20 5f 49 41 36 34 5f 0d 0a 0d #ifdef _IA64_...
7d70: 0a 2f 2f 20 23 69 66 20 21 64 65 66 69 6e 65 64 .// #if !defined
7d80: 28 52 43 5f 49 4e 56 4f 4b 45 44 29 0d 0a 0d 0a (RC_INVOKED)....
7d90: 2f 2f 20 23 2e 2e 2e 0d 0a 0d 0a 2f 2f 20 23 2e // #.......// #.
7da0: 2e 2e 0d 0a 2f 2f 20 23 2e 2e 2e 0d 0a 2f 2f 20 ....// #.....//
7db0: 23 2e 2e 2e 0d 0a 2f 2f 20 23 2e 2e 2e 0d 0a 2f #.....// #...../
7dc0: 2f 20 23 2e 2e 2e 0d 0a 2f 2f 20 23 2e 2e 2e 0d / #.....// #....
7dd0: 0a 0d 0a 2f 2f 20 23 2e 2e 2e 0d 0a 2f 2f 20 23 ...// #.....// #
7de0: 2e 2e 2e 0d 0a 0d 0a 2f 2f 20 23 65 6e 64 69 66 .......// #endif
7df0: 20 2f 2f 20 21 64 65 66 69 6e 65 64 28 52 43 5f // !defined(RC_
7e00: 49 4e 56 4f 4b 45 44 29 0d 0a 0d 0a 2f 2f 20 2e INVOKED)....// .
7e10: 2e 2e 0d 0a 0d 0a 2f 2f 20 2e 2e 2e 0d 0a 0d 0a ......// .......
7e20: 2f 2f 20 2e 2e 2e 0d 0a 0d 0a 2f 2f 20 2e 2e 2e // .......// ...
7e30: 0d 0a 0d 0a 2f 2f 20 2e 2e 2e 0d 0a 0d 0a 2f 2f ....// .......//
7e40: 20 2e 2e 2e 0d 0a 0d 0a 2f 2f 20 2e 2e 2e 0d 0a .......// .....
7e50: 0d 0a 2f 2f 20 2e 2e 2e 0d 0a 0d 0a 2f 2f 20 2e ..// .......// .
7e60: 2e 2e 0d 0a 0d 0a 2f 2f 20 2e 2e 2e 0d 0a 0d 0a ......// .......
7e70: 2f 2f 20 2e 2e 2e 0d 0a 0d 0a 2f 2f 20 2e 2e 2e // .......// ...
7e80: 0d 0a 0d 0a 2f 2f 20 2e 2e 2e 0d 0a 0d 0a 2f 2f ....// .......//
7e90: 20 2e 2e 2e 0d 0a 0d 0a 2f 2f 20 2e 2e 2e 0d 0a .......// .....
7ea0: 0d 0a 2f 2f 20 2e 2e 2e 0d 0a 0d 0a 2f 2f 20 2e ..// .......// .
7eb0: 2e 2e 0d 0a 0d 0a 2f 2f 20 2e 2e 2e 0d 0a 0d 0a ......// .......
7ec0: 2f 2f 20 2e 2e 2e 0d 0a 0d 0a 2f 2f 20 2e 2e 2e // .......// ...
7ed0: 0d 0a 0d 0a 2f 2f 20 2e 2e 2e 0d 0a 0d 0a 2f 2f ....// .......//
7ee0: 20 2e 2e 2e 0d 0a 0d 0a 2f 2f 20 2e 2e 2e 0d 0a .......// .....
7ef0: 0d 0a 2f 2f 20 2e 2e 2e 0d 0a 0d 0a 2f 2f 20 2e ..// .......// .
7f00: 2e 2e 0d 0a 0d 0a 2f 2f 20 2e 2e 2e 0d 0a 0d 0a ......// .......
7f10: 2f 2f 20 2e 2e 2e 0d 0a 0d 0a 2f 2f 20 23 65 6e // .......// #en
7f20: 64 69 66 20 2f 2f 20 5f 49 41 36 34 5f 0d 0a 0d dif // _IA64_...
7f30: 0a 2f 2f 20 23 69 66 64 65 66 20 5f 49 41 36 34 .// #ifdef _IA64
7f40: 5f 0d 0a 0d 0a 2f 2f 20 2e 2e 2e 0d 0a 0d 0a 2f _....// ......./
7f50: 2f 20 23 65 6e 64 69 66 20 2f 2f 20 5f 49 41 36 / #endif // _IA6
7f60: 34 5f 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 4_....enum : uin
7f70: 74 20 7b 20 45 58 43 45 50 54 49 4f 4e 5f 4e 4f t { EXCEPTION_NO
7f80: 4e 43 4f 4e 54 49 4e 55 41 42 4c 45 20 3d 20 30 NCONTINUABLE = 0
7f90: 78 31 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e x1 }..enum : uin
7fa0: 74 20 7b 20 45 58 43 45 50 54 49 4f 4e 5f 4d 41 t { EXCEPTION_MA
7fb0: 58 49 4d 55 4d 5f 50 41 52 41 4d 45 54 45 52 53 XIMUM_PARAMETERS
7fc0: 20 3d 20 31 35 20 7d 0d 0a 0d 0a 73 74 72 75 63 = 15 }....struc
7fd0: 74 20 5f 45 58 43 45 50 54 49 4f 4e 5f 52 45 43 t _EXCEPTION_REC
7fe0: 4f 52 44 20 7b 0d 0a 20 20 44 57 4f 52 44 20 45 ORD {.. DWORD E
7ff0: 78 63 65 70 74 69 6f 6e 43 6f 64 65 3b 0d 0a 20 xceptionCode;..
8000: 20 44 57 4f 52 44 20 45 78 63 65 70 74 69 6f 6e DWORD Exception
8010: 46 6c 61 67 73 3b 0d 0a 20 20 5f 45 58 43 45 50 Flags;.. _EXCEP
8020: 54 49 4f 4e 5f 52 45 43 4f 52 44 20 2a 45 78 63 TION_RECORD *Exc
8030: 65 70 74 69 6f 6e 52 65 63 6f 72 64 3b 0d 0a 20 eptionRecord;..
8040: 20 50 56 4f 49 44 20 45 78 63 65 70 74 69 6f 6e PVOID Exception
8050: 41 64 64 72 65 73 73 3b 0d 0a 20 20 44 57 4f 52 Address;.. DWOR
8060: 44 20 4e 75 6d 62 65 72 50 61 72 61 6d 65 74 65 D NumberParamete
8070: 72 73 3b 0d 0a 20 20 55 4c 4f 4e 47 5f 50 54 52 rs;.. ULONG_PTR
8080: 20 45 78 63 65 70 74 69 6f 6e 49 6e 66 6f 72 6d ExceptionInform
8090: 61 74 69 6f 6e 5b 45 58 43 45 50 54 49 4f 4e 5f ation[EXCEPTION_
80a0: 4d 41 58 49 4d 55 4d 5f 50 41 52 41 4d 45 54 45 MAXIMUM_PARAMETE
80b0: 52 53 5d 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 5f RS];..}..alias _
80c0: 45 58 43 45 50 54 49 4f 4e 5f 52 45 43 4f 52 44 EXCEPTION_RECORD
80d0: 20 45 58 43 45 50 54 49 4f 4e 5f 52 45 43 4f 52 EXCEPTION_RECOR
80e0: 44 3b 0d 0a 0d 0a 61 6c 69 61 73 20 45 58 43 45 D;....alias EXCE
80f0: 50 54 49 4f 4e 5f 52 45 43 4f 52 44 2a 20 50 45 PTION_RECORD* PE
8100: 58 43 45 50 54 49 4f 4e 5f 52 45 43 4f 52 44 3b XCEPTION_RECORD;
8110: 0d 0a 0d 0a 73 74 72 75 63 74 20 5f 45 58 43 45 ....struct _EXCE
8120: 50 54 49 4f 4e 5f 52 45 43 4f 52 44 33 32 20 7b PTION_RECORD32 {
8130: 0d 0a 20 20 44 57 4f 52 44 20 45 78 63 65 70 74 .. DWORD Except
8140: 69 6f 6e 43 6f 64 65 3b 0d 0a 20 20 44 57 4f 52 ionCode;.. DWOR
8150: 44 20 45 78 63 65 70 74 69 6f 6e 46 6c 61 67 73 D ExceptionFlags
8160: 3b 0d 0a 20 20 44 57 4f 52 44 20 45 78 63 65 70 ;.. DWORD Excep
8170: 74 69 6f 6e 52 65 63 6f 72 64 3b 0d 0a 20 20 44 tionRecord;.. D
8180: 57 4f 52 44 20 45 78 63 65 70 74 69 6f 6e 41 64 WORD ExceptionAd
8190: 64 72 65 73 73 3b 0d 0a 20 20 44 57 4f 52 44 20 dress;.. DWORD
81a0: 4e 75 6d 62 65 72 50 61 72 61 6d 65 74 65 72 73 NumberParameters
81b0: 3b 0d 0a 20 20 44 57 4f 52 44 20 45 78 63 65 70 ;.. DWORD Excep
81c0: 74 69 6f 6e 49 6e 66 6f 72 6d 61 74 69 6f 6e 5b tionInformation[
81d0: 45 58 43 45 50 54 49 4f 4e 5f 4d 41 58 49 4d 55 EXCEPTION_MAXIMU
81e0: 4d 5f 50 41 52 41 4d 45 54 45 52 53 5d 3b 0d 0a M_PARAMETERS];..
81f0: 7d 0d 0a 61 6c 69 61 73 20 5f 45 58 43 45 50 54 }..alias _EXCEPT
8200: 49 4f 4e 5f 52 45 43 4f 52 44 33 32 20 45 58 43 ION_RECORD32 EXC
8210: 45 50 54 49 4f 4e 5f 52 45 43 4f 52 44 33 32 3b EPTION_RECORD32;
8220: 0d 0a 61 6c 69 61 73 20 5f 45 58 43 45 50 54 49 ..alias _EXCEPTI
8230: 4f 4e 5f 52 45 43 4f 52 44 33 32 2a 20 50 45 58 ON_RECORD32* PEX
8240: 43 45 50 54 49 4f 4e 5f 52 45 43 4f 52 44 33 32 CEPTION_RECORD32
8250: 3b 0d 0a 0d 0a 73 74 72 75 63 74 20 5f 45 58 43 ;....struct _EXC
8260: 45 50 54 49 4f 4e 5f 52 45 43 4f 52 44 36 34 20 EPTION_RECORD64
8270: 7b 0d 0a 20 20 44 57 4f 52 44 20 45 78 63 65 70 {.. DWORD Excep
8280: 74 69 6f 6e 43 6f 64 65 3b 0d 0a 20 20 44 57 4f tionCode;.. DWO
8290: 52 44 20 45 78 63 65 70 74 69 6f 6e 46 6c 61 67 RD ExceptionFlag
82a0: 73 3b 0d 0a 20 20 44 57 4f 52 44 36 34 20 45 78 s;.. DWORD64 Ex
82b0: 63 65 70 74 69 6f 6e 52 65 63 6f 72 64 3b 0d 0a ceptionRecord;..
82c0: 20 20 44 57 4f 52 44 36 34 20 45 78 63 65 70 74 DWORD64 Except
82d0: 69 6f 6e 41 64 64 72 65 73 73 3b 0d 0a 20 20 44 ionAddress;.. D
82e0: 57 4f 52 44 20 4e 75 6d 62 65 72 50 61 72 61 6d WORD NumberParam
82f0: 65 74 65 72 73 3b 0d 0a 20 20 44 57 4f 52 44 20 eters;.. DWORD
8300: 5f 5f 75 6e 75 73 65 64 41 6c 69 67 6e 6d 65 6e __unusedAlignmen
8310: 74 3b 0d 0a 20 20 44 57 4f 52 44 36 34 20 45 78 t;.. DWORD64 Ex
8320: 63 65 70 74 69 6f 6e 49 6e 66 6f 72 6d 61 74 69 ceptionInformati
8330: 6f 6e 5b 45 58 43 45 50 54 49 4f 4e 5f 4d 41 58 on[EXCEPTION_MAX
8340: 49 4d 55 4d 5f 50 41 52 41 4d 45 54 45 52 53 5d IMUM_PARAMETERS]
8350: 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 5f 45 58 43 ;..}..alias _EXC
8360: 45 50 54 49 4f 4e 5f 52 45 43 4f 52 44 36 34 20 EPTION_RECORD64
8370: 45 58 43 45 50 54 49 4f 4e 5f 52 45 43 4f 52 44 EXCEPTION_RECORD
8380: 36 34 3b 0d 0a 61 6c 69 61 73 20 5f 45 58 43 45 64;..alias _EXCE
8390: 50 54 49 4f 4e 5f 52 45 43 4f 52 44 36 34 2a 20 PTION_RECORD64*
83a0: 50 45 58 43 45 50 54 49 4f 4e 5f 52 45 43 4f 52 PEXCEPTION_RECOR
83b0: 44 36 34 3b 0d 0a 0d 0a 73 74 72 75 63 74 20 5f D64;....struct _
83c0: 45 58 43 45 50 54 49 4f 4e 5f 50 4f 49 4e 54 45 EXCEPTION_POINTE
83d0: 52 53 20 7b 0d 0a 20 20 50 45 58 43 45 50 54 49 RS {.. PEXCEPTI
83e0: 4f 4e 5f 52 45 43 4f 52 44 20 45 78 63 65 70 74 ON_RECORD Except
83f0: 69 6f 6e 52 65 63 6f 72 64 3b 0d 0a 20 20 50 43 ionRecord;.. PC
8400: 4f 4e 54 45 58 54 20 43 6f 6e 74 65 78 74 52 65 ONTEXT ContextRe
8410: 63 6f 72 64 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 cord;..}..alias
8420: 5f 45 58 43 45 50 54 49 4f 4e 5f 50 4f 49 4e 54 _EXCEPTION_POINT
8430: 45 52 53 20 45 58 43 45 50 54 49 4f 4e 5f 50 4f ERS EXCEPTION_PO
8440: 49 4e 54 45 52 53 3b 0d 0a 61 6c 69 61 73 20 5f INTERS;..alias _
8450: 45 58 43 45 50 54 49 4f 4e 5f 50 4f 49 4e 54 45 EXCEPTION_POINTE
8460: 52 53 2a 20 50 45 58 43 45 50 54 49 4f 4e 5f 50 RS* PEXCEPTION_P
8470: 4f 49 4e 54 45 52 53 3b 0d 0a 0d 0a 61 6c 69 61 OINTERS;....alia
8480: 73 20 50 56 4f 49 44 20 50 41 43 43 45 53 53 5f s PVOID PACCESS_
8490: 54 4f 4b 45 4e 3b 0d 0a 61 6c 69 61 73 20 50 56 TOKEN;..alias PV
84a0: 4f 49 44 20 50 53 45 43 55 52 49 54 59 5f 44 45 OID PSECURITY_DE
84b0: 53 43 52 49 50 54 4f 52 3b 0d 0a 61 6c 69 61 73 SCRIPTOR;..alias
84c0: 20 50 56 4f 49 44 20 50 53 49 44 3b 0d 0a 0d 0a PVOID PSID;....
84d0: 61 6c 69 61 73 20 44 57 4f 52 44 20 41 43 43 45 alias DWORD ACCE
84e0: 53 53 5f 4d 41 53 4b 3b 0d 0a 61 6c 69 61 73 20 SS_MASK;..alias
84f0: 41 43 43 45 53 53 5f 4d 41 53 4b 2a 20 50 41 43 ACCESS_MASK* PAC
8500: 43 45 53 53 5f 4d 41 53 4b 3b 0d 0a 0d 0a 65 6e CESS_MASK;....en
8510: 75 6d 20 3a 20 75 69 6e 74 20 7b 20 44 45 4c 45 um : uint { DELE
8520: 54 45 20 3d 20 30 78 30 30 30 31 30 30 30 30 20 TE = 0x00010000
8530: 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b }..enum : uint {
8540: 20 52 45 41 44 5f 43 4f 4e 54 52 4f 4c 20 3d 20 READ_CONTROL =
8550: 30 78 30 30 30 32 30 30 30 30 20 7d 0d 0a 65 6e 0x00020000 }..en
8560: 75 6d 20 3a 20 75 69 6e 74 20 7b 20 57 52 49 54 um : uint { WRIT
8570: 45 5f 44 41 43 20 3d 20 30 78 30 30 30 34 30 30 E_DAC = 0x000400
8580: 30 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 00 }..enum : uin
8590: 74 20 7b 20 57 52 49 54 45 5f 4f 57 4e 45 52 20 t { WRITE_OWNER
85a0: 3d 20 30 78 30 30 30 38 30 30 30 30 20 7d 0d 0a = 0x00080000 }..
85b0: 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 53 59 enum : uint { SY
85c0: 4e 43 48 52 4f 4e 49 5a 45 20 3d 20 30 78 30 30 NCHRONIZE = 0x00
85d0: 31 30 30 30 30 30 20 7d 0d 0a 0d 0a 65 6e 75 6d 100000 }....enum
85e0: 20 3a 20 75 69 6e 74 20 7b 20 53 54 41 4e 44 41 : uint { STANDA
85f0: 52 44 5f 52 49 47 48 54 53 5f 52 45 51 55 49 52 RD_RIGHTS_REQUIR
8600: 45 44 20 3d 20 30 78 30 30 30 46 30 30 30 30 20 ED = 0x000F0000
8610: 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 }....enum : uint
8620: 20 7b 20 53 54 41 4e 44 41 52 44 5f 52 49 47 48 { STANDARD_RIGH
8630: 54 53 5f 52 45 41 44 20 3d 20 52 45 41 44 5f 43 TS_READ = READ_C
8640: 4f 4e 54 52 4f 4c 20 7d 0d 0a 65 6e 75 6d 20 3a ONTROL }..enum :
8650: 20 75 69 6e 74 20 7b 20 53 54 41 4e 44 41 52 44 uint { STANDARD
8660: 5f 52 49 47 48 54 53 5f 57 52 49 54 45 20 3d 20 _RIGHTS_WRITE =
8670: 52 45 41 44 5f 43 4f 4e 54 52 4f 4c 20 7d 0d 0a READ_CONTROL }..
8680: 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 53 54 enum : uint { ST
8690: 41 4e 44 41 52 44 5f 52 49 47 48 54 53 5f 45 58 ANDARD_RIGHTS_EX
86a0: 45 43 55 54 45 20 3d 20 52 45 41 44 5f 43 4f 4e ECUTE = READ_CON
86b0: 54 52 4f 4c 20 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a TROL }....enum :
86c0: 20 75 69 6e 74 20 7b 20 53 54 41 4e 44 41 52 44 uint { STANDARD
86d0: 5f 52 49 47 48 54 53 5f 41 4c 4c 20 3d 20 30 78 _RIGHTS_ALL = 0x
86e0: 30 30 31 46 30 30 30 30 20 7d 0d 0a 0d 0a 65 6e 001F0000 }....en
86f0: 75 6d 20 3a 20 75 69 6e 74 20 7b 20 53 50 45 43 um : uint { SPEC
8700: 49 46 49 43 5f 52 49 47 48 54 53 5f 41 4c 4c 20 IFIC_RIGHTS_ALL
8710: 3d 20 30 78 30 30 30 30 46 46 46 46 20 7d 0d 0a = 0x0000FFFF }..
8720: 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
8730: 41 43 43 45 53 53 5f 53 59 53 54 45 4d 5f 53 45 ACCESS_SYSTEM_SE
8740: 43 55 52 49 54 59 20 3d 20 30 78 30 31 30 30 30 CURITY = 0x01000
8750: 30 30 30 20 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 000 }....enum :
8760: 75 69 6e 74 20 7b 20 4d 41 58 49 4d 55 4d 5f 41 uint { MAXIMUM_A
8770: 4c 4c 4f 57 45 44 20 3d 20 30 78 30 32 30 30 30 LLOWED = 0x02000
8780: 30 30 30 20 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 000 }....enum :
8790: 75 69 6e 74 20 7b 20 47 45 4e 45 52 49 43 5f 52 uint { GENERIC_R
87a0: 45 41 44 20 3d 20 30 78 38 30 30 30 30 30 30 30 EAD = 0x80000000
87b0: 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 }..enum : uint
87c0: 7b 20 47 45 4e 45 52 49 43 5f 57 52 49 54 45 20 { GENERIC_WRITE
87d0: 3d 20 30 78 34 30 30 30 30 30 30 30 20 7d 0d 0a = 0x40000000 }..
87e0: 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 47 45 enum : uint { GE
87f0: 4e 45 52 49 43 5f 45 58 45 43 55 54 45 20 3d 20 NERIC_EXECUTE =
8800: 30 78 32 30 30 30 30 30 30 30 20 7d 0d 0a 65 6e 0x20000000 }..en
8810: 75 6d 20 3a 20 75 69 6e 74 20 7b 20 47 45 4e 45 um : uint { GENE
8820: 52 49 43 5f 41 4c 4c 20 3d 20 30 78 31 30 30 30 RIC_ALL = 0x1000
8830: 30 30 30 30 20 7d 0d 0a 0d 0a 73 74 72 75 63 74 0000 }....struct
8840: 20 5f 47 45 4e 45 52 49 43 5f 4d 41 50 50 49 4e _GENERIC_MAPPIN
8850: 47 20 7b 0d 0a 20 20 41 43 43 45 53 53 5f 4d 41 G {.. ACCESS_MA
8860: 53 4b 20 47 65 6e 65 72 69 63 52 65 61 64 3b 0d SK GenericRead;.
8870: 0a 20 20 41 43 43 45 53 53 5f 4d 41 53 4b 20 47 . ACCESS_MASK G
8880: 65 6e 65 72 69 63 57 72 69 74 65 3b 0d 0a 20 20 enericWrite;..
8890: 41 43 43 45 53 53 5f 4d 41 53 4b 20 47 65 6e 65 ACCESS_MASK Gene
88a0: 72 69 63 45 78 65 63 75 74 65 3b 0d 0a 20 20 41 ricExecute;.. A
88b0: 43 43 45 53 53 5f 4d 41 53 4b 20 47 65 6e 65 72 CCESS_MASK Gener
88c0: 69 63 41 6c 6c 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 icAll;..}..alias
88d0: 20 5f 47 45 4e 45 52 49 43 5f 4d 41 50 50 49 4e _GENERIC_MAPPIN
88e0: 47 20 47 45 4e 45 52 49 43 5f 4d 41 50 50 49 4e G GENERIC_MAPPIN
88f0: 47 3b 0d 0a 0d 0a 61 6c 69 61 73 20 47 45 4e 45 G;....alias GENE
8900: 52 49 43 5f 4d 41 50 50 49 4e 47 2a 20 50 47 45 RIC_MAPPING* PGE
8910: 4e 45 52 49 43 5f 4d 41 50 50 49 4e 47 3b 0d 0a NERIC_MAPPING;..
8920: 0d 0a 61 6c 69 67 6e 28 34 29 3a 0d 0a 0d 0a 73 ..align(4):....s
8930: 74 72 75 63 74 20 5f 4c 55 49 44 5f 41 4e 44 5f truct _LUID_AND_
8940: 41 54 54 52 49 42 55 54 45 53 20 7b 0d 0a 20 20 ATTRIBUTES {..
8950: 4c 55 49 44 20 4c 75 69 64 3b 0d 0a 20 20 44 57 LUID Luid;.. DW
8960: 4f 52 44 20 41 74 74 72 69 62 75 74 65 73 3b 0d ORD Attributes;.
8970: 0a 7d 0d 0a 61 6c 69 61 73 20 5f 4c 55 49 44 5f .}..alias _LUID_
8980: 41 4e 44 5f 41 54 54 52 49 42 55 54 45 53 20 4c AND_ATTRIBUTES L
8990: 55 49 44 5f 41 4e 44 5f 41 54 54 52 49 42 55 54 UID_AND_ATTRIBUT
89a0: 45 53 3b 0d 0a 61 6c 69 61 73 20 5f 4c 55 49 44 ES;..alias _LUID
89b0: 5f 41 4e 44 5f 41 54 54 52 49 42 55 54 45 53 2a _AND_ATTRIBUTES*
89c0: 20 50 4c 55 49 44 5f 41 4e 44 5f 41 54 54 52 49 PLUID_AND_ATTRI
89d0: 42 55 54 45 53 3b 0d 0a 0d 0a 61 6c 69 61 73 20 BUTES;....alias
89e0: 4c 55 49 44 5f 41 4e 44 5f 41 54 54 52 49 42 55 LUID_AND_ATTRIBU
89f0: 54 45 53 20 4c 55 49 44 5f 41 4e 44 5f 41 54 54 TES LUID_AND_ATT
8a00: 52 49 42 55 54 45 53 5f 41 52 52 41 59 5b 41 4e RIBUTES_ARRAY[AN
8a10: 59 53 49 5a 45 5f 41 52 52 41 59 5d 3b 0d 0a 61 YSIZE_ARRAY];..a
8a20: 6c 69 61 73 20 4c 55 49 44 5f 41 4e 44 5f 41 54 lias LUID_AND_AT
8a30: 54 52 49 42 55 54 45 53 5f 41 52 52 41 59 2a 20 TRIBUTES_ARRAY*
8a40: 50 4c 55 49 44 5f 41 4e 44 5f 41 54 54 52 49 42 PLUID_AND_ATTRIB
8a50: 55 54 45 53 5f 41 52 52 41 59 3b 0d 0a 0d 0a 61 UTES_ARRAY;....a
8a60: 6c 69 67 6e 3a 0d 0a 0d 0a 2f 2f 20 23 69 66 6e lign:....// #ifn
8a70: 64 65 66 20 53 49 44 5f 49 44 45 4e 54 49 46 49 def SID_IDENTIFI
8a80: 45 52 5f 41 55 54 48 4f 52 49 54 59 5f 44 45 46 ER_AUTHORITY_DEF
8a90: 49 4e 45 44 0d 0a 2f 2f 20 23 64 65 66 69 6e 65 INED..// #define
8aa0: 20 53 49 44 5f 49 44 45 4e 54 49 46 49 45 52 5f SID_IDENTIFIER_
8ab0: 41 55 54 48 4f 52 49 54 59 5f 44 45 46 49 4e 45 AUTHORITY_DEFINE
8ac0: 44 0d 0a 73 74 72 75 63 74 20 5f 53 49 44 5f 49 D..struct _SID_I
8ad0: 44 45 4e 54 49 46 49 45 52 5f 41 55 54 48 4f 52 DENTIFIER_AUTHOR
8ae0: 49 54 59 20 7b 0d 0a 20 20 42 59 54 45 20 56 61 ITY {.. BYTE Va
8af0: 6c 75 65 5b 36 5d 3b 0d 0a 7d 0d 0a 61 6c 69 61 lue[6];..}..alia
8b00: 73 20 5f 53 49 44 5f 49 44 45 4e 54 49 46 49 45 s _SID_IDENTIFIE
8b10: 52 5f 41 55 54 48 4f 52 49 54 59 20 53 49 44 5f R_AUTHORITY SID_
8b20: 49 44 45 4e 54 49 46 49 45 52 5f 41 55 54 48 4f IDENTIFIER_AUTHO
8b30: 52 49 54 59 3b 0d 0a 61 6c 69 61 73 20 5f 53 49 RITY;..alias _SI
8b40: 44 5f 49 44 45 4e 54 49 46 49 45 52 5f 41 55 54 D_IDENTIFIER_AUT
8b50: 48 4f 52 49 54 59 2a 20 50 53 49 44 5f 49 44 45 HORITY* PSID_IDE
8b60: 4e 54 49 46 49 45 52 5f 41 55 54 48 4f 52 49 54 NTIFIER_AUTHORIT
8b70: 59 3b 0d 0a 0d 0a 2f 2f 20 23 65 6e 64 69 66 0d Y;....// #endif.
8b80: 0a 0d 0a 2f 2f 20 23 69 66 6e 64 65 66 20 53 49 ...// #ifndef SI
8b90: 44 5f 44 45 46 49 4e 45 44 0d 0a 2f 2f 20 23 64 D_DEFINED..// #d
8ba0: 65 66 69 6e 65 20 53 49 44 5f 44 45 46 49 4e 45 efine SID_DEFINE
8bb0: 44 0d 0a 73 74 72 75 63 74 20 5f 53 49 44 20 7b D..struct _SID {
8bc0: 0d 0a 20 20 42 59 54 45 20 52 65 76 69 73 69 6f .. BYTE Revisio
8bd0: 6e 3b 0d 0a 20 20 42 59 54 45 20 53 75 62 41 75 n;.. BYTE SubAu
8be0: 74 68 6f 72 69 74 79 43 6f 75 6e 74 3b 0d 0a 20 thorityCount;..
8bf0: 20 53 49 44 5f 49 44 45 4e 54 49 46 49 45 52 5f SID_IDENTIFIER_
8c00: 41 55 54 48 4f 52 49 54 59 20 49 64 65 6e 74 69 AUTHORITY Identi
8c10: 66 69 65 72 41 75 74 68 6f 72 69 74 79 3b 0d 0a fierAuthority;..
8c20: 2f 2f 20 23 69 66 64 65 66 20 4d 49 44 4c 5f 50 // #ifdef MIDL_P
8c30: 41 53 53 0d 0a 2f 2f 20 2e 2e 2e 0d 0a 2f 2f 20 ASS..// .....//
8c40: 23 65 6c 73 65 20 2f 2f 20 4d 49 44 4c 5f 50 41 #else // MIDL_PA
8c50: 53 53 0d 0a 20 20 44 57 4f 52 44 20 53 75 62 41 SS.. DWORD SubA
8c60: 75 74 68 6f 72 69 74 79 5b 41 4e 59 53 49 5a 45 uthority[ANYSIZE
8c70: 5f 41 52 52 41 59 5d 3b 0d 0a 2f 2f 20 23 65 6e _ARRAY];..// #en
8c80: 64 69 66 20 2f 2f 20 4d 49 44 4c 5f 50 41 53 53 dif // MIDL_PASS
8c90: 0d 0a 7d 0d 0a 61 6c 69 61 73 20 5f 53 49 44 20 ..}..alias _SID
8ca0: 53 49 44 3b 0d 0a 61 6c 69 61 73 20 5f 53 49 44 SID;..alias _SID
8cb0: 2a 20 50 49 53 49 44 3b 0d 0a 0d 0a 2f 2f 20 23 * PISID;....// #
8cc0: 65 6e 64 69 66 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 endif....enum :
8cd0: 75 69 6e 74 20 7b 20 53 49 44 5f 52 45 56 49 53 uint { SID_REVIS
8ce0: 49 4f 4e 20 3d 20 31 20 7d 0d 0a 65 6e 75 6d 20 ION = 1 }..enum
8cf0: 3a 20 75 69 6e 74 20 7b 20 53 49 44 5f 4d 41 58 : uint { SID_MAX
8d00: 5f 53 55 42 5f 41 55 54 48 4f 52 49 54 49 45 53 _SUB_AUTHORITIES
8d10: 20 3d 20 31 35 20 7d 0d 0a 65 6e 75 6d 20 3a 20 = 15 }..enum :
8d20: 75 69 6e 74 20 7b 20 53 49 44 5f 52 45 43 4f 4d uint { SID_RECOM
8d30: 4d 45 4e 44 45 44 5f 53 55 42 5f 41 55 54 48 4f MENDED_SUB_AUTHO
8d40: 52 49 54 49 45 53 20 3d 20 31 20 7d 0d 0a 0d 0a RITIES = 1 }....
8d50: 2f 2f 20 23 69 66 6e 64 65 66 20 4d 49 44 4c 5f // #ifndef MIDL_
8d60: 50 41 53 53 0d 0a 63 6f 6e 73 74 20 75 69 6e 74 PASS..const uint
8d70: 20 53 45 43 55 52 49 54 59 5f 4d 41 58 5f 53 49 SECURITY_MAX_SI
8d80: 44 5f 53 49 5a 45 20 3d 20 53 49 44 2e 73 69 7a D_SIZE = SID.siz
8d90: 65 6f 66 20 2d 20 44 57 4f 52 44 2e 73 69 7a 65 eof - DWORD.size
8da0: 6f 66 20 2b 20 28 53 49 44 5f 4d 41 58 5f 53 55 of + (SID_MAX_SU
8db0: 42 5f 41 55 54 48 4f 52 49 54 49 45 53 20 2a 20 B_AUTHORITIES *
8dc0: 44 57 4f 52 44 2e 73 69 7a 65 6f 66 29 3b 0d 0a DWORD.sizeof);..
8dd0: 2f 2f 20 23 65 6e 64 69 66 20 2f 2f 20 4d 49 44 // #endif // MID
8de0: 4c 5f 50 41 53 53 0d 0a 0d 0a 61 6c 69 61 73 20 L_PASS....alias
8df0: 69 6e 74 20 5f 53 49 44 5f 4e 41 4d 45 5f 55 53 int _SID_NAME_US
8e00: 45 3b 0d 0a 65 6e 75 6d 20 7b 0d 0a 20 20 53 69 E;..enum {.. Si
8e10: 64 54 79 70 65 55 73 65 72 20 3d 20 31 2c 0d 0a dTypeUser = 1,..
8e20: 20 20 53 69 64 54 79 70 65 47 72 6f 75 70 2c 0d SidTypeGroup,.
8e30: 0a 20 20 53 69 64 54 79 70 65 44 6f 6d 61 69 6e . SidTypeDomain
8e40: 2c 0d 0a 20 20 53 69 64 54 79 70 65 41 6c 69 61 ,.. SidTypeAlia
8e50: 73 2c 0d 0a 20 20 53 69 64 54 79 70 65 57 65 6c s,.. SidTypeWel
8e60: 6c 4b 6e 6f 77 6e 47 72 6f 75 70 2c 0d 0a 20 20 lKnownGroup,..
8e70: 53 69 64 54 79 70 65 44 65 6c 65 74 65 64 41 63 SidTypeDeletedAc
8e80: 63 6f 75 6e 74 2c 0d 0a 20 20 53 69 64 54 79 70 count,.. SidTyp
8e90: 65 49 6e 76 61 6c 69 64 2c 0d 0a 20 20 53 69 64 eInvalid,.. Sid
8ea0: 54 79 70 65 55 6e 6b 6e 6f 77 6e 2c 0d 0a 20 20 TypeUnknown,..
8eb0: 53 69 64 54 79 70 65 43 6f 6d 70 75 74 65 72 2c SidTypeComputer,
8ec0: 0d 0a 7d 0d 0a 61 6c 69 61 73 20 5f 53 49 44 5f ..}..alias _SID_
8ed0: 4e 41 4d 45 5f 55 53 45 20 53 49 44 5f 4e 41 4d NAME_USE SID_NAM
8ee0: 45 5f 55 53 45 3b 0d 0a 61 6c 69 61 73 20 5f 53 E_USE;..alias _S
8ef0: 49 44 5f 4e 41 4d 45 5f 55 53 45 2a 20 50 53 49 ID_NAME_USE* PSI
8f00: 44 5f 4e 41 4d 45 5f 55 53 45 3b 0d 0a 0d 0a 73 D_NAME_USE;....s
8f10: 74 72 75 63 74 20 5f 53 49 44 5f 41 4e 44 5f 41 truct _SID_AND_A
8f20: 54 54 52 49 42 55 54 45 53 20 7b 0d 0a 20 20 50 TTRIBUTES {.. P
8f30: 53 49 44 20 53 69 64 3b 0d 0a 20 20 44 57 4f 52 SID Sid;.. DWOR
8f40: 44 20 41 74 74 72 69 62 75 74 65 73 3b 0d 0a 7d D Attributes;..}
8f50: 0d 0a 61 6c 69 61 73 20 5f 53 49 44 5f 41 4e 44 ..alias _SID_AND
8f60: 5f 41 54 54 52 49 42 55 54 45 53 20 53 49 44 5f _ATTRIBUTES SID_
8f70: 41 4e 44 5f 41 54 54 52 49 42 55 54 45 53 3b 0d AND_ATTRIBUTES;.
8f80: 0a 61 6c 69 61 73 20 5f 53 49 44 5f 41 4e 44 5f .alias _SID_AND_
8f90: 41 54 54 52 49 42 55 54 45 53 2a 20 50 53 49 44 ATTRIBUTES* PSID
8fa0: 5f 41 4e 44 5f 41 54 54 52 49 42 55 54 45 53 3b _AND_ATTRIBUTES;
8fb0: 0d 0a 0d 0a 61 6c 69 61 73 20 53 49 44 5f 41 4e ....alias SID_AN
8fc0: 44 5f 41 54 54 52 49 42 55 54 45 53 20 53 49 44 D_ATTRIBUTES SID
8fd0: 5f 41 4e 44 5f 41 54 54 52 49 42 55 54 45 53 5f _AND_ATTRIBUTES_
8fe0: 41 52 52 41 59 5b 41 4e 59 53 49 5a 45 5f 41 52 ARRAY[ANYSIZE_AR
8ff0: 52 41 59 5d 3b 0d 0a 61 6c 69 61 73 20 53 49 44 RAY];..alias SID
9000: 5f 41 4e 44 5f 41 54 54 52 49 42 55 54 45 53 5f _AND_ATTRIBUTES_
9010: 41 52 52 41 59 2a 20 50 53 49 44 5f 41 4e 44 5f ARRAY* PSID_AND_
9020: 41 54 54 52 49 42 55 54 45 53 5f 41 52 52 41 59 ATTRIBUTES_ARRAY
9030: 3b 0d 0a 0d 0a 2f 2f 20 23 64 65 66 69 6e 65 20 ;....// #define
9040: 53 45 43 55 52 49 54 59 5f 4e 55 4c 4c 5f 53 49 SECURITY_NULL_SI
9050: 44 5f 41 55 54 48 4f 52 49 54 59 20 7b 30 2c 30 D_AUTHORITY {0,0
9060: 2c 30 2c 30 2c 30 2c 30 7d 0d 0a 2f 2f 20 23 64 ,0,0,0,0}..// #d
9070: 65 66 69 6e 65 20 53 45 43 55 52 49 54 59 5f 57 efine SECURITY_W
9080: 4f 52 4c 44 5f 53 49 44 5f 41 55 54 48 4f 52 49 ORLD_SID_AUTHORI
9090: 54 59 20 7b 30 2c 30 2c 30 2c 30 2c 30 2c 31 7d TY {0,0,0,0,0,1}
90a0: 0d 0a 2f 2f 20 23 64 65 66 69 6e 65 20 53 45 43 ..// #define SEC
90b0: 55 52 49 54 59 5f 4c 4f 43 41 4c 5f 53 49 44 5f URITY_LOCAL_SID_
90c0: 41 55 54 48 4f 52 49 54 59 20 7b 30 2c 30 2c 30 AUTHORITY {0,0,0
90d0: 2c 30 2c 30 2c 32 7d 0d 0a 2f 2f 20 23 64 65 66 ,0,0,2}..// #def
90e0: 69 6e 65 20 53 45 43 55 52 49 54 59 5f 43 52 45 ine SECURITY_CRE
90f0: 41 54 4f 52 5f 53 49 44 5f 41 55 54 48 4f 52 49 ATOR_SID_AUTHORI
9100: 54 59 20 7b 30 2c 30 2c 30 2c 30 2c 30 2c 33 7d TY {0,0,0,0,0,3}
9110: 0d 0a 2f 2f 20 23 64 65 66 69 6e 65 20 53 45 43 ..// #define SEC
9120: 55 52 49 54 59 5f 4e 4f 4e 5f 55 4e 49 51 55 45 URITY_NON_UNIQUE
9130: 5f 41 55 54 48 4f 52 49 54 59 20 7b 30 2c 30 2c _AUTHORITY {0,0,
9140: 30 2c 30 2c 30 2c 34 7d 0d 0a 2f 2f 20 23 64 65 0,0,0,4}..// #de
9150: 66 69 6e 65 20 53 45 43 55 52 49 54 59 5f 52 45 fine SECURITY_RE
9160: 53 4f 55 52 43 45 5f 4d 41 4e 41 47 45 52 5f 41 SOURCE_MANAGER_A
9170: 55 54 48 4f 52 49 54 59 20 7b 30 2c 30 2c 30 2c UTHORITY {0,0,0,
9180: 30 2c 30 2c 39 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 0,0,9}....enum :
9190: 20 75 69 6e 74 20 7b 20 53 45 43 55 52 49 54 59 uint { SECURITY
91a0: 5f 4e 55 4c 4c 5f 52 49 44 20 3d 20 30 78 30 30 _NULL_RID = 0x00
91b0: 30 30 30 30 30 30 20 7d 0d 0a 65 6e 75 6d 20 3a 000000 }..enum :
91c0: 20 75 69 6e 74 20 7b 20 53 45 43 55 52 49 54 59 uint { SECURITY
91d0: 5f 57 4f 52 4c 44 5f 52 49 44 20 3d 20 30 78 30 _WORLD_RID = 0x0
91e0: 30 30 30 30 30 30 30 20 7d 0d 0a 65 6e 75 6d 20 0000000 }..enum
91f0: 3a 20 75 69 6e 74 20 7b 20 53 45 43 55 52 49 54 : uint { SECURIT
9200: 59 5f 4c 4f 43 41 4c 5f 52 49 44 20 3d 20 30 78 Y_LOCAL_RID = 0x
9210: 30 30 30 30 30 30 30 30 20 7d 0d 0a 0d 0a 65 6e 00000000 }....en
9220: 75 6d 20 3a 20 75 69 6e 74 20 7b 20 53 45 43 55 um : uint { SECU
9230: 52 49 54 59 5f 43 52 45 41 54 4f 52 5f 4f 57 4e RITY_CREATOR_OWN
9240: 45 52 5f 52 49 44 20 3d 20 30 78 30 30 30 30 30 ER_RID = 0x00000
9250: 30 30 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 000 }..enum : ui
9260: 6e 74 20 7b 20 53 45 43 55 52 49 54 59 5f 43 52 nt { SECURITY_CR
9270: 45 41 54 4f 52 5f 47 52 4f 55 50 5f 52 49 44 20 EATOR_GROUP_RID
9280: 3d 20 30 78 30 30 30 30 30 30 30 31 20 7d 0d 0a = 0x00000001 }..
9290: 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
92a0: 53 45 43 55 52 49 54 59 5f 43 52 45 41 54 4f 52 SECURITY_CREATOR
92b0: 5f 4f 57 4e 45 52 5f 53 45 52 56 45 52 5f 52 49 _OWNER_SERVER_RI
92c0: 44 20 3d 20 30 78 30 30 30 30 30 30 30 32 20 7d D = 0x00000002 }
92d0: 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
92e0: 53 45 43 55 52 49 54 59 5f 43 52 45 41 54 4f 52 SECURITY_CREATOR
92f0: 5f 47 52 4f 55 50 5f 53 45 52 56 45 52 5f 52 49 _GROUP_SERVER_RI
9300: 44 20 3d 20 30 78 30 30 30 30 30 30 30 33 20 7d D = 0x00000003 }
9310: 0d 0a 0d 0a 2f 2f 20 23 64 65 66 69 6e 65 20 53 ....// #define S
9320: 45 43 55 52 49 54 59 5f 4e 54 5f 41 55 54 48 4f ECURITY_NT_AUTHO
9330: 52 49 54 59 20 7b 30 2c 30 2c 30 2c 30 2c 30 2c RITY {0,0,0,0,0,
9340: 35 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 5}....enum : uin
9350: 74 20 7b 20 53 45 43 55 52 49 54 59 5f 44 49 41 t { SECURITY_DIA
9360: 4c 55 50 5f 52 49 44 20 3d 20 30 78 30 30 30 30 LUP_RID = 0x0000
9370: 30 30 30 31 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 0001 }..enum : u
9380: 69 6e 74 20 7b 20 53 45 43 55 52 49 54 59 5f 4e int { SECURITY_N
9390: 45 54 57 4f 52 4b 5f 52 49 44 20 3d 20 30 78 30 ETWORK_RID = 0x0
93a0: 30 30 30 30 30 30 32 20 7d 0d 0a 65 6e 75 6d 20 0000002 }..enum
93b0: 3a 20 75 69 6e 74 20 7b 20 53 45 43 55 52 49 54 : uint { SECURIT
93c0: 59 5f 42 41 54 43 48 5f 52 49 44 20 3d 20 30 78 Y_BATCH_RID = 0x
93d0: 30 30 30 30 30 30 30 33 20 7d 0d 0a 65 6e 75 6d 00000003 }..enum
93e0: 20 3a 20 75 69 6e 74 20 7b 20 53 45 43 55 52 49 : uint { SECURI
93f0: 54 59 5f 49 4e 54 45 52 41 43 54 49 56 45 5f 52 TY_INTERACTIVE_R
9400: 49 44 20 3d 20 30 78 30 30 30 30 30 30 30 34 20 ID = 0x00000004
9410: 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b }..enum : uint {
9420: 20 53 45 43 55 52 49 54 59 5f 53 45 52 56 49 43 SECURITY_SERVIC
9430: 45 5f 52 49 44 20 3d 20 30 78 30 30 30 30 30 30 E_RID = 0x000000
9440: 30 36 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 06 }..enum : uin
9450: 74 20 7b 20 53 45 43 55 52 49 54 59 5f 41 4e 4f t { SECURITY_ANO
9460: 4e 59 4d 4f 55 53 5f 4c 4f 47 4f 4e 5f 52 49 44 NYMOUS_LOGON_RID
9470: 20 3d 20 30 78 30 30 30 30 30 30 30 37 20 7d 0d = 0x00000007 }.
9480: 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 53 .enum : uint { S
9490: 45 43 55 52 49 54 59 5f 50 52 4f 58 59 5f 52 49 ECURITY_PROXY_RI
94a0: 44 20 3d 20 30 78 30 30 30 30 30 30 30 38 20 7d D = 0x00000008 }
94b0: 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
94c0: 53 45 43 55 52 49 54 59 5f 45 4e 54 45 52 50 52 SECURITY_ENTERPR
94d0: 49 53 45 5f 43 4f 4e 54 52 4f 4c 4c 45 52 53 5f ISE_CONTROLLERS_
94e0: 52 49 44 20 3d 20 30 78 30 30 30 30 30 30 30 39 RID = 0x00000009
94f0: 20 7d 0d 0a 61 6c 69 61 73 20 53 45 43 55 52 49 }..alias SECURI
9500: 54 59 5f 45 4e 54 45 52 50 52 49 53 45 5f 43 4f TY_ENTERPRISE_CO
9510: 4e 54 52 4f 4c 4c 45 52 53 5f 52 49 44 20 53 45 NTROLLERS_RID SE
9520: 43 55 52 49 54 59 5f 53 45 52 56 45 52 5f 4c 4f CURITY_SERVER_LO
9530: 47 4f 4e 5f 52 49 44 3b 0d 0a 65 6e 75 6d 20 3a GON_RID;..enum :
9540: 20 75 69 6e 74 20 7b 20 53 45 43 55 52 49 54 59 uint { SECURITY
9550: 5f 50 52 49 4e 43 49 50 41 4c 5f 53 45 4c 46 5f _PRINCIPAL_SELF_
9560: 52 49 44 20 3d 20 30 78 30 30 30 30 30 30 30 41 RID = 0x0000000A
9570: 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 }..enum : uint
9580: 7b 20 53 45 43 55 52 49 54 59 5f 41 55 54 48 45 { SECURITY_AUTHE
9590: 4e 54 49 43 41 54 45 44 5f 55 53 45 52 5f 52 49 NTICATED_USER_RI
95a0: 44 20 3d 20 30 78 30 30 30 30 30 30 30 42 20 7d D = 0x0000000B }
95b0: 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
95c0: 53 45 43 55 52 49 54 59 5f 52 45 53 54 52 49 43 SECURITY_RESTRIC
95d0: 54 45 44 5f 43 4f 44 45 5f 52 49 44 20 3d 20 30 TED_CODE_RID = 0
95e0: 78 30 30 30 30 30 30 30 43 20 7d 0d 0a 65 6e 75 x0000000C }..enu
95f0: 6d 20 3a 20 75 69 6e 74 20 7b 20 53 45 43 55 52 m : uint { SECUR
9600: 49 54 59 5f 54 45 52 4d 49 4e 41 4c 5f 53 45 52 ITY_TERMINAL_SER
9610: 56 45 52 5f 52 49 44 20 3d 20 30 78 30 30 30 30 VER_RID = 0x0000
9620: 30 30 30 44 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 000D }..enum : u
9630: 69 6e 74 20 7b 20 53 45 43 55 52 49 54 59 5f 52 int { SECURITY_R
9640: 45 4d 4f 54 45 5f 4c 4f 47 4f 4e 5f 52 49 44 20 EMOTE_LOGON_RID
9650: 3d 20 30 78 30 30 30 30 30 30 30 45 20 7d 0d 0a = 0x0000000E }..
9660: 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
9670: 53 45 43 55 52 49 54 59 5f 4c 4f 47 4f 4e 5f 49 SECURITY_LOGON_I
9680: 44 53 5f 52 49 44 20 3d 20 30 78 30 30 30 30 30 DS_RID = 0x00000
9690: 30 30 35 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 005 }..enum : ui
96a0: 6e 74 20 7b 20 53 45 43 55 52 49 54 59 5f 4c 4f nt { SECURITY_LO
96b0: 47 4f 4e 5f 49 44 53 5f 52 49 44 5f 43 4f 55 4e GON_IDS_RID_COUN
96c0: 54 20 3d 20 33 20 7d 0d 0a 0d 0a 65 6e 75 6d 20 T = 3 }....enum
96d0: 3a 20 75 69 6e 74 20 7b 20 53 45 43 55 52 49 54 : uint { SECURIT
96e0: 59 5f 4c 4f 43 41 4c 5f 53 59 53 54 45 4d 5f 52 Y_LOCAL_SYSTEM_R
96f0: 49 44 20 3d 20 30 78 30 30 30 30 30 30 31 32 20 ID = 0x00000012
9700: 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b }..enum : uint {
9710: 20 53 45 43 55 52 49 54 59 5f 4c 4f 43 41 4c 5f SECURITY_LOCAL_
9720: 53 45 52 56 49 43 45 5f 52 49 44 20 3d 20 30 78 SERVICE_RID = 0x
9730: 30 30 30 30 30 30 31 33 20 7d 0d 0a 65 6e 75 6d 00000013 }..enum
9740: 20 3a 20 75 69 6e 74 20 7b 20 53 45 43 55 52 49 : uint { SECURI
9750: 54 59 5f 4e 45 54 57 4f 52 4b 5f 53 45 52 56 49 TY_NETWORK_SERVI
9760: 43 45 5f 52 49 44 20 3d 20 30 78 30 30 30 30 30 CE_RID = 0x00000
9770: 30 31 34 20 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 014 }....enum :
9780: 75 69 6e 74 20 7b 20 53 45 43 55 52 49 54 59 5f uint { SECURITY_
9790: 4e 54 5f 4e 4f 4e 5f 55 4e 49 51 55 45 20 3d 20 NT_NON_UNIQUE =
97a0: 30 78 30 30 30 30 30 30 31 35 20 7d 0d 0a 65 6e 0x00000015 }..en
97b0: 75 6d 20 3a 20 75 69 6e 74 20 7b 20 53 45 43 55 um : uint { SECU
97c0: 52 49 54 59 5f 4e 54 5f 4e 4f 4e 5f 55 4e 49 51 RITY_NT_NON_UNIQ
97d0: 55 45 5f 53 55 42 5f 41 55 54 48 5f 43 4f 55 4e UE_SUB_AUTH_COUN
97e0: 54 20 3d 20 33 20 7d 0d 0a 0d 0a 65 6e 75 6d 20 T = 3 }....enum
97f0: 3a 20 75 69 6e 74 20 7b 20 53 45 43 55 52 49 54 : uint { SECURIT
9800: 59 5f 42 55 49 4c 54 49 4e 5f 44 4f 4d 41 49 4e Y_BUILTIN_DOMAIN
9810: 5f 52 49 44 20 3d 20 30 78 30 30 30 30 30 30 32 _RID = 0x0000002
9820: 30 20 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 75 69 0 }....enum : ui
9830: 6e 74 20 7b 20 44 4f 4d 41 49 4e 5f 55 53 45 52 nt { DOMAIN_USER
9840: 5f 52 49 44 5f 41 44 4d 49 4e 20 3d 20 30 78 30 _RID_ADMIN = 0x0
9850: 30 30 30 30 31 46 34 20 7d 0d 0a 65 6e 75 6d 20 00001F4 }..enum
9860: 3a 20 75 69 6e 74 20 7b 20 44 4f 4d 41 49 4e 5f : uint { DOMAIN_
9870: 55 53 45 52 5f 52 49 44 5f 47 55 45 53 54 20 3d USER_RID_GUEST =
9880: 20 30 78 30 30 30 30 30 31 46 35 20 7d 0d 0a 65 0x000001F5 }..e
9890: 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 44 4f 4d num : uint { DOM
98a0: 41 49 4e 5f 55 53 45 52 5f 52 49 44 5f 4b 52 42 AIN_USER_RID_KRB
98b0: 54 47 54 20 3d 20 30 78 30 30 30 30 30 31 46 36 TGT = 0x000001F6
98c0: 20 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e }....enum : uin
98d0: 74 20 7b 20 44 4f 4d 41 49 4e 5f 47 52 4f 55 50 t { DOMAIN_GROUP
98e0: 5f 52 49 44 5f 41 44 4d 49 4e 53 20 3d 20 30 78 _RID_ADMINS = 0x
98f0: 30 30 30 30 30 32 30 30 20 7d 0d 0a 65 6e 75 6d 00000200 }..enum
9900: 20 3a 20 75 69 6e 74 20 7b 20 44 4f 4d 41 49 4e : uint { DOMAIN
9910: 5f 47 52 4f 55 50 5f 52 49 44 5f 55 53 45 52 53 _GROUP_RID_USERS
9920: 20 3d 20 30 78 30 30 30 30 30 32 30 31 20 7d 0d = 0x00000201 }.
9930: 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 44 .enum : uint { D
9940: 4f 4d 41 49 4e 5f 47 52 4f 55 50 5f 52 49 44 5f OMAIN_GROUP_RID_
9950: 47 55 45 53 54 53 20 3d 20 30 78 30 30 30 30 30 GUESTS = 0x00000
9960: 32 30 32 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 202 }..enum : ui
9970: 6e 74 20 7b 20 44 4f 4d 41 49 4e 5f 47 52 4f 55 nt { DOMAIN_GROU
9980: 50 5f 52 49 44 5f 43 4f 4d 50 55 54 45 52 53 20 P_RID_COMPUTERS
9990: 3d 20 30 78 30 30 30 30 30 32 30 33 20 7d 0d 0a = 0x00000203 }..
99a0: 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 44 4f enum : uint { DO
99b0: 4d 41 49 4e 5f 47 52 4f 55 50 5f 52 49 44 5f 43 MAIN_GROUP_RID_C
99c0: 4f 4e 54 52 4f 4c 4c 45 52 53 20 3d 20 30 78 30 ONTROLLERS = 0x0
99d0: 30 30 30 30 32 30 34 20 7d 0d 0a 65 6e 75 6d 20 0000204 }..enum
99e0: 3a 20 75 69 6e 74 20 7b 20 44 4f 4d 41 49 4e 5f : uint { DOMAIN_
99f0: 47 52 4f 55 50 5f 52 49 44 5f 43 45 52 54 5f 41 GROUP_RID_CERT_A
9a00: 44 4d 49 4e 53 20 3d 20 30 78 30 30 30 30 30 32 DMINS = 0x000002
9a10: 30 35 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 05 }..enum : uin
9a20: 74 20 7b 20 44 4f 4d 41 49 4e 5f 47 52 4f 55 50 t { DOMAIN_GROUP
9a30: 5f 52 49 44 5f 53 43 48 45 4d 41 5f 41 44 4d 49 _RID_SCHEMA_ADMI
9a40: 4e 53 20 3d 20 30 78 30 30 30 30 30 32 30 36 20 NS = 0x00000206
9a50: 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b }..enum : uint {
9a60: 20 44 4f 4d 41 49 4e 5f 47 52 4f 55 50 5f 52 49 DOMAIN_GROUP_RI
9a70: 44 5f 45 4e 54 45 52 50 52 49 53 45 5f 41 44 4d D_ENTERPRISE_ADM
9a80: 49 4e 53 20 3d 20 30 78 30 30 30 30 30 32 30 37 INS = 0x00000207
9a90: 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 }..enum : uint
9aa0: 7b 20 44 4f 4d 41 49 4e 5f 47 52 4f 55 50 5f 52 { DOMAIN_GROUP_R
9ab0: 49 44 5f 50 4f 4c 49 43 59 5f 41 44 4d 49 4e 53 ID_POLICY_ADMINS
9ac0: 20 3d 20 30 78 30 30 30 30 30 32 30 38 20 7d 0d = 0x00000208 }.
9ad0: 0a 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b ...enum : uint {
9ae0: 20 44 4f 4d 41 49 4e 5f 41 4c 49 41 53 5f 52 49 DOMAIN_ALIAS_RI
9af0: 44 5f 41 44 4d 49 4e 53 20 3d 20 30 78 30 30 30 D_ADMINS = 0x000
9b00: 30 30 32 32 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 00220 }..enum :
9b10: 75 69 6e 74 20 7b 20 44 4f 4d 41 49 4e 5f 41 4c uint { DOMAIN_AL
9b20: 49 41 53 5f 52 49 44 5f 55 53 45 52 53 20 3d 20 IAS_RID_USERS =
9b30: 30 78 30 30 30 30 30 32 32 31 20 7d 0d 0a 65 6e 0x00000221 }..en
9b40: 75 6d 20 3a 20 75 69 6e 74 20 7b 20 44 4f 4d 41 um : uint { DOMA
9b50: 49 4e 5f 41 4c 49 41 53 5f 52 49 44 5f 47 55 45 IN_ALIAS_RID_GUE
9b60: 53 54 53 20 3d 20 30 78 30 30 30 30 30 32 32 32 STS = 0x00000222
9b70: 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 }..enum : uint
9b80: 7b 20 44 4f 4d 41 49 4e 5f 41 4c 49 41 53 5f 52 { DOMAIN_ALIAS_R
9b90: 49 44 5f 50 4f 57 45 52 5f 55 53 45 52 53 20 3d ID_POWER_USERS =
9ba0: 20 30 78 30 30 30 30 30 32 32 33 20 7d 0d 0a 0d 0x00000223 }...
9bb0: 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 44 .enum : uint { D
9bc0: 4f 4d 41 49 4e 5f 41 4c 49 41 53 5f 52 49 44 5f OMAIN_ALIAS_RID_
9bd0: 41 43 43 4f 55 4e 54 5f 4f 50 53 20 3d 20 30 78 ACCOUNT_OPS = 0x
9be0: 30 30 30 30 30 32 32 34 20 7d 0d 0a 65 6e 75 6d 00000224 }..enum
9bf0: 20 3a 20 75 69 6e 74 20 7b 20 44 4f 4d 41 49 4e : uint { DOMAIN
9c00: 5f 41 4c 49 41 53 5f 52 49 44 5f 53 59 53 54 45 _ALIAS_RID_SYSTE
9c10: 4d 5f 4f 50 53 20 3d 20 30 78 30 30 30 30 30 32 M_OPS = 0x000002
9c20: 32 35 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 25 }..enum : uin
9c30: 74 20 7b 20 44 4f 4d 41 49 4e 5f 41 4c 49 41 53 t { DOMAIN_ALIAS
9c40: 5f 52 49 44 5f 50 52 49 4e 54 5f 4f 50 53 20 3d _RID_PRINT_OPS =
9c50: 20 30 78 30 30 30 30 30 32 32 36 20 7d 0d 0a 65 0x00000226 }..e
9c60: 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 44 4f 4d num : uint { DOM
9c70: 41 49 4e 5f 41 4c 49 41 53 5f 52 49 44 5f 42 41 AIN_ALIAS_RID_BA
9c80: 43 4b 55 50 5f 4f 50 53 20 3d 20 30 78 30 30 30 CKUP_OPS = 0x000
9c90: 30 30 32 32 37 20 7d 0d 0a 0d 0a 65 6e 75 6d 20 00227 }....enum
9ca0: 3a 20 75 69 6e 74 20 7b 20 44 4f 4d 41 49 4e 5f : uint { DOMAIN_
9cb0: 41 4c 49 41 53 5f 52 49 44 5f 52 45 50 4c 49 43 ALIAS_RID_REPLIC
9cc0: 41 54 4f 52 20 3d 20 30 78 30 30 30 30 30 32 32 ATOR = 0x0000022
9cd0: 38 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 8 }..enum : uint
9ce0: 20 7b 20 44 4f 4d 41 49 4e 5f 41 4c 49 41 53 5f { DOMAIN_ALIAS_
9cf0: 52 49 44 5f 52 41 53 5f 53 45 52 56 45 52 53 20 RID_RAS_SERVERS
9d00: 3d 20 30 78 30 30 30 30 30 32 32 39 20 7d 0d 0a = 0x00000229 }..
9d10: 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 44 4f enum : uint { DO
9d20: 4d 41 49 4e 5f 41 4c 49 41 53 5f 52 49 44 5f 50 MAIN_ALIAS_RID_P
9d30: 52 45 57 32 4b 43 4f 4d 50 41 43 43 45 53 53 20 REW2KCOMPACCESS
9d40: 3d 20 30 78 30 30 30 30 30 32 32 41 20 7d 0d 0a = 0x0000022A }..
9d50: 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 44 4f enum : uint { DO
9d60: 4d 41 49 4e 5f 41 4c 49 41 53 5f 52 49 44 5f 52 MAIN_ALIAS_RID_R
9d70: 45 4d 4f 54 45 5f 44 45 53 4b 54 4f 50 5f 55 53 EMOTE_DESKTOP_US
9d80: 45 52 53 20 3d 20 30 78 30 30 30 30 30 32 32 42 ERS = 0x0000022B
9d90: 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 }..enum : uint
9da0: 7b 20 44 4f 4d 41 49 4e 5f 41 4c 49 41 53 5f 52 { DOMAIN_ALIAS_R
9db0: 49 44 5f 4e 45 54 57 4f 52 4b 5f 43 4f 4e 46 49 ID_NETWORK_CONFI
9dc0: 47 55 52 41 54 49 4f 4e 5f 4f 50 53 20 3d 20 30 GURATION_OPS = 0
9dd0: 78 30 30 30 30 30 32 32 43 20 7d 0d 0a 0d 0a 63 x0000022C }....c
9de0: 6f 6e 73 74 20 4c 55 49 44 20 53 59 53 54 45 4d onst LUID SYSTEM
9df0: 5f 4c 55 49 44 20 3d 20 7b 4c 6f 77 50 61 72 74 _LUID = {LowPart
9e00: 3a 20 30 78 33 65 37 2c 20 48 69 67 68 50 61 72 : 0x3e7, HighPar
9e10: 74 3a 20 30 78 30 7d 3b 0d 0a 63 6f 6e 73 74 20 t: 0x0};..const
9e20: 4c 55 49 44 20 41 4e 4f 4e 59 4d 4f 55 53 5f 4c LUID ANONYMOUS_L
9e30: 4f 47 4f 4e 5f 4c 55 49 44 20 3d 20 7b 4c 6f 77 OGON_LUID = {Low
9e40: 50 61 72 74 3a 20 30 78 33 65 36 2c 20 48 69 67 Part: 0x3e6, Hig
9e50: 68 50 61 72 74 3a 20 30 78 30 7d 3b 0d 0a 63 6f hPart: 0x0};..co
9e60: 6e 73 74 20 4c 55 49 44 20 4c 4f 43 41 4c 53 45 nst LUID LOCALSE
9e70: 52 56 49 43 45 5f 4c 55 49 44 20 3d 20 7b 4c 6f RVICE_LUID = {Lo
9e80: 77 50 61 72 74 3a 20 30 78 33 65 35 2c 20 48 69 wPart: 0x3e5, Hi
9e90: 67 68 50 61 72 74 3a 20 30 78 30 7d 3b 0d 0a 63 ghPart: 0x0};..c
9ea0: 6f 6e 73 74 20 4c 55 49 44 20 4e 45 54 57 4f 52 onst LUID NETWOR
9eb0: 4b 53 45 52 56 49 43 45 5f 4c 55 49 44 20 3d 20 KSERVICE_LUID =
9ec0: 7b 4c 6f 77 50 61 72 74 3a 20 30 78 33 65 34 2c {LowPart: 0x3e4,
9ed0: 20 48 69 67 68 50 61 72 74 3a 20 30 78 30 7d 3b HighPart: 0x0};
9ee0: 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 ....enum : uint
9ef0: 7b 20 53 45 5f 47 52 4f 55 50 5f 4d 41 4e 44 41 { SE_GROUP_MANDA
9f00: 54 4f 52 59 20 3d 20 30 78 30 30 30 30 30 30 30 TORY = 0x0000000
9f10: 31 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 1 }..enum : uint
9f20: 20 7b 20 53 45 5f 47 52 4f 55 50 5f 45 4e 41 42 { SE_GROUP_ENAB
9f30: 4c 45 44 5f 42 59 5f 44 45 46 41 55 4c 54 20 3d LED_BY_DEFAULT =
9f40: 20 30 78 30 30 30 30 30 30 30 32 20 7d 0d 0a 65 0x00000002 }..e
9f50: 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 53 45 5f num : uint { SE_
9f60: 47 52 4f 55 50 5f 45 4e 41 42 4c 45 44 20 3d 20 GROUP_ENABLED =
9f70: 30 78 30 30 30 30 30 30 30 34 20 7d 0d 0a 65 6e 0x00000004 }..en
9f80: 75 6d 20 3a 20 75 69 6e 74 20 7b 20 53 45 5f 47 um : uint { SE_G
9f90: 52 4f 55 50 5f 4f 57 4e 45 52 20 3d 20 30 78 30 ROUP_OWNER = 0x0
9fa0: 30 30 30 30 30 30 38 20 7d 0d 0a 65 6e 75 6d 20 0000008 }..enum
9fb0: 3a 20 75 69 6e 74 20 7b 20 53 45 5f 47 52 4f 55 : uint { SE_GROU
9fc0: 50 5f 55 53 45 5f 46 4f 52 5f 44 45 4e 59 5f 4f P_USE_FOR_DENY_O
9fd0: 4e 4c 59 20 3d 20 30 78 30 30 30 30 30 30 31 30 NLY = 0x00000010
9fe0: 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 }..enum : uint
9ff0: 7b 20 53 45 5f 47 52 4f 55 50 5f 4c 4f 47 4f 4e { SE_GROUP_LOGON
a000: 5f 49 44 20 3d 20 30 78 43 30 30 30 30 30 30 30 _ID = 0xC0000000
a010: 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 }..enum : uint
a020: 7b 20 53 45 5f 47 52 4f 55 50 5f 52 45 53 4f 55 { SE_GROUP_RESOU
a030: 52 43 45 20 3d 20 30 78 32 30 30 30 30 30 30 30 RCE = 0x20000000
a040: 20 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e }....enum : uin
a050: 74 20 7b 20 41 43 4c 5f 52 45 56 49 53 49 4f 4e t { ACL_REVISION
a060: 20 3d 20 32 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 = 2 }..enum : u
a070: 69 6e 74 20 7b 20 41 43 4c 5f 52 45 56 49 53 49 int { ACL_REVISI
a080: 4f 4e 5f 44 53 20 3d 20 34 20 7d 0d 0a 0d 0a 65 ON_DS = 4 }....e
a090: 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 41 43 4c num : uint { ACL
a0a0: 5f 52 45 56 49 53 49 4f 4e 31 20 3d 20 31 20 7d _REVISION1 = 1 }
a0b0: 0d 0a 65 6e 75 6d 20 7b 20 4d 49 4e 5f 41 43 4c ..enum { MIN_ACL
a0c0: 5f 52 45 56 49 53 49 4f 4e 20 3d 20 32 20 7d 0d _REVISION = 2 }.
a0d0: 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 41 .enum : uint { A
a0e0: 43 4c 5f 52 45 56 49 53 49 4f 4e 32 20 3d 20 32 CL_REVISION2 = 2
a0f0: 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 }..enum : uint
a100: 7b 20 41 43 4c 5f 52 45 56 49 53 49 4f 4e 33 20 { ACL_REVISION3
a110: 3d 20 33 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 = 3 }..enum : ui
a120: 6e 74 20 7b 20 41 43 4c 5f 52 45 56 49 53 49 4f nt { ACL_REVISIO
a130: 4e 34 20 3d 20 34 20 7d 0d 0a 61 6c 69 61 73 20 N4 = 4 }..alias
a140: 41 43 4c 5f 52 45 56 49 53 49 4f 4e 34 20 4d 41 ACL_REVISION4 MA
a150: 58 5f 41 43 4c 5f 52 45 56 49 53 49 4f 4e 3b 0d X_ACL_REVISION;.
a160: 0a 0d 0a 73 74 72 75 63 74 20 5f 41 43 4c 20 7b ...struct _ACL {
a170: 0d 0a 20 20 42 59 54 45 20 41 63 6c 52 65 76 69 .. BYTE AclRevi
a180: 73 69 6f 6e 3b 0d 0a 20 20 42 59 54 45 20 53 62 sion;.. BYTE Sb
a190: 7a 31 3b 0d 0a 20 20 57 4f 52 44 20 41 63 6c 53 z1;.. WORD AclS
a1a0: 69 7a 65 3b 0d 0a 20 20 57 4f 52 44 20 41 63 65 ize;.. WORD Ace
a1b0: 43 6f 75 6e 74 3b 0d 0a 20 20 57 4f 52 44 20 53 Count;.. WORD S
a1c0: 62 7a 32 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 5f bz2;..}..alias _
a1d0: 41 43 4c 20 41 43 4c 3b 0d 0a 0d 0a 61 6c 69 61 ACL ACL;....alia
a1e0: 73 20 41 43 4c 2a 20 50 41 43 4c 3b 0d 0a 0d 0a s ACL* PACL;....
a1f0: 73 74 72 75 63 74 20 5f 41 43 45 5f 48 45 41 44 struct _ACE_HEAD
a200: 45 52 20 7b 0d 0a 20 20 42 59 54 45 20 41 63 65 ER {.. BYTE Ace
a210: 54 79 70 65 3b 0d 0a 20 20 42 59 54 45 20 41 63 Type;.. BYTE Ac
a220: 65 46 6c 61 67 73 3b 0d 0a 20 20 57 4f 52 44 20 eFlags;.. WORD
a230: 41 63 65 53 69 7a 65 3b 0d 0a 7d 0d 0a 61 6c 69 AceSize;..}..ali
a240: 61 73 20 5f 41 43 45 5f 48 45 41 44 45 52 20 41 as _ACE_HEADER A
a250: 43 45 5f 48 45 41 44 45 52 3b 0d 0a 0d 0a 61 6c CE_HEADER;....al
a260: 69 61 73 20 41 43 45 5f 48 45 41 44 45 52 2a 20 ias ACE_HEADER*
a270: 50 41 43 45 5f 48 45 41 44 45 52 3b 0d 0a 0d 0a PACE_HEADER;....
a280: 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 41 43 enum : uint { AC
a290: 43 45 53 53 5f 4d 49 4e 5f 4d 53 5f 41 43 45 5f CESS_MIN_MS_ACE_
a2a0: 54 59 50 45 20 3d 20 30 78 30 20 7d 0d 0a 65 6e TYPE = 0x0 }..en
a2b0: 75 6d 20 3a 20 75 69 6e 74 20 7b 20 41 43 43 45 um : uint { ACCE
a2c0: 53 53 5f 41 4c 4c 4f 57 45 44 5f 41 43 45 5f 54 SS_ALLOWED_ACE_T
a2d0: 59 50 45 20 3d 20 30 78 30 20 7d 0d 0a 65 6e 75 YPE = 0x0 }..enu
a2e0: 6d 20 3a 20 75 69 6e 74 20 7b 20 41 43 43 45 53 m : uint { ACCES
a2f0: 53 5f 44 45 4e 49 45 44 5f 41 43 45 5f 54 59 50 S_DENIED_ACE_TYP
a300: 45 20 3d 20 30 78 31 20 7d 0d 0a 65 6e 75 6d 20 E = 0x1 }..enum
a310: 3a 20 75 69 6e 74 20 7b 20 53 59 53 54 45 4d 5f : uint { SYSTEM_
a320: 41 55 44 49 54 5f 41 43 45 5f 54 59 50 45 20 3d AUDIT_ACE_TYPE =
a330: 20 30 78 32 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 0x2 }..enum : u
a340: 69 6e 74 20 7b 20 53 59 53 54 45 4d 5f 41 4c 41 int { SYSTEM_ALA
a350: 52 4d 5f 41 43 45 5f 54 59 50 45 20 3d 20 30 78 RM_ACE_TYPE = 0x
a360: 33 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 3 }..enum : uint
a370: 20 7b 20 41 43 43 45 53 53 5f 4d 41 58 5f 4d 53 { ACCESS_MAX_MS
a380: 5f 56 32 5f 41 43 45 5f 54 59 50 45 20 3d 20 30 _V2_ACE_TYPE = 0
a390: 78 33 20 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 75 x3 }....enum : u
a3a0: 69 6e 74 20 7b 20 41 43 43 45 53 53 5f 41 4c 4c int { ACCESS_ALL
a3b0: 4f 57 45 44 5f 43 4f 4d 50 4f 55 4e 44 5f 41 43 OWED_COMPOUND_AC
a3c0: 45 5f 54 59 50 45 20 3d 20 30 78 34 20 7d 0d 0a E_TYPE = 0x4 }..
a3d0: 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 41 43 enum : uint { AC
a3e0: 43 45 53 53 5f 4d 41 58 5f 4d 53 5f 56 33 5f 41 CESS_MAX_MS_V3_A
a3f0: 43 45 5f 54 59 50 45 20 3d 20 30 78 34 20 7d 0d CE_TYPE = 0x4 }.
a400: 0a 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b ...enum : uint {
a410: 20 41 43 43 45 53 53 5f 4d 49 4e 5f 4d 53 5f 4f ACCESS_MIN_MS_O
a420: 42 4a 45 43 54 5f 41 43 45 5f 54 59 50 45 20 3d BJECT_ACE_TYPE =
a430: 20 30 78 35 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 0x5 }..enum : u
a440: 69 6e 74 20 7b 20 41 43 43 45 53 53 5f 41 4c 4c int { ACCESS_ALL
a450: 4f 57 45 44 5f 4f 42 4a 45 43 54 5f 41 43 45 5f OWED_OBJECT_ACE_
a460: 54 59 50 45 20 3d 20 30 78 35 20 7d 0d 0a 65 6e TYPE = 0x5 }..en
a470: 75 6d 20 3a 20 75 69 6e 74 20 7b 20 41 43 43 45 um : uint { ACCE
a480: 53 53 5f 44 45 4e 49 45 44 5f 4f 42 4a 45 43 54 SS_DENIED_OBJECT
a490: 5f 41 43 45 5f 54 59 50 45 20 3d 20 30 78 36 20 _ACE_TYPE = 0x6
a4a0: 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b }..enum : uint {
a4b0: 20 53 59 53 54 45 4d 5f 41 55 44 49 54 5f 4f 42 SYSTEM_AUDIT_OB
a4c0: 4a 45 43 54 5f 41 43 45 5f 54 59 50 45 20 3d 20 JECT_ACE_TYPE =
a4d0: 30 78 37 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 0x7 }..enum : ui
a4e0: 6e 74 20 7b 20 53 59 53 54 45 4d 5f 41 4c 41 52 nt { SYSTEM_ALAR
a4f0: 4d 5f 4f 42 4a 45 43 54 5f 41 43 45 5f 54 59 50 M_OBJECT_ACE_TYP
a500: 45 20 3d 20 30 78 38 20 7d 0d 0a 65 6e 75 6d 20 E = 0x8 }..enum
a510: 3a 20 75 69 6e 74 20 7b 20 41 43 43 45 53 53 5f : uint { ACCESS_
a520: 4d 41 58 5f 4d 53 5f 4f 42 4a 45 43 54 5f 41 43 MAX_MS_OBJECT_AC
a530: 45 5f 54 59 50 45 20 3d 20 30 78 38 20 7d 0d 0a E_TYPE = 0x8 }..
a540: 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
a550: 41 43 43 45 53 53 5f 4d 41 58 5f 4d 53 5f 56 34 ACCESS_MAX_MS_V4
a560: 5f 41 43 45 5f 54 59 50 45 20 3d 20 30 78 38 20 _ACE_TYPE = 0x8
a570: 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b }..enum : uint {
a580: 20 41 43 43 45 53 53 5f 4d 41 58 5f 4d 53 5f 41 ACCESS_MAX_MS_A
a590: 43 45 5f 54 59 50 45 20 3d 20 30 78 38 20 7d 0d CE_TYPE = 0x8 }.
a5a0: 0a 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b ...enum : uint {
a5b0: 20 41 43 43 45 53 53 5f 41 4c 4c 4f 57 45 44 5f ACCESS_ALLOWED_
a5c0: 43 41 4c 4c 42 41 43 4b 5f 41 43 45 5f 54 59 50 CALLBACK_ACE_TYP
a5d0: 45 20 3d 20 30 78 39 20 7d 0d 0a 65 6e 75 6d 20 E = 0x9 }..enum
a5e0: 3a 20 75 69 6e 74 20 7b 20 41 43 43 45 53 53 5f : uint { ACCESS_
a5f0: 44 45 4e 49 45 44 5f 43 41 4c 4c 42 41 43 4b 5f DENIED_CALLBACK_
a600: 41 43 45 5f 54 59 50 45 20 3d 20 30 78 41 20 7d ACE_TYPE = 0xA }
a610: 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
a620: 41 43 43 45 53 53 5f 41 4c 4c 4f 57 45 44 5f 43 ACCESS_ALLOWED_C
a630: 41 4c 4c 42 41 43 4b 5f 4f 42 4a 45 43 54 5f 41 ALLBACK_OBJECT_A
a640: 43 45 5f 54 59 50 45 20 3d 20 30 78 42 20 7d 0d CE_TYPE = 0xB }.
a650: 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 41 .enum : uint { A
a660: 43 43 45 53 53 5f 44 45 4e 49 45 44 5f 43 41 4c CCESS_DENIED_CAL
a670: 4c 42 41 43 4b 5f 4f 42 4a 45 43 54 5f 41 43 45 LBACK_OBJECT_ACE
a680: 5f 54 59 50 45 20 3d 20 30 78 43 20 7d 0d 0a 65 _TYPE = 0xC }..e
a690: 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 53 59 53 num : uint { SYS
a6a0: 54 45 4d 5f 41 55 44 49 54 5f 43 41 4c 4c 42 41 TEM_AUDIT_CALLBA
a6b0: 43 4b 5f 41 43 45 5f 54 59 50 45 20 3d 20 30 78 CK_ACE_TYPE = 0x
a6c0: 44 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 D }..enum : uint
a6d0: 20 7b 20 53 59 53 54 45 4d 5f 41 4c 41 52 4d 5f { SYSTEM_ALARM_
a6e0: 43 41 4c 4c 42 41 43 4b 5f 41 43 45 5f 54 59 50 CALLBACK_ACE_TYP
a6f0: 45 20 3d 20 30 78 45 20 7d 0d 0a 65 6e 75 6d 20 E = 0xE }..enum
a700: 3a 20 75 69 6e 74 20 7b 20 53 59 53 54 45 4d 5f : uint { SYSTEM_
a710: 41 55 44 49 54 5f 43 41 4c 4c 42 41 43 4b 5f 4f AUDIT_CALLBACK_O
a720: 42 4a 45 43 54 5f 41 43 45 5f 54 59 50 45 20 3d BJECT_ACE_TYPE =
a730: 20 30 78 46 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 0xF }..enum : u
a740: 69 6e 74 20 7b 20 53 59 53 54 45 4d 5f 41 4c 41 int { SYSTEM_ALA
a750: 52 4d 5f 43 41 4c 4c 42 41 43 4b 5f 4f 42 4a 45 RM_CALLBACK_OBJE
a760: 43 54 5f 41 43 45 5f 54 59 50 45 20 3d 20 30 78 CT_ACE_TYPE = 0x
a770: 31 30 20 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 75 10 }....enum : u
a780: 69 6e 74 20 7b 20 41 43 43 45 53 53 5f 4d 41 58 int { ACCESS_MAX
a790: 5f 4d 53 5f 56 35 5f 41 43 45 5f 54 59 50 45 20 _MS_V5_ACE_TYPE
a7a0: 3d 20 30 78 31 30 20 7d 0d 0a 0d 0a 65 6e 75 6d = 0x10 }....enum
a7b0: 20 3a 20 75 69 6e 74 20 7b 20 4f 42 4a 45 43 54 : uint { OBJECT
a7c0: 5f 49 4e 48 45 52 49 54 5f 41 43 45 20 3d 20 30 _INHERIT_ACE = 0
a7d0: 78 31 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e x1 }..enum : uin
a7e0: 74 20 7b 20 43 4f 4e 54 41 49 4e 45 52 5f 49 4e t { CONTAINER_IN
a7f0: 48 45 52 49 54 5f 41 43 45 20 3d 20 30 78 32 20 HERIT_ACE = 0x2
a800: 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b }..enum : uint {
a810: 20 4e 4f 5f 50 52 4f 50 41 47 41 54 45 5f 49 4e NO_PROPAGATE_IN
a820: 48 45 52 49 54 5f 41 43 45 20 3d 20 30 78 34 20 HERIT_ACE = 0x4
a830: 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b }..enum : uint {
a840: 20 49 4e 48 45 52 49 54 5f 4f 4e 4c 59 5f 41 43 INHERIT_ONLY_AC
a850: 45 20 3d 20 30 78 38 20 7d 0d 0a 65 6e 75 6d 20 E = 0x8 }..enum
a860: 3a 20 75 69 6e 74 20 7b 20 49 4e 48 45 52 49 54 : uint { INHERIT
a870: 45 44 5f 41 43 45 20 3d 20 30 78 31 30 20 7d 0d ED_ACE = 0x10 }.
a880: 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 56 .enum : uint { V
a890: 41 4c 49 44 5f 49 4e 48 45 52 49 54 5f 46 4c 41 ALID_INHERIT_FLA
a8a0: 47 53 20 3d 20 30 78 31 46 20 7d 0d 0a 0d 0a 65 GS = 0x1F }....e
a8b0: 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 53 55 43 num : uint { SUC
a8c0: 43 45 53 53 46 55 4c 5f 41 43 43 45 53 53 5f 41 CESSFUL_ACCESS_A
a8d0: 43 45 5f 46 4c 41 47 20 3d 20 30 78 34 30 20 7d CE_FLAG = 0x40 }
a8e0: 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
a8f0: 46 41 49 4c 45 44 5f 41 43 43 45 53 53 5f 41 43 FAILED_ACCESS_AC
a900: 45 5f 46 4c 41 47 20 3d 20 30 78 38 30 20 7d 0d E_FLAG = 0x80 }.
a910: 0a 0d 0a 73 74 72 75 63 74 20 5f 41 43 43 45 53 ...struct _ACCES
a920: 53 5f 41 4c 4c 4f 57 45 44 5f 41 43 45 20 7b 0d S_ALLOWED_ACE {.
a930: 0a 20 20 41 43 45 5f 48 45 41 44 45 52 20 48 65 . ACE_HEADER He
a940: 61 64 65 72 3b 0d 0a 20 20 41 43 43 45 53 53 5f ader;.. ACCESS_
a950: 4d 41 53 4b 20 4d 61 73 6b 3b 0d 0a 20 20 44 57 MASK Mask;.. DW
a960: 4f 52 44 20 53 69 64 53 74 61 72 74 3b 0d 0a 7d ORD SidStart;..}
a970: 0d 0a 61 6c 69 61 73 20 5f 41 43 43 45 53 53 5f ..alias _ACCESS_
a980: 41 4c 4c 4f 57 45 44 5f 41 43 45 20 41 43 43 45 ALLOWED_ACE ACCE
a990: 53 53 5f 41 4c 4c 4f 57 45 44 5f 41 43 45 3b 0d SS_ALLOWED_ACE;.
a9a0: 0a 0d 0a 61 6c 69 61 73 20 41 43 43 45 53 53 5f ...alias ACCESS_
a9b0: 41 4c 4c 4f 57 45 44 5f 41 43 45 2a 20 50 41 43 ALLOWED_ACE* PAC
a9c0: 43 45 53 53 5f 41 4c 4c 4f 57 45 44 5f 41 43 45 CESS_ALLOWED_ACE
a9d0: 3b 0d 0a 0d 0a 73 74 72 75 63 74 20 5f 41 43 43 ;....struct _ACC
a9e0: 45 53 53 5f 44 45 4e 49 45 44 5f 41 43 45 20 7b ESS_DENIED_ACE {
a9f0: 0d 0a 20 20 41 43 45 5f 48 45 41 44 45 52 20 48 .. ACE_HEADER H
aa00: 65 61 64 65 72 3b 0d 0a 20 20 41 43 43 45 53 53 eader;.. ACCESS
aa10: 5f 4d 41 53 4b 20 4d 61 73 6b 3b 0d 0a 20 20 44 _MASK Mask;.. D
aa20: 57 4f 52 44 20 53 69 64 53 74 61 72 74 3b 0d 0a WORD SidStart;..
aa30: 7d 0d 0a 61 6c 69 61 73 20 5f 41 43 43 45 53 53 }..alias _ACCESS
aa40: 5f 44 45 4e 49 45 44 5f 41 43 45 20 41 43 43 45 _DENIED_ACE ACCE
aa50: 53 53 5f 44 45 4e 49 45 44 5f 41 43 45 3b 0d 0a SS_DENIED_ACE;..
aa60: 0d 0a 61 6c 69 61 73 20 41 43 43 45 53 53 5f 44 ..alias ACCESS_D
aa70: 45 4e 49 45 44 5f 41 43 45 2a 20 50 41 43 43 45 ENIED_ACE* PACCE
aa80: 53 53 5f 44 45 4e 49 45 44 5f 41 43 45 3b 0d 0a SS_DENIED_ACE;..
aa90: 0d 0a 73 74 72 75 63 74 20 5f 53 59 53 54 45 4d ..struct _SYSTEM
aaa0: 5f 41 55 44 49 54 5f 41 43 45 20 7b 0d 0a 20 20 _AUDIT_ACE {..
aab0: 41 43 45 5f 48 45 41 44 45 52 20 48 65 61 64 65 ACE_HEADER Heade
aac0: 72 3b 0d 0a 20 20 41 43 43 45 53 53 5f 4d 41 53 r;.. ACCESS_MAS
aad0: 4b 20 4d 61 73 6b 3b 0d 0a 20 20 44 57 4f 52 44 K Mask;.. DWORD
aae0: 20 53 69 64 53 74 61 72 74 3b 0d 0a 7d 0d 0a 61 SidStart;..}..a
aaf0: 6c 69 61 73 20 5f 53 59 53 54 45 4d 5f 41 55 44 lias _SYSTEM_AUD
ab00: 49 54 5f 41 43 45 20 53 59 53 54 45 4d 5f 41 55 IT_ACE SYSTEM_AU
ab10: 44 49 54 5f 41 43 45 3b 0d 0a 0d 0a 61 6c 69 61 DIT_ACE;....alia
ab20: 73 20 53 59 53 54 45 4d 5f 41 55 44 49 54 5f 41 s SYSTEM_AUDIT_A
ab30: 43 45 2a 20 50 53 59 53 54 45 4d 5f 41 55 44 49 CE* PSYSTEM_AUDI
ab40: 54 5f 41 43 45 3b 0d 0a 0d 0a 73 74 72 75 63 74 T_ACE;....struct
ab50: 20 5f 53 59 53 54 45 4d 5f 41 4c 41 52 4d 5f 41 _SYSTEM_ALARM_A
ab60: 43 45 20 7b 0d 0a 20 20 41 43 45 5f 48 45 41 44 CE {.. ACE_HEAD
ab70: 45 52 20 48 65 61 64 65 72 3b 0d 0a 20 20 41 43 ER Header;.. AC
ab80: 43 45 53 53 5f 4d 41 53 4b 20 4d 61 73 6b 3b 0d CESS_MASK Mask;.
ab90: 0a 20 20 44 57 4f 52 44 20 53 69 64 53 74 61 72 . DWORD SidStar
aba0: 74 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 5f 53 59 t;..}..alias _SY
abb0: 53 54 45 4d 5f 41 4c 41 52 4d 5f 41 43 45 20 53 STEM_ALARM_ACE S
abc0: 59 53 54 45 4d 5f 41 4c 41 52 4d 5f 41 43 45 3b YSTEM_ALARM_ACE;
abd0: 0d 0a 0d 0a 61 6c 69 61 73 20 53 59 53 54 45 4d ....alias SYSTEM
abe0: 5f 41 4c 41 52 4d 5f 41 43 45 2a 20 50 53 59 53 _ALARM_ACE* PSYS
abf0: 54 45 4d 5f 41 4c 41 52 4d 5f 41 43 45 3b 0d 0a TEM_ALARM_ACE;..
ac00: 0d 0a 73 74 72 75 63 74 20 5f 41 43 43 45 53 53 ..struct _ACCESS
ac10: 5f 41 4c 4c 4f 57 45 44 5f 4f 42 4a 45 43 54 5f _ALLOWED_OBJECT_
ac20: 41 43 45 20 7b 0d 0a 20 20 41 43 45 5f 48 45 41 ACE {.. ACE_HEA
ac30: 44 45 52 20 48 65 61 64 65 72 3b 0d 0a 20 20 41 DER Header;.. A
ac40: 43 43 45 53 53 5f 4d 41 53 4b 20 4d 61 73 6b 3b CCESS_MASK Mask;
ac50: 0d 0a 20 20 44 57 4f 52 44 20 46 6c 61 67 73 3b .. DWORD Flags;
ac60: 0d 0a 20 20 47 55 49 44 20 4f 62 6a 65 63 74 54 .. GUID ObjectT
ac70: 79 70 65 3b 0d 0a 20 20 47 55 49 44 20 49 6e 68 ype;.. GUID Inh
ac80: 65 72 69 74 65 64 4f 62 6a 65 63 74 54 79 70 65 eritedObjectType
ac90: 3b 0d 0a 20 20 44 57 4f 52 44 20 53 69 64 53 74 ;.. DWORD SidSt
aca0: 61 72 74 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 5f art;..}..alias _
acb0: 41 43 43 45 53 53 5f 41 4c 4c 4f 57 45 44 5f 4f ACCESS_ALLOWED_O
acc0: 42 4a 45 43 54 5f 41 43 45 20 41 43 43 45 53 53 BJECT_ACE ACCESS
acd0: 5f 41 4c 4c 4f 57 45 44 5f 4f 42 4a 45 43 54 5f _ALLOWED_OBJECT_
ace0: 41 43 45 3b 0d 0a 61 6c 69 61 73 20 5f 41 43 43 ACE;..alias _ACC
acf0: 45 53 53 5f 41 4c 4c 4f 57 45 44 5f 4f 42 4a 45 ESS_ALLOWED_OBJE
ad00: 43 54 5f 41 43 45 2a 20 50 41 43 43 45 53 53 5f CT_ACE* PACCESS_
ad10: 41 4c 4c 4f 57 45 44 5f 4f 42 4a 45 43 54 5f 41 ALLOWED_OBJECT_A
ad20: 43 45 3b 0d 0a 0d 0a 73 74 72 75 63 74 20 5f 41 CE;....struct _A
ad30: 43 43 45 53 53 5f 44 45 4e 49 45 44 5f 4f 42 4a CCESS_DENIED_OBJ
ad40: 45 43 54 5f 41 43 45 20 7b 0d 0a 20 20 41 43 45 ECT_ACE {.. ACE
ad50: 5f 48 45 41 44 45 52 20 48 65 61 64 65 72 3b 0d _HEADER Header;.
ad60: 0a 20 20 41 43 43 45 53 53 5f 4d 41 53 4b 20 4d . ACCESS_MASK M
ad70: 61 73 6b 3b 0d 0a 20 20 44 57 4f 52 44 20 46 6c ask;.. DWORD Fl
ad80: 61 67 73 3b 0d 0a 20 20 47 55 49 44 20 4f 62 6a ags;.. GUID Obj
ad90: 65 63 74 54 79 70 65 3b 0d 0a 20 20 47 55 49 44 ectType;.. GUID
ada0: 20 49 6e 68 65 72 69 74 65 64 4f 62 6a 65 63 74 InheritedObject
adb0: 54 79 70 65 3b 0d 0a 20 20 44 57 4f 52 44 20 53 Type;.. DWORD S
adc0: 69 64 53 74 61 72 74 3b 0d 0a 7d 0d 0a 61 6c 69 idStart;..}..ali
add0: 61 73 20 5f 41 43 43 45 53 53 5f 44 45 4e 49 45 as _ACCESS_DENIE
ade0: 44 5f 4f 42 4a 45 43 54 5f 41 43 45 20 41 43 43 D_OBJECT_ACE ACC
adf0: 45 53 53 5f 44 45 4e 49 45 44 5f 4f 42 4a 45 43 ESS_DENIED_OBJEC
ae00: 54 5f 41 43 45 3b 0d 0a 61 6c 69 61 73 20 5f 41 T_ACE;..alias _A
ae10: 43 43 45 53 53 5f 44 45 4e 49 45 44 5f 4f 42 4a CCESS_DENIED_OBJ
ae20: 45 43 54 5f 41 43 45 2a 20 50 41 43 43 45 53 53 ECT_ACE* PACCESS
ae30: 5f 44 45 4e 49 45 44 5f 4f 42 4a 45 43 54 5f 41 _DENIED_OBJECT_A
ae40: 43 45 3b 0d 0a 0d 0a 73 74 72 75 63 74 20 5f 53 CE;....struct _S
ae50: 59 53 54 45 4d 5f 41 55 44 49 54 5f 4f 42 4a 45 YSTEM_AUDIT_OBJE
ae60: 43 54 5f 41 43 45 20 7b 0d 0a 20 20 41 43 45 5f CT_ACE {.. ACE_
ae70: 48 45 41 44 45 52 20 48 65 61 64 65 72 3b 0d 0a HEADER Header;..
ae80: 20 20 41 43 43 45 53 53 5f 4d 41 53 4b 20 4d 61 ACCESS_MASK Ma
ae90: 73 6b 3b 0d 0a 20 20 44 57 4f 52 44 20 46 6c 61 sk;.. DWORD Fla
aea0: 67 73 3b 0d 0a 20 20 47 55 49 44 20 4f 62 6a 65 gs;.. GUID Obje
aeb0: 63 74 54 79 70 65 3b 0d 0a 20 20 47 55 49 44 20 ctType;.. GUID
aec0: 49 6e 68 65 72 69 74 65 64 4f 62 6a 65 63 74 54 InheritedObjectT
aed0: 79 70 65 3b 0d 0a 20 20 44 57 4f 52 44 20 53 69 ype;.. DWORD Si
aee0: 64 53 74 61 72 74 3b 0d 0a 7d 0d 0a 61 6c 69 61 dStart;..}..alia
aef0: 73 20 5f 53 59 53 54 45 4d 5f 41 55 44 49 54 5f s _SYSTEM_AUDIT_
af00: 4f 42 4a 45 43 54 5f 41 43 45 20 53 59 53 54 45 OBJECT_ACE SYSTE
af10: 4d 5f 41 55 44 49 54 5f 4f 42 4a 45 43 54 5f 41 M_AUDIT_OBJECT_A
af20: 43 45 3b 0d 0a 61 6c 69 61 73 20 5f 53 59 53 54 CE;..alias _SYST
af30: 45 4d 5f 41 55 44 49 54 5f 4f 42 4a 45 43 54 5f EM_AUDIT_OBJECT_
af40: 41 43 45 2a 20 50 53 59 53 54 45 4d 5f 41 55 44 ACE* PSYSTEM_AUD
af50: 49 54 5f 4f 42 4a 45 43 54 5f 41 43 45 3b 0d 0a IT_OBJECT_ACE;..
af60: 0d 0a 73 74 72 75 63 74 20 5f 53 59 53 54 45 4d ..struct _SYSTEM
af70: 5f 41 4c 41 52 4d 5f 4f 42 4a 45 43 54 5f 41 43 _ALARM_OBJECT_AC
af80: 45 20 7b 0d 0a 20 20 41 43 45 5f 48 45 41 44 45 E {.. ACE_HEADE
af90: 52 20 48 65 61 64 65 72 3b 0d 0a 20 20 41 43 43 R Header;.. ACC
afa0: 45 53 53 5f 4d 41 53 4b 20 4d 61 73 6b 3b 0d 0a ESS_MASK Mask;..
afb0: 20 20 44 57 4f 52 44 20 46 6c 61 67 73 3b 0d 0a DWORD Flags;..
afc0: 20 20 47 55 49 44 20 4f 62 6a 65 63 74 54 79 70 GUID ObjectTyp
afd0: 65 3b 0d 0a 20 20 47 55 49 44 20 49 6e 68 65 72 e;.. GUID Inher
afe0: 69 74 65 64 4f 62 6a 65 63 74 54 79 70 65 3b 0d itedObjectType;.
aff0: 0a 20 20 44 57 4f 52 44 20 53 69 64 53 74 61 72 . DWORD SidStar
b000: 74 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 5f 53 59 t;..}..alias _SY
b010: 53 54 45 4d 5f 41 4c 41 52 4d 5f 4f 42 4a 45 43 STEM_ALARM_OBJEC
b020: 54 5f 41 43 45 20 53 59 53 54 45 4d 5f 41 4c 41 T_ACE SYSTEM_ALA
b030: 52 4d 5f 4f 42 4a 45 43 54 5f 41 43 45 3b 0d 0a RM_OBJECT_ACE;..
b040: 61 6c 69 61 73 20 5f 53 59 53 54 45 4d 5f 41 4c alias _SYSTEM_AL
b050: 41 52 4d 5f 4f 42 4a 45 43 54 5f 41 43 45 2a 20 ARM_OBJECT_ACE*
b060: 50 53 59 53 54 45 4d 5f 41 4c 41 52 4d 5f 4f 42 PSYSTEM_ALARM_OB
b070: 4a 45 43 54 5f 41 43 45 3b 0d 0a 0d 0a 73 74 72 JECT_ACE;....str
b080: 75 63 74 20 5f 41 43 43 45 53 53 5f 41 4c 4c 4f uct _ACCESS_ALLO
b090: 57 45 44 5f 43 41 4c 4c 42 41 43 4b 5f 41 43 45 WED_CALLBACK_ACE
b0a0: 20 7b 0d 0a 20 20 41 43 45 5f 48 45 41 44 45 52 {.. ACE_HEADER
b0b0: 20 48 65 61 64 65 72 3b 0d 0a 20 20 41 43 43 45 Header;.. ACCE
b0c0: 53 53 5f 4d 41 53 4b 20 4d 61 73 6b 3b 0d 0a 20 SS_MASK Mask;..
b0d0: 20 44 57 4f 52 44 20 53 69 64 53 74 61 72 74 3b DWORD SidStart;
b0e0: 0d 0a 7d 0d 0a 61 6c 69 61 73 20 5f 41 43 43 45 ..}..alias _ACCE
b0f0: 53 53 5f 41 4c 4c 4f 57 45 44 5f 43 41 4c 4c 42 SS_ALLOWED_CALLB
b100: 41 43 4b 5f 41 43 45 20 41 43 43 45 53 53 5f 41 ACK_ACE ACCESS_A
b110: 4c 4c 4f 57 45 44 5f 43 41 4c 4c 42 41 43 4b 5f LLOWED_CALLBACK_
b120: 41 43 45 3b 0d 0a 61 6c 69 61 73 20 5f 41 43 43 ACE;..alias _ACC
b130: 45 53 53 5f 41 4c 4c 4f 57 45 44 5f 43 41 4c 4c ESS_ALLOWED_CALL
b140: 42 41 43 4b 5f 41 43 45 2a 20 50 41 43 43 45 53 BACK_ACE* PACCES
b150: 53 5f 41 4c 4c 4f 57 45 44 5f 43 41 4c 4c 42 41 S_ALLOWED_CALLBA
b160: 43 4b 5f 41 43 45 3b 0d 0a 0d 0a 73 74 72 75 63 CK_ACE;....struc
b170: 74 20 5f 41 43 43 45 53 53 5f 44 45 4e 49 45 44 t _ACCESS_DENIED
b180: 5f 43 41 4c 4c 42 41 43 4b 5f 41 43 45 20 7b 0d _CALLBACK_ACE {.
b190: 0a 20 20 41 43 45 5f 48 45 41 44 45 52 20 48 65 . ACE_HEADER He
b1a0: 61 64 65 72 3b 0d 0a 20 20 41 43 43 45 53 53 5f ader;.. ACCESS_
b1b0: 4d 41 53 4b 20 4d 61 73 6b 3b 0d 0a 20 20 44 57 MASK Mask;.. DW
b1c0: 4f 52 44 20 53 69 64 53 74 61 72 74 3b 0d 0a 7d ORD SidStart;..}
b1d0: 0d 0a 61 6c 69 61 73 20 5f 41 43 43 45 53 53 5f ..alias _ACCESS_
b1e0: 44 45 4e 49 45 44 5f 43 41 4c 4c 42 41 43 4b 5f DENIED_CALLBACK_
b1f0: 41 43 45 20 41 43 43 45 53 53 5f 44 45 4e 49 45 ACE ACCESS_DENIE
b200: 44 5f 43 41 4c 4c 42 41 43 4b 5f 41 43 45 3b 0d D_CALLBACK_ACE;.
b210: 0a 61 6c 69 61 73 20 5f 41 43 43 45 53 53 5f 44 .alias _ACCESS_D
b220: 45 4e 49 45 44 5f 43 41 4c 4c 42 41 43 4b 5f 41 ENIED_CALLBACK_A
b230: 43 45 2a 20 50 41 43 43 45 53 53 5f 44 45 4e 49 CE* PACCESS_DENI
b240: 45 44 5f 43 41 4c 4c 42 41 43 4b 5f 41 43 45 3b ED_CALLBACK_ACE;
b250: 0d 0a 0d 0a 73 74 72 75 63 74 20 5f 53 59 53 54 ....struct _SYST
b260: 45 4d 5f 41 55 44 49 54 5f 43 41 4c 4c 42 41 43 EM_AUDIT_CALLBAC
b270: 4b 5f 41 43 45 20 7b 0d 0a 20 20 41 43 45 5f 48 K_ACE {.. ACE_H
b280: 45 41 44 45 52 20 48 65 61 64 65 72 3b 0d 0a 20 EADER Header;..
b290: 20 41 43 43 45 53 53 5f 4d 41 53 4b 20 4d 61 73 ACCESS_MASK Mas
b2a0: 6b 3b 0d 0a 20 20 44 57 4f 52 44 20 53 69 64 53 k;.. DWORD SidS
b2b0: 74 61 72 74 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 tart;..}..alias
b2c0: 5f 53 59 53 54 45 4d 5f 41 55 44 49 54 5f 43 41 _SYSTEM_AUDIT_CA
b2d0: 4c 4c 42 41 43 4b 5f 41 43 45 20 53 59 53 54 45 LLBACK_ACE SYSTE
b2e0: 4d 5f 41 55 44 49 54 5f 43 41 4c 4c 42 41 43 4b M_AUDIT_CALLBACK
b2f0: 5f 41 43 45 3b 0d 0a 61 6c 69 61 73 20 5f 53 59 _ACE;..alias _SY
b300: 53 54 45 4d 5f 41 55 44 49 54 5f 43 41 4c 4c 42 STEM_AUDIT_CALLB
b310: 41 43 4b 5f 41 43 45 2a 20 50 53 59 53 54 45 4d ACK_ACE* PSYSTEM
b320: 5f 41 55 44 49 54 5f 43 41 4c 4c 42 41 43 4b 5f _AUDIT_CALLBACK_
b330: 41 43 45 3b 0d 0a 0d 0a 73 74 72 75 63 74 20 5f ACE;....struct _
b340: 53 59 53 54 45 4d 5f 41 4c 41 52 4d 5f 43 41 4c SYSTEM_ALARM_CAL
b350: 4c 42 41 43 4b 5f 41 43 45 20 7b 0d 0a 20 20 41 LBACK_ACE {.. A
b360: 43 45 5f 48 45 41 44 45 52 20 48 65 61 64 65 72 CE_HEADER Header
b370: 3b 0d 0a 20 20 41 43 43 45 53 53 5f 4d 41 53 4b ;.. ACCESS_MASK
b380: 20 4d 61 73 6b 3b 0d 0a 20 20 44 57 4f 52 44 20 Mask;.. DWORD
b390: 53 69 64 53 74 61 72 74 3b 0d 0a 7d 0d 0a 61 6c SidStart;..}..al
b3a0: 69 61 73 20 5f 53 59 53 54 45 4d 5f 41 4c 41 52 ias _SYSTEM_ALAR
b3b0: 4d 5f 43 41 4c 4c 42 41 43 4b 5f 41 43 45 20 53 M_CALLBACK_ACE S
b3c0: 59 53 54 45 4d 5f 41 4c 41 52 4d 5f 43 41 4c 4c YSTEM_ALARM_CALL
b3d0: 42 41 43 4b 5f 41 43 45 3b 0d 0a 61 6c 69 61 73 BACK_ACE;..alias
b3e0: 20 5f 53 59 53 54 45 4d 5f 41 4c 41 52 4d 5f 43 _SYSTEM_ALARM_C
b3f0: 41 4c 4c 42 41 43 4b 5f 41 43 45 2a 20 50 53 59 ALLBACK_ACE* PSY
b400: 53 54 45 4d 5f 41 4c 41 52 4d 5f 43 41 4c 4c 42 STEM_ALARM_CALLB
b410: 41 43 4b 5f 41 43 45 3b 0d 0a 0d 0a 73 74 72 75 ACK_ACE;....stru
b420: 63 74 20 5f 41 43 43 45 53 53 5f 41 4c 4c 4f 57 ct _ACCESS_ALLOW
b430: 45 44 5f 43 41 4c 4c 42 41 43 4b 5f 4f 42 4a 45 ED_CALLBACK_OBJE
b440: 43 54 5f 41 43 45 20 7b 0d 0a 20 20 41 43 45 5f CT_ACE {.. ACE_
b450: 48 45 41 44 45 52 20 48 65 61 64 65 72 3b 0d 0a HEADER Header;..
b460: 20 20 41 43 43 45 53 53 5f 4d 41 53 4b 20 4d 61 ACCESS_MASK Ma
b470: 73 6b 3b 0d 0a 20 20 44 57 4f 52 44 20 46 6c 61 sk;.. DWORD Fla
b480: 67 73 3b 0d 0a 20 20 47 55 49 44 20 4f 62 6a 65 gs;.. GUID Obje
b490: 63 74 54 79 70 65 3b 0d 0a 20 20 47 55 49 44 20 ctType;.. GUID
b4a0: 49 6e 68 65 72 69 74 65 64 4f 62 6a 65 63 74 54 InheritedObjectT
b4b0: 79 70 65 3b 0d 0a 20 20 44 57 4f 52 44 20 53 69 ype;.. DWORD Si
b4c0: 64 53 74 61 72 74 3b 0d 0a 7d 0d 0a 61 6c 69 61 dStart;..}..alia
b4d0: 73 20 5f 41 43 43 45 53 53 5f 41 4c 4c 4f 57 45 s _ACCESS_ALLOWE
b4e0: 44 5f 43 41 4c 4c 42 41 43 4b 5f 4f 42 4a 45 43 D_CALLBACK_OBJEC
b4f0: 54 5f 41 43 45 20 41 43 43 45 53 53 5f 41 4c 4c T_ACE ACCESS_ALL
b500: 4f 57 45 44 5f 43 41 4c 4c 42 41 43 4b 5f 4f 42 OWED_CALLBACK_OB
b510: 4a 45 43 54 5f 41 43 45 3b 0d 0a 61 6c 69 61 73 JECT_ACE;..alias
b520: 20 5f 41 43 43 45 53 53 5f 41 4c 4c 4f 57 45 44 _ACCESS_ALLOWED
b530: 5f 43 41 4c 4c 42 41 43 4b 5f 4f 42 4a 45 43 54 _CALLBACK_OBJECT
b540: 5f 41 43 45 2a 20 50 41 43 43 45 53 53 5f 41 4c _ACE* PACCESS_AL
b550: 4c 4f 57 45 44 5f 43 41 4c 4c 42 41 43 4b 5f 4f LOWED_CALLBACK_O
b560: 42 4a 45 43 54 5f 41 43 45 3b 0d 0a 0d 0a 73 74 BJECT_ACE;....st
b570: 72 75 63 74 20 5f 41 43 43 45 53 53 5f 44 45 4e ruct _ACCESS_DEN
b580: 49 45 44 5f 43 41 4c 4c 42 41 43 4b 5f 4f 42 4a IED_CALLBACK_OBJ
b590: 45 43 54 5f 41 43 45 20 7b 0d 0a 20 20 41 43 45 ECT_ACE {.. ACE
b5a0: 5f 48 45 41 44 45 52 20 48 65 61 64 65 72 3b 0d _HEADER Header;.
b5b0: 0a 20 20 41 43 43 45 53 53 5f 4d 41 53 4b 20 4d . ACCESS_MASK M
b5c0: 61 73 6b 3b 0d 0a 20 20 44 57 4f 52 44 20 46 6c ask;.. DWORD Fl
b5d0: 61 67 73 3b 0d 0a 20 20 47 55 49 44 20 4f 62 6a ags;.. GUID Obj
b5e0: 65 63 74 54 79 70 65 3b 0d 0a 20 20 47 55 49 44 ectType;.. GUID
b5f0: 20 49 6e 68 65 72 69 74 65 64 4f 62 6a 65 63 74 InheritedObject
b600: 54 79 70 65 3b 0d 0a 20 20 44 57 4f 52 44 20 53 Type;.. DWORD S
b610: 69 64 53 74 61 72 74 3b 0d 0a 7d 0d 0a 61 6c 69 idStart;..}..ali
b620: 61 73 20 5f 41 43 43 45 53 53 5f 44 45 4e 49 45 as _ACCESS_DENIE
b630: 44 5f 43 41 4c 4c 42 41 43 4b 5f 4f 42 4a 45 43 D_CALLBACK_OBJEC
b640: 54 5f 41 43 45 20 41 43 43 45 53 53 5f 44 45 4e T_ACE ACCESS_DEN
b650: 49 45 44 5f 43 41 4c 4c 42 41 43 4b 5f 4f 42 4a IED_CALLBACK_OBJ
b660: 45 43 54 5f 41 43 45 3b 0d 0a 61 6c 69 61 73 20 ECT_ACE;..alias
b670: 5f 41 43 43 45 53 53 5f 44 45 4e 49 45 44 5f 43 _ACCESS_DENIED_C
b680: 41 4c 4c 42 41 43 4b 5f 4f 42 4a 45 43 54 5f 41 ALLBACK_OBJECT_A
b690: 43 45 2a 20 50 41 43 43 45 53 53 5f 44 45 4e 49 CE* PACCESS_DENI
b6a0: 45 44 5f 43 41 4c 4c 42 41 43 4b 5f 4f 42 4a 45 ED_CALLBACK_OBJE
b6b0: 43 54 5f 41 43 45 3b 0d 0a 0d 0a 73 74 72 75 63 CT_ACE;....struc
b6c0: 74 20 5f 53 59 53 54 45 4d 5f 41 55 44 49 54 5f t _SYSTEM_AUDIT_
b6d0: 43 41 4c 4c 42 41 43 4b 5f 4f 42 4a 45 43 54 5f CALLBACK_OBJECT_
b6e0: 41 43 45 20 7b 0d 0a 20 20 41 43 45 5f 48 45 41 ACE {.. ACE_HEA
b6f0: 44 45 52 20 48 65 61 64 65 72 3b 0d 0a 20 20 41 DER Header;.. A
b700: 43 43 45 53 53 5f 4d 41 53 4b 20 4d 61 73 6b 3b CCESS_MASK Mask;
b710: 0d 0a 20 20 44 57 4f 52 44 20 46 6c 61 67 73 3b .. DWORD Flags;
b720: 0d 0a 20 20 47 55 49 44 20 4f 62 6a 65 63 74 54 .. GUID ObjectT
b730: 79 70 65 3b 0d 0a 20 20 47 55 49 44 20 49 6e 68 ype;.. GUID Inh
b740: 65 72 69 74 65 64 4f 62 6a 65 63 74 54 79 70 65 eritedObjectType
b750: 3b 0d 0a 20 20 44 57 4f 52 44 20 53 69 64 53 74 ;.. DWORD SidSt
b760: 61 72 74 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 5f art;..}..alias _
b770: 53 59 53 54 45 4d 5f 41 55 44 49 54 5f 43 41 4c SYSTEM_AUDIT_CAL
b780: 4c 42 41 43 4b 5f 4f 42 4a 45 43 54 5f 41 43 45 LBACK_OBJECT_ACE
b790: 20 53 59 53 54 45 4d 5f 41 55 44 49 54 5f 43 41 SYSTEM_AUDIT_CA
b7a0: 4c 4c 42 41 43 4b 5f 4f 42 4a 45 43 54 5f 41 43 LLBACK_OBJECT_AC
b7b0: 45 3b 0d 0a 61 6c 69 61 73 20 5f 53 59 53 54 45 E;..alias _SYSTE
b7c0: 4d 5f 41 55 44 49 54 5f 43 41 4c 4c 42 41 43 4b M_AUDIT_CALLBACK
b7d0: 5f 4f 42 4a 45 43 54 5f 41 43 45 2a 20 50 53 59 _OBJECT_ACE* PSY
b7e0: 53 54 45 4d 5f 41 55 44 49 54 5f 43 41 4c 4c 42 STEM_AUDIT_CALLB
b7f0: 41 43 4b 5f 4f 42 4a 45 43 54 5f 41 43 45 3b 0d ACK_OBJECT_ACE;.
b800: 0a 0d 0a 73 74 72 75 63 74 20 5f 53 59 53 54 45 ...struct _SYSTE
b810: 4d 5f 41 4c 41 52 4d 5f 43 41 4c 4c 42 41 43 4b M_ALARM_CALLBACK
b820: 5f 4f 42 4a 45 43 54 5f 41 43 45 20 7b 0d 0a 20 _OBJECT_ACE {..
b830: 20 41 43 45 5f 48 45 41 44 45 52 20 48 65 61 64 ACE_HEADER Head
b840: 65 72 3b 0d 0a 20 20 41 43 43 45 53 53 5f 4d 41 er;.. ACCESS_MA
b850: 53 4b 20 4d 61 73 6b 3b 0d 0a 20 20 44 57 4f 52 SK Mask;.. DWOR
b860: 44 20 46 6c 61 67 73 3b 0d 0a 20 20 47 55 49 44 D Flags;.. GUID
b870: 20 4f 62 6a 65 63 74 54 79 70 65 3b 0d 0a 20 20 ObjectType;..
b880: 47 55 49 44 20 49 6e 68 65 72 69 74 65 64 4f 62 GUID InheritedOb
b890: 6a 65 63 74 54 79 70 65 3b 0d 0a 20 20 44 57 4f jectType;.. DWO
b8a0: 52 44 20 53 69 64 53 74 61 72 74 3b 0d 0a 7d 0d RD SidStart;..}.
b8b0: 0a 61 6c 69 61 73 20 5f 53 59 53 54 45 4d 5f 41 .alias _SYSTEM_A
b8c0: 4c 41 52 4d 5f 43 41 4c 4c 42 41 43 4b 5f 4f 42 LARM_CALLBACK_OB
b8d0: 4a 45 43 54 5f 41 43 45 20 53 59 53 54 45 4d 5f JECT_ACE SYSTEM_
b8e0: 41 4c 41 52 4d 5f 43 41 4c 4c 42 41 43 4b 5f 4f ALARM_CALLBACK_O
b8f0: 42 4a 45 43 54 5f 41 43 45 3b 0d 0a 61 6c 69 61 BJECT_ACE;..alia
b900: 73 20 5f 53 59 53 54 45 4d 5f 41 4c 41 52 4d 5f s _SYSTEM_ALARM_
b910: 43 41 4c 4c 42 41 43 4b 5f 4f 42 4a 45 43 54 5f CALLBACK_OBJECT_
b920: 41 43 45 2a 20 50 53 59 53 54 45 4d 5f 41 4c 41 ACE* PSYSTEM_ALA
b930: 52 4d 5f 43 41 4c 4c 42 41 43 4b 5f 4f 42 4a 45 RM_CALLBACK_OBJE
b940: 43 54 5f 41 43 45 3b 0d 0a 0d 0a 65 6e 75 6d 20 CT_ACE;....enum
b950: 3a 20 75 69 6e 74 20 7b 20 41 43 45 5f 4f 42 4a : uint { ACE_OBJ
b960: 45 43 54 5f 54 59 50 45 5f 50 52 45 53 45 4e 54 ECT_TYPE_PRESENT
b970: 20 3d 20 30 78 31 20 7d 0d 0a 65 6e 75 6d 20 3a = 0x1 }..enum :
b980: 20 75 69 6e 74 20 7b 20 41 43 45 5f 49 4e 48 45 uint { ACE_INHE
b990: 52 49 54 45 44 5f 4f 42 4a 45 43 54 5f 54 59 50 RITED_OBJECT_TYP
b9a0: 45 5f 50 52 45 53 45 4e 54 20 3d 20 30 78 32 20 E_PRESENT = 0x2
b9b0: 7d 0d 0a 0d 0a 61 6c 69 61 73 20 69 6e 74 20 5f }....alias int _
b9c0: 41 43 4c 5f 49 4e 46 4f 52 4d 41 54 49 4f 4e 5f ACL_INFORMATION_
b9d0: 43 4c 41 53 53 3b 0d 0a 65 6e 75 6d 20 7b 0d 0a CLASS;..enum {..
b9e0: 20 20 41 63 6c 52 65 76 69 73 69 6f 6e 49 6e 66 AclRevisionInf
b9f0: 6f 72 6d 61 74 69 6f 6e 20 3d 20 31 2c 0d 0a 20 ormation = 1,..
ba00: 20 41 63 6c 53 69 7a 65 49 6e 66 6f 72 6d 61 74 AclSizeInformat
ba10: 69 6f 6e 2c 0d 0a 7d 0d 0a 61 6c 69 61 73 20 5f ion,..}..alias _
ba20: 41 43 4c 5f 49 4e 46 4f 52 4d 41 54 49 4f 4e 5f ACL_INFORMATION_
ba30: 43 4c 41 53 53 20 41 43 4c 5f 49 4e 46 4f 52 4d CLASS ACL_INFORM
ba40: 41 54 49 4f 4e 5f 43 4c 41 53 53 3b 0d 0a 0d 0a ATION_CLASS;....
ba50: 73 74 72 75 63 74 20 5f 41 43 4c 5f 52 45 56 49 struct _ACL_REVI
ba60: 53 49 4f 4e 5f 49 4e 46 4f 52 4d 41 54 49 4f 4e SION_INFORMATION
ba70: 20 7b 0d 0a 20 20 44 57 4f 52 44 20 41 63 6c 52 {.. DWORD AclR
ba80: 65 76 69 73 69 6f 6e 3b 0d 0a 7d 0d 0a 61 6c 69 evision;..}..ali
ba90: 61 73 20 5f 41 43 4c 5f 52 45 56 49 53 49 4f 4e as _ACL_REVISION
baa0: 5f 49 4e 46 4f 52 4d 41 54 49 4f 4e 20 41 43 4c _INFORMATION ACL
bab0: 5f 52 45 56 49 53 49 4f 4e 5f 49 4e 46 4f 52 4d _REVISION_INFORM
bac0: 41 54 49 4f 4e 3b 0d 0a 0d 0a 61 6c 69 61 73 20 ATION;....alias
bad0: 41 43 4c 5f 52 45 56 49 53 49 4f 4e 5f 49 4e 46 ACL_REVISION_INF
bae0: 4f 52 4d 41 54 49 4f 4e 2a 20 50 41 43 4c 5f 52 ORMATION* PACL_R
baf0: 45 56 49 53 49 4f 4e 5f 49 4e 46 4f 52 4d 41 54 EVISION_INFORMAT
bb00: 49 4f 4e 3b 0d 0a 0d 0a 73 74 72 75 63 74 20 5f ION;....struct _
bb10: 41 43 4c 5f 53 49 5a 45 5f 49 4e 46 4f 52 4d 41 ACL_SIZE_INFORMA
bb20: 54 49 4f 4e 20 7b 0d 0a 20 20 44 57 4f 52 44 20 TION {.. DWORD
bb30: 41 63 65 43 6f 75 6e 74 3b 0d 0a 20 20 44 57 4f AceCount;.. DWO
bb40: 52 44 20 41 63 6c 42 79 74 65 73 49 6e 55 73 65 RD AclBytesInUse
bb50: 3b 0d 0a 20 20 44 57 4f 52 44 20 41 63 6c 42 79 ;.. DWORD AclBy
bb60: 74 65 73 46 72 65 65 3b 0d 0a 7d 0d 0a 61 6c 69 tesFree;..}..ali
bb70: 61 73 20 5f 41 43 4c 5f 53 49 5a 45 5f 49 4e 46 as _ACL_SIZE_INF
bb80: 4f 52 4d 41 54 49 4f 4e 20 41 43 4c 5f 53 49 5a ORMATION ACL_SIZ
bb90: 45 5f 49 4e 46 4f 52 4d 41 54 49 4f 4e 3b 0d 0a E_INFORMATION;..
bba0: 0d 0a 61 6c 69 61 73 20 41 43 4c 5f 53 49 5a 45 ..alias ACL_SIZE
bbb0: 5f 49 4e 46 4f 52 4d 41 54 49 4f 4e 2a 20 50 41 _INFORMATION* PA
bbc0: 43 4c 5f 53 49 5a 45 5f 49 4e 46 4f 52 4d 41 54 CL_SIZE_INFORMAT
bbd0: 49 4f 4e 3b 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 75 ION;....enum : u
bbe0: 69 6e 74 20 7b 20 53 45 43 55 52 49 54 59 5f 44 int { SECURITY_D
bbf0: 45 53 43 52 49 50 54 4f 52 5f 52 45 56 49 53 49 ESCRIPTOR_REVISI
bc00: 4f 4e 20 3d 20 31 20 7d 0d 0a 65 6e 75 6d 20 3a ON = 1 }..enum :
bc10: 20 75 69 6e 74 20 7b 20 53 45 43 55 52 49 54 59 uint { SECURITY
bc20: 5f 44 45 53 43 52 49 50 54 4f 52 5f 52 45 56 49 _DESCRIPTOR_REVI
bc30: 53 49 4f 4e 31 20 3d 20 31 20 7d 0d 0a 0d 0a 63 SION1 = 1 }....c
bc40: 6f 6e 73 74 20 75 69 6e 74 20 53 45 43 55 52 49 onst uint SECURI
bc50: 54 59 5f 44 45 53 43 52 49 50 54 4f 52 5f 4d 49 TY_DESCRIPTOR_MI
bc60: 4e 5f 4c 45 4e 47 54 48 20 3d 20 53 45 43 55 52 N_LENGTH = SECUR
bc70: 49 54 59 5f 44 45 53 43 52 49 50 54 4f 52 2e 73 ITY_DESCRIPTOR.s
bc80: 69 7a 65 6f 66 3b 0d 0a 0d 0a 61 6c 69 61 73 20 izeof;....alias
bc90: 57 4f 52 44 20 53 45 43 55 52 49 54 59 5f 44 45 WORD SECURITY_DE
bca0: 53 43 52 49 50 54 4f 52 5f 43 4f 4e 54 52 4f 4c SCRIPTOR_CONTROL
bcb0: 3b 0d 0a 61 6c 69 61 73 20 57 4f 52 44 2a 20 50 ;..alias WORD* P
bcc0: 53 45 43 55 52 49 54 59 5f 44 45 53 43 52 49 50 SECURITY_DESCRIP
bcd0: 54 4f 52 5f 43 4f 4e 54 52 4f 4c 3b 0d 0a 0d 0a TOR_CONTROL;....
bce0: 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 53 45 enum : uint { SE
bcf0: 5f 4f 57 4e 45 52 5f 44 45 46 41 55 4c 54 45 44 _OWNER_DEFAULTED
bd00: 20 3d 20 30 78 30 30 30 31 20 7d 0d 0a 65 6e 75 = 0x0001 }..enu
bd10: 6d 20 3a 20 75 69 6e 74 20 7b 20 53 45 5f 47 52 m : uint { SE_GR
bd20: 4f 55 50 5f 44 45 46 41 55 4c 54 45 44 20 3d 20 OUP_DEFAULTED =
bd30: 30 78 30 30 30 32 20 7d 0d 0a 65 6e 75 6d 20 3a 0x0002 }..enum :
bd40: 20 75 69 6e 74 20 7b 20 53 45 5f 44 41 43 4c 5f uint { SE_DACL_
bd50: 50 52 45 53 45 4e 54 20 3d 20 30 78 30 30 30 34 PRESENT = 0x0004
bd60: 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 }..enum : uint
bd70: 7b 20 53 45 5f 44 41 43 4c 5f 44 45 46 41 55 4c { SE_DACL_DEFAUL
bd80: 54 45 44 20 3d 20 30 78 30 30 30 38 20 7d 0d 0a TED = 0x0008 }..
bd90: 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 53 45 enum : uint { SE
bda0: 5f 53 41 43 4c 5f 50 52 45 53 45 4e 54 20 3d 20 _SACL_PRESENT =
bdb0: 30 78 30 30 31 30 20 7d 0d 0a 65 6e 75 6d 20 3a 0x0010 }..enum :
bdc0: 20 75 69 6e 74 20 7b 20 53 45 5f 53 41 43 4c 5f uint { SE_SACL_
bdd0: 44 45 46 41 55 4c 54 45 44 20 3d 20 30 78 30 30 DEFAULTED = 0x00
bde0: 32 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 20 }..enum : uin
bdf0: 74 20 7b 20 53 45 5f 44 41 43 4c 5f 41 55 54 4f t { SE_DACL_AUTO
be00: 5f 49 4e 48 45 52 49 54 5f 52 45 51 20 3d 20 30 _INHERIT_REQ = 0
be10: 78 30 31 30 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 x0100 }..enum :
be20: 75 69 6e 74 20 7b 20 53 45 5f 53 41 43 4c 5f 41 uint { SE_SACL_A
be30: 55 54 4f 5f 49 4e 48 45 52 49 54 5f 52 45 51 20 UTO_INHERIT_REQ
be40: 3d 20 30 78 30 32 30 30 20 7d 0d 0a 65 6e 75 6d = 0x0200 }..enum
be50: 20 3a 20 75 69 6e 74 20 7b 20 53 45 5f 44 41 43 : uint { SE_DAC
be60: 4c 5f 41 55 54 4f 5f 49 4e 48 45 52 49 54 45 44 L_AUTO_INHERITED
be70: 20 3d 20 30 78 30 34 30 30 20 7d 0d 0a 65 6e 75 = 0x0400 }..enu
be80: 6d 20 3a 20 75 69 6e 74 20 7b 20 53 45 5f 53 41 m : uint { SE_SA
be90: 43 4c 5f 41 55 54 4f 5f 49 4e 48 45 52 49 54 45 CL_AUTO_INHERITE
bea0: 44 20 3d 20 30 78 30 38 30 30 20 7d 0d 0a 65 6e D = 0x0800 }..en
beb0: 75 6d 20 3a 20 75 69 6e 74 20 7b 20 53 45 5f 44 um : uint { SE_D
bec0: 41 43 4c 5f 50 52 4f 54 45 43 54 45 44 20 3d 20 ACL_PROTECTED =
bed0: 30 78 31 30 30 30 20 7d 0d 0a 65 6e 75 6d 20 3a 0x1000 }..enum :
bee0: 20 75 69 6e 74 20 7b 20 53 45 5f 53 41 43 4c 5f uint { SE_SACL_
bef0: 50 52 4f 54 45 43 54 45 44 20 3d 20 30 78 32 30 PROTECTED = 0x20
bf00: 30 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 00 }..enum : uin
bf10: 74 20 7b 20 53 45 5f 52 4d 5f 43 4f 4e 54 52 4f t { SE_RM_CONTRO
bf20: 4c 5f 56 41 4c 49 44 20 3d 20 30 78 34 30 30 30 L_VALID = 0x4000
bf30: 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 }..enum : uint
bf40: 7b 20 53 45 5f 53 45 4c 46 5f 52 45 4c 41 54 49 { SE_SELF_RELATI
bf50: 56 45 20 3d 20 30 78 38 30 30 30 20 7d 0d 0a 0d VE = 0x8000 }...
bf60: 0a 73 74 72 75 63 74 20 5f 53 45 43 55 52 49 54 .struct _SECURIT
bf70: 59 5f 44 45 53 43 52 49 50 54 4f 52 5f 52 45 4c Y_DESCRIPTOR_REL
bf80: 41 54 49 56 45 20 7b 0d 0a 20 20 42 59 54 45 20 ATIVE {.. BYTE
bf90: 52 65 76 69 73 69 6f 6e 3b 0d 0a 20 20 42 59 54 Revision;.. BYT
bfa0: 45 20 53 62 7a 31 3b 0d 0a 20 20 53 45 43 55 52 E Sbz1;.. SECUR
bfb0: 49 54 59 5f 44 45 53 43 52 49 50 54 4f 52 5f 43 ITY_DESCRIPTOR_C
bfc0: 4f 4e 54 52 4f 4c 20 43 6f 6e 74 72 6f 6c 3b 0d ONTROL Control;.
bfd0: 0a 20 20 44 57 4f 52 44 20 4f 77 6e 65 72 3b 0d . DWORD Owner;.
bfe0: 0a 20 20 44 57 4f 52 44 20 47 72 6f 75 70 3b 0d . DWORD Group;.
bff0: 0a 20 20 44 57 4f 52 44 20 53 61 63 6c 3b 0d 0a . DWORD Sacl;..
c000: 20 20 44 57 4f 52 44 20 44 61 63 6c 3b 0d 0a 7d DWORD Dacl;..}
c010: 0d 0a 61 6c 69 61 73 20 5f 53 45 43 55 52 49 54 ..alias _SECURIT
c020: 59 5f 44 45 53 43 52 49 50 54 4f 52 5f 52 45 4c Y_DESCRIPTOR_REL
c030: 41 54 49 56 45 20 53 45 43 55 52 49 54 59 5f 44 ATIVE SECURITY_D
c040: 45 53 43 52 49 50 54 4f 52 5f 52 45 4c 41 54 49 ESCRIPTOR_RELATI
c050: 56 45 3b 0d 0a 61 6c 69 61 73 20 5f 53 45 43 55 VE;..alias _SECU
c060: 52 49 54 59 5f 44 45 53 43 52 49 50 54 4f 52 5f RITY_DESCRIPTOR_
c070: 52 45 4c 41 54 49 56 45 2a 20 50 49 53 45 43 55 RELATIVE* PISECU
c080: 52 49 54 59 5f 44 45 53 43 52 49 50 54 4f 52 5f RITY_DESCRIPTOR_
c090: 52 45 4c 41 54 49 56 45 3b 0d 0a 0d 0a 73 74 72 RELATIVE;....str
c0a0: 75 63 74 20 5f 53 45 43 55 52 49 54 59 5f 44 45 uct _SECURITY_DE
c0b0: 53 43 52 49 50 54 4f 52 20 7b 0d 0a 20 20 42 59 SCRIPTOR {.. BY
c0c0: 54 45 20 52 65 76 69 73 69 6f 6e 3b 0d 0a 20 20 TE Revision;..
c0d0: 42 59 54 45 20 53 62 7a 31 3b 0d 0a 20 20 53 45 BYTE Sbz1;.. SE
c0e0: 43 55 52 49 54 59 5f 44 45 53 43 52 49 50 54 4f CURITY_DESCRIPTO
c0f0: 52 5f 43 4f 4e 54 52 4f 4c 20 43 6f 6e 74 72 6f R_CONTROL Contro
c100: 6c 3b 0d 0a 20 20 50 53 49 44 20 4f 77 6e 65 72 l;.. PSID Owner
c110: 3b 0d 0a 20 20 50 53 49 44 20 47 72 6f 75 70 3b ;.. PSID Group;
c120: 0d 0a 20 20 50 41 43 4c 20 53 61 63 6c 3b 0d 0a .. PACL Sacl;..
c130: 20 20 50 41 43 4c 20 44 61 63 6c 3b 0d 0a 7d 0d PACL Dacl;..}.
c140: 0a 61 6c 69 61 73 20 5f 53 45 43 55 52 49 54 59 .alias _SECURITY
c150: 5f 44 45 53 43 52 49 50 54 4f 52 20 53 45 43 55 _DESCRIPTOR SECU
c160: 52 49 54 59 5f 44 45 53 43 52 49 50 54 4f 52 3b RITY_DESCRIPTOR;
c170: 0d 0a 61 6c 69 61 73 20 5f 53 45 43 55 52 49 54 ..alias _SECURIT
c180: 59 5f 44 45 53 43 52 49 50 54 4f 52 2a 20 50 49 Y_DESCRIPTOR* PI
c190: 53 45 43 55 52 49 54 59 5f 44 45 53 43 52 49 50 SECURITY_DESCRIP
c1a0: 54 4f 52 3b 0d 0a 0d 0a 73 74 72 75 63 74 20 5f TOR;....struct _
c1b0: 4f 42 4a 45 43 54 5f 54 59 50 45 5f 4c 49 53 54 OBJECT_TYPE_LIST
c1c0: 20 7b 0d 0a 20 20 57 4f 52 44 20 4c 65 76 65 6c {.. WORD Level
c1d0: 3b 0d 0a 20 20 57 4f 52 44 20 53 62 7a 3b 0d 0a ;.. WORD Sbz;..
c1e0: 20 20 47 55 49 44 20 2a 4f 62 6a 65 63 74 54 79 GUID *ObjectTy
c1f0: 70 65 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 5f 4f pe;..}..alias _O
c200: 42 4a 45 43 54 5f 54 59 50 45 5f 4c 49 53 54 20 BJECT_TYPE_LIST
c210: 4f 42 4a 45 43 54 5f 54 59 50 45 5f 4c 49 53 54 OBJECT_TYPE_LIST
c220: 3b 0d 0a 61 6c 69 61 73 20 5f 4f 42 4a 45 43 54 ;..alias _OBJECT
c230: 5f 54 59 50 45 5f 4c 49 53 54 2a 20 50 4f 42 4a _TYPE_LIST* POBJ
c240: 45 43 54 5f 54 59 50 45 5f 4c 49 53 54 3b 0d 0a ECT_TYPE_LIST;..
c250: 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
c260: 41 43 43 45 53 53 5f 4f 42 4a 45 43 54 5f 47 55 ACCESS_OBJECT_GU
c270: 49 44 20 3d 20 30 20 7d 0d 0a 65 6e 75 6d 20 3a ID = 0 }..enum :
c280: 20 75 69 6e 74 20 7b 20 41 43 43 45 53 53 5f 50 uint { ACCESS_P
c290: 52 4f 50 45 52 54 59 5f 53 45 54 5f 47 55 49 44 ROPERTY_SET_GUID
c2a0: 20 3d 20 31 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 = 1 }..enum : u
c2b0: 69 6e 74 20 7b 20 41 43 43 45 53 53 5f 50 52 4f int { ACCESS_PRO
c2c0: 50 45 52 54 59 5f 47 55 49 44 20 3d 20 32 20 7d PERTY_GUID = 2 }
c2d0: 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 ....enum : uint
c2e0: 7b 20 41 43 43 45 53 53 5f 4d 41 58 5f 4c 45 56 { ACCESS_MAX_LEV
c2f0: 45 4c 20 3d 20 34 20 7d 0d 0a 0d 0a 61 6c 69 61 EL = 4 }....alia
c300: 73 20 69 6e 74 20 5f 41 55 44 49 54 5f 45 56 45 s int _AUDIT_EVE
c310: 4e 54 5f 54 59 50 45 3b 0d 0a 65 6e 75 6d 20 7b NT_TYPE;..enum {
c320: 0d 0a 20 20 41 75 64 69 74 45 76 65 6e 74 4f 62 .. AuditEventOb
c330: 6a 65 63 74 41 63 63 65 73 73 2c 0d 0a 20 20 41 jectAccess,.. A
c340: 75 64 69 74 45 76 65 6e 74 44 69 72 65 63 74 6f uditEventDirecto
c350: 72 79 53 65 72 76 69 63 65 41 63 63 65 73 73 2c ryServiceAccess,
c360: 0d 0a 7d 0d 0a 61 6c 69 61 73 20 5f 41 55 44 49 ..}..alias _AUDI
c370: 54 5f 45 56 45 4e 54 5f 54 59 50 45 20 41 55 44 T_EVENT_TYPE AUD
c380: 49 54 5f 45 56 45 4e 54 5f 54 59 50 45 3b 0d 0a IT_EVENT_TYPE;..
c390: 61 6c 69 61 73 20 5f 41 55 44 49 54 5f 45 56 45 alias _AUDIT_EVE
c3a0: 4e 54 5f 54 59 50 45 2a 20 50 41 55 44 49 54 5f NT_TYPE* PAUDIT_
c3b0: 45 56 45 4e 54 5f 54 59 50 45 3b 0d 0a 0d 0a 65 EVENT_TYPE;....e
c3c0: 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 41 55 44 num : uint { AUD
c3d0: 49 54 5f 41 4c 4c 4f 57 5f 4e 4f 5f 50 52 49 56 IT_ALLOW_NO_PRIV
c3e0: 49 4c 45 47 45 20 3d 20 30 78 31 20 7d 0d 0a 0d ILEGE = 0x1 }...
c3f0: 0a 63 6f 6e 73 74 20 63 68 61 72 5b 5d 20 41 43 .const char[] AC
c400: 43 45 53 53 5f 44 53 5f 53 4f 55 52 43 45 5f 41 CESS_DS_SOURCE_A
c410: 20 3d 20 22 44 53 22 3b 0d 0a 63 6f 6e 73 74 20 = "DS";..const
c420: 77 63 68 61 72 5b 5d 20 41 43 43 45 53 53 5f 44 wchar[] ACCESS_D
c430: 53 5f 53 4f 55 52 43 45 5f 57 20 3d 20 22 44 53 S_SOURCE_W = "DS
c440: 22 3b 0d 0a 63 6f 6e 73 74 20 63 68 61 72 5b 5d ";..const char[]
c450: 20 41 43 43 45 53 53 5f 44 53 5f 4f 42 4a 45 43 ACCESS_DS_OBJEC
c460: 54 5f 54 59 50 45 5f 4e 41 4d 45 5f 41 20 3d 20 T_TYPE_NAME_A =
c470: 22 44 69 72 65 63 74 6f 72 79 20 53 65 72 76 69 "Directory Servi
c480: 63 65 20 4f 62 6a 65 63 74 22 3b 0d 0a 63 6f 6e ce Object";..con
c490: 73 74 20 77 63 68 61 72 5b 5d 20 41 43 43 45 53 st wchar[] ACCES
c4a0: 53 5f 44 53 5f 4f 42 4a 45 43 54 5f 54 59 50 45 S_DS_OBJECT_TYPE
c4b0: 5f 4e 41 4d 45 5f 57 20 3d 20 22 44 69 72 65 63 _NAME_W = "Direc
c4c0: 74 6f 72 79 20 53 65 72 76 69 63 65 20 4f 62 6a tory Service Obj
c4d0: 65 63 74 22 3b 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 ect";....enum :
c4e0: 75 69 6e 74 20 7b 20 53 45 5f 50 52 49 56 49 4c uint { SE_PRIVIL
c4f0: 45 47 45 5f 45 4e 41 42 4c 45 44 5f 42 59 5f 44 EGE_ENABLED_BY_D
c500: 45 46 41 55 4c 54 20 3d 20 30 78 30 30 30 30 30 EFAULT = 0x00000
c510: 30 30 31 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 001 }..enum : ui
c520: 6e 74 20 7b 20 53 45 5f 50 52 49 56 49 4c 45 47 nt { SE_PRIVILEG
c530: 45 5f 45 4e 41 42 4c 45 44 20 3d 20 30 78 30 30 E_ENABLED = 0x00
c540: 30 30 30 30 30 32 20 7d 0d 0a 65 6e 75 6d 20 3a 000002 }..enum :
c550: 20 75 69 6e 74 20 7b 20 53 45 5f 50 52 49 56 49 uint { SE_PRIVI
c560: 4c 45 47 45 5f 55 53 45 44 5f 46 4f 52 5f 41 43 LEGE_USED_FOR_AC
c570: 43 45 53 53 20 3d 20 30 78 38 30 30 30 30 30 30 CESS = 0x8000000
c580: 30 20 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 75 69 0 }....enum : ui
c590: 6e 74 20 7b 20 50 52 49 56 49 4c 45 47 45 5f 53 nt { PRIVILEGE_S
c5a0: 45 54 5f 41 4c 4c 5f 4e 45 43 45 53 53 41 52 59 ET_ALL_NECESSARY
c5b0: 20 3d 20 31 20 7d 0d 0a 0d 0a 73 74 72 75 63 74 = 1 }....struct
c5c0: 20 5f 50 52 49 56 49 4c 45 47 45 5f 53 45 54 20 _PRIVILEGE_SET
c5d0: 7b 0d 0a 20 20 44 57 4f 52 44 20 50 72 69 76 69 {.. DWORD Privi
c5e0: 6c 65 67 65 43 6f 75 6e 74 3b 0d 0a 20 20 44 57 legeCount;.. DW
c5f0: 4f 52 44 20 43 6f 6e 74 72 6f 6c 3b 0d 0a 20 20 ORD Control;..
c600: 4c 55 49 44 5f 41 4e 44 5f 41 54 54 52 49 42 55 LUID_AND_ATTRIBU
c610: 54 45 53 20 50 72 69 76 69 6c 65 67 65 5b 41 4e TES Privilege[AN
c620: 59 53 49 5a 45 5f 41 52 52 41 59 5d 3b 0d 0a 7d YSIZE_ARRAY];..}
c630: 0d 0a 61 6c 69 61 73 20 5f 50 52 49 56 49 4c 45 ..alias _PRIVILE
c640: 47 45 5f 53 45 54 20 50 52 49 56 49 4c 45 47 45 GE_SET PRIVILEGE
c650: 5f 53 45 54 3b 0d 0a 61 6c 69 61 73 20 5f 50 52 _SET;..alias _PR
c660: 49 56 49 4c 45 47 45 5f 53 45 54 2a 20 50 50 52 IVILEGE_SET* PPR
c670: 49 56 49 4c 45 47 45 5f 53 45 54 3b 0d 0a 0d 0a IVILEGE_SET;....
c680: 63 6f 6e 73 74 20 54 43 48 41 52 5b 5d 20 53 45 const TCHAR[] SE
c690: 5f 43 52 45 41 54 45 5f 54 4f 4b 45 4e 5f 4e 41 _CREATE_TOKEN_NA
c6a0: 4d 45 20 3d 20 22 53 65 43 72 65 61 74 65 54 6f ME = "SeCreateTo
c6b0: 6b 65 6e 50 72 69 76 69 6c 65 67 65 22 3b 0d 0a kenPrivilege";..
c6c0: 63 6f 6e 73 74 20 54 43 48 41 52 5b 5d 20 53 45 const TCHAR[] SE
c6d0: 5f 41 53 53 49 47 4e 50 52 49 4d 41 52 59 54 4f _ASSIGNPRIMARYTO
c6e0: 4b 45 4e 5f 4e 41 4d 45 20 3d 20 22 53 65 41 73 KEN_NAME = "SeAs
c6f0: 73 69 67 6e 50 72 69 6d 61 72 79 54 6f 6b 65 6e signPrimaryToken
c700: 50 72 69 76 69 6c 65 67 65 22 3b 0d 0a 63 6f 6e Privilege";..con
c710: 73 74 20 54 43 48 41 52 5b 5d 20 53 45 5f 4c 4f st TCHAR[] SE_LO
c720: 43 4b 5f 4d 45 4d 4f 52 59 5f 4e 41 4d 45 20 3d CK_MEMORY_NAME =
c730: 20 22 53 65 4c 6f 63 6b 4d 65 6d 6f 72 79 50 72 "SeLockMemoryPr
c740: 69 76 69 6c 65 67 65 22 3b 0d 0a 63 6f 6e 73 74 ivilege";..const
c750: 20 54 43 48 41 52 5b 5d 20 53 45 5f 49 4e 43 52 TCHAR[] SE_INCR
c760: 45 41 53 45 5f 51 55 4f 54 41 5f 4e 41 4d 45 20 EASE_QUOTA_NAME
c770: 3d 20 22 53 65 49 6e 63 72 65 61 73 65 51 75 6f = "SeIncreaseQuo
c780: 74 61 50 72 69 76 69 6c 65 67 65 22 3b 0d 0a 63 taPrivilege";..c
c790: 6f 6e 73 74 20 54 43 48 41 52 5b 5d 20 53 45 5f onst TCHAR[] SE_
c7a0: 55 4e 53 4f 4c 49 43 49 54 45 44 5f 49 4e 50 55 UNSOLICITED_INPU
c7b0: 54 5f 4e 41 4d 45 20 3d 20 22 53 65 55 6e 73 6f T_NAME = "SeUnso
c7c0: 6c 69 63 69 74 65 64 49 6e 70 75 74 50 72 69 76 licitedInputPriv
c7d0: 69 6c 65 67 65 22 3b 0d 0a 63 6f 6e 73 74 20 54 ilege";..const T
c7e0: 43 48 41 52 5b 5d 20 53 45 5f 4d 41 43 48 49 4e CHAR[] SE_MACHIN
c7f0: 45 5f 41 43 43 4f 55 4e 54 5f 4e 41 4d 45 20 3d E_ACCOUNT_NAME =
c800: 20 22 53 65 4d 61 63 68 69 6e 65 41 63 63 6f 75 "SeMachineAccou
c810: 6e 74 50 72 69 76 69 6c 65 67 65 22 3b 0d 0a 63 ntPrivilege";..c
c820: 6f 6e 73 74 20 54 43 48 41 52 5b 5d 20 53 45 5f onst TCHAR[] SE_
c830: 54 43 42 5f 4e 41 4d 45 20 3d 20 22 53 65 54 63 TCB_NAME = "SeTc
c840: 62 50 72 69 76 69 6c 65 67 65 22 3b 0d 0a 63 6f bPrivilege";..co
c850: 6e 73 74 20 54 43 48 41 52 5b 5d 20 53 45 5f 53 nst TCHAR[] SE_S
c860: 45 43 55 52 49 54 59 5f 4e 41 4d 45 20 3d 20 22 ECURITY_NAME = "
c870: 53 65 53 65 63 75 72 69 74 79 50 72 69 76 69 6c SeSecurityPrivil
c880: 65 67 65 22 3b 0d 0a 63 6f 6e 73 74 20 54 43 48 ege";..const TCH
c890: 41 52 5b 5d 20 53 45 5f 54 41 4b 45 5f 4f 57 4e AR[] SE_TAKE_OWN
c8a0: 45 52 53 48 49 50 5f 4e 41 4d 45 20 3d 20 22 53 ERSHIP_NAME = "S
c8b0: 65 54 61 6b 65 4f 77 6e 65 72 73 68 69 70 50 72 eTakeOwnershipPr
c8c0: 69 76 69 6c 65 67 65 22 3b 0d 0a 63 6f 6e 73 74 ivilege";..const
c8d0: 20 54 43 48 41 52 5b 5d 20 53 45 5f 4c 4f 41 44 TCHAR[] SE_LOAD
c8e0: 5f 44 52 49 56 45 52 5f 4e 41 4d 45 20 3d 20 22 _DRIVER_NAME = "
c8f0: 53 65 4c 6f 61 64 44 72 69 76 65 72 50 72 69 76 SeLoadDriverPriv
c900: 69 6c 65 67 65 22 3b 0d 0a 63 6f 6e 73 74 20 54 ilege";..const T
c910: 43 48 41 52 5b 5d 20 53 45 5f 53 59 53 54 45 4d CHAR[] SE_SYSTEM
c920: 5f 50 52 4f 46 49 4c 45 5f 4e 41 4d 45 20 3d 20 _PROFILE_NAME =
c930: 22 53 65 53 79 73 74 65 6d 50 72 6f 66 69 6c 65 "SeSystemProfile
c940: 50 72 69 76 69 6c 65 67 65 22 3b 0d 0a 63 6f 6e Privilege";..con
c950: 73 74 20 54 43 48 41 52 5b 5d 20 53 45 5f 53 59 st TCHAR[] SE_SY
c960: 53 54 45 4d 54 49 4d 45 5f 4e 41 4d 45 20 3d 20 STEMTIME_NAME =
c970: 22 53 65 53 79 73 74 65 6d 74 69 6d 65 50 72 69 "SeSystemtimePri
c980: 76 69 6c 65 67 65 22 3b 0d 0a 63 6f 6e 73 74 20 vilege";..const
c990: 54 43 48 41 52 5b 5d 20 53 45 5f 50 52 4f 46 5f TCHAR[] SE_PROF_
c9a0: 53 49 4e 47 4c 45 5f 50 52 4f 43 45 53 53 5f 4e SINGLE_PROCESS_N
c9b0: 41 4d 45 20 3d 20 22 53 65 50 72 6f 66 69 6c 65 AME = "SeProfile
c9c0: 53 69 6e 67 6c 65 50 72 6f 63 65 73 73 50 72 69 SingleProcessPri
c9d0: 76 69 6c 65 67 65 22 3b 0d 0a 63 6f 6e 73 74 20 vilege";..const
c9e0: 54 43 48 41 52 5b 5d 20 53 45 5f 49 4e 43 5f 42 TCHAR[] SE_INC_B
c9f0: 41 53 45 5f 50 52 49 4f 52 49 54 59 5f 4e 41 4d ASE_PRIORITY_NAM
ca00: 45 20 3d 20 22 53 65 49 6e 63 72 65 61 73 65 42 E = "SeIncreaseB
ca10: 61 73 65 50 72 69 6f 72 69 74 79 50 72 69 76 69 asePriorityPrivi
ca20: 6c 65 67 65 22 3b 0d 0a 63 6f 6e 73 74 20 54 43 lege";..const TC
ca30: 48 41 52 5b 5d 20 53 45 5f 43 52 45 41 54 45 5f HAR[] SE_CREATE_
ca40: 50 41 47 45 46 49 4c 45 5f 4e 41 4d 45 20 3d 20 PAGEFILE_NAME =
ca50: 22 53 65 43 72 65 61 74 65 50 61 67 65 66 69 6c "SeCreatePagefil
ca60: 65 50 72 69 76 69 6c 65 67 65 22 3b 0d 0a 63 6f ePrivilege";..co
ca70: 6e 73 74 20 54 43 48 41 52 5b 5d 20 53 45 5f 43 nst TCHAR[] SE_C
ca80: 52 45 41 54 45 5f 50 45 52 4d 41 4e 45 4e 54 5f REATE_PERMANENT_
ca90: 4e 41 4d 45 20 3d 20 22 53 65 43 72 65 61 74 65 NAME = "SeCreate
caa0: 50 65 72 6d 61 6e 65 6e 74 50 72 69 76 69 6c 65 PermanentPrivile
cab0: 67 65 22 3b 0d 0a 63 6f 6e 73 74 20 54 43 48 41 ge";..const TCHA
cac0: 52 5b 5d 20 53 45 5f 42 41 43 4b 55 50 5f 4e 41 R[] SE_BACKUP_NA
cad0: 4d 45 20 3d 20 22 53 65 42 61 63 6b 75 70 50 72 ME = "SeBackupPr
cae0: 69 76 69 6c 65 67 65 22 3b 0d 0a 63 6f 6e 73 74 ivilege";..const
caf0: 20 54 43 48 41 52 5b 5d 20 53 45 5f 52 45 53 54 TCHAR[] SE_REST
cb00: 4f 52 45 5f 4e 41 4d 45 20 3d 20 22 53 65 52 65 ORE_NAME = "SeRe
cb10: 73 74 6f 72 65 50 72 69 76 69 6c 65 67 65 22 3b storePrivilege";
cb20: 0d 0a 63 6f 6e 73 74 20 54 43 48 41 52 5b 5d 20 ..const TCHAR[]
cb30: 53 45 5f 53 48 55 54 44 4f 57 4e 5f 4e 41 4d 45 SE_SHUTDOWN_NAME
cb40: 20 3d 20 22 53 65 53 68 75 74 64 6f 77 6e 50 72 = "SeShutdownPr
cb50: 69 76 69 6c 65 67 65 22 3b 0d 0a 63 6f 6e 73 74 ivilege";..const
cb60: 20 54 43 48 41 52 5b 5d 20 53 45 5f 44 45 42 55 TCHAR[] SE_DEBU
cb70: 47 5f 4e 41 4d 45 20 3d 20 22 53 65 44 65 62 75 G_NAME = "SeDebu
cb80: 67 50 72 69 76 69 6c 65 67 65 22 3b 0d 0a 63 6f gPrivilege";..co
cb90: 6e 73 74 20 54 43 48 41 52 5b 5d 20 53 45 5f 41 nst TCHAR[] SE_A
cba0: 55 44 49 54 5f 4e 41 4d 45 20 3d 20 22 53 65 41 UDIT_NAME = "SeA
cbb0: 75 64 69 74 50 72 69 76 69 6c 65 67 65 22 3b 0d uditPrivilege";.
cbc0: 0a 63 6f 6e 73 74 20 54 43 48 41 52 5b 5d 20 53 .const TCHAR[] S
cbd0: 45 5f 53 59 53 54 45 4d 5f 45 4e 56 49 52 4f 4e E_SYSTEM_ENVIRON
cbe0: 4d 45 4e 54 5f 4e 41 4d 45 20 3d 20 22 53 65 53 MENT_NAME = "SeS
cbf0: 79 73 74 65 6d 45 6e 76 69 72 6f 6e 6d 65 6e 74 ystemEnvironment
cc00: 50 72 69 76 69 6c 65 67 65 22 3b 0d 0a 63 6f 6e Privilege";..con
cc10: 73 74 20 54 43 48 41 52 5b 5d 20 53 45 5f 43 48 st TCHAR[] SE_CH
cc20: 41 4e 47 45 5f 4e 4f 54 49 46 59 5f 4e 41 4d 45 ANGE_NOTIFY_NAME
cc30: 20 3d 20 22 53 65 43 68 61 6e 67 65 4e 6f 74 69 = "SeChangeNoti
cc40: 66 79 50 72 69 76 69 6c 65 67 65 22 3b 0d 0a 63 fyPrivilege";..c
cc50: 6f 6e 73 74 20 54 43 48 41 52 5b 5d 20 53 45 5f onst TCHAR[] SE_
cc60: 52 45 4d 4f 54 45 5f 53 48 55 54 44 4f 57 4e 5f REMOTE_SHUTDOWN_
cc70: 4e 41 4d 45 20 3d 20 22 53 65 52 65 6d 6f 74 65 NAME = "SeRemote
cc80: 53 68 75 74 64 6f 77 6e 50 72 69 76 69 6c 65 67 ShutdownPrivileg
cc90: 65 22 3b 0d 0a 63 6f 6e 73 74 20 54 43 48 41 52 e";..const TCHAR
cca0: 5b 5d 20 53 45 5f 55 4e 44 4f 43 4b 5f 4e 41 4d [] SE_UNDOCK_NAM
ccb0: 45 20 3d 20 22 53 65 55 6e 64 6f 63 6b 50 72 69 E = "SeUndockPri
ccc0: 76 69 6c 65 67 65 22 3b 0d 0a 63 6f 6e 73 74 20 vilege";..const
ccd0: 54 43 48 41 52 5b 5d 20 53 45 5f 53 59 4e 43 5f TCHAR[] SE_SYNC_
cce0: 41 47 45 4e 54 5f 4e 41 4d 45 20 3d 20 22 53 65 AGENT_NAME = "Se
ccf0: 53 79 6e 63 41 67 65 6e 74 50 72 69 76 69 6c 65 SyncAgentPrivile
cd00: 67 65 22 3b 0d 0a 63 6f 6e 73 74 20 54 43 48 41 ge";..const TCHA
cd10: 52 5b 5d 20 53 45 5f 45 4e 41 42 4c 45 5f 44 45 R[] SE_ENABLE_DE
cd20: 4c 45 47 41 54 49 4f 4e 5f 4e 41 4d 45 20 3d 20 LEGATION_NAME =
cd30: 22 53 65 45 6e 61 62 6c 65 44 65 6c 65 67 61 74 "SeEnableDelegat
cd40: 69 6f 6e 50 72 69 76 69 6c 65 67 65 22 3b 0d 0a ionPrivilege";..
cd50: 63 6f 6e 73 74 20 54 43 48 41 52 5b 5d 20 53 45 const TCHAR[] SE
cd60: 5f 4d 41 4e 41 47 45 5f 56 4f 4c 55 4d 45 5f 4e _MANAGE_VOLUME_N
cd70: 41 4d 45 20 3d 20 22 53 65 4d 61 6e 61 67 65 56 AME = "SeManageV
cd80: 6f 6c 75 6d 65 50 72 69 76 69 6c 65 67 65 22 3b olumePrivilege";
cd90: 0d 0a 0d 0a 61 6c 69 61 73 20 69 6e 74 20 5f 53 ....alias int _S
cda0: 45 43 55 52 49 54 59 5f 49 4d 50 45 52 53 4f 4e ECURITY_IMPERSON
cdb0: 41 54 49 4f 4e 5f 4c 45 56 45 4c 3b 0d 0a 65 6e ATION_LEVEL;..en
cdc0: 75 6d 20 7b 0d 0a 20 20 53 65 63 75 72 69 74 79 um {.. Security
cdd0: 41 6e 6f 6e 79 6d 6f 75 73 2c 0d 0a 20 20 53 65 Anonymous,.. Se
cde0: 63 75 72 69 74 79 49 64 65 6e 74 69 66 69 63 61 curityIdentifica
cdf0: 74 69 6f 6e 2c 0d 0a 20 20 53 65 63 75 72 69 74 tion,.. Securit
ce00: 79 49 6d 70 65 72 73 6f 6e 61 74 69 6f 6e 2c 0d yImpersonation,.
ce10: 0a 20 20 53 65 63 75 72 69 74 79 44 65 6c 65 67 . SecurityDeleg
ce20: 61 74 69 6f 6e 2c 0d 0a 7d 0d 0a 61 6c 69 61 73 ation,..}..alias
ce30: 20 5f 53 45 43 55 52 49 54 59 5f 49 4d 50 45 52 _SECURITY_IMPER
ce40: 53 4f 4e 41 54 49 4f 4e 5f 4c 45 56 45 4c 20 53 SONATION_LEVEL S
ce50: 45 43 55 52 49 54 59 5f 49 4d 50 45 52 53 4f 4e ECURITY_IMPERSON
ce60: 41 54 49 4f 4e 5f 4c 45 56 45 4c 3b 0d 0a 61 6c ATION_LEVEL;..al
ce70: 69 61 73 20 5f 53 45 43 55 52 49 54 59 5f 49 4d ias _SECURITY_IM
ce80: 50 45 52 53 4f 4e 41 54 49 4f 4e 5f 4c 45 56 45 PERSONATION_LEVE
ce90: 4c 2a 20 50 53 45 43 55 52 49 54 59 5f 49 4d 50 L* PSECURITY_IMP
cea0: 45 52 53 4f 4e 41 54 49 4f 4e 5f 4c 45 56 45 4c ERSONATION_LEVEL
ceb0: 3b 0d 0a 0d 0a 61 6c 69 61 73 20 53 65 63 75 72 ;....alias Secur
cec0: 69 74 79 44 65 6c 65 67 61 74 69 6f 6e 20 53 45 ityDelegation SE
ced0: 43 55 52 49 54 59 5f 4d 41 58 5f 49 4d 50 45 52 CURITY_MAX_IMPER
cee0: 53 4f 4e 41 54 49 4f 4e 5f 4c 45 56 45 4c 3b 0d SONATION_LEVEL;.
cef0: 0a 61 6c 69 61 73 20 53 65 63 75 72 69 74 79 41 .alias SecurityA
cf00: 6e 6f 6e 79 6d 6f 75 73 20 53 45 43 55 52 49 54 nonymous SECURIT
cf10: 59 5f 4d 49 4e 5f 49 4d 50 45 52 53 4f 4e 41 54 Y_MIN_IMPERSONAT
cf20: 49 4f 4e 5f 4c 45 56 45 4c 3b 0d 0a 61 6c 69 61 ION_LEVEL;..alia
cf30: 73 20 53 65 63 75 72 69 74 79 49 6d 70 65 72 73 s SecurityImpers
cf40: 6f 6e 61 74 69 6f 6e 20 44 45 46 41 55 4c 54 5f onation DEFAULT_
cf50: 49 4d 50 45 52 53 4f 4e 41 54 49 4f 4e 5f 4c 45 IMPERSONATION_LE
cf60: 56 45 4c 3b 0d 0a 62 69 74 20 56 41 4c 49 44 5f VEL;..bit VALID_
cf70: 49 4d 50 45 52 53 4f 4e 41 54 49 4f 4e 5f 4c 45 IMPERSONATION_LE
cf80: 56 45 4c 28 53 45 43 55 52 49 54 59 5f 49 4d 50 VEL(SECURITY_IMP
cf90: 45 52 53 4f 4e 41 54 49 4f 4e 5f 4c 45 56 45 4c ERSONATION_LEVEL
cfa0: 20 4c 29 7b 20 72 65 74 75 72 6e 20 28 4c 20 3e L){ return (L >
cfb0: 3d 20 53 45 43 55 52 49 54 59 5f 4d 49 4e 5f 49 = SECURITY_MIN_I
cfc0: 4d 50 45 52 53 4f 4e 41 54 49 4f 4e 5f 4c 45 56 MPERSONATION_LEV
cfd0: 45 4c 29 20 26 26 20 28 4c 20 3c 3d 20 53 45 43 EL) && (L <= SEC
cfe0: 55 52 49 54 59 5f 4d 41 58 5f 49 4d 50 45 52 53 URITY_MAX_IMPERS
cff0: 4f 4e 41 54 49 4f 4e 5f 4c 45 56 45 4c 29 3b 20 ONATION_LEVEL);
d000: 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 }....enum : uint
d010: 20 7b 20 54 4f 4b 45 4e 5f 41 53 53 49 47 4e 5f { TOKEN_ASSIGN_
d020: 50 52 49 4d 41 52 59 20 3d 20 30 78 30 30 30 31 PRIMARY = 0x0001
d030: 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 }..enum : uint
d040: 7b 20 54 4f 4b 45 4e 5f 44 55 50 4c 49 43 41 54 { TOKEN_DUPLICAT
d050: 45 20 3d 20 30 78 30 30 30 32 20 7d 0d 0a 65 6e E = 0x0002 }..en
d060: 75 6d 20 3a 20 75 69 6e 74 20 7b 20 54 4f 4b 45 um : uint { TOKE
d070: 4e 5f 49 4d 50 45 52 53 4f 4e 41 54 45 20 3d 20 N_IMPERSONATE =
d080: 30 78 30 30 30 34 20 7d 0d 0a 65 6e 75 6d 20 3a 0x0004 }..enum :
d090: 20 75 69 6e 74 20 7b 20 54 4f 4b 45 4e 5f 51 55 uint { TOKEN_QU
d0a0: 45 52 59 20 3d 20 30 78 30 30 30 38 20 7d 0d 0a ERY = 0x0008 }..
d0b0: 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 54 4f enum : uint { TO
d0c0: 4b 45 4e 5f 51 55 45 52 59 5f 53 4f 55 52 43 45 KEN_QUERY_SOURCE
d0d0: 20 3d 20 30 78 30 30 31 30 20 7d 0d 0a 65 6e 75 = 0x0010 }..enu
d0e0: 6d 20 3a 20 75 69 6e 74 20 7b 20 54 4f 4b 45 4e m : uint { TOKEN
d0f0: 5f 41 44 4a 55 53 54 5f 50 52 49 56 49 4c 45 47 _ADJUST_PRIVILEG
d100: 45 53 20 3d 20 30 78 30 30 32 30 20 7d 0d 0a 65 ES = 0x0020 }..e
d110: 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 54 4f 4b num : uint { TOK
d120: 45 4e 5f 41 44 4a 55 53 54 5f 47 52 4f 55 50 53 EN_ADJUST_GROUPS
d130: 20 3d 20 30 78 30 30 34 30 20 7d 0d 0a 65 6e 75 = 0x0040 }..enu
d140: 6d 20 3a 20 75 69 6e 74 20 7b 20 54 4f 4b 45 4e m : uint { TOKEN
d150: 5f 41 44 4a 55 53 54 5f 44 45 46 41 55 4c 54 20 _ADJUST_DEFAULT
d160: 3d 20 30 78 30 30 38 30 20 7d 0d 0a 65 6e 75 6d = 0x0080 }..enum
d170: 20 3a 20 75 69 6e 74 20 7b 20 54 4f 4b 45 4e 5f : uint { TOKEN_
d180: 41 44 4a 55 53 54 5f 53 45 53 53 49 4f 4e 49 44 ADJUST_SESSIONID
d190: 20 3d 20 30 78 30 31 30 30 20 7d 0d 0a 0d 0a 65 = 0x0100 }....e
d1a0: 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 54 4f 4b num : uint { TOK
d1b0: 45 4e 5f 41 4c 4c 5f 41 43 43 45 53 53 5f 50 20 EN_ALL_ACCESS_P
d1c0: 3d 20 53 54 41 4e 44 41 52 44 5f 52 49 47 48 54 = STANDARD_RIGHT
d1d0: 53 5f 52 45 51 55 49 52 45 44 20 7c 20 54 4f 4b S_REQUIRED | TOK
d1e0: 45 4e 5f 41 53 53 49 47 4e 5f 50 52 49 4d 41 52 EN_ASSIGN_PRIMAR
d1f0: 59 20 7c 20 54 4f 4b 45 4e 5f 44 55 50 4c 49 43 Y | TOKEN_DUPLIC
d200: 41 54 45 20 7c 20 54 4f 4b 45 4e 5f 49 4d 50 45 ATE | TOKEN_IMPE
d210: 52 53 4f 4e 41 54 45 20 7c 20 54 4f 4b 45 4e 5f RSONATE | TOKEN_
d220: 51 55 45 52 59 20 7c 20 54 4f 4b 45 4e 5f 51 55 QUERY | TOKEN_QU
d230: 45 52 59 5f 53 4f 55 52 43 45 20 7c 20 54 4f 4b ERY_SOURCE | TOK
d240: 45 4e 5f 41 44 4a 55 53 54 5f 50 52 49 56 49 4c EN_ADJUST_PRIVIL
d250: 45 47 45 53 20 7c 20 54 4f 4b 45 4e 5f 41 44 4a EGES | TOKEN_ADJ
d260: 55 53 54 5f 47 52 4f 55 50 53 20 7c 20 54 4f 4b UST_GROUPS | TOK
d270: 45 4e 5f 41 44 4a 55 53 54 5f 44 45 46 41 55 4c EN_ADJUST_DEFAUL
d280: 54 20 20 7d 0d 0a 0d 0a 2f 2f 20 23 69 66 20 28 T }....// #if (
d290: 28 64 65 66 69 6e 65 64 28 5f 57 49 4e 33 32 5f (defined(_WIN32_
d2a0: 57 49 4e 4e 54 29 20 26 26 20 28 5f 57 49 4e 33 WINNT) && (_WIN3
d2b0: 32 5f 57 49 4e 4e 54 20 3e 20 30 78 30 34 30 30 2_WINNT > 0x0400
d2c0: 29 29 20 7c 7c 20 28 21 64 65 66 69 6e 65 64 28 )) || (!defined(
d2d0: 5f 57 49 4e 33 32 5f 57 49 4e 4e 54 29 29 29 0d _WIN32_WINNT))).
d2e0: 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 54 .enum : uint { T
d2f0: 4f 4b 45 4e 5f 41 4c 4c 5f 41 43 43 45 53 53 20 OKEN_ALL_ACCESS
d300: 3d 20 54 4f 4b 45 4e 5f 41 4c 4c 5f 41 43 43 45 = TOKEN_ALL_ACCE
d310: 53 53 5f 50 20 7c 20 54 4f 4b 45 4e 5f 41 44 4a SS_P | TOKEN_ADJ
d320: 55 53 54 5f 53 45 53 53 49 4f 4e 49 44 20 20 7d UST_SESSIONID }
d330: 0d 0a 2f 2f 20 23 65 6c 73 65 0d 0a 2f 2f 20 23 ..// #else..// #
d340: 2e 2e 2e 0d 0a 2f 2f 20 23 65 6e 64 69 66 0d 0a .....// #endif..
d350: 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
d360: 54 4f 4b 45 4e 5f 52 45 41 44 20 3d 20 53 54 41 TOKEN_READ = STA
d370: 4e 44 41 52 44 5f 52 49 47 48 54 53 5f 52 45 41 NDARD_RIGHTS_REA
d380: 44 20 7c 20 54 4f 4b 45 4e 5f 51 55 45 52 59 20 D | TOKEN_QUERY
d390: 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 }....enum : uint
d3a0: 20 7b 20 54 4f 4b 45 4e 5f 57 52 49 54 45 20 3d { TOKEN_WRITE =
d3b0: 20 53 54 41 4e 44 41 52 44 5f 52 49 47 48 54 53 STANDARD_RIGHTS
d3c0: 5f 57 52 49 54 45 20 7c 20 54 4f 4b 45 4e 5f 41 _WRITE | TOKEN_A
d3d0: 44 4a 55 53 54 5f 50 52 49 56 49 4c 45 47 45 53 DJUST_PRIVILEGES
d3e0: 20 7c 20 54 4f 4b 45 4e 5f 41 44 4a 55 53 54 5f | TOKEN_ADJUST_
d3f0: 47 52 4f 55 50 53 20 7c 20 54 4f 4b 45 4e 5f 41 GROUPS | TOKEN_A
d400: 44 4a 55 53 54 5f 44 45 46 41 55 4c 54 20 7d 0d DJUST_DEFAULT }.
d410: 0a 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b ...enum : uint {
d420: 20 54 4f 4b 45 4e 5f 45 58 45 43 55 54 45 20 3d TOKEN_EXECUTE =
d430: 20 53 54 41 4e 44 41 52 44 5f 52 49 47 48 54 53 STANDARD_RIGHTS
d440: 5f 45 58 45 43 55 54 45 20 7d 0d 0a 0d 0a 61 6c _EXECUTE }....al
d450: 69 61 73 20 69 6e 74 20 5f 54 4f 4b 45 4e 5f 54 ias int _TOKEN_T
d460: 59 50 45 3b 0d 0a 65 6e 75 6d 20 7b 0d 0a 20 20 YPE;..enum {..
d470: 54 6f 6b 65 6e 50 72 69 6d 61 72 79 20 3d 20 31 TokenPrimary = 1
d480: 2c 0d 0a 20 20 54 6f 6b 65 6e 49 6d 70 65 72 73 ,.. TokenImpers
d490: 6f 6e 61 74 69 6f 6e 2c 0d 0a 7d 0d 0a 61 6c 69 onation,..}..ali
d4a0: 61 73 20 5f 54 4f 4b 45 4e 5f 54 59 50 45 20 54 as _TOKEN_TYPE T
d4b0: 4f 4b 45 4e 5f 54 59 50 45 3b 0d 0a 0d 0a 61 6c OKEN_TYPE;....al
d4c0: 69 61 73 20 54 4f 4b 45 4e 5f 54 59 50 45 2a 20 ias TOKEN_TYPE*
d4d0: 50 54 4f 4b 45 4e 5f 54 59 50 45 3b 0d 0a 0d 0a PTOKEN_TYPE;....
d4e0: 61 6c 69 61 73 20 69 6e 74 20 5f 54 4f 4b 45 4e alias int _TOKEN
d4f0: 5f 49 4e 46 4f 52 4d 41 54 49 4f 4e 5f 43 4c 41 _INFORMATION_CLA
d500: 53 53 3b 0d 0a 65 6e 75 6d 20 7b 0d 0a 20 20 54 SS;..enum {.. T
d510: 6f 6b 65 6e 55 73 65 72 20 3d 20 31 2c 0d 0a 20 okenUser = 1,..
d520: 20 54 6f 6b 65 6e 47 72 6f 75 70 73 2c 0d 0a 20 TokenGroups,..
d530: 20 54 6f 6b 65 6e 50 72 69 76 69 6c 65 67 65 73 TokenPrivileges
d540: 2c 0d 0a 20 20 54 6f 6b 65 6e 4f 77 6e 65 72 2c ,.. TokenOwner,
d550: 0d 0a 20 20 54 6f 6b 65 6e 50 72 69 6d 61 72 79 .. TokenPrimary
d560: 47 72 6f 75 70 2c 0d 0a 20 20 54 6f 6b 65 6e 44 Group,.. TokenD
d570: 65 66 61 75 6c 74 44 61 63 6c 2c 0d 0a 20 20 54 efaultDacl,.. T
d580: 6f 6b 65 6e 53 6f 75 72 63 65 2c 0d 0a 20 20 54 okenSource,.. T
d590: 6f 6b 65 6e 54 79 70 65 2c 0d 0a 20 20 54 6f 6b okenType,.. Tok
d5a0: 65 6e 49 6d 70 65 72 73 6f 6e 61 74 69 6f 6e 4c enImpersonationL
d5b0: 65 76 65 6c 2c 0d 0a 20 20 54 6f 6b 65 6e 53 74 evel,.. TokenSt
d5c0: 61 74 69 73 74 69 63 73 2c 0d 0a 20 20 54 6f 6b atistics,.. Tok
d5d0: 65 6e 52 65 73 74 72 69 63 74 65 64 53 69 64 73 enRestrictedSids
d5e0: 2c 0d 0a 20 20 54 6f 6b 65 6e 53 65 73 73 69 6f ,.. TokenSessio
d5f0: 6e 49 64 2c 0d 0a 20 20 54 6f 6b 65 6e 47 72 6f nId,.. TokenGro
d600: 75 70 73 41 6e 64 50 72 69 76 69 6c 65 67 65 73 upsAndPrivileges
d610: 2c 0d 0a 20 20 54 6f 6b 65 6e 53 65 73 73 69 6f ,.. TokenSessio
d620: 6e 52 65 66 65 72 65 6e 63 65 2c 0d 0a 20 20 54 nReference,.. T
d630: 6f 6b 65 6e 53 61 6e 64 42 6f 78 49 6e 65 72 74 okenSandBoxInert
d640: 2c 0d 0a 7d 0d 0a 61 6c 69 61 73 20 5f 54 4f 4b ,..}..alias _TOK
d650: 45 4e 5f 49 4e 46 4f 52 4d 41 54 49 4f 4e 5f 43 EN_INFORMATION_C
d660: 4c 41 53 53 20 54 4f 4b 45 4e 5f 49 4e 46 4f 52 LASS TOKEN_INFOR
d670: 4d 41 54 49 4f 4e 5f 43 4c 41 53 53 3b 0d 0a 61 MATION_CLASS;..a
d680: 6c 69 61 73 20 5f 54 4f 4b 45 4e 5f 49 4e 46 4f lias _TOKEN_INFO
d690: 52 4d 41 54 49 4f 4e 5f 43 4c 41 53 53 2a 20 50 RMATION_CLASS* P
d6a0: 54 4f 4b 45 4e 5f 49 4e 46 4f 52 4d 41 54 49 4f TOKEN_INFORMATIO
d6b0: 4e 5f 43 4c 41 53 53 3b 0d 0a 0d 0a 73 74 72 75 N_CLASS;....stru
d6c0: 63 74 20 5f 54 4f 4b 45 4e 5f 55 53 45 52 20 7b ct _TOKEN_USER {
d6d0: 0d 0a 20 20 53 49 44 5f 41 4e 44 5f 41 54 54 52 .. SID_AND_ATTR
d6e0: 49 42 55 54 45 53 20 55 73 65 72 3b 0d 0a 7d 0d IBUTES User;..}.
d6f0: 0a 61 6c 69 61 73 20 5f 54 4f 4b 45 4e 5f 55 53 .alias _TOKEN_US
d700: 45 52 20 54 4f 4b 45 4e 5f 55 53 45 52 3b 0d 0a ER TOKEN_USER;..
d710: 61 6c 69 61 73 20 5f 54 4f 4b 45 4e 5f 55 53 45 alias _TOKEN_USE
d720: 52 2a 20 50 54 4f 4b 45 4e 5f 55 53 45 52 3b 0d R* PTOKEN_USER;.
d730: 0a 0d 0a 73 74 72 75 63 74 20 5f 54 4f 4b 45 4e ...struct _TOKEN
d740: 5f 47 52 4f 55 50 53 20 7b 0d 0a 20 20 44 57 4f _GROUPS {.. DWO
d750: 52 44 20 47 72 6f 75 70 43 6f 75 6e 74 3b 0d 0a RD GroupCount;..
d760: 20 20 53 49 44 5f 41 4e 44 5f 41 54 54 52 49 42 SID_AND_ATTRIB
d770: 55 54 45 53 20 47 72 6f 75 70 73 5b 41 4e 59 53 UTES Groups[ANYS
d780: 49 5a 45 5f 41 52 52 41 59 5d 3b 0d 0a 7d 0d 0a IZE_ARRAY];..}..
d790: 61 6c 69 61 73 20 5f 54 4f 4b 45 4e 5f 47 52 4f alias _TOKEN_GRO
d7a0: 55 50 53 20 54 4f 4b 45 4e 5f 47 52 4f 55 50 53 UPS TOKEN_GROUPS
d7b0: 3b 0d 0a 61 6c 69 61 73 20 5f 54 4f 4b 45 4e 5f ;..alias _TOKEN_
d7c0: 47 52 4f 55 50 53 2a 20 50 54 4f 4b 45 4e 5f 47 GROUPS* PTOKEN_G
d7d0: 52 4f 55 50 53 3b 0d 0a 0d 0a 73 74 72 75 63 74 ROUPS;....struct
d7e0: 20 5f 54 4f 4b 45 4e 5f 50 52 49 56 49 4c 45 47 _TOKEN_PRIVILEG
d7f0: 45 53 20 7b 0d 0a 20 20 44 57 4f 52 44 20 50 72 ES {.. DWORD Pr
d800: 69 76 69 6c 65 67 65 43 6f 75 6e 74 3b 0d 0a 20 ivilegeCount;..
d810: 20 4c 55 49 44 5f 41 4e 44 5f 41 54 54 52 49 42 LUID_AND_ATTRIB
d820: 55 54 45 53 20 50 72 69 76 69 6c 65 67 65 73 5b UTES Privileges[
d830: 41 4e 59 53 49 5a 45 5f 41 52 52 41 59 5d 3b 0d ANYSIZE_ARRAY];.
d840: 0a 7d 0d 0a 61 6c 69 61 73 20 5f 54 4f 4b 45 4e .}..alias _TOKEN
d850: 5f 50 52 49 56 49 4c 45 47 45 53 20 54 4f 4b 45 _PRIVILEGES TOKE
d860: 4e 5f 50 52 49 56 49 4c 45 47 45 53 3b 0d 0a 61 N_PRIVILEGES;..a
d870: 6c 69 61 73 20 5f 54 4f 4b 45 4e 5f 50 52 49 56 lias _TOKEN_PRIV
d880: 49 4c 45 47 45 53 2a 20 50 54 4f 4b 45 4e 5f 50 ILEGES* PTOKEN_P
d890: 52 49 56 49 4c 45 47 45 53 3b 0d 0a 0d 0a 73 74 RIVILEGES;....st
d8a0: 72 75 63 74 20 5f 54 4f 4b 45 4e 5f 4f 57 4e 45 ruct _TOKEN_OWNE
d8b0: 52 20 7b 0d 0a 20 20 50 53 49 44 20 4f 77 6e 65 R {.. PSID Owne
d8c0: 72 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 5f 54 4f r;..}..alias _TO
d8d0: 4b 45 4e 5f 4f 57 4e 45 52 20 54 4f 4b 45 4e 5f KEN_OWNER TOKEN_
d8e0: 4f 57 4e 45 52 3b 0d 0a 61 6c 69 61 73 20 5f 54 OWNER;..alias _T
d8f0: 4f 4b 45 4e 5f 4f 57 4e 45 52 2a 20 50 54 4f 4b OKEN_OWNER* PTOK
d900: 45 4e 5f 4f 57 4e 45 52 3b 0d 0a 0d 0a 73 74 72 EN_OWNER;....str
d910: 75 63 74 20 5f 54 4f 4b 45 4e 5f 50 52 49 4d 41 uct _TOKEN_PRIMA
d920: 52 59 5f 47 52 4f 55 50 20 7b 0d 0a 20 20 50 53 RY_GROUP {.. PS
d930: 49 44 20 50 72 69 6d 61 72 79 47 72 6f 75 70 3b ID PrimaryGroup;
d940: 0d 0a 7d 0d 0a 61 6c 69 61 73 20 5f 54 4f 4b 45 ..}..alias _TOKE
d950: 4e 5f 50 52 49 4d 41 52 59 5f 47 52 4f 55 50 20 N_PRIMARY_GROUP
d960: 54 4f 4b 45 4e 5f 50 52 49 4d 41 52 59 5f 47 52 TOKEN_PRIMARY_GR
d970: 4f 55 50 3b 0d 0a 61 6c 69 61 73 20 5f 54 4f 4b OUP;..alias _TOK
d980: 45 4e 5f 50 52 49 4d 41 52 59 5f 47 52 4f 55 50 EN_PRIMARY_GROUP
d990: 2a 20 50 54 4f 4b 45 4e 5f 50 52 49 4d 41 52 59 * PTOKEN_PRIMARY
d9a0: 5f 47 52 4f 55 50 3b 0d 0a 0d 0a 73 74 72 75 63 _GROUP;....struc
d9b0: 74 20 5f 54 4f 4b 45 4e 5f 44 45 46 41 55 4c 54 t _TOKEN_DEFAULT
d9c0: 5f 44 41 43 4c 20 7b 0d 0a 20 20 50 41 43 4c 20 _DACL {.. PACL
d9d0: 44 65 66 61 75 6c 74 44 61 63 6c 3b 0d 0a 7d 0d DefaultDacl;..}.
d9e0: 0a 61 6c 69 61 73 20 5f 54 4f 4b 45 4e 5f 44 45 .alias _TOKEN_DE
d9f0: 46 41 55 4c 54 5f 44 41 43 4c 20 54 4f 4b 45 4e FAULT_DACL TOKEN
da00: 5f 44 45 46 41 55 4c 54 5f 44 41 43 4c 3b 0d 0a _DEFAULT_DACL;..
da10: 61 6c 69 61 73 20 5f 54 4f 4b 45 4e 5f 44 45 46 alias _TOKEN_DEF
da20: 41 55 4c 54 5f 44 41 43 4c 2a 20 50 54 4f 4b 45 AULT_DACL* PTOKE
da30: 4e 5f 44 45 46 41 55 4c 54 5f 44 41 43 4c 3b 0d N_DEFAULT_DACL;.
da40: 0a 0d 0a 73 74 72 75 63 74 20 5f 54 4f 4b 45 4e ...struct _TOKEN
da50: 5f 47 52 4f 55 50 53 5f 41 4e 44 5f 50 52 49 56 _GROUPS_AND_PRIV
da60: 49 4c 45 47 45 53 20 7b 0d 0a 20 20 44 57 4f 52 ILEGES {.. DWOR
da70: 44 20 53 69 64 43 6f 75 6e 74 3b 0d 0a 20 20 44 D SidCount;.. D
da80: 57 4f 52 44 20 53 69 64 4c 65 6e 67 74 68 3b 0d WORD SidLength;.
da90: 0a 20 20 50 53 49 44 5f 41 4e 44 5f 41 54 54 52 . PSID_AND_ATTR
daa0: 49 42 55 54 45 53 20 53 69 64 73 3b 0d 0a 20 20 IBUTES Sids;..
dab0: 44 57 4f 52 44 20 52 65 73 74 72 69 63 74 65 64 DWORD Restricted
dac0: 53 69 64 43 6f 75 6e 74 3b 0d 0a 20 20 44 57 4f SidCount;.. DWO
dad0: 52 44 20 52 65 73 74 72 69 63 74 65 64 53 69 64 RD RestrictedSid
dae0: 4c 65 6e 67 74 68 3b 0d 0a 20 20 50 53 49 44 5f Length;.. PSID_
daf0: 41 4e 44 5f 41 54 54 52 49 42 55 54 45 53 20 52 AND_ATTRIBUTES R
db00: 65 73 74 72 69 63 74 65 64 53 69 64 73 3b 0d 0a estrictedSids;..
db10: 20 20 44 57 4f 52 44 20 50 72 69 76 69 6c 65 67 DWORD Privileg
db20: 65 43 6f 75 6e 74 3b 0d 0a 20 20 44 57 4f 52 44 eCount;.. DWORD
db30: 20 50 72 69 76 69 6c 65 67 65 4c 65 6e 67 74 68 PrivilegeLength
db40: 3b 0d 0a 20 20 50 4c 55 49 44 5f 41 4e 44 5f 41 ;.. PLUID_AND_A
db50: 54 54 52 49 42 55 54 45 53 20 50 72 69 76 69 6c TTRIBUTES Privil
db60: 65 67 65 73 3b 0d 0a 20 20 4c 55 49 44 20 41 75 eges;.. LUID Au
db70: 74 68 65 6e 74 69 63 61 74 69 6f 6e 49 64 3b 0d thenticationId;.
db80: 0a 7d 0d 0a 61 6c 69 61 73 20 5f 54 4f 4b 45 4e .}..alias _TOKEN
db90: 5f 47 52 4f 55 50 53 5f 41 4e 44 5f 50 52 49 56 _GROUPS_AND_PRIV
dba0: 49 4c 45 47 45 53 20 54 4f 4b 45 4e 5f 47 52 4f ILEGES TOKEN_GRO
dbb0: 55 50 53 5f 41 4e 44 5f 50 52 49 56 49 4c 45 47 UPS_AND_PRIVILEG
dbc0: 45 53 3b 0d 0a 61 6c 69 61 73 20 5f 54 4f 4b 45 ES;..alias _TOKE
dbd0: 4e 5f 47 52 4f 55 50 53 5f 41 4e 44 5f 50 52 49 N_GROUPS_AND_PRI
dbe0: 56 49 4c 45 47 45 53 2a 20 50 54 4f 4b 45 4e 5f VILEGES* PTOKEN_
dbf0: 47 52 4f 55 50 53 5f 41 4e 44 5f 50 52 49 56 49 GROUPS_AND_PRIVI
dc00: 4c 45 47 45 53 3b 0d 0a 0d 0a 65 6e 75 6d 20 3a LEGES;....enum :
dc10: 20 75 69 6e 74 20 7b 20 54 4f 4b 45 4e 5f 53 4f uint { TOKEN_SO
dc20: 55 52 43 45 5f 4c 45 4e 47 54 48 20 3d 20 38 20 URCE_LENGTH = 8
dc30: 7d 0d 0a 0d 0a 73 74 72 75 63 74 20 5f 54 4f 4b }....struct _TOK
dc40: 45 4e 5f 53 4f 55 52 43 45 20 7b 0d 0a 20 20 43 EN_SOURCE {.. C
dc50: 48 41 52 20 53 6f 75 72 63 65 4e 61 6d 65 5b 54 HAR SourceName[T
dc60: 4f 4b 45 4e 5f 53 4f 55 52 43 45 5f 4c 45 4e 47 OKEN_SOURCE_LENG
dc70: 54 48 5d 3b 0d 0a 20 20 4c 55 49 44 20 53 6f 75 TH];.. LUID Sou
dc80: 72 63 65 49 64 65 6e 74 69 66 69 65 72 3b 0d 0a rceIdentifier;..
dc90: 7d 0d 0a 61 6c 69 61 73 20 5f 54 4f 4b 45 4e 5f }..alias _TOKEN_
dca0: 53 4f 55 52 43 45 20 54 4f 4b 45 4e 5f 53 4f 55 SOURCE TOKEN_SOU
dcb0: 52 43 45 3b 0d 0a 61 6c 69 61 73 20 5f 54 4f 4b RCE;..alias _TOK
dcc0: 45 4e 5f 53 4f 55 52 43 45 2a 20 50 54 4f 4b 45 EN_SOURCE* PTOKE
dcd0: 4e 5f 53 4f 55 52 43 45 3b 0d 0a 0d 0a 73 74 72 N_SOURCE;....str
dce0: 75 63 74 20 5f 54 4f 4b 45 4e 5f 53 54 41 54 49 uct _TOKEN_STATI
dcf0: 53 54 49 43 53 20 7b 0d 0a 20 20 4c 55 49 44 20 STICS {.. LUID
dd00: 54 6f 6b 65 6e 49 64 3b 0d 0a 20 20 4c 55 49 44 TokenId;.. LUID
dd10: 20 41 75 74 68 65 6e 74 69 63 61 74 69 6f 6e 49 AuthenticationI
dd20: 64 3b 0d 0a 20 20 4c 41 52 47 45 5f 49 4e 54 45 d;.. LARGE_INTE
dd30: 47 45 52 20 45 78 70 69 72 61 74 69 6f 6e 54 69 GER ExpirationTi
dd40: 6d 65 3b 0d 0a 20 20 54 4f 4b 45 4e 5f 54 59 50 me;.. TOKEN_TYP
dd50: 45 20 54 6f 6b 65 6e 54 79 70 65 3b 0d 0a 20 20 E TokenType;..
dd60: 53 45 43 55 52 49 54 59 5f 49 4d 50 45 52 53 4f SECURITY_IMPERSO
dd70: 4e 41 54 49 4f 4e 5f 4c 45 56 45 4c 20 49 6d 70 NATION_LEVEL Imp
dd80: 65 72 73 6f 6e 61 74 69 6f 6e 4c 65 76 65 6c 3b ersonationLevel;
dd90: 0d 0a 20 20 44 57 4f 52 44 20 44 79 6e 61 6d 69 .. DWORD Dynami
dda0: 63 43 68 61 72 67 65 64 3b 0d 0a 20 20 44 57 4f cCharged;.. DWO
ddb0: 52 44 20 44 79 6e 61 6d 69 63 41 76 61 69 6c 61 RD DynamicAvaila
ddc0: 62 6c 65 3b 0d 0a 20 20 44 57 4f 52 44 20 47 72 ble;.. DWORD Gr
ddd0: 6f 75 70 43 6f 75 6e 74 3b 0d 0a 20 20 44 57 4f oupCount;.. DWO
dde0: 52 44 20 50 72 69 76 69 6c 65 67 65 43 6f 75 6e RD PrivilegeCoun
ddf0: 74 3b 0d 0a 20 20 4c 55 49 44 20 4d 6f 64 69 66 t;.. LUID Modif
de00: 69 65 64 49 64 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 iedId;..}..alias
de10: 20 5f 54 4f 4b 45 4e 5f 53 54 41 54 49 53 54 49 _TOKEN_STATISTI
de20: 43 53 20 54 4f 4b 45 4e 5f 53 54 41 54 49 53 54 CS TOKEN_STATIST
de30: 49 43 53 3b 0d 0a 61 6c 69 61 73 20 5f 54 4f 4b ICS;..alias _TOK
de40: 45 4e 5f 53 54 41 54 49 53 54 49 43 53 2a 20 50 EN_STATISTICS* P
de50: 54 4f 4b 45 4e 5f 53 54 41 54 49 53 54 49 43 53 TOKEN_STATISTICS
de60: 3b 0d 0a 0d 0a 73 74 72 75 63 74 20 5f 54 4f 4b ;....struct _TOK
de70: 45 4e 5f 43 4f 4e 54 52 4f 4c 20 7b 0d 0a 20 20 EN_CONTROL {..
de80: 4c 55 49 44 20 54 6f 6b 65 6e 49 64 3b 0d 0a 20 LUID TokenId;..
de90: 20 4c 55 49 44 20 41 75 74 68 65 6e 74 69 63 61 LUID Authentica
dea0: 74 69 6f 6e 49 64 3b 0d 0a 20 20 4c 55 49 44 20 tionId;.. LUID
deb0: 4d 6f 64 69 66 69 65 64 49 64 3b 0d 0a 20 20 54 ModifiedId;.. T
dec0: 4f 4b 45 4e 5f 53 4f 55 52 43 45 20 54 6f 6b 65 OKEN_SOURCE Toke
ded0: 6e 53 6f 75 72 63 65 3b 0d 0a 7d 0d 0a 61 6c 69 nSource;..}..ali
dee0: 61 73 20 5f 54 4f 4b 45 4e 5f 43 4f 4e 54 52 4f as _TOKEN_CONTRO
def0: 4c 20 54 4f 4b 45 4e 5f 43 4f 4e 54 52 4f 4c 3b L TOKEN_CONTROL;
df00: 0d 0a 61 6c 69 61 73 20 5f 54 4f 4b 45 4e 5f 43 ..alias _TOKEN_C
df10: 4f 4e 54 52 4f 4c 2a 20 50 54 4f 4b 45 4e 5f 43 ONTROL* PTOKEN_C
df20: 4f 4e 54 52 4f 4c 3b 0d 0a 0d 0a 65 6e 75 6d 20 ONTROL;....enum
df30: 3a 20 75 69 6e 74 20 7b 20 53 45 43 55 52 49 54 : uint { SECURIT
df40: 59 5f 44 59 4e 41 4d 49 43 5f 54 52 41 43 4b 49 Y_DYNAMIC_TRACKI
df50: 4e 47 20 3d 20 54 52 55 45 20 7d 0d 0a 65 6e 75 NG = TRUE }..enu
df60: 6d 20 3a 20 75 69 6e 74 20 7b 20 53 45 43 55 52 m : uint { SECUR
df70: 49 54 59 5f 53 54 41 54 49 43 5f 54 52 41 43 4b ITY_STATIC_TRACK
df80: 49 4e 47 20 3d 20 46 41 4c 53 45 20 7d 0d 0a 0d ING = FALSE }...
df90: 0a 61 6c 69 61 73 20 42 4f 4f 4c 45 41 4e 20 53 .alias BOOLEAN S
dfa0: 45 43 55 52 49 54 59 5f 43 4f 4e 54 45 58 54 5f ECURITY_CONTEXT_
dfb0: 54 52 41 43 4b 49 4e 47 5f 4d 4f 44 45 3b 0d 0a TRACKING_MODE;..
dfc0: 61 6c 69 61 73 20 42 4f 4f 4c 45 41 4e 2a 20 50 alias BOOLEAN* P
dfd0: 53 45 43 55 52 49 54 59 5f 43 4f 4e 54 45 58 54 SECURITY_CONTEXT
dfe0: 5f 54 52 41 43 4b 49 4e 47 5f 4d 4f 44 45 3b 0d _TRACKING_MODE;.
dff0: 0a 0d 0a 73 74 72 75 63 74 20 5f 53 45 43 55 52 ...struct _SECUR
e000: 49 54 59 5f 51 55 41 4c 49 54 59 5f 4f 46 5f 53 ITY_QUALITY_OF_S
e010: 45 52 56 49 43 45 20 7b 0d 0a 20 20 44 57 4f 52 ERVICE {.. DWOR
e020: 44 20 4c 65 6e 67 74 68 3b 0d 0a 20 20 53 45 43 D Length;.. SEC
e030: 55 52 49 54 59 5f 49 4d 50 45 52 53 4f 4e 41 54 URITY_IMPERSONAT
e040: 49 4f 4e 5f 4c 45 56 45 4c 20 49 6d 70 65 72 73 ION_LEVEL Impers
e050: 6f 6e 61 74 69 6f 6e 4c 65 76 65 6c 3b 0d 0a 20 onationLevel;..
e060: 20 53 45 43 55 52 49 54 59 5f 43 4f 4e 54 45 58 SECURITY_CONTEX
e070: 54 5f 54 52 41 43 4b 49 4e 47 5f 4d 4f 44 45 20 T_TRACKING_MODE
e080: 43 6f 6e 74 65 78 74 54 72 61 63 6b 69 6e 67 4d ContextTrackingM
e090: 6f 64 65 3b 0d 0a 20 20 42 4f 4f 4c 45 41 4e 20 ode;.. BOOLEAN
e0a0: 45 66 66 65 63 74 69 76 65 4f 6e 6c 79 3b 0d 0a EffectiveOnly;..
e0b0: 7d 0d 0a 61 6c 69 61 73 20 5f 53 45 43 55 52 49 }..alias _SECURI
e0c0: 54 59 5f 51 55 41 4c 49 54 59 5f 4f 46 5f 53 45 TY_QUALITY_OF_SE
e0d0: 52 56 49 43 45 20 53 45 43 55 52 49 54 59 5f 51 RVICE SECURITY_Q
e0e0: 55 41 4c 49 54 59 5f 4f 46 5f 53 45 52 56 49 43 UALITY_OF_SERVIC
e0f0: 45 3b 0d 0a 61 6c 69 61 73 20 5f 53 45 43 55 52 E;..alias _SECUR
e100: 49 54 59 5f 51 55 41 4c 49 54 59 5f 4f 46 5f 53 ITY_QUALITY_OF_S
e110: 45 52 56 49 43 45 2a 20 50 53 45 43 55 52 49 54 ERVICE* PSECURIT
e120: 59 5f 51 55 41 4c 49 54 59 5f 4f 46 5f 53 45 52 Y_QUALITY_OF_SER
e130: 56 49 43 45 3b 0d 0a 0d 0a 73 74 72 75 63 74 20 VICE;....struct
e140: 5f 53 45 5f 49 4d 50 45 52 53 4f 4e 41 54 49 4f _SE_IMPERSONATIO
e150: 4e 5f 53 54 41 54 45 20 7b 0d 0a 20 20 50 41 43 N_STATE {.. PAC
e160: 43 45 53 53 5f 54 4f 4b 45 4e 20 54 6f 6b 65 6e CESS_TOKEN Token
e170: 3b 0d 0a 20 20 42 4f 4f 4c 45 41 4e 20 43 6f 70 ;.. BOOLEAN Cop
e180: 79 4f 6e 4f 70 65 6e 3b 0d 0a 20 20 42 4f 4f 4c yOnOpen;.. BOOL
e190: 45 41 4e 20 45 66 66 65 63 74 69 76 65 4f 6e 6c EAN EffectiveOnl
e1a0: 79 3b 0d 0a 20 20 53 45 43 55 52 49 54 59 5f 49 y;.. SECURITY_I
e1b0: 4d 50 45 52 53 4f 4e 41 54 49 4f 4e 5f 4c 45 56 MPERSONATION_LEV
e1c0: 45 4c 20 4c 65 76 65 6c 3b 0d 0a 7d 0d 0a 61 6c EL Level;..}..al
e1d0: 69 61 73 20 5f 53 45 5f 49 4d 50 45 52 53 4f 4e ias _SE_IMPERSON
e1e0: 41 54 49 4f 4e 5f 53 54 41 54 45 20 53 45 5f 49 ATION_STATE SE_I
e1f0: 4d 50 45 52 53 4f 4e 41 54 49 4f 4e 5f 53 54 41 MPERSONATION_STA
e200: 54 45 3b 0d 0a 61 6c 69 61 73 20 5f 53 45 5f 49 TE;..alias _SE_I
e210: 4d 50 45 52 53 4f 4e 41 54 49 4f 4e 5f 53 54 41 MPERSONATION_STA
e220: 54 45 2a 20 50 53 45 5f 49 4d 50 45 52 53 4f 4e TE* PSE_IMPERSON
e230: 41 54 49 4f 4e 5f 53 54 41 54 45 3b 0d 0a 0d 0a ATION_STATE;....
e240: 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 44 49 enum : uint { DI
e250: 53 41 42 4c 45 5f 4d 41 58 5f 50 52 49 56 49 4c SABLE_MAX_PRIVIL
e260: 45 47 45 20 3d 20 30 78 31 20 7d 0d 0a 65 6e 75 EGE = 0x1 }..enu
e270: 6d 20 3a 20 75 69 6e 74 20 7b 20 53 41 4e 44 42 m : uint { SANDB
e280: 4f 58 5f 49 4e 45 52 54 20 3d 20 30 78 32 20 7d OX_INERT = 0x2 }
e290: 0d 0a 0d 0a 61 6c 69 61 73 20 44 57 4f 52 44 20 ....alias DWORD
e2a0: 53 45 43 55 52 49 54 59 5f 49 4e 46 4f 52 4d 41 SECURITY_INFORMA
e2b0: 54 49 4f 4e 3b 0d 0a 61 6c 69 61 73 20 44 57 4f TION;..alias DWO
e2c0: 52 44 2a 20 50 53 45 43 55 52 49 54 59 5f 49 4e RD* PSECURITY_IN
e2d0: 46 4f 52 4d 41 54 49 4f 4e 3b 0d 0a 0d 0a 65 6e FORMATION;....en
e2e0: 75 6d 20 3a 20 75 69 6e 74 20 7b 20 4f 57 4e 45 um : uint { OWNE
e2f0: 52 5f 53 45 43 55 52 49 54 59 5f 49 4e 46 4f 52 R_SECURITY_INFOR
e300: 4d 41 54 49 4f 4e 20 3d 20 30 78 30 30 30 30 30 MATION = 0x00000
e310: 30 30 31 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 001 }..enum : ui
e320: 6e 74 20 7b 20 47 52 4f 55 50 5f 53 45 43 55 52 nt { GROUP_SECUR
e330: 49 54 59 5f 49 4e 46 4f 52 4d 41 54 49 4f 4e 20 ITY_INFORMATION
e340: 3d 20 30 78 30 30 30 30 30 30 30 32 20 7d 0d 0a = 0x00000002 }..
e350: 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 44 41 enum : uint { DA
e360: 43 4c 5f 53 45 43 55 52 49 54 59 5f 49 4e 46 4f CL_SECURITY_INFO
e370: 52 4d 41 54 49 4f 4e 20 3d 20 30 78 30 30 30 30 RMATION = 0x0000
e380: 30 30 30 34 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 0004 }..enum : u
e390: 69 6e 74 20 7b 20 53 41 43 4c 5f 53 45 43 55 52 int { SACL_SECUR
e3a0: 49 54 59 5f 49 4e 46 4f 52 4d 41 54 49 4f 4e 20 ITY_INFORMATION
e3b0: 3d 20 30 78 30 30 30 30 30 30 30 38 20 7d 0d 0a = 0x00000008 }..
e3c0: 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
e3d0: 50 52 4f 54 45 43 54 45 44 5f 44 41 43 4c 5f 53 PROTECTED_DACL_S
e3e0: 45 43 55 52 49 54 59 5f 49 4e 46 4f 52 4d 41 54 ECURITY_INFORMAT
e3f0: 49 4f 4e 20 3d 20 30 78 38 30 30 30 30 30 30 30 ION = 0x80000000
e400: 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 }..enum : uint
e410: 7b 20 50 52 4f 54 45 43 54 45 44 5f 53 41 43 4c { PROTECTED_SACL
e420: 5f 53 45 43 55 52 49 54 59 5f 49 4e 46 4f 52 4d _SECURITY_INFORM
e430: 41 54 49 4f 4e 20 3d 20 30 78 34 30 30 30 30 30 ATION = 0x400000
e440: 30 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 00 }..enum : uin
e450: 74 20 7b 20 55 4e 50 52 4f 54 45 43 54 45 44 5f t { UNPROTECTED_
e460: 44 41 43 4c 5f 53 45 43 55 52 49 54 59 5f 49 4e DACL_SECURITY_IN
e470: 46 4f 52 4d 41 54 49 4f 4e 20 3d 20 30 78 32 30 FORMATION = 0x20
e480: 30 30 30 30 30 30 20 7d 0d 0a 65 6e 75 6d 20 3a 000000 }..enum :
e490: 20 75 69 6e 74 20 7b 20 55 4e 50 52 4f 54 45 43 uint { UNPROTEC
e4a0: 54 45 44 5f 53 41 43 4c 5f 53 45 43 55 52 49 54 TED_SACL_SECURIT
e4b0: 59 5f 49 4e 46 4f 52 4d 41 54 49 4f 4e 20 3d 20 Y_INFORMATION =
e4c0: 30 78 31 30 30 30 30 30 30 30 20 7d 0d 0a 0d 0a 0x10000000 }....
e4d0: 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 50 52 enum : uint { PR
e4e0: 4f 43 45 53 53 5f 54 45 52 4d 49 4e 41 54 45 20 OCESS_TERMINATE
e4f0: 3d 20 30 78 30 30 30 31 20 7d 0d 0a 65 6e 75 6d = 0x0001 }..enum
e500: 20 3a 20 75 69 6e 74 20 7b 20 50 52 4f 43 45 53 : uint { PROCES
e510: 53 5f 43 52 45 41 54 45 5f 54 48 52 45 41 44 20 S_CREATE_THREAD
e520: 3d 20 30 78 30 30 30 32 20 7d 0d 0a 65 6e 75 6d = 0x0002 }..enum
e530: 20 3a 20 75 69 6e 74 20 7b 20 50 52 4f 43 45 53 : uint { PROCES
e540: 53 5f 53 45 54 5f 53 45 53 53 49 4f 4e 49 44 20 S_SET_SESSIONID
e550: 3d 20 30 78 30 30 30 34 20 7d 0d 0a 65 6e 75 6d = 0x0004 }..enum
e560: 20 3a 20 75 69 6e 74 20 7b 20 50 52 4f 43 45 53 : uint { PROCES
e570: 53 5f 56 4d 5f 4f 50 45 52 41 54 49 4f 4e 20 3d S_VM_OPERATION =
e580: 20 30 78 30 30 30 38 20 7d 0d 0a 65 6e 75 6d 20 0x0008 }..enum
e590: 3a 20 75 69 6e 74 20 7b 20 50 52 4f 43 45 53 53 : uint { PROCESS
e5a0: 5f 56 4d 5f 52 45 41 44 20 3d 20 30 78 30 30 31 _VM_READ = 0x001
e5b0: 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 0 }..enum : uint
e5c0: 20 7b 20 50 52 4f 43 45 53 53 5f 56 4d 5f 57 52 { PROCESS_VM_WR
e5d0: 49 54 45 20 3d 20 30 78 30 30 32 30 20 7d 0d 0a ITE = 0x0020 }..
e5e0: 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 50 52 enum : uint { PR
e5f0: 4f 43 45 53 53 5f 44 55 50 5f 48 41 4e 44 4c 45 OCESS_DUP_HANDLE
e600: 20 3d 20 30 78 30 30 34 30 20 7d 0d 0a 65 6e 75 = 0x0040 }..enu
e610: 6d 20 3a 20 75 69 6e 74 20 7b 20 50 52 4f 43 45 m : uint { PROCE
e620: 53 53 5f 43 52 45 41 54 45 5f 50 52 4f 43 45 53 SS_CREATE_PROCES
e630: 53 20 3d 20 30 78 30 30 38 30 20 7d 0d 0a 65 6e S = 0x0080 }..en
e640: 75 6d 20 3a 20 75 69 6e 74 20 7b 20 50 52 4f 43 um : uint { PROC
e650: 45 53 53 5f 53 45 54 5f 51 55 4f 54 41 20 3d 20 ESS_SET_QUOTA =
e660: 30 78 30 31 30 30 20 7d 0d 0a 65 6e 75 6d 20 3a 0x0100 }..enum :
e670: 20 75 69 6e 74 20 7b 20 50 52 4f 43 45 53 53 5f uint { PROCESS_
e680: 53 45 54 5f 49 4e 46 4f 52 4d 41 54 49 4f 4e 20 SET_INFORMATION
e690: 3d 20 30 78 30 32 30 30 20 7d 0d 0a 65 6e 75 6d = 0x0200 }..enum
e6a0: 20 3a 20 75 69 6e 74 20 7b 20 50 52 4f 43 45 53 : uint { PROCES
e6b0: 53 5f 51 55 45 52 59 5f 49 4e 46 4f 52 4d 41 54 S_QUERY_INFORMAT
e6c0: 49 4f 4e 20 3d 20 30 78 30 34 30 30 20 7d 0d 0a ION = 0x0400 }..
e6d0: 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 50 52 enum : uint { PR
e6e0: 4f 43 45 53 53 5f 53 55 53 50 45 4e 44 5f 52 45 OCESS_SUSPEND_RE
e6f0: 53 55 4d 45 20 3d 20 30 78 30 38 30 30 20 7d 0d SUME = 0x0800 }.
e700: 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 50 .enum : uint { P
e710: 52 4f 43 45 53 53 5f 41 4c 4c 5f 41 43 43 45 53 ROCESS_ALL_ACCES
e720: 53 20 3d 20 53 54 41 4e 44 41 52 44 5f 52 49 47 S = STANDARD_RIG
e730: 48 54 53 5f 52 45 51 55 49 52 45 44 20 7c 20 53 HTS_REQUIRED | S
e740: 59 4e 43 48 52 4f 4e 49 5a 45 20 7c 20 30 78 46 YNCHRONIZE | 0xF
e750: 46 46 20 7d 0d 0a 0d 0a 2f 2f 20 23 69 66 20 64 FF }....// #if d
e760: 65 66 69 6e 65 64 28 5f 57 49 4e 36 34 29 0d 0a efined(_WIN64)..
e770: 0d 0a 2f 2f 20 23 2e 2e 2e 0d 0a 0d 0a 2f 2f 20 ..// #.......//
e780: 23 65 6c 73 65 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 #else....enum :
e790: 75 69 6e 74 20 7b 20 4d 41 58 49 4d 55 4d 5f 50 uint { MAXIMUM_P
e7a0: 52 4f 43 45 53 53 4f 52 53 20 3d 20 33 32 20 7d ROCESSORS = 32 }
e7b0: 0d 0a 0d 0a 2f 2f 20 23 65 6e 64 69 66 0d 0a 0d ....// #endif...
e7c0: 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 54 .enum : uint { T
e7d0: 48 52 45 41 44 5f 54 45 52 4d 49 4e 41 54 45 20 HREAD_TERMINATE
e7e0: 3d 20 30 78 30 30 30 31 20 7d 0d 0a 65 6e 75 6d = 0x0001 }..enum
e7f0: 20 3a 20 75 69 6e 74 20 7b 20 54 48 52 45 41 44 : uint { THREAD
e800: 5f 53 55 53 50 45 4e 44 5f 52 45 53 55 4d 45 20 _SUSPEND_RESUME
e810: 3d 20 30 78 30 30 30 32 20 7d 0d 0a 65 6e 75 6d = 0x0002 }..enum
e820: 20 3a 20 75 69 6e 74 20 7b 20 54 48 52 45 41 44 : uint { THREAD
e830: 5f 47 45 54 5f 43 4f 4e 54 45 58 54 20 3d 20 30 _GET_CONTEXT = 0
e840: 78 30 30 30 38 20 7d 0d 0a 65 6e 75 6d 20 3a 20 x0008 }..enum :
e850: 75 69 6e 74 20 7b 20 54 48 52 45 41 44 5f 53 45 uint { THREAD_SE
e860: 54 5f 43 4f 4e 54 45 58 54 20 3d 20 30 78 30 30 T_CONTEXT = 0x00
e870: 31 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 10 }..enum : uin
e880: 74 20 7b 20 54 48 52 45 41 44 5f 53 45 54 5f 49 t { THREAD_SET_I
e890: 4e 46 4f 52 4d 41 54 49 4f 4e 20 3d 20 30 78 30 NFORMATION = 0x0
e8a0: 30 32 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 020 }..enum : ui
e8b0: 6e 74 20 7b 20 54 48 52 45 41 44 5f 51 55 45 52 nt { THREAD_QUER
e8c0: 59 5f 49 4e 46 4f 52 4d 41 54 49 4f 4e 20 3d 20 Y_INFORMATION =
e8d0: 30 78 30 30 34 30 20 7d 0d 0a 65 6e 75 6d 20 3a 0x0040 }..enum :
e8e0: 20 75 69 6e 74 20 7b 20 54 48 52 45 41 44 5f 53 uint { THREAD_S
e8f0: 45 54 5f 54 48 52 45 41 44 5f 54 4f 4b 45 4e 20 ET_THREAD_TOKEN
e900: 3d 20 30 78 30 30 38 30 20 7d 0d 0a 65 6e 75 6d = 0x0080 }..enum
e910: 20 3a 20 75 69 6e 74 20 7b 20 54 48 52 45 41 44 : uint { THREAD
e920: 5f 49 4d 50 45 52 53 4f 4e 41 54 45 20 3d 20 30 _IMPERSONATE = 0
e930: 78 30 31 30 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 x0100 }..enum :
e940: 75 69 6e 74 20 7b 20 54 48 52 45 41 44 5f 44 49 uint { THREAD_DI
e950: 52 45 43 54 5f 49 4d 50 45 52 53 4f 4e 41 54 49 RECT_IMPERSONATI
e960: 4f 4e 20 3d 20 30 78 30 32 30 30 20 7d 0d 0a 0d ON = 0x0200 }...
e970: 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 54 .enum : uint { T
e980: 48 52 45 41 44 5f 41 4c 4c 5f 41 43 43 45 53 53 HREAD_ALL_ACCESS
e990: 20 3d 20 53 54 41 4e 44 41 52 44 5f 52 49 47 48 = STANDARD_RIGH
e9a0: 54 53 5f 52 45 51 55 49 52 45 44 20 7c 20 53 59 TS_REQUIRED | SY
e9b0: 4e 43 48 52 4f 4e 49 5a 45 20 7c 20 30 78 33 46 NCHRONIZE | 0x3F
e9c0: 46 20 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 75 69 F }....enum : ui
e9d0: 6e 74 20 7b 20 4a 4f 42 5f 4f 42 4a 45 43 54 5f nt { JOB_OBJECT_
e9e0: 41 53 53 49 47 4e 5f 50 52 4f 43 45 53 53 20 3d ASSIGN_PROCESS =
e9f0: 20 30 78 30 30 30 31 20 7d 0d 0a 65 6e 75 6d 20 0x0001 }..enum
ea00: 3a 20 75 69 6e 74 20 7b 20 4a 4f 42 5f 4f 42 4a : uint { JOB_OBJ
ea10: 45 43 54 5f 53 45 54 5f 41 54 54 52 49 42 55 54 ECT_SET_ATTRIBUT
ea20: 45 53 20 3d 20 30 78 30 30 30 32 20 7d 0d 0a 65 ES = 0x0002 }..e
ea30: 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 4a 4f 42 num : uint { JOB
ea40: 5f 4f 42 4a 45 43 54 5f 51 55 45 52 59 20 3d 20 _OBJECT_QUERY =
ea50: 30 78 30 30 30 34 20 7d 0d 0a 65 6e 75 6d 20 3a 0x0004 }..enum :
ea60: 20 75 69 6e 74 20 7b 20 4a 4f 42 5f 4f 42 4a 45 uint { JOB_OBJE
ea70: 43 54 5f 54 45 52 4d 49 4e 41 54 45 20 3d 20 30 CT_TERMINATE = 0
ea80: 78 30 30 30 38 20 7d 0d 0a 65 6e 75 6d 20 3a 20 x0008 }..enum :
ea90: 75 69 6e 74 20 7b 20 4a 4f 42 5f 4f 42 4a 45 43 uint { JOB_OBJEC
eaa0: 54 5f 53 45 54 5f 53 45 43 55 52 49 54 59 5f 41 T_SET_SECURITY_A
eab0: 54 54 52 49 42 55 54 45 53 20 3d 20 30 78 30 30 TTRIBUTES = 0x00
eac0: 31 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 10 }..enum : uin
ead0: 74 20 7b 20 4a 4f 42 5f 4f 42 4a 45 43 54 5f 41 t { JOB_OBJECT_A
eae0: 4c 4c 5f 41 43 43 45 53 53 20 3d 20 53 54 41 4e LL_ACCESS = STAN
eaf0: 44 41 52 44 5f 52 49 47 48 54 53 5f 52 45 51 55 DARD_RIGHTS_REQU
eb00: 49 52 45 44 20 7c 20 53 59 4e 43 48 52 4f 4e 49 IRED | SYNCHRONI
eb10: 5a 45 20 7c 20 30 78 31 46 20 20 7d 0d 0a 0d 0a ZE | 0x1F }....
eb20: 73 74 72 75 63 74 20 5f 4a 4f 42 5f 53 45 54 5f struct _JOB_SET_
eb30: 41 52 52 41 59 20 7b 0d 0a 20 20 48 41 4e 44 4c ARRAY {.. HANDL
eb40: 45 20 4a 6f 62 48 61 6e 64 6c 65 3b 0d 0a 20 20 E JobHandle;..
eb50: 44 57 4f 52 44 20 4d 65 6d 62 65 72 4c 65 76 65 DWORD MemberLeve
eb60: 6c 3b 0d 0a 20 20 44 57 4f 52 44 20 46 6c 61 67 l;.. DWORD Flag
eb70: 73 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 5f 4a 4f s;..}..alias _JO
eb80: 42 5f 53 45 54 5f 41 52 52 41 59 20 4a 4f 42 5f B_SET_ARRAY JOB_
eb90: 53 45 54 5f 41 52 52 41 59 3b 0d 0a 61 6c 69 61 SET_ARRAY;..alia
eba0: 73 20 5f 4a 4f 42 5f 53 45 54 5f 41 52 52 41 59 s _JOB_SET_ARRAY
ebb0: 2a 20 50 4a 4f 42 5f 53 45 54 5f 41 52 52 41 59 * PJOB_SET_ARRAY
ebc0: 3b 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 ;....enum : uint
ebd0: 20 7b 20 54 4c 53 5f 4d 49 4e 49 4d 55 4d 5f 41 { TLS_MINIMUM_A
ebe0: 56 41 49 4c 41 42 4c 45 20 3d 20 36 34 20 7d 0d VAILABLE = 64 }.
ebf0: 0a 0d 0a 73 74 72 75 63 74 20 5f 4e 54 5f 54 49 ...struct _NT_TI
ec00: 42 20 7b 0d 0a 20 20 5f 45 58 43 45 50 54 49 4f B {.. _EXCEPTIO
ec10: 4e 5f 52 45 47 49 53 54 52 41 54 49 4f 4e 5f 52 N_REGISTRATION_R
ec20: 45 43 4f 52 44 20 2a 45 78 63 65 70 74 69 6f 6e ECORD *Exception
ec30: 4c 69 73 74 3b 0d 0a 20 20 50 56 4f 49 44 20 53 List;.. PVOID S
ec40: 74 61 63 6b 42 61 73 65 3b 0d 0a 20 20 50 56 4f tackBase;.. PVO
ec50: 49 44 20 53 74 61 63 6b 4c 69 6d 69 74 3b 0d 0a ID StackLimit;..
ec60: 20 20 50 56 4f 49 44 20 53 75 62 53 79 73 74 65 PVOID SubSyste
ec70: 6d 54 69 62 3b 0d 0a 75 6e 69 6f 6e 20 7b 0d 0a mTib;..union {..
ec80: 20 20 50 56 4f 49 44 20 46 69 62 65 72 44 61 74 PVOID FiberDat
ec90: 61 3b 0d 0a 20 20 44 57 4f 52 44 20 56 65 72 73 a;.. DWORD Vers
eca0: 69 6f 6e 3b 0d 0a 7d 0d 0a 0d 0a 20 20 50 56 4f ion;..}.... PVO
ecb0: 49 44 20 41 72 62 69 74 72 61 72 79 55 73 65 72 ID ArbitraryUser
ecc0: 50 6f 69 6e 74 65 72 3b 0d 0a 20 20 5f 4e 54 5f Pointer;.. _NT_
ecd0: 54 49 42 20 2a 53 65 6c 66 3b 0d 0a 7d 0d 0a 61 TIB *Self;..}..a
ece0: 6c 69 61 73 20 5f 4e 54 5f 54 49 42 20 4e 54 5f lias _NT_TIB NT_
ecf0: 54 49 42 3b 0d 0a 0d 0a 61 6c 69 61 73 20 4e 54 TIB;....alias NT
ed00: 5f 54 49 42 2a 20 50 4e 54 5f 54 49 42 3b 0d 0a _TIB* PNT_TIB;..
ed10: 0d 0a 73 74 72 75 63 74 20 5f 4e 54 5f 54 49 42 ..struct _NT_TIB
ed20: 33 32 20 7b 0d 0a 20 20 44 57 4f 52 44 20 45 78 32 {.. DWORD Ex
ed30: 63 65 70 74 69 6f 6e 4c 69 73 74 3b 0d 0a 20 20 ceptionList;..
ed40: 44 57 4f 52 44 20 53 74 61 63 6b 42 61 73 65 3b DWORD StackBase;
ed50: 0d 0a 20 20 44 57 4f 52 44 20 53 74 61 63 6b 4c .. DWORD StackL
ed60: 69 6d 69 74 3b 0d 0a 20 20 44 57 4f 52 44 20 53 imit;.. DWORD S
ed70: 75 62 53 79 73 74 65 6d 54 69 62 3b 0d 0a 75 6e ubSystemTib;..un
ed80: 69 6f 6e 20 7b 0d 0a 20 20 44 57 4f 52 44 20 46 ion {.. DWORD F
ed90: 69 62 65 72 44 61 74 61 3b 0d 0a 20 20 44 57 4f iberData;.. DWO
eda0: 52 44 20 56 65 72 73 69 6f 6e 3b 0d 0a 7d 0d 0a RD Version;..}..
edb0: 0d 0a 20 20 44 57 4f 52 44 20 41 72 62 69 74 72 .. DWORD Arbitr
edc0: 61 72 79 55 73 65 72 50 6f 69 6e 74 65 72 3b 0d aryUserPointer;.
edd0: 0a 20 20 44 57 4f 52 44 20 53 65 6c 66 3b 0d 0a . DWORD Self;..
ede0: 7d 0d 0a 61 6c 69 61 73 20 5f 4e 54 5f 54 49 42 }..alias _NT_TIB
edf0: 33 32 20 4e 54 5f 54 49 42 33 32 3b 0d 0a 61 6c 32 NT_TIB32;..al
ee00: 69 61 73 20 5f 4e 54 5f 54 49 42 33 32 2a 20 50 ias _NT_TIB32* P
ee10: 4e 54 5f 54 49 42 33 32 3b 0d 0a 0d 0a 73 74 72 NT_TIB32;....str
ee20: 75 63 74 20 5f 4e 54 5f 54 49 42 36 34 20 7b 0d uct _NT_TIB64 {.
ee30: 0a 20 20 44 57 4f 52 44 36 34 20 45 78 63 65 70 . DWORD64 Excep
ee40: 74 69 6f 6e 4c 69 73 74 3b 0d 0a 20 20 44 57 4f tionList;.. DWO
ee50: 52 44 36 34 20 53 74 61 63 6b 42 61 73 65 3b 0d RD64 StackBase;.
ee60: 0a 20 20 44 57 4f 52 44 36 34 20 53 74 61 63 6b . DWORD64 Stack
ee70: 4c 69 6d 69 74 3b 0d 0a 20 20 44 57 4f 52 44 36 Limit;.. DWORD6
ee80: 34 20 53 75 62 53 79 73 74 65 6d 54 69 62 3b 0d 4 SubSystemTib;.
ee90: 0a 75 6e 69 6f 6e 20 7b 0d 0a 20 20 44 57 4f 52 .union {.. DWOR
eea0: 44 36 34 20 46 69 62 65 72 44 61 74 61 3b 0d 0a D64 FiberData;..
eeb0: 20 20 44 57 4f 52 44 20 56 65 72 73 69 6f 6e 3b DWORD Version;
eec0: 0d 0a 7d 0d 0a 0d 0a 20 20 44 57 4f 52 44 36 34 ..}.... DWORD64
eed0: 20 41 72 62 69 74 72 61 72 79 55 73 65 72 50 6f ArbitraryUserPo
eee0: 69 6e 74 65 72 3b 0d 0a 20 20 44 57 4f 52 44 36 inter;.. DWORD6
eef0: 34 20 53 65 6c 66 3b 0d 0a 7d 0d 0a 61 6c 69 61 4 Self;..}..alia
ef00: 73 20 5f 4e 54 5f 54 49 42 36 34 20 4e 54 5f 54 s _NT_TIB64 NT_T
ef10: 49 42 36 34 3b 0d 0a 61 6c 69 61 73 20 5f 4e 54 IB64;..alias _NT
ef20: 5f 54 49 42 36 34 2a 20 50 4e 54 5f 54 49 42 36 _TIB64* PNT_TIB6
ef30: 34 3b 0d 0a 0d 0a 2f 2f 20 23 69 66 20 21 64 65 4;....// #if !de
ef40: 66 69 6e 65 64 28 5f 58 38 36 5f 29 20 26 26 20 fined(_X86_) &&
ef50: 21 64 65 66 69 6e 65 64 28 5f 49 41 36 34 5f 29 !defined(_IA64_)
ef60: 20 26 26 20 21 64 65 66 69 6e 65 64 28 5f 41 4d && !defined(_AM
ef70: 44 36 34 5f 29 0d 0a 2f 2f 20 23 2e 2e 2e 0d 0a D64_)..// #.....
ef80: 2f 2f 20 23 65 6e 64 69 66 0d 0a 0d 0a 65 6e 75 // #endif....enu
ef90: 6d 20 3a 20 75 69 6e 74 20 7b 20 54 48 52 45 41 m : uint { THREA
efa0: 44 5f 42 41 53 45 5f 50 52 49 4f 52 49 54 59 5f D_BASE_PRIORITY_
efb0: 4c 4f 57 52 54 20 3d 20 31 35 20 7d 0d 0a 65 6e LOWRT = 15 }..en
efc0: 75 6d 20 3a 20 75 69 6e 74 20 7b 20 54 48 52 45 um : uint { THRE
efd0: 41 44 5f 42 41 53 45 5f 50 52 49 4f 52 49 54 59 AD_BASE_PRIORITY
efe0: 5f 4d 41 58 20 3d 20 32 20 7d 0d 0a 65 6e 75 6d _MAX = 2 }..enum
eff0: 20 7b 20 54 48 52 45 41 44 5f 42 41 53 45 5f 50 { THREAD_BASE_P
f000: 52 49 4f 52 49 54 59 5f 4d 49 4e 20 3d 20 2d 32 RIORITY_MIN = -2
f010: 20 7d 0d 0a 65 6e 75 6d 20 7b 20 54 48 52 45 41 }..enum { THREA
f020: 44 5f 42 41 53 45 5f 50 52 49 4f 52 49 54 59 5f D_BASE_PRIORITY_
f030: 49 44 4c 45 20 3d 20 2d 31 35 20 7d 0d 0a 0d 0a IDLE = -15 }....
f040: 73 74 72 75 63 74 20 5f 51 55 4f 54 41 5f 4c 49 struct _QUOTA_LI
f050: 4d 49 54 53 20 7b 0d 0a 20 20 53 49 5a 45 5f 54 MITS {.. SIZE_T
f060: 20 50 61 67 65 64 50 6f 6f 6c 4c 69 6d 69 74 3b PagedPoolLimit;
f070: 0d 0a 20 20 53 49 5a 45 5f 54 20 4e 6f 6e 50 61 .. SIZE_T NonPa
f080: 67 65 64 50 6f 6f 6c 4c 69 6d 69 74 3b 0d 0a 20 gedPoolLimit;..
f090: 20 53 49 5a 45 5f 54 20 4d 69 6e 69 6d 75 6d 57 SIZE_T MinimumW
f0a0: 6f 72 6b 69 6e 67 53 65 74 53 69 7a 65 3b 0d 0a orkingSetSize;..
f0b0: 20 20 53 49 5a 45 5f 54 20 4d 61 78 69 6d 75 6d SIZE_T Maximum
f0c0: 57 6f 72 6b 69 6e 67 53 65 74 53 69 7a 65 3b 0d WorkingSetSize;.
f0d0: 0a 20 20 53 49 5a 45 5f 54 20 50 61 67 65 66 69 . SIZE_T Pagefi
f0e0: 6c 65 4c 69 6d 69 74 3b 0d 0a 20 20 4c 41 52 47 leLimit;.. LARG
f0f0: 45 5f 49 4e 54 45 47 45 52 20 54 69 6d 65 4c 69 E_INTEGER TimeLi
f100: 6d 69 74 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 5f mit;..}..alias _
f110: 51 55 4f 54 41 5f 4c 49 4d 49 54 53 20 51 55 4f QUOTA_LIMITS QUO
f120: 54 41 5f 4c 49 4d 49 54 53 3b 0d 0a 0d 0a 61 6c TA_LIMITS;....al
f130: 69 61 73 20 51 55 4f 54 41 5f 4c 49 4d 49 54 53 ias QUOTA_LIMITS
f140: 2a 20 50 51 55 4f 54 41 5f 4c 49 4d 49 54 53 3b * PQUOTA_LIMITS;
f150: 0d 0a 0d 0a 73 74 72 75 63 74 20 5f 49 4f 5f 43 ....struct _IO_C
f160: 4f 55 4e 54 45 52 53 20 7b 0d 0a 20 20 55 4c 4f OUNTERS {.. ULO
f170: 4e 47 4c 4f 4e 47 20 52 65 61 64 4f 70 65 72 61 NGLONG ReadOpera
f180: 74 69 6f 6e 43 6f 75 6e 74 3b 0d 0a 20 20 55 4c tionCount;.. UL
f190: 4f 4e 47 4c 4f 4e 47 20 57 72 69 74 65 4f 70 65 ONGLONG WriteOpe
f1a0: 72 61 74 69 6f 6e 43 6f 75 6e 74 3b 0d 0a 20 20 rationCount;..
f1b0: 55 4c 4f 4e 47 4c 4f 4e 47 20 4f 74 68 65 72 4f ULONGLONG OtherO
f1c0: 70 65 72 61 74 69 6f 6e 43 6f 75 6e 74 3b 0d 0a perationCount;..
f1d0: 20 20 55 4c 4f 4e 47 4c 4f 4e 47 20 52 65 61 64 ULONGLONG Read
f1e0: 54 72 61 6e 73 66 65 72 43 6f 75 6e 74 3b 0d 0a TransferCount;..
f1f0: 20 20 55 4c 4f 4e 47 4c 4f 4e 47 20 57 72 69 74 ULONGLONG Writ
f200: 65 54 72 61 6e 73 66 65 72 43 6f 75 6e 74 3b 0d eTransferCount;.
f210: 0a 20 20 55 4c 4f 4e 47 4c 4f 4e 47 20 4f 74 68 . ULONGLONG Oth
f220: 65 72 54 72 61 6e 73 66 65 72 43 6f 75 6e 74 3b erTransferCount;
f230: 0d 0a 7d 0d 0a 61 6c 69 61 73 20 5f 49 4f 5f 43 ..}..alias _IO_C
f240: 4f 55 4e 54 45 52 53 20 49 4f 5f 43 4f 55 4e 54 OUNTERS IO_COUNT
f250: 45 52 53 3b 0d 0a 0d 0a 61 6c 69 61 73 20 49 4f ERS;....alias IO
f260: 5f 43 4f 55 4e 54 45 52 53 2a 20 50 49 4f 5f 43 _COUNTERS* PIO_C
f270: 4f 55 4e 54 45 52 53 3b 0d 0a 0d 0a 73 74 72 75 OUNTERS;....stru
f280: 63 74 20 5f 4a 4f 42 4f 42 4a 45 43 54 5f 42 41 ct _JOBOBJECT_BA
f290: 53 49 43 5f 41 43 43 4f 55 4e 54 49 4e 47 5f 49 SIC_ACCOUNTING_I
f2a0: 4e 46 4f 52 4d 41 54 49 4f 4e 20 7b 0d 0a 20 20 NFORMATION {..
f2b0: 4c 41 52 47 45 5f 49 4e 54 45 47 45 52 20 54 6f LARGE_INTEGER To
f2c0: 74 61 6c 55 73 65 72 54 69 6d 65 3b 0d 0a 20 20 talUserTime;..
f2d0: 4c 41 52 47 45 5f 49 4e 54 45 47 45 52 20 54 6f LARGE_INTEGER To
f2e0: 74 61 6c 4b 65 72 6e 65 6c 54 69 6d 65 3b 0d 0a talKernelTime;..
f2f0: 20 20 4c 41 52 47 45 5f 49 4e 54 45 47 45 52 20 LARGE_INTEGER
f300: 54 68 69 73 50 65 72 69 6f 64 54 6f 74 61 6c 55 ThisPeriodTotalU
f310: 73 65 72 54 69 6d 65 3b 0d 0a 20 20 4c 41 52 47 serTime;.. LARG
f320: 45 5f 49 4e 54 45 47 45 52 20 54 68 69 73 50 65 E_INTEGER ThisPe
f330: 72 69 6f 64 54 6f 74 61 6c 4b 65 72 6e 65 6c 54 riodTotalKernelT
f340: 69 6d 65 3b 0d 0a 20 20 44 57 4f 52 44 20 54 6f ime;.. DWORD To
f350: 74 61 6c 50 61 67 65 46 61 75 6c 74 43 6f 75 6e talPageFaultCoun
f360: 74 3b 0d 0a 20 20 44 57 4f 52 44 20 54 6f 74 61 t;.. DWORD Tota
f370: 6c 50 72 6f 63 65 73 73 65 73 3b 0d 0a 20 20 44 lProcesses;.. D
f380: 57 4f 52 44 20 41 63 74 69 76 65 50 72 6f 63 65 WORD ActiveProce
f390: 73 73 65 73 3b 0d 0a 20 20 44 57 4f 52 44 20 54 sses;.. DWORD T
f3a0: 6f 74 61 6c 54 65 72 6d 69 6e 61 74 65 64 50 72 otalTerminatedPr
f3b0: 6f 63 65 73 73 65 73 3b 0d 0a 7d 0d 0a 61 6c 69 ocesses;..}..ali
f3c0: 61 73 20 5f 4a 4f 42 4f 42 4a 45 43 54 5f 42 41 as _JOBOBJECT_BA
f3d0: 53 49 43 5f 41 43 43 4f 55 4e 54 49 4e 47 5f 49 SIC_ACCOUNTING_I
f3e0: 4e 46 4f 52 4d 41 54 49 4f 4e 20 4a 4f 42 4f 42 NFORMATION JOBOB
f3f0: 4a 45 43 54 5f 42 41 53 49 43 5f 41 43 43 4f 55 JECT_BASIC_ACCOU
f400: 4e 54 49 4e 47 5f 49 4e 46 4f 52 4d 41 54 49 4f NTING_INFORMATIO
f410: 4e 3b 0d 0a 61 6c 69 61 73 20 5f 4a 4f 42 4f 42 N;..alias _JOBOB
f420: 4a 45 43 54 5f 42 41 53 49 43 5f 41 43 43 4f 55 JECT_BASIC_ACCOU
f430: 4e 54 49 4e 47 5f 49 4e 46 4f 52 4d 41 54 49 4f NTING_INFORMATIO
f440: 4e 2a 20 50 4a 4f 42 4f 42 4a 45 43 54 5f 42 41 N* PJOBOBJECT_BA
f450: 53 49 43 5f 41 43 43 4f 55 4e 54 49 4e 47 5f 49 SIC_ACCOUNTING_I
f460: 4e 46 4f 52 4d 41 54 49 4f 4e 3b 0d 0a 0d 0a 73 NFORMATION;....s
f470: 74 72 75 63 74 20 5f 4a 4f 42 4f 42 4a 45 43 54 truct _JOBOBJECT
f480: 5f 42 41 53 49 43 5f 4c 49 4d 49 54 5f 49 4e 46 _BASIC_LIMIT_INF
f490: 4f 52 4d 41 54 49 4f 4e 20 7b 0d 0a 20 20 4c 41 ORMATION {.. LA
f4a0: 52 47 45 5f 49 4e 54 45 47 45 52 20 50 65 72 50 RGE_INTEGER PerP
f4b0: 72 6f 63 65 73 73 55 73 65 72 54 69 6d 65 4c 69 rocessUserTimeLi
f4c0: 6d 69 74 3b 0d 0a 20 20 4c 41 52 47 45 5f 49 4e mit;.. LARGE_IN
f4d0: 54 45 47 45 52 20 50 65 72 4a 6f 62 55 73 65 72 TEGER PerJobUser
f4e0: 54 69 6d 65 4c 69 6d 69 74 3b 0d 0a 20 20 44 57 TimeLimit;.. DW
f4f0: 4f 52 44 20 4c 69 6d 69 74 46 6c 61 67 73 3b 0d ORD LimitFlags;.
f500: 0a 20 20 53 49 5a 45 5f 54 20 4d 69 6e 69 6d 75 . SIZE_T Minimu
f510: 6d 57 6f 72 6b 69 6e 67 53 65 74 53 69 7a 65 3b mWorkingSetSize;
f520: 0d 0a 20 20 53 49 5a 45 5f 54 20 4d 61 78 69 6d .. SIZE_T Maxim
f530: 75 6d 57 6f 72 6b 69 6e 67 53 65 74 53 69 7a 65 umWorkingSetSize
f540: 3b 0d 0a 20 20 44 57 4f 52 44 20 41 63 74 69 76 ;.. DWORD Activ
f550: 65 50 72 6f 63 65 73 73 4c 69 6d 69 74 3b 0d 0a eProcessLimit;..
f560: 20 20 55 4c 4f 4e 47 5f 50 54 52 20 41 66 66 69 ULONG_PTR Affi
f570: 6e 69 74 79 3b 0d 0a 20 20 44 57 4f 52 44 20 50 nity;.. DWORD P
f580: 72 69 6f 72 69 74 79 43 6c 61 73 73 3b 0d 0a 20 riorityClass;..
f590: 20 44 57 4f 52 44 20 53 63 68 65 64 75 6c 69 6e DWORD Schedulin
f5a0: 67 43 6c 61 73 73 3b 0d 0a 7d 0d 0a 61 6c 69 61 gClass;..}..alia
f5b0: 73 20 5f 4a 4f 42 4f 42 4a 45 43 54 5f 42 41 53 s _JOBOBJECT_BAS
f5c0: 49 43 5f 4c 49 4d 49 54 5f 49 4e 46 4f 52 4d 41 IC_LIMIT_INFORMA
f5d0: 54 49 4f 4e 20 4a 4f 42 4f 42 4a 45 43 54 5f 42 TION JOBOBJECT_B
f5e0: 41 53 49 43 5f 4c 49 4d 49 54 5f 49 4e 46 4f 52 ASIC_LIMIT_INFOR
f5f0: 4d 41 54 49 4f 4e 3b 0d 0a 61 6c 69 61 73 20 5f MATION;..alias _
f600: 4a 4f 42 4f 42 4a 45 43 54 5f 42 41 53 49 43 5f JOBOBJECT_BASIC_
f610: 4c 49 4d 49 54 5f 49 4e 46 4f 52 4d 41 54 49 4f LIMIT_INFORMATIO
f620: 4e 2a 20 50 4a 4f 42 4f 42 4a 45 43 54 5f 42 41 N* PJOBOBJECT_BA
f630: 53 49 43 5f 4c 49 4d 49 54 5f 49 4e 46 4f 52 4d SIC_LIMIT_INFORM
f640: 41 54 49 4f 4e 3b 0d 0a 0d 0a 73 74 72 75 63 74 ATION;....struct
f650: 20 5f 4a 4f 42 4f 42 4a 45 43 54 5f 45 58 54 45 _JOBOBJECT_EXTE
f660: 4e 44 45 44 5f 4c 49 4d 49 54 5f 49 4e 46 4f 52 NDED_LIMIT_INFOR
f670: 4d 41 54 49 4f 4e 20 7b 0d 0a 20 20 4a 4f 42 4f MATION {.. JOBO
f680: 42 4a 45 43 54 5f 42 41 53 49 43 5f 4c 49 4d 49 BJECT_BASIC_LIMI
f690: 54 5f 49 4e 46 4f 52 4d 41 54 49 4f 4e 20 42 61 T_INFORMATION Ba
f6a0: 73 69 63 4c 69 6d 69 74 49 6e 66 6f 72 6d 61 74 sicLimitInformat
f6b0: 69 6f 6e 3b 0d 0a 20 20 49 4f 5f 43 4f 55 4e 54 ion;.. IO_COUNT
f6c0: 45 52 53 20 49 6f 49 6e 66 6f 3b 0d 0a 20 20 53 ERS IoInfo;.. S
f6d0: 49 5a 45 5f 54 20 50 72 6f 63 65 73 73 4d 65 6d IZE_T ProcessMem
f6e0: 6f 72 79 4c 69 6d 69 74 3b 0d 0a 20 20 53 49 5a oryLimit;.. SIZ
f6f0: 45 5f 54 20 4a 6f 62 4d 65 6d 6f 72 79 4c 69 6d E_T JobMemoryLim
f700: 69 74 3b 0d 0a 20 20 53 49 5a 45 5f 54 20 50 65 it;.. SIZE_T Pe
f710: 61 6b 50 72 6f 63 65 73 73 4d 65 6d 6f 72 79 55 akProcessMemoryU
f720: 73 65 64 3b 0d 0a 20 20 53 49 5a 45 5f 54 20 50 sed;.. SIZE_T P
f730: 65 61 6b 4a 6f 62 4d 65 6d 6f 72 79 55 73 65 64 eakJobMemoryUsed
f740: 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 5f 4a 4f 42 ;..}..alias _JOB
f750: 4f 42 4a 45 43 54 5f 45 58 54 45 4e 44 45 44 5f OBJECT_EXTENDED_
f760: 4c 49 4d 49 54 5f 49 4e 46 4f 52 4d 41 54 49 4f LIMIT_INFORMATIO
f770: 4e 20 4a 4f 42 4f 42 4a 45 43 54 5f 45 58 54 45 N JOBOBJECT_EXTE
f780: 4e 44 45 44 5f 4c 49 4d 49 54 5f 49 4e 46 4f 52 NDED_LIMIT_INFOR
f790: 4d 41 54 49 4f 4e 3b 0d 0a 61 6c 69 61 73 20 5f MATION;..alias _
f7a0: 4a 4f 42 4f 42 4a 45 43 54 5f 45 58 54 45 4e 44 JOBOBJECT_EXTEND
f7b0: 45 44 5f 4c 49 4d 49 54 5f 49 4e 46 4f 52 4d 41 ED_LIMIT_INFORMA
f7c0: 54 49 4f 4e 2a 20 50 4a 4f 42 4f 42 4a 45 43 54 TION* PJOBOBJECT
f7d0: 5f 45 58 54 45 4e 44 45 44 5f 4c 49 4d 49 54 5f _EXTENDED_LIMIT_
f7e0: 49 4e 46 4f 52 4d 41 54 49 4f 4e 3b 0d 0a 0d 0a INFORMATION;....
f7f0: 73 74 72 75 63 74 20 5f 4a 4f 42 4f 42 4a 45 43 struct _JOBOBJEC
f800: 54 5f 42 41 53 49 43 5f 50 52 4f 43 45 53 53 5f T_BASIC_PROCESS_
f810: 49 44 5f 4c 49 53 54 20 7b 0d 0a 20 20 44 57 4f ID_LIST {.. DWO
f820: 52 44 20 4e 75 6d 62 65 72 4f 66 41 73 73 69 67 RD NumberOfAssig
f830: 6e 65 64 50 72 6f 63 65 73 73 65 73 3b 0d 0a 20 nedProcesses;..
f840: 20 44 57 4f 52 44 20 4e 75 6d 62 65 72 4f 66 50 DWORD NumberOfP
f850: 72 6f 63 65 73 73 49 64 73 49 6e 4c 69 73 74 3b rocessIdsInList;
f860: 0d 0a 20 20 55 4c 4f 4e 47 5f 50 54 52 20 50 72 .. ULONG_PTR Pr
f870: 6f 63 65 73 73 49 64 4c 69 73 74 5b 31 5d 3b 0d ocessIdList[1];.
f880: 0a 7d 0d 0a 61 6c 69 61 73 20 5f 4a 4f 42 4f 42 .}..alias _JOBOB
f890: 4a 45 43 54 5f 42 41 53 49 43 5f 50 52 4f 43 45 JECT_BASIC_PROCE
f8a0: 53 53 5f 49 44 5f 4c 49 53 54 20 4a 4f 42 4f 42 SS_ID_LIST JOBOB
f8b0: 4a 45 43 54 5f 42 41 53 49 43 5f 50 52 4f 43 45 JECT_BASIC_PROCE
f8c0: 53 53 5f 49 44 5f 4c 49 53 54 3b 0d 0a 61 6c 69 SS_ID_LIST;..ali
f8d0: 61 73 20 5f 4a 4f 42 4f 42 4a 45 43 54 5f 42 41 as _JOBOBJECT_BA
f8e0: 53 49 43 5f 50 52 4f 43 45 53 53 5f 49 44 5f 4c SIC_PROCESS_ID_L
f8f0: 49 53 54 2a 20 50 4a 4f 42 4f 42 4a 45 43 54 5f IST* PJOBOBJECT_
f900: 42 41 53 49 43 5f 50 52 4f 43 45 53 53 5f 49 44 BASIC_PROCESS_ID
f910: 5f 4c 49 53 54 3b 0d 0a 0d 0a 73 74 72 75 63 74 _LIST;....struct
f920: 20 5f 4a 4f 42 4f 42 4a 45 43 54 5f 42 41 53 49 _JOBOBJECT_BASI
f930: 43 5f 55 49 5f 52 45 53 54 52 49 43 54 49 4f 4e C_UI_RESTRICTION
f940: 53 20 7b 0d 0a 20 20 44 57 4f 52 44 20 55 49 52 S {.. DWORD UIR
f950: 65 73 74 72 69 63 74 69 6f 6e 73 43 6c 61 73 73 estrictionsClass
f960: 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 5f 4a 4f 42 ;..}..alias _JOB
f970: 4f 42 4a 45 43 54 5f 42 41 53 49 43 5f 55 49 5f OBJECT_BASIC_UI_
f980: 52 45 53 54 52 49 43 54 49 4f 4e 53 20 4a 4f 42 RESTRICTIONS JOB
f990: 4f 42 4a 45 43 54 5f 42 41 53 49 43 5f 55 49 5f OBJECT_BASIC_UI_
f9a0: 52 45 53 54 52 49 43 54 49 4f 4e 53 3b 0d 0a 61 RESTRICTIONS;..a
f9b0: 6c 69 61 73 20 5f 4a 4f 42 4f 42 4a 45 43 54 5f lias _JOBOBJECT_
f9c0: 42 41 53 49 43 5f 55 49 5f 52 45 53 54 52 49 43 BASIC_UI_RESTRIC
f9d0: 54 49 4f 4e 53 2a 20 50 4a 4f 42 4f 42 4a 45 43 TIONS* PJOBOBJEC
f9e0: 54 5f 42 41 53 49 43 5f 55 49 5f 52 45 53 54 52 T_BASIC_UI_RESTR
f9f0: 49 43 54 49 4f 4e 53 3b 0d 0a 0d 0a 73 74 72 75 ICTIONS;....stru
fa00: 63 74 20 5f 4a 4f 42 4f 42 4a 45 43 54 5f 53 45 ct _JOBOBJECT_SE
fa10: 43 55 52 49 54 59 5f 4c 49 4d 49 54 5f 49 4e 46 CURITY_LIMIT_INF
fa20: 4f 52 4d 41 54 49 4f 4e 20 7b 0d 0a 20 20 44 57 ORMATION {.. DW
fa30: 4f 52 44 20 53 65 63 75 72 69 74 79 4c 69 6d 69 ORD SecurityLimi
fa40: 74 46 6c 61 67 73 20 3b 0d 0a 20 20 48 41 4e 44 tFlags ;.. HAND
fa50: 4c 45 20 4a 6f 62 54 6f 6b 65 6e 20 3b 0d 0a 20 LE JobToken ;..
fa60: 20 50 54 4f 4b 45 4e 5f 47 52 4f 55 50 53 20 53 PTOKEN_GROUPS S
fa70: 69 64 73 54 6f 44 69 73 61 62 6c 65 20 3b 0d 0a idsToDisable ;..
fa80: 20 20 50 54 4f 4b 45 4e 5f 50 52 49 56 49 4c 45 PTOKEN_PRIVILE
fa90: 47 45 53 20 50 72 69 76 69 6c 65 67 65 73 54 6f GES PrivilegesTo
faa0: 44 65 6c 65 74 65 20 3b 0d 0a 20 20 50 54 4f 4b Delete ;.. PTOK
fab0: 45 4e 5f 47 52 4f 55 50 53 20 52 65 73 74 72 69 EN_GROUPS Restri
fac0: 63 74 65 64 53 69 64 73 20 3b 0d 0a 7d 0d 0a 61 ctedSids ;..}..a
fad0: 6c 69 61 73 20 5f 4a 4f 42 4f 42 4a 45 43 54 5f lias _JOBOBJECT_
fae0: 53 45 43 55 52 49 54 59 5f 4c 49 4d 49 54 5f 49 SECURITY_LIMIT_I
faf0: 4e 46 4f 52 4d 41 54 49 4f 4e 20 4a 4f 42 4f 42 NFORMATION JOBOB
fb00: 4a 45 43 54 5f 53 45 43 55 52 49 54 59 5f 4c 49 JECT_SECURITY_LI
fb10: 4d 49 54 5f 49 4e 46 4f 52 4d 41 54 49 4f 4e 3b MIT_INFORMATION;
fb20: 0d 0a 61 6c 69 61 73 20 5f 4a 4f 42 4f 42 4a 45 ..alias _JOBOBJE
fb30: 43 54 5f 53 45 43 55 52 49 54 59 5f 4c 49 4d 49 CT_SECURITY_LIMI
fb40: 54 5f 49 4e 46 4f 52 4d 41 54 49 4f 4e 2a 20 50 T_INFORMATION* P
fb50: 4a 4f 42 4f 42 4a 45 43 54 5f 53 45 43 55 52 49 JOBOBJECT_SECURI
fb60: 54 59 5f 4c 49 4d 49 54 5f 49 4e 46 4f 52 4d 41 TY_LIMIT_INFORMA
fb70: 54 49 4f 4e 3b 0d 0a 0d 0a 73 74 72 75 63 74 20 TION;....struct
fb80: 5f 4a 4f 42 4f 42 4a 45 43 54 5f 45 4e 44 5f 4f _JOBOBJECT_END_O
fb90: 46 5f 4a 4f 42 5f 54 49 4d 45 5f 49 4e 46 4f 52 F_JOB_TIME_INFOR
fba0: 4d 41 54 49 4f 4e 20 7b 0d 0a 20 20 44 57 4f 52 MATION {.. DWOR
fbb0: 44 20 45 6e 64 4f 66 4a 6f 62 54 69 6d 65 41 63 D EndOfJobTimeAc
fbc0: 74 69 6f 6e 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 tion;..}..alias
fbd0: 5f 4a 4f 42 4f 42 4a 45 43 54 5f 45 4e 44 5f 4f _JOBOBJECT_END_O
fbe0: 46 5f 4a 4f 42 5f 54 49 4d 45 5f 49 4e 46 4f 52 F_JOB_TIME_INFOR
fbf0: 4d 41 54 49 4f 4e 20 4a 4f 42 4f 42 4a 45 43 54 MATION JOBOBJECT
fc00: 5f 45 4e 44 5f 4f 46 5f 4a 4f 42 5f 54 49 4d 45 _END_OF_JOB_TIME
fc10: 5f 49 4e 46 4f 52 4d 41 54 49 4f 4e 3b 0d 0a 61 _INFORMATION;..a
fc20: 6c 69 61 73 20 5f 4a 4f 42 4f 42 4a 45 43 54 5f lias _JOBOBJECT_
fc30: 45 4e 44 5f 4f 46 5f 4a 4f 42 5f 54 49 4d 45 5f END_OF_JOB_TIME_
fc40: 49 4e 46 4f 52 4d 41 54 49 4f 4e 2a 20 50 4a 4f INFORMATION* PJO
fc50: 42 4f 42 4a 45 43 54 5f 45 4e 44 5f 4f 46 5f 4a BOBJECT_END_OF_J
fc60: 4f 42 5f 54 49 4d 45 5f 49 4e 46 4f 52 4d 41 54 OB_TIME_INFORMAT
fc70: 49 4f 4e 3b 0d 0a 0d 0a 73 74 72 75 63 74 20 5f ION;....struct _
fc80: 4a 4f 42 4f 42 4a 45 43 54 5f 41 53 53 4f 43 49 JOBOBJECT_ASSOCI
fc90: 41 54 45 5f 43 4f 4d 50 4c 45 54 49 4f 4e 5f 50 ATE_COMPLETION_P
fca0: 4f 52 54 20 7b 0d 0a 20 20 50 56 4f 49 44 20 43 ORT {.. PVOID C
fcb0: 6f 6d 70 6c 65 74 69 6f 6e 4b 65 79 3b 0d 0a 20 ompletionKey;..
fcc0: 20 48 41 4e 44 4c 45 20 43 6f 6d 70 6c 65 74 69 HANDLE Completi
fcd0: 6f 6e 50 6f 72 74 3b 0d 0a 7d 0d 0a 61 6c 69 61 onPort;..}..alia
fce0: 73 20 5f 4a 4f 42 4f 42 4a 45 43 54 5f 41 53 53 s _JOBOBJECT_ASS
fcf0: 4f 43 49 41 54 45 5f 43 4f 4d 50 4c 45 54 49 4f OCIATE_COMPLETIO
fd00: 4e 5f 50 4f 52 54 20 4a 4f 42 4f 42 4a 45 43 54 N_PORT JOBOBJECT
fd10: 5f 41 53 53 4f 43 49 41 54 45 5f 43 4f 4d 50 4c _ASSOCIATE_COMPL
fd20: 45 54 49 4f 4e 5f 50 4f 52 54 3b 0d 0a 61 6c 69 ETION_PORT;..ali
fd30: 61 73 20 5f 4a 4f 42 4f 42 4a 45 43 54 5f 41 53 as _JOBOBJECT_AS
fd40: 53 4f 43 49 41 54 45 5f 43 4f 4d 50 4c 45 54 49 SOCIATE_COMPLETI
fd50: 4f 4e 5f 50 4f 52 54 2a 20 50 4a 4f 42 4f 42 4a ON_PORT* PJOBOBJ
fd60: 45 43 54 5f 41 53 53 4f 43 49 41 54 45 5f 43 4f ECT_ASSOCIATE_CO
fd70: 4d 50 4c 45 54 49 4f 4e 5f 50 4f 52 54 3b 0d 0a MPLETION_PORT;..
fd80: 0d 0a 73 74 72 75 63 74 20 5f 4a 4f 42 4f 42 4a ..struct _JOBOBJ
fd90: 45 43 54 5f 42 41 53 49 43 5f 41 4e 44 5f 49 4f ECT_BASIC_AND_IO
fda0: 5f 41 43 43 4f 55 4e 54 49 4e 47 5f 49 4e 46 4f _ACCOUNTING_INFO
fdb0: 52 4d 41 54 49 4f 4e 20 7b 0d 0a 20 20 4a 4f 42 RMATION {.. JOB
fdc0: 4f 42 4a 45 43 54 5f 42 41 53 49 43 5f 41 43 43 OBJECT_BASIC_ACC
fdd0: 4f 55 4e 54 49 4e 47 5f 49 4e 46 4f 52 4d 41 54 OUNTING_INFORMAT
fde0: 49 4f 4e 20 42 61 73 69 63 49 6e 66 6f 3b 0d 0a ION BasicInfo;..
fdf0: 20 20 49 4f 5f 43 4f 55 4e 54 45 52 53 20 49 6f IO_COUNTERS Io
fe00: 49 6e 66 6f 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 Info;..}..alias
fe10: 5f 4a 4f 42 4f 42 4a 45 43 54 5f 42 41 53 49 43 _JOBOBJECT_BASIC
fe20: 5f 41 4e 44 5f 49 4f 5f 41 43 43 4f 55 4e 54 49 _AND_IO_ACCOUNTI
fe30: 4e 47 5f 49 4e 46 4f 52 4d 41 54 49 4f 4e 20 4a NG_INFORMATION J
fe40: 4f 42 4f 42 4a 45 43 54 5f 42 41 53 49 43 5f 41 OBOBJECT_BASIC_A
fe50: 4e 44 5f 49 4f 5f 41 43 43 4f 55 4e 54 49 4e 47 ND_IO_ACCOUNTING
fe60: 5f 49 4e 46 4f 52 4d 41 54 49 4f 4e 3b 0d 0a 61 _INFORMATION;..a
fe70: 6c 69 61 73 20 5f 4a 4f 42 4f 42 4a 45 43 54 5f lias _JOBOBJECT_
fe80: 42 41 53 49 43 5f 41 4e 44 5f 49 4f 5f 41 43 43 BASIC_AND_IO_ACC
fe90: 4f 55 4e 54 49 4e 47 5f 49 4e 46 4f 52 4d 41 54 OUNTING_INFORMAT
fea0: 49 4f 4e 2a 20 50 4a 4f 42 4f 42 4a 45 43 54 5f ION* PJOBOBJECT_
feb0: 42 41 53 49 43 5f 41 4e 44 5f 49 4f 5f 41 43 43 BASIC_AND_IO_ACC
fec0: 4f 55 4e 54 49 4e 47 5f 49 4e 46 4f 52 4d 41 54 OUNTING_INFORMAT
fed0: 49 4f 4e 3b 0d 0a 0d 0a 73 74 72 75 63 74 20 5f ION;....struct _
fee0: 4a 4f 42 4f 42 4a 45 43 54 5f 4a 4f 42 53 45 54 JOBOBJECT_JOBSET
fef0: 5f 49 4e 46 4f 52 4d 41 54 49 4f 4e 20 7b 0d 0a _INFORMATION {..
ff00: 20 20 44 57 4f 52 44 20 4d 65 6d 62 65 72 4c 65 DWORD MemberLe
ff10: 76 65 6c 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 5f vel;..}..alias _
ff20: 4a 4f 42 4f 42 4a 45 43 54 5f 4a 4f 42 53 45 54 JOBOBJECT_JOBSET
ff30: 5f 49 4e 46 4f 52 4d 41 54 49 4f 4e 20 4a 4f 42 _INFORMATION JOB
ff40: 4f 42 4a 45 43 54 5f 4a 4f 42 53 45 54 5f 49 4e OBJECT_JOBSET_IN
ff50: 46 4f 52 4d 41 54 49 4f 4e 3b 0d 0a 61 6c 69 61 FORMATION;..alia
ff60: 73 20 5f 4a 4f 42 4f 42 4a 45 43 54 5f 4a 4f 42 s _JOBOBJECT_JOB
ff70: 53 45 54 5f 49 4e 46 4f 52 4d 41 54 49 4f 4e 2a SET_INFORMATION*
ff80: 20 50 4a 4f 42 4f 42 4a 45 43 54 5f 4a 4f 42 53 PJOBOBJECT_JOBS
ff90: 45 54 5f 49 4e 46 4f 52 4d 41 54 49 4f 4e 3b 0d ET_INFORMATION;.
ffa0: 0a 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b ...enum : uint {
ffb0: 20 4a 4f 42 5f 4f 42 4a 45 43 54 5f 54 45 52 4d JOB_OBJECT_TERM
ffc0: 49 4e 41 54 45 5f 41 54 5f 45 4e 44 5f 4f 46 5f INATE_AT_END_OF_
ffd0: 4a 4f 42 20 3d 20 30 20 7d 0d 0a 65 6e 75 6d 20 JOB = 0 }..enum
ffe0: 3a 20 75 69 6e 74 20 7b 20 4a 4f 42 5f 4f 42 4a : uint { JOB_OBJ
fff0: 45 43 54 5f 50 4f 53 54 5f 41 54 5f 45 4e 44 5f ECT_POST_AT_END_
10000 4f 46 5f 4a 4f 42 20 3d 20 31 20 7d 0d 0a 0d 0a OF_JOB = 1 }....
10010 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 4a 4f enum : uint { JO
10020 42 5f 4f 42 4a 45 43 54 5f 4d 53 47 5f 45 4e 44 B_OBJECT_MSG_END
10030 5f 4f 46 5f 4a 4f 42 5f 54 49 4d 45 20 3d 20 31 _OF_JOB_TIME = 1
10040 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 }..enum : uint
10050 7b 20 4a 4f 42 5f 4f 42 4a 45 43 54 5f 4d 53 47 { JOB_OBJECT_MSG
10060 5f 45 4e 44 5f 4f 46 5f 50 52 4f 43 45 53 53 5f _END_OF_PROCESS_
10070 54 49 4d 45 20 3d 20 32 20 7d 0d 0a 65 6e 75 6d TIME = 2 }..enum
10080 20 3a 20 75 69 6e 74 20 7b 20 4a 4f 42 5f 4f 42 : uint { JOB_OB
10090 4a 45 43 54 5f 4d 53 47 5f 41 43 54 49 56 45 5f JECT_MSG_ACTIVE_
100a0 50 52 4f 43 45 53 53 5f 4c 49 4d 49 54 20 3d 20 PROCESS_LIMIT =
100b0 33 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 3 }..enum : uint
100c0 20 7b 20 4a 4f 42 5f 4f 42 4a 45 43 54 5f 4d 53 { JOB_OBJECT_MS
100d0 47 5f 41 43 54 49 56 45 5f 50 52 4f 43 45 53 53 G_ACTIVE_PROCESS
100e0 5f 5a 45 52 4f 20 3d 20 34 20 7d 0d 0a 65 6e 75 _ZERO = 4 }..enu
100f0 6d 20 3a 20 75 69 6e 74 20 7b 20 4a 4f 42 5f 4f m : uint { JOB_O
10100 42 4a 45 43 54 5f 4d 53 47 5f 4e 45 57 5f 50 52 BJECT_MSG_NEW_PR
10110 4f 43 45 53 53 20 3d 20 36 20 7d 0d 0a 65 6e 75 OCESS = 6 }..enu
10120 6d 20 3a 20 75 69 6e 74 20 7b 20 4a 4f 42 5f 4f m : uint { JOB_O
10130 42 4a 45 43 54 5f 4d 53 47 5f 45 58 49 54 5f 50 BJECT_MSG_EXIT_P
10140 52 4f 43 45 53 53 20 3d 20 37 20 7d 0d 0a 65 6e ROCESS = 7 }..en
10150 75 6d 20 3a 20 75 69 6e 74 20 7b 20 4a 4f 42 5f um : uint { JOB_
10160 4f 42 4a 45 43 54 5f 4d 53 47 5f 41 42 4e 4f 52 OBJECT_MSG_ABNOR
10170 4d 41 4c 5f 45 58 49 54 5f 50 52 4f 43 45 53 53 MAL_EXIT_PROCESS
10180 20 3d 20 38 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 = 8 }..enum : u
10190 69 6e 74 20 7b 20 4a 4f 42 5f 4f 42 4a 45 43 54 int { JOB_OBJECT
101a0 5f 4d 53 47 5f 50 52 4f 43 45 53 53 5f 4d 45 4d _MSG_PROCESS_MEM
101b0 4f 52 59 5f 4c 49 4d 49 54 20 3d 20 39 20 7d 0d ORY_LIMIT = 9 }.
101c0 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 4a .enum : uint { J
101d0 4f 42 5f 4f 42 4a 45 43 54 5f 4d 53 47 5f 4a 4f OB_OBJECT_MSG_JO
101e0 42 5f 4d 45 4d 4f 52 59 5f 4c 49 4d 49 54 20 3d B_MEMORY_LIMIT =
101f0 20 31 30 20 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 10 }....enum :
10200 75 69 6e 74 20 7b 20 4a 4f 42 5f 4f 42 4a 45 43 uint { JOB_OBJEC
10210 54 5f 4c 49 4d 49 54 5f 57 4f 52 4b 49 4e 47 53 T_LIMIT_WORKINGS
10220 45 54 20 3d 20 30 78 30 30 30 30 30 30 30 31 20 ET = 0x00000001
10230 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b }..enum : uint {
10240 20 4a 4f 42 5f 4f 42 4a 45 43 54 5f 4c 49 4d 49 JOB_OBJECT_LIMI
10250 54 5f 50 52 4f 43 45 53 53 5f 54 49 4d 45 20 3d T_PROCESS_TIME =
10260 20 30 78 30 30 30 30 30 30 30 32 20 7d 0d 0a 65 0x00000002 }..e
10270 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 4a 4f 42 num : uint { JOB
10280 5f 4f 42 4a 45 43 54 5f 4c 49 4d 49 54 5f 4a 4f _OBJECT_LIMIT_JO
10290 42 5f 54 49 4d 45 20 3d 20 30 78 30 30 30 30 30 B_TIME = 0x00000
102a0 30 30 34 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 004 }..enum : ui
102b0 6e 74 20 7b 20 4a 4f 42 5f 4f 42 4a 45 43 54 5f nt { JOB_OBJECT_
102c0 4c 49 4d 49 54 5f 41 43 54 49 56 45 5f 50 52 4f LIMIT_ACTIVE_PRO
102d0 43 45 53 53 20 3d 20 30 78 30 30 30 30 30 30 30 CESS = 0x0000000
102e0 38 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 8 }..enum : uint
102f0 20 7b 20 4a 4f 42 5f 4f 42 4a 45 43 54 5f 4c 49 { JOB_OBJECT_LI
10300 4d 49 54 5f 41 46 46 49 4e 49 54 59 20 3d 20 30 MIT_AFFINITY = 0
10310 78 30 30 30 30 30 30 31 30 20 7d 0d 0a 65 6e 75 x00000010 }..enu
10320 6d 20 3a 20 75 69 6e 74 20 7b 20 4a 4f 42 5f 4f m : uint { JOB_O
10330 42 4a 45 43 54 5f 4c 49 4d 49 54 5f 50 52 49 4f BJECT_LIMIT_PRIO
10340 52 49 54 59 5f 43 4c 41 53 53 20 3d 20 30 78 30 RITY_CLASS = 0x0
10350 30 30 30 30 30 32 30 20 7d 0d 0a 65 6e 75 6d 20 0000020 }..enum
10360 3a 20 75 69 6e 74 20 7b 20 4a 4f 42 5f 4f 42 4a : uint { JOB_OBJ
10370 45 43 54 5f 4c 49 4d 49 54 5f 50 52 45 53 45 52 ECT_LIMIT_PRESER
10380 56 45 5f 4a 4f 42 5f 54 49 4d 45 20 3d 20 30 78 VE_JOB_TIME = 0x
10390 30 30 30 30 30 30 34 30 20 7d 0d 0a 65 6e 75 6d 00000040 }..enum
103a0 20 3a 20 75 69 6e 74 20 7b 20 4a 4f 42 5f 4f 42 : uint { JOB_OB
103b0 4a 45 43 54 5f 4c 49 4d 49 54 5f 53 43 48 45 44 JECT_LIMIT_SCHED
103c0 55 4c 49 4e 47 5f 43 4c 41 53 53 20 3d 20 30 78 ULING_CLASS = 0x
103d0 30 30 30 30 30 30 38 30 20 7d 0d 0a 0d 0a 65 6e 00000080 }....en
103e0 75 6d 20 3a 20 75 69 6e 74 20 7b 20 4a 4f 42 5f um : uint { JOB_
103f0 4f 42 4a 45 43 54 5f 4c 49 4d 49 54 5f 50 52 4f OBJECT_LIMIT_PRO
10400 43 45 53 53 5f 4d 45 4d 4f 52 59 20 3d 20 30 78 CESS_MEMORY = 0x
10410 30 30 30 30 30 31 30 30 20 7d 0d 0a 65 6e 75 6d 00000100 }..enum
10420 20 3a 20 75 69 6e 74 20 7b 20 4a 4f 42 5f 4f 42 : uint { JOB_OB
10430 4a 45 43 54 5f 4c 49 4d 49 54 5f 4a 4f 42 5f 4d JECT_LIMIT_JOB_M
10440 45 4d 4f 52 59 20 3d 20 30 78 30 30 30 30 30 32 EMORY = 0x000002
10450 30 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 00 }..enum : uin
10460 74 20 7b 20 4a 4f 42 5f 4f 42 4a 45 43 54 5f 4c t { JOB_OBJECT_L
10470 49 4d 49 54 5f 44 49 45 5f 4f 4e 5f 55 4e 48 41 IMIT_DIE_ON_UNHA
10480 4e 44 4c 45 44 5f 45 58 43 45 50 54 49 4f 4e 20 NDLED_EXCEPTION
10490 3d 20 30 78 30 30 30 30 30 34 30 30 20 7d 0d 0a = 0x00000400 }..
104a0 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 4a 4f enum : uint { JO
104b0 42 5f 4f 42 4a 45 43 54 5f 4c 49 4d 49 54 5f 42 B_OBJECT_LIMIT_B
104c0 52 45 41 4b 41 57 41 59 5f 4f 4b 20 3d 20 30 78 REAKAWAY_OK = 0x
104d0 30 30 30 30 30 38 30 30 20 7d 0d 0a 65 6e 75 6d 00000800 }..enum
104e0 20 3a 20 75 69 6e 74 20 7b 20 4a 4f 42 5f 4f 42 : uint { JOB_OB
104f0 4a 45 43 54 5f 4c 49 4d 49 54 5f 53 49 4c 45 4e JECT_LIMIT_SILEN
10500 54 5f 42 52 45 41 4b 41 57 41 59 5f 4f 4b 20 3d T_BREAKAWAY_OK =
10510 20 30 78 30 30 30 30 31 30 30 30 20 7d 0d 0a 65 0x00001000 }..e
10520 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 4a 4f 42 num : uint { JOB
10530 5f 4f 42 4a 45 43 54 5f 4c 49 4d 49 54 5f 4b 49 _OBJECT_LIMIT_KI
10540 4c 4c 5f 4f 4e 5f 4a 4f 42 5f 43 4c 4f 53 45 20 LL_ON_JOB_CLOSE
10550 3d 20 30 78 30 30 30 30 32 30 30 30 20 7d 0d 0a = 0x00002000 }..
10560 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
10570 4a 4f 42 5f 4f 42 4a 45 43 54 5f 4c 49 4d 49 54 JOB_OBJECT_LIMIT
10580 5f 52 45 53 45 52 56 45 44 32 20 3d 20 30 78 30 _RESERVED2 = 0x0
10590 30 30 30 34 30 30 30 20 7d 0d 0a 65 6e 75 6d 20 0004000 }..enum
105a0 3a 20 75 69 6e 74 20 7b 20 4a 4f 42 5f 4f 42 4a : uint { JOB_OBJ
105b0 45 43 54 5f 4c 49 4d 49 54 5f 52 45 53 45 52 56 ECT_LIMIT_RESERV
105c0 45 44 33 20 3d 20 30 78 30 30 30 30 38 30 30 30 ED3 = 0x00008000
105d0 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 }..enum : uint
105e0 7b 20 4a 4f 42 5f 4f 42 4a 45 43 54 5f 4c 49 4d { JOB_OBJECT_LIM
105f0 49 54 5f 52 45 53 45 52 56 45 44 34 20 3d 20 30 IT_RESERVED4 = 0
10600 78 30 30 30 31 30 30 30 30 20 7d 0d 0a 65 6e 75 x00010000 }..enu
10610 6d 20 3a 20 75 69 6e 74 20 7b 20 4a 4f 42 5f 4f m : uint { JOB_O
10620 42 4a 45 43 54 5f 4c 49 4d 49 54 5f 52 45 53 45 BJECT_LIMIT_RESE
10630 52 56 45 44 35 20 3d 20 30 78 30 30 30 32 30 30 RVED5 = 0x000200
10640 30 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 00 }..enum : uin
10650 74 20 7b 20 4a 4f 42 5f 4f 42 4a 45 43 54 5f 4c t { JOB_OBJECT_L
10660 49 4d 49 54 5f 52 45 53 45 52 56 45 44 36 20 3d IMIT_RESERVED6 =
10670 20 30 78 30 30 30 34 30 30 30 30 20 7d 0d 0a 0d 0x00040000 }...
10680 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 4a .enum : uint { J
10690 4f 42 5f 4f 42 4a 45 43 54 5f 4c 49 4d 49 54 5f OB_OBJECT_LIMIT_
106a0 56 41 4c 49 44 5f 46 4c 41 47 53 20 3d 20 30 78 VALID_FLAGS = 0x
106b0 30 30 30 37 66 66 66 66 20 7d 0d 0a 0d 0a 65 6e 0007ffff }....en
106c0 75 6d 20 3a 20 75 69 6e 74 20 7b 20 4a 4f 42 5f um : uint { JOB_
106d0 4f 42 4a 45 43 54 5f 42 41 53 49 43 5f 4c 49 4d OBJECT_BASIC_LIM
106e0 49 54 5f 56 41 4c 49 44 5f 46 4c 41 47 53 20 3d IT_VALID_FLAGS =
106f0 20 30 78 30 30 30 30 30 30 66 66 20 7d 0d 0a 65 0x000000ff }..e
10700 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 4a 4f 42 num : uint { JOB
10710 5f 4f 42 4a 45 43 54 5f 45 58 54 45 4e 44 45 44 _OBJECT_EXTENDED
10720 5f 4c 49 4d 49 54 5f 56 41 4c 49 44 5f 46 4c 41 _LIMIT_VALID_FLA
10730 47 53 20 3d 20 30 78 30 30 30 30 33 66 66 66 20 GS = 0x00003fff
10740 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b }..enum : uint {
10750 20 4a 4f 42 5f 4f 42 4a 45 43 54 5f 52 45 53 45 JOB_OBJECT_RESE
10760 52 56 45 44 5f 4c 49 4d 49 54 5f 56 41 4c 49 44 RVED_LIMIT_VALID
10770 5f 46 4c 41 47 53 20 3d 20 30 78 30 30 30 37 66 _FLAGS = 0x0007f
10780 66 66 66 20 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 fff }....enum :
10790 75 69 6e 74 20 7b 20 4a 4f 42 5f 4f 42 4a 45 43 uint { JOB_OBJEC
107a0 54 5f 55 49 4c 49 4d 49 54 5f 4e 4f 4e 45 20 3d T_UILIMIT_NONE =
107b0 20 30 78 30 30 30 30 30 30 30 30 20 7d 0d 0a 0d 0x00000000 }...
107c0 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 4a .enum : uint { J
107d0 4f 42 5f 4f 42 4a 45 43 54 5f 55 49 4c 49 4d 49 OB_OBJECT_UILIMI
107e0 54 5f 48 41 4e 44 4c 45 53 20 3d 20 30 78 30 30 T_HANDLES = 0x00
107f0 30 30 30 30 30 31 20 7d 0d 0a 65 6e 75 6d 20 3a 000001 }..enum :
10800 20 75 69 6e 74 20 7b 20 4a 4f 42 5f 4f 42 4a 45 uint { JOB_OBJE
10810 43 54 5f 55 49 4c 49 4d 49 54 5f 52 45 41 44 43 CT_UILIMIT_READC
10820 4c 49 50 42 4f 41 52 44 20 3d 20 30 78 30 30 30 LIPBOARD = 0x000
10830 30 30 30 30 32 20 7d 0d 0a 65 6e 75 6d 20 3a 20 00002 }..enum :
10840 75 69 6e 74 20 7b 20 4a 4f 42 5f 4f 42 4a 45 43 uint { JOB_OBJEC
10850 54 5f 55 49 4c 49 4d 49 54 5f 57 52 49 54 45 43 T_UILIMIT_WRITEC
10860 4c 49 50 42 4f 41 52 44 20 3d 20 30 78 30 30 30 LIPBOARD = 0x000
10870 30 30 30 30 34 20 7d 0d 0a 65 6e 75 6d 20 3a 20 00004 }..enum :
10880 75 69 6e 74 20 7b 20 4a 4f 42 5f 4f 42 4a 45 43 uint { JOB_OBJEC
10890 54 5f 55 49 4c 49 4d 49 54 5f 53 59 53 54 45 4d T_UILIMIT_SYSTEM
108a0 50 41 52 41 4d 45 54 45 52 53 20 3d 20 30 78 30 PARAMETERS = 0x0
108b0 30 30 30 30 30 30 38 20 7d 0d 0a 65 6e 75 6d 20 0000008 }..enum
108c0 3a 20 75 69 6e 74 20 7b 20 4a 4f 42 5f 4f 42 4a : uint { JOB_OBJ
108d0 45 43 54 5f 55 49 4c 49 4d 49 54 5f 44 49 53 50 ECT_UILIMIT_DISP
108e0 4c 41 59 53 45 54 54 49 4e 47 53 20 3d 20 30 78 LAYSETTINGS = 0x
108f0 30 30 30 30 30 30 31 30 20 7d 0d 0a 65 6e 75 6d 00000010 }..enum
10900 20 3a 20 75 69 6e 74 20 7b 20 4a 4f 42 5f 4f 42 : uint { JOB_OB
10910 4a 45 43 54 5f 55 49 4c 49 4d 49 54 5f 47 4c 4f JECT_UILIMIT_GLO
10920 42 41 4c 41 54 4f 4d 53 20 3d 20 30 78 30 30 30 BALATOMS = 0x000
10930 30 30 30 32 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 00020 }..enum :
10940 75 69 6e 74 20 7b 20 4a 4f 42 5f 4f 42 4a 45 43 uint { JOB_OBJEC
10950 54 5f 55 49 4c 49 4d 49 54 5f 44 45 53 4b 54 4f T_UILIMIT_DESKTO
10960 50 20 3d 20 30 78 30 30 30 30 30 30 34 30 20 7d P = 0x00000040 }
10970 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
10980 4a 4f 42 5f 4f 42 4a 45 43 54 5f 55 49 4c 49 4d JOB_OBJECT_UILIM
10990 49 54 5f 45 58 49 54 57 49 4e 44 4f 57 53 20 3d IT_EXITWINDOWS =
109a0 20 30 78 30 30 30 30 30 30 38 30 20 7d 0d 0a 0d 0x00000080 }...
109b0 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 4a .enum : uint { J
109c0 4f 42 5f 4f 42 4a 45 43 54 5f 55 49 4c 49 4d 49 OB_OBJECT_UILIMI
109d0 54 5f 41 4c 4c 20 3d 20 30 78 30 30 30 30 30 30 T_ALL = 0x000000
109e0 46 46 20 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 75 FF }....enum : u
109f0 69 6e 74 20 7b 20 4a 4f 42 5f 4f 42 4a 45 43 54 int { JOB_OBJECT
10a00 5f 55 49 5f 56 41 4c 49 44 5f 46 4c 41 47 53 20 _UI_VALID_FLAGS
10a10 3d 20 30 78 30 30 30 30 30 30 46 46 20 7d 0d 0a = 0x000000FF }..
10a20 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
10a30 4a 4f 42 5f 4f 42 4a 45 43 54 5f 53 45 43 55 52 JOB_OBJECT_SECUR
10a40 49 54 59 5f 4e 4f 5f 41 44 4d 49 4e 20 3d 20 30 ITY_NO_ADMIN = 0
10a50 78 30 30 30 30 30 30 30 31 20 7d 0d 0a 65 6e 75 x00000001 }..enu
10a60 6d 20 3a 20 75 69 6e 74 20 7b 20 4a 4f 42 5f 4f m : uint { JOB_O
10a70 42 4a 45 43 54 5f 53 45 43 55 52 49 54 59 5f 52 BJECT_SECURITY_R
10a80 45 53 54 52 49 43 54 45 44 5f 54 4f 4b 45 4e 20 ESTRICTED_TOKEN
10a90 3d 20 30 78 30 30 30 30 30 30 30 32 20 7d 0d 0a = 0x00000002 }..
10aa0 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 4a 4f enum : uint { JO
10ab0 42 5f 4f 42 4a 45 43 54 5f 53 45 43 55 52 49 54 B_OBJECT_SECURIT
10ac0 59 5f 4f 4e 4c 59 5f 54 4f 4b 45 4e 20 3d 20 30 Y_ONLY_TOKEN = 0
10ad0 78 30 30 30 30 30 30 30 34 20 7d 0d 0a 65 6e 75 x00000004 }..enu
10ae0 6d 20 3a 20 75 69 6e 74 20 7b 20 4a 4f 42 5f 4f m : uint { JOB_O
10af0 42 4a 45 43 54 5f 53 45 43 55 52 49 54 59 5f 46 BJECT_SECURITY_F
10b00 49 4c 54 45 52 5f 54 4f 4b 45 4e 53 20 3d 20 30 ILTER_TOKENS = 0
10b10 78 30 30 30 30 30 30 30 38 20 7d 0d 0a 0d 0a 65 x00000008 }....e
10b20 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 4a 4f 42 num : uint { JOB
10b30 5f 4f 42 4a 45 43 54 5f 53 45 43 55 52 49 54 59 _OBJECT_SECURITY
10b40 5f 56 41 4c 49 44 5f 46 4c 41 47 53 20 3d 20 30 _VALID_FLAGS = 0
10b50 78 30 30 30 30 30 30 30 66 20 7d 0d 0a 0d 0a 61 x0000000f }....a
10b60 6c 69 61 73 20 69 6e 74 20 5f 4a 4f 42 4f 42 4a lias int _JOBOBJ
10b70 45 43 54 49 4e 46 4f 43 4c 41 53 53 3b 0d 0a 65 ECTINFOCLASS;..e
10b80 6e 75 6d 20 7b 0d 0a 20 20 4a 6f 62 4f 62 6a 65 num {.. JobObje
10b90 63 74 42 61 73 69 63 41 63 63 6f 75 6e 74 69 6e ctBasicAccountin
10ba0 67 49 6e 66 6f 72 6d 61 74 69 6f 6e 20 3d 20 31 gInformation = 1
10bb0 2c 0d 0a 20 20 4a 6f 62 4f 62 6a 65 63 74 42 61 ,.. JobObjectBa
10bc0 73 69 63 4c 69 6d 69 74 49 6e 66 6f 72 6d 61 74 sicLimitInformat
10bd0 69 6f 6e 2c 0d 0a 20 20 4a 6f 62 4f 62 6a 65 63 ion,.. JobObjec
10be0 74 42 61 73 69 63 50 72 6f 63 65 73 73 49 64 4c tBasicProcessIdL
10bf0 69 73 74 2c 0d 0a 20 20 4a 6f 62 4f 62 6a 65 63 ist,.. JobObjec
10c00 74 42 61 73 69 63 55 49 52 65 73 74 72 69 63 74 tBasicUIRestrict
10c10 69 6f 6e 73 2c 0d 0a 20 20 4a 6f 62 4f 62 6a 65 ions,.. JobObje
10c20 63 74 53 65 63 75 72 69 74 79 4c 69 6d 69 74 49 ctSecurityLimitI
10c30 6e 66 6f 72 6d 61 74 69 6f 6e 2c 0d 0a 20 20 4a nformation,.. J
10c40 6f 62 4f 62 6a 65 63 74 45 6e 64 4f 66 4a 6f 62 obObjectEndOfJob
10c50 54 69 6d 65 49 6e 66 6f 72 6d 61 74 69 6f 6e 2c TimeInformation,
10c60 0d 0a 20 20 4a 6f 62 4f 62 6a 65 63 74 41 73 73 .. JobObjectAss
10c70 6f 63 69 61 74 65 43 6f 6d 70 6c 65 74 69 6f 6e ociateCompletion
10c80 50 6f 72 74 49 6e 66 6f 72 6d 61 74 69 6f 6e 2c PortInformation,
10c90 0d 0a 20 20 4a 6f 62 4f 62 6a 65 63 74 42 61 73 .. JobObjectBas
10ca0 69 63 41 6e 64 49 6f 41 63 63 6f 75 6e 74 69 6e icAndIoAccountin
10cb0 67 49 6e 66 6f 72 6d 61 74 69 6f 6e 2c 0d 0a 20 gInformation,..
10cc0 20 4a 6f 62 4f 62 6a 65 63 74 45 78 74 65 6e 64 JobObjectExtend
10cd0 65 64 4c 69 6d 69 74 49 6e 66 6f 72 6d 61 74 69 edLimitInformati
10ce0 6f 6e 2c 0d 0a 20 20 4a 6f 62 4f 62 6a 65 63 74 on,.. JobObject
10cf0 4a 6f 62 53 65 74 49 6e 66 6f 72 6d 61 74 69 6f JobSetInformatio
10d00 6e 2c 0d 0a 20 20 4d 61 78 4a 6f 62 4f 62 6a 65 n,.. MaxJobObje
10d10 63 74 49 6e 66 6f 43 6c 61 73 73 2c 0d 0a 7d 0d ctInfoClass,..}.
10d20 0a 61 6c 69 61 73 20 5f 4a 4f 42 4f 42 4a 45 43 .alias _JOBOBJEC
10d30 54 49 4e 46 4f 43 4c 41 53 53 20 4a 4f 42 4f 42 TINFOCLASS JOBOB
10d40 4a 45 43 54 49 4e 46 4f 43 4c 41 53 53 3b 0d 0a JECTINFOCLASS;..
10d50 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
10d60 45 56 45 4e 54 5f 4d 4f 44 49 46 59 5f 53 54 41 EVENT_MODIFY_STA
10d70 54 45 20 3d 20 30 78 30 30 30 32 20 7d 0d 0a 65 TE = 0x0002 }..e
10d80 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 45 56 45 num : uint { EVE
10d90 4e 54 5f 41 4c 4c 5f 41 43 43 45 53 53 20 3d 20 NT_ALL_ACCESS =
10da0 53 54 41 4e 44 41 52 44 5f 52 49 47 48 54 53 5f STANDARD_RIGHTS_
10db0 52 45 51 55 49 52 45 44 7c 53 59 4e 43 48 52 4f REQUIRED|SYNCHRO
10dc0 4e 49 5a 45 7c 30 78 33 20 7d 0d 0a 65 6e 75 6d NIZE|0x3 }..enum
10dd0 20 3a 20 75 69 6e 74 20 7b 20 4d 55 54 41 4e 54 : uint { MUTANT
10de0 5f 51 55 45 52 59 5f 53 54 41 54 45 20 3d 20 30 _QUERY_STATE = 0
10df0 78 30 30 30 31 20 7d 0d 0a 0d 0a 65 6e 75 6d 20 x0001 }....enum
10e00 3a 20 75 69 6e 74 20 7b 20 4d 55 54 41 4e 54 5f : uint { MUTANT_
10e10 41 4c 4c 5f 41 43 43 45 53 53 20 3d 20 53 54 41 ALL_ACCESS = STA
10e20 4e 44 41 52 44 5f 52 49 47 48 54 53 5f 52 45 51 NDARD_RIGHTS_REQ
10e30 55 49 52 45 44 7c 53 59 4e 43 48 52 4f 4e 49 5a UIRED|SYNCHRONIZ
10e40 45 7c 20 4d 55 54 41 4e 54 5f 51 55 45 52 59 5f E| MUTANT_QUERY_
10e50 53 54 41 54 45 20 7d 0d 0a 65 6e 75 6d 20 3a 20 STATE }..enum :
10e60 75 69 6e 74 20 7b 20 53 45 4d 41 50 48 4f 52 45 uint { SEMAPHORE
10e70 5f 4d 4f 44 49 46 59 5f 53 54 41 54 45 20 3d 20 _MODIFY_STATE =
10e80 30 78 30 30 30 32 20 7d 0d 0a 65 6e 75 6d 20 3a 0x0002 }..enum :
10e90 20 75 69 6e 74 20 7b 20 53 45 4d 41 50 48 4f 52 uint { SEMAPHOR
10ea0 45 5f 41 4c 4c 5f 41 43 43 45 53 53 20 3d 20 53 E_ALL_ACCESS = S
10eb0 54 41 4e 44 41 52 44 5f 52 49 47 48 54 53 5f 52 TANDARD_RIGHTS_R
10ec0 45 51 55 49 52 45 44 7c 53 59 4e 43 48 52 4f 4e EQUIRED|SYNCHRON
10ed0 49 5a 45 7c 30 78 33 20 7d 0d 0a 0d 0a 65 6e 75 IZE|0x3 }....enu
10ee0 6d 20 3a 20 75 69 6e 74 20 7b 20 54 49 4d 45 52 m : uint { TIMER
10ef0 5f 51 55 45 52 59 5f 53 54 41 54 45 20 3d 20 30 _QUERY_STATE = 0
10f00 78 30 30 30 31 20 7d 0d 0a 65 6e 75 6d 20 3a 20 x0001 }..enum :
10f10 75 69 6e 74 20 7b 20 54 49 4d 45 52 5f 4d 4f 44 uint { TIMER_MOD
10f20 49 46 59 5f 53 54 41 54 45 20 3d 20 30 78 30 30 IFY_STATE = 0x00
10f30 30 32 20 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 75 02 }....enum : u
10f40 69 6e 74 20 7b 20 54 49 4d 45 52 5f 41 4c 4c 5f int { TIMER_ALL_
10f50 41 43 43 45 53 53 20 3d 20 53 54 41 4e 44 41 52 ACCESS = STANDAR
10f60 44 5f 52 49 47 48 54 53 5f 52 45 51 55 49 52 45 D_RIGHTS_REQUIRE
10f70 44 7c 53 59 4e 43 48 52 4f 4e 49 5a 45 7c 20 54 D|SYNCHRONIZE| T
10f80 49 4d 45 52 5f 51 55 45 52 59 5f 53 54 41 54 45 IMER_QUERY_STATE
10f90 7c 54 49 4d 45 52 5f 4d 4f 44 49 46 59 5f 53 54 |TIMER_MODIFY_ST
10fa0 41 54 45 20 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 ATE }....enum :
10fb0 75 69 6e 74 20 7b 20 54 49 4d 45 5f 5a 4f 4e 45 uint { TIME_ZONE
10fc0 5f 49 44 5f 55 4e 4b 4e 4f 57 4e 20 3d 20 30 20 _ID_UNKNOWN = 0
10fd0 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b }..enum : uint {
10fe0 20 54 49 4d 45 5f 5a 4f 4e 45 5f 49 44 5f 53 54 TIME_ZONE_ID_ST
10ff0 41 4e 44 41 52 44 20 3d 20 31 20 7d 0d 0a 65 6e ANDARD = 1 }..en
11000 75 6d 20 3a 20 75 69 6e 74 20 7b 20 54 49 4d 45 um : uint { TIME
11010 5f 5a 4f 4e 45 5f 49 44 5f 44 41 59 4c 49 47 48 _ZONE_ID_DAYLIGH
11020 54 20 3d 20 32 20 7d 0d 0a 0d 0a 65 6e 75 6d 20 T = 2 }....enum
11030 3a 20 75 69 6e 74 20 7b 20 4d 41 58 49 4d 55 4d : uint { MAXIMUM
11040 5f 4e 55 4d 41 5f 4e 4f 44 45 53 20 3d 20 31 36 _NUMA_NODES = 16
11050 20 7d 0d 0a 0d 0a 73 74 72 75 63 74 20 5f 53 59 }....struct _SY
11060 53 54 45 4d 5f 4e 55 4d 41 5f 49 4e 46 4f 52 4d STEM_NUMA_INFORM
11070 41 54 49 4f 4e 20 7b 0d 0a 20 20 44 57 4f 52 44 ATION {.. DWORD
11080 20 48 69 67 68 65 73 74 4e 6f 64 65 4e 75 6d 62 HighestNodeNumb
11090 65 72 3b 0d 0a 20 20 44 57 4f 52 44 20 52 65 73 er;.. DWORD Res
110a0 65 72 76 65 64 3b 0d 0a 75 6e 69 6f 6e 20 7b 0d erved;..union {.
110b0 0a 20 20 55 4c 4f 4e 47 4c 4f 4e 47 20 41 63 74 . ULONGLONG Act
110c0 69 76 65 50 72 6f 63 65 73 73 6f 72 73 41 66 66 iveProcessorsAff
110d0 69 6e 69 74 79 4d 61 73 6b 5b 4d 41 58 49 4d 55 inityMask[MAXIMU
110e0 4d 5f 4e 55 4d 41 5f 4e 4f 44 45 53 5d 3b 0d 0a M_NUMA_NODES];..
110f0 20 20 55 4c 4f 4e 47 4c 4f 4e 47 20 41 76 61 69 ULONGLONG Avai
11100 6c 61 62 6c 65 4d 65 6d 6f 72 79 5b 4d 41 58 49 lableMemory[MAXI
11110 4d 55 4d 5f 4e 55 4d 41 5f 4e 4f 44 45 53 5d 3b MUM_NUMA_NODES];
11120 0d 0a 7d 0d 0a 0d 0a 7d 0d 0a 61 6c 69 61 73 20 ..}....}..alias
11130 5f 53 59 53 54 45 4d 5f 4e 55 4d 41 5f 49 4e 46 _SYSTEM_NUMA_INF
11140 4f 52 4d 41 54 49 4f 4e 20 53 59 53 54 45 4d 5f ORMATION SYSTEM_
11150 4e 55 4d 41 5f 49 4e 46 4f 52 4d 41 54 49 4f 4e NUMA_INFORMATION
11160 3b 0d 0a 61 6c 69 61 73 20 5f 53 59 53 54 45 4d ;..alias _SYSTEM
11170 5f 4e 55 4d 41 5f 49 4e 46 4f 52 4d 41 54 49 4f _NUMA_INFORMATIO
11180 4e 2a 20 50 53 59 53 54 45 4d 5f 4e 55 4d 41 5f N* PSYSTEM_NUMA_
11190 49 4e 46 4f 52 4d 41 54 49 4f 4e 3b 0d 0a 0d 0a INFORMATION;....
111a0 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 50 52 enum : uint { PR
111b0 4f 43 45 53 53 4f 52 5f 49 4e 54 45 4c 5f 33 38 OCESSOR_INTEL_38
111c0 36 20 3d 20 33 38 36 20 7d 0d 0a 65 6e 75 6d 20 6 = 386 }..enum
111d0 3a 20 75 69 6e 74 20 7b 20 50 52 4f 43 45 53 53 : uint { PROCESS
111e0 4f 52 5f 49 4e 54 45 4c 5f 34 38 36 20 3d 20 34 OR_INTEL_486 = 4
111f0 38 36 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 86 }..enum : uin
11200 74 20 7b 20 50 52 4f 43 45 53 53 4f 52 5f 49 4e t { PROCESSOR_IN
11210 54 45 4c 5f 50 45 4e 54 49 55 4d 20 3d 20 35 38 TEL_PENTIUM = 58
11220 36 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 6 }..enum : uint
11230 20 7b 20 50 52 4f 43 45 53 53 4f 52 5f 49 4e 54 { PROCESSOR_INT
11240 45 4c 5f 49 41 36 34 20 3d 20 32 32 30 30 20 7d EL_IA64 = 2200 }
11250 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
11260 50 52 4f 43 45 53 53 4f 52 5f 4d 49 50 53 5f 52 PROCESSOR_MIPS_R
11270 34 30 30 30 20 3d 20 34 30 30 30 20 7d 0d 0a 65 4000 = 4000 }..e
11280 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 50 52 4f num : uint { PRO
11290 43 45 53 53 4f 52 5f 41 4c 50 48 41 5f 32 31 30 CESSOR_ALPHA_210
112a0 36 34 20 3d 20 32 31 30 36 34 20 7d 0d 0a 65 6e 64 = 21064 }..en
112b0 75 6d 20 3a 20 75 69 6e 74 20 7b 20 50 52 4f 43 um : uint { PROC
112c0 45 53 53 4f 52 5f 50 50 43 5f 36 30 31 20 3d 20 ESSOR_PPC_601 =
112d0 36 30 31 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 601 }..enum : ui
112e0 6e 74 20 7b 20 50 52 4f 43 45 53 53 4f 52 5f 50 nt { PROCESSOR_P
112f0 50 43 5f 36 30 33 20 3d 20 36 30 33 20 7d 0d 0a PC_603 = 603 }..
11300 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 50 52 enum : uint { PR
11310 4f 43 45 53 53 4f 52 5f 50 50 43 5f 36 30 34 20 OCESSOR_PPC_604
11320 3d 20 36 30 34 20 7d 0d 0a 65 6e 75 6d 20 3a 20 = 604 }..enum :
11330 75 69 6e 74 20 7b 20 50 52 4f 43 45 53 53 4f 52 uint { PROCESSOR
11340 5f 50 50 43 5f 36 32 30 20 3d 20 36 32 30 20 7d _PPC_620 = 620 }
11350 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
11360 50 52 4f 43 45 53 53 4f 52 5f 48 49 54 41 43 48 PROCESSOR_HITACH
11370 49 5f 53 48 33 20 3d 20 31 30 30 30 33 20 7d 0d I_SH3 = 10003 }.
11380 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 50 .enum : uint { P
11390 52 4f 43 45 53 53 4f 52 5f 48 49 54 41 43 48 49 ROCESSOR_HITACHI
113a0 5f 53 48 33 45 20 3d 20 31 30 30 30 34 20 7d 0d _SH3E = 10004 }.
113b0 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 50 .enum : uint { P
113c0 52 4f 43 45 53 53 4f 52 5f 48 49 54 41 43 48 49 ROCESSOR_HITACHI
113d0 5f 53 48 34 20 3d 20 31 30 30 30 35 20 7d 0d 0a _SH4 = 10005 }..
113e0 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 50 52 enum : uint { PR
113f0 4f 43 45 53 53 4f 52 5f 4d 4f 54 4f 52 4f 4c 41 OCESSOR_MOTOROLA
11400 5f 38 32 31 20 3d 20 38 32 31 20 7d 0d 0a 65 6e _821 = 821 }..en
11410 75 6d 20 3a 20 75 69 6e 74 20 7b 20 50 52 4f 43 um : uint { PROC
11420 45 53 53 4f 52 5f 53 48 78 5f 53 48 33 20 3d 20 ESSOR_SHx_SH3 =
11430 31 30 33 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 103 }..enum : ui
11440 6e 74 20 7b 20 50 52 4f 43 45 53 53 4f 52 5f 53 nt { PROCESSOR_S
11450 48 78 5f 53 48 34 20 3d 20 31 30 34 20 7d 0d 0a Hx_SH4 = 104 }..
11460 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 50 52 enum : uint { PR
11470 4f 43 45 53 53 4f 52 5f 53 54 52 4f 4e 47 41 52 OCESSOR_STRONGAR
11480 4d 20 3d 20 32 35 37 37 20 7d 0d 0a 65 6e 75 6d M = 2577 }..enum
11490 20 3a 20 75 69 6e 74 20 7b 20 50 52 4f 43 45 53 : uint { PROCES
114a0 53 4f 52 5f 41 52 4d 37 32 30 20 3d 20 31 38 32 SOR_ARM720 = 182
114b0 34 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 4 }..enum : uint
114c0 20 7b 20 50 52 4f 43 45 53 53 4f 52 5f 41 52 4d { PROCESSOR_ARM
114d0 38 32 30 20 3d 20 32 30 38 30 20 7d 0d 0a 65 6e 820 = 2080 }..en
114e0 75 6d 20 3a 20 75 69 6e 74 20 7b 20 50 52 4f 43 um : uint { PROC
114f0 45 53 53 4f 52 5f 41 52 4d 39 32 30 20 3d 20 32 ESSOR_ARM920 = 2
11500 33 33 36 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 336 }..enum : ui
11510 6e 74 20 7b 20 50 52 4f 43 45 53 53 4f 52 5f 41 nt { PROCESSOR_A
11520 52 4d 5f 37 54 44 4d 49 20 3d 20 37 30 30 30 31 RM_7TDMI = 70001
11530 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 }..enum : uint
11540 7b 20 50 52 4f 43 45 53 53 4f 52 5f 4f 50 54 49 { PROCESSOR_OPTI
11550 4c 20 3d 20 30 78 34 39 34 66 20 7d 0d 0a 0d 0a L = 0x494f }....
11560 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 50 52 enum : uint { PR
11570 4f 43 45 53 53 4f 52 5f 41 52 43 48 49 54 45 43 OCESSOR_ARCHITEC
11580 54 55 52 45 5f 49 4e 54 45 4c 20 3d 20 30 20 7d TURE_INTEL = 0 }
11590 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
115a0 50 52 4f 43 45 53 53 4f 52 5f 41 52 43 48 49 54 PROCESSOR_ARCHIT
115b0 45 43 54 55 52 45 5f 4d 49 50 53 20 3d 20 31 20 ECTURE_MIPS = 1
115c0 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b }..enum : uint {
115d0 20 50 52 4f 43 45 53 53 4f 52 5f 41 52 43 48 49 PROCESSOR_ARCHI
115e0 54 45 43 54 55 52 45 5f 41 4c 50 48 41 20 3d 20 TECTURE_ALPHA =
115f0 32 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 2 }..enum : uint
11600 20 7b 20 50 52 4f 43 45 53 53 4f 52 5f 41 52 43 { PROCESSOR_ARC
11610 48 49 54 45 43 54 55 52 45 5f 50 50 43 20 3d 20 HITECTURE_PPC =
11620 33 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 3 }..enum : uint
11630 20 7b 20 50 52 4f 43 45 53 53 4f 52 5f 41 52 43 { PROCESSOR_ARC
11640 48 49 54 45 43 54 55 52 45 5f 53 48 58 20 3d 20 HITECTURE_SHX =
11650 34 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 4 }..enum : uint
11660 20 7b 20 50 52 4f 43 45 53 53 4f 52 5f 41 52 43 { PROCESSOR_ARC
11670 48 49 54 45 43 54 55 52 45 5f 41 52 4d 20 3d 20 HITECTURE_ARM =
11680 35 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 5 }..enum : uint
11690 20 7b 20 50 52 4f 43 45 53 53 4f 52 5f 41 52 43 { PROCESSOR_ARC
116a0 48 49 54 45 43 54 55 52 45 5f 49 41 36 34 20 3d HITECTURE_IA64 =
116b0 20 36 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 6 }..enum : uin
116c0 74 20 7b 20 50 52 4f 43 45 53 53 4f 52 5f 41 52 t { PROCESSOR_AR
116d0 43 48 49 54 45 43 54 55 52 45 5f 41 4c 50 48 41 CHITECTURE_ALPHA
116e0 36 34 20 3d 20 37 20 7d 0d 0a 65 6e 75 6d 20 3a 64 = 7 }..enum :
116f0 20 75 69 6e 74 20 7b 20 50 52 4f 43 45 53 53 4f uint { PROCESSO
11700 52 5f 41 52 43 48 49 54 45 43 54 55 52 45 5f 4d R_ARCHITECTURE_M
11710 53 49 4c 20 3d 20 38 20 7d 0d 0a 65 6e 75 6d 20 SIL = 8 }..enum
11720 3a 20 75 69 6e 74 20 7b 20 50 52 4f 43 45 53 53 : uint { PROCESS
11730 4f 52 5f 41 52 43 48 49 54 45 43 54 55 52 45 5f OR_ARCHITECTURE_
11740 41 4d 44 36 34 20 3d 20 39 20 7d 0d 0a 65 6e 75 AMD64 = 9 }..enu
11750 6d 20 3a 20 75 69 6e 74 20 7b 20 50 52 4f 43 45 m : uint { PROCE
11760 53 53 4f 52 5f 41 52 43 48 49 54 45 43 54 55 52 SSOR_ARCHITECTUR
11770 45 5f 49 41 33 32 5f 4f 4e 5f 57 49 4e 36 34 20 E_IA32_ON_WIN64
11780 3d 20 31 30 20 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a = 10 }....enum :
11790 20 75 69 6e 74 20 7b 20 50 52 4f 43 45 53 53 4f uint { PROCESSO
117a0 52 5f 41 52 43 48 49 54 45 43 54 55 52 45 5f 55 R_ARCHITECTURE_U
117b0 4e 4b 4e 4f 57 4e 20 3d 20 30 78 46 46 46 46 20 NKNOWN = 0xFFFF
117c0 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 }....enum : uint
117d0 20 7b 20 50 46 5f 46 4c 4f 41 54 49 4e 47 5f 50 { PF_FLOATING_P
117e0 4f 49 4e 54 5f 50 52 45 43 49 53 49 4f 4e 5f 45 OINT_PRECISION_E
117f0 52 52 41 54 41 20 3d 20 30 20 7d 0d 0a 65 6e 75 RRATA = 0 }..enu
11800 6d 20 3a 20 75 69 6e 74 20 7b 20 50 46 5f 46 4c m : uint { PF_FL
11810 4f 41 54 49 4e 47 5f 50 4f 49 4e 54 5f 45 4d 55 OATING_POINT_EMU
11820 4c 41 54 45 44 20 3d 20 31 20 7d 0d 0a 65 6e 75 LATED = 1 }..enu
11830 6d 20 3a 20 75 69 6e 74 20 7b 20 50 46 5f 43 4f m : uint { PF_CO
11840 4d 50 41 52 45 5f 45 58 43 48 41 4e 47 45 5f 44 MPARE_EXCHANGE_D
11850 4f 55 42 4c 45 20 3d 20 32 20 7d 0d 0a 65 6e 75 OUBLE = 2 }..enu
11860 6d 20 3a 20 75 69 6e 74 20 7b 20 50 46 5f 4d 4d m : uint { PF_MM
11870 58 5f 49 4e 53 54 52 55 43 54 49 4f 4e 53 5f 41 X_INSTRUCTIONS_A
11880 56 41 49 4c 41 42 4c 45 20 3d 20 33 20 7d 0d 0a VAILABLE = 3 }..
11890 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 50 46 enum : uint { PF
118a0 5f 50 50 43 5f 4d 4f 56 45 4d 45 4d 5f 36 34 42 _PPC_MOVEMEM_64B
118b0 49 54 5f 4f 4b 20 3d 20 34 20 7d 0d 0a 65 6e 75 IT_OK = 4 }..enu
118c0 6d 20 3a 20 75 69 6e 74 20 7b 20 50 46 5f 41 4c m : uint { PF_AL
118d0 50 48 41 5f 42 59 54 45 5f 49 4e 53 54 52 55 43 PHA_BYTE_INSTRUC
118e0 54 49 4f 4e 53 20 3d 20 35 20 7d 0d 0a 65 6e 75 TIONS = 5 }..enu
118f0 6d 20 3a 20 75 69 6e 74 20 7b 20 50 46 5f 58 4d m : uint { PF_XM
11900 4d 49 5f 49 4e 53 54 52 55 43 54 49 4f 4e 53 5f MI_INSTRUCTIONS_
11910 41 56 41 49 4c 41 42 4c 45 20 3d 20 36 20 7d 0d AVAILABLE = 6 }.
11920 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 50 .enum : uint { P
11930 46 5f 33 44 4e 4f 57 5f 49 4e 53 54 52 55 43 54 F_3DNOW_INSTRUCT
11940 49 4f 4e 53 5f 41 56 41 49 4c 41 42 4c 45 20 3d IONS_AVAILABLE =
11950 20 37 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 7 }..enum : uin
11960 74 20 7b 20 50 46 5f 52 44 54 53 43 5f 49 4e 53 t { PF_RDTSC_INS
11970 54 52 55 43 54 49 4f 4e 5f 41 56 41 49 4c 41 42 TRUCTION_AVAILAB
11980 4c 45 20 3d 20 38 20 7d 0d 0a 65 6e 75 6d 20 3a LE = 8 }..enum :
11990 20 75 69 6e 74 20 7b 20 50 46 5f 50 41 45 5f 45 uint { PF_PAE_E
119a0 4e 41 42 4c 45 44 20 3d 20 39 20 7d 0d 0a 65 6e NABLED = 9 }..en
119b0 75 6d 20 3a 20 75 69 6e 74 20 7b 20 50 46 5f 58 um : uint { PF_X
119c0 4d 4d 49 36 34 5f 49 4e 53 54 52 55 43 54 49 4f MMI64_INSTRUCTIO
119d0 4e 53 5f 41 56 41 49 4c 41 42 4c 45 20 3d 20 31 NS_AVAILABLE = 1
119e0 30 20 7d 0d 0a 0d 0a 73 74 72 75 63 74 20 5f 4d 0 }....struct _M
119f0 45 4d 4f 52 59 5f 42 41 53 49 43 5f 49 4e 46 4f EMORY_BASIC_INFO
11a00 52 4d 41 54 49 4f 4e 20 7b 0d 0a 20 20 50 56 4f RMATION {.. PVO
11a10 49 44 20 42 61 73 65 41 64 64 72 65 73 73 3b 0d ID BaseAddress;.
11a20 0a 20 20 50 56 4f 49 44 20 41 6c 6c 6f 63 61 74 . PVOID Allocat
11a30 69 6f 6e 42 61 73 65 3b 0d 0a 20 20 44 57 4f 52 ionBase;.. DWOR
11a40 44 20 41 6c 6c 6f 63 61 74 69 6f 6e 50 72 6f 74 D AllocationProt
11a50 65 63 74 3b 0d 0a 20 20 53 49 5a 45 5f 54 20 52 ect;.. SIZE_T R
11a60 65 67 69 6f 6e 53 69 7a 65 3b 0d 0a 20 20 44 57 egionSize;.. DW
11a70 4f 52 44 20 53 74 61 74 65 3b 0d 0a 20 20 44 57 ORD State;.. DW
11a80 4f 52 44 20 50 72 6f 74 65 63 74 3b 0d 0a 20 20 ORD Protect;..
11a90 44 57 4f 52 44 20 54 79 70 65 3b 0d 0a 7d 0d 0a DWORD Type;..}..
11aa0 61 6c 69 61 73 20 5f 4d 45 4d 4f 52 59 5f 42 41 alias _MEMORY_BA
11ab0 53 49 43 5f 49 4e 46 4f 52 4d 41 54 49 4f 4e 20 SIC_INFORMATION
11ac0 4d 45 4d 4f 52 59 5f 42 41 53 49 43 5f 49 4e 46 MEMORY_BASIC_INF
11ad0 4f 52 4d 41 54 49 4f 4e 3b 0d 0a 61 6c 69 61 73 ORMATION;..alias
11ae0 20 5f 4d 45 4d 4f 52 59 5f 42 41 53 49 43 5f 49 _MEMORY_BASIC_I
11af0 4e 46 4f 52 4d 41 54 49 4f 4e 2a 20 50 4d 45 4d NFORMATION* PMEM
11b00 4f 52 59 5f 42 41 53 49 43 5f 49 4e 46 4f 52 4d ORY_BASIC_INFORM
11b10 41 54 49 4f 4e 3b 0d 0a 0d 0a 73 74 72 75 63 74 ATION;....struct
11b20 20 5f 4d 45 4d 4f 52 59 5f 42 41 53 49 43 5f 49 _MEMORY_BASIC_I
11b30 4e 46 4f 52 4d 41 54 49 4f 4e 33 32 20 7b 0d 0a NFORMATION32 {..
11b40 20 20 44 57 4f 52 44 20 42 61 73 65 41 64 64 72 DWORD BaseAddr
11b50 65 73 73 3b 0d 0a 20 20 44 57 4f 52 44 20 41 6c ess;.. DWORD Al
11b60 6c 6f 63 61 74 69 6f 6e 42 61 73 65 3b 0d 0a 20 locationBase;..
11b70 20 44 57 4f 52 44 20 41 6c 6c 6f 63 61 74 69 6f DWORD Allocatio
11b80 6e 50 72 6f 74 65 63 74 3b 0d 0a 20 20 44 57 4f nProtect;.. DWO
11b90 52 44 20 52 65 67 69 6f 6e 53 69 7a 65 3b 0d 0a RD RegionSize;..
11ba0 20 20 44 57 4f 52 44 20 53 74 61 74 65 3b 0d 0a DWORD State;..
11bb0 20 20 44 57 4f 52 44 20 50 72 6f 74 65 63 74 3b DWORD Protect;
11bc0 0d 0a 20 20 44 57 4f 52 44 20 54 79 70 65 3b 0d .. DWORD Type;.
11bd0 0a 7d 0d 0a 61 6c 69 61 73 20 5f 4d 45 4d 4f 52 .}..alias _MEMOR
11be0 59 5f 42 41 53 49 43 5f 49 4e 46 4f 52 4d 41 54 Y_BASIC_INFORMAT
11bf0 49 4f 4e 33 32 20 4d 45 4d 4f 52 59 5f 42 41 53 ION32 MEMORY_BAS
11c00 49 43 5f 49 4e 46 4f 52 4d 41 54 49 4f 4e 33 32 IC_INFORMATION32
11c10 3b 0d 0a 61 6c 69 61 73 20 5f 4d 45 4d 4f 52 59 ;..alias _MEMORY
11c20 5f 42 41 53 49 43 5f 49 4e 46 4f 52 4d 41 54 49 _BASIC_INFORMATI
11c30 4f 4e 33 32 2a 20 50 4d 45 4d 4f 52 59 5f 42 41 ON32* PMEMORY_BA
11c40 53 49 43 5f 49 4e 46 4f 52 4d 41 54 49 4f 4e 33 SIC_INFORMATION3
11c50 32 3b 0d 0a 0d 0a 73 74 72 75 63 74 20 5f 4d 45 2;....struct _ME
11c60 4d 4f 52 59 5f 42 41 53 49 43 5f 49 4e 46 4f 52 MORY_BASIC_INFOR
11c70 4d 41 54 49 4f 4e 36 34 20 7b 0d 0a 20 20 55 4c MATION64 {.. UL
11c80 4f 4e 47 4c 4f 4e 47 20 42 61 73 65 41 64 64 72 ONGLONG BaseAddr
11c90 65 73 73 3b 0d 0a 20 20 55 4c 4f 4e 47 4c 4f 4e ess;.. ULONGLON
11ca0 47 20 41 6c 6c 6f 63 61 74 69 6f 6e 42 61 73 65 G AllocationBase
11cb0 3b 0d 0a 20 20 44 57 4f 52 44 20 41 6c 6c 6f 63 ;.. DWORD Alloc
11cc0 61 74 69 6f 6e 50 72 6f 74 65 63 74 3b 0d 0a 20 ationProtect;..
11cd0 20 44 57 4f 52 44 20 5f 5f 61 6c 69 67 6e 6d 65 DWORD __alignme
11ce0 6e 74 31 3b 0d 0a 20 20 55 4c 4f 4e 47 4c 4f 4e nt1;.. ULONGLON
11cf0 47 20 52 65 67 69 6f 6e 53 69 7a 65 3b 0d 0a 20 G RegionSize;..
11d00 20 44 57 4f 52 44 20 53 74 61 74 65 3b 0d 0a 20 DWORD State;..
11d10 20 44 57 4f 52 44 20 50 72 6f 74 65 63 74 3b 0d DWORD Protect;.
11d20 0a 20 20 44 57 4f 52 44 20 54 79 70 65 3b 0d 0a . DWORD Type;..
11d30 20 20 44 57 4f 52 44 20 5f 5f 61 6c 69 67 6e 6d DWORD __alignm
11d40 65 6e 74 32 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 ent2;..}..alias
11d50 5f 4d 45 4d 4f 52 59 5f 42 41 53 49 43 5f 49 4e _MEMORY_BASIC_IN
11d60 46 4f 52 4d 41 54 49 4f 4e 36 34 20 4d 45 4d 4f FORMATION64 MEMO
11d70 52 59 5f 42 41 53 49 43 5f 49 4e 46 4f 52 4d 41 RY_BASIC_INFORMA
11d80 54 49 4f 4e 36 34 3b 0d 0a 61 6c 69 61 73 20 5f TION64;..alias _
11d90 4d 45 4d 4f 52 59 5f 42 41 53 49 43 5f 49 4e 46 MEMORY_BASIC_INF
11da0 4f 52 4d 41 54 49 4f 4e 36 34 2a 20 50 4d 45 4d ORMATION64* PMEM
11db0 4f 52 59 5f 42 41 53 49 43 5f 49 4e 46 4f 52 4d ORY_BASIC_INFORM
11dc0 41 54 49 4f 4e 36 34 3b 0d 0a 0d 0a 65 6e 75 6d ATION64;....enum
11dd0 20 3a 20 75 69 6e 74 20 7b 20 53 45 43 54 49 4f : uint { SECTIO
11de0 4e 5f 51 55 45 52 59 20 3d 20 30 78 30 30 30 31 N_QUERY = 0x0001
11df0 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 }..enum : uint
11e00 7b 20 53 45 43 54 49 4f 4e 5f 4d 41 50 5f 57 52 { SECTION_MAP_WR
11e10 49 54 45 20 3d 20 30 78 30 30 30 32 20 7d 0d 0a ITE = 0x0002 }..
11e20 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 53 45 enum : uint { SE
11e30 43 54 49 4f 4e 5f 4d 41 50 5f 52 45 41 44 20 3d CTION_MAP_READ =
11e40 20 30 78 30 30 30 34 20 7d 0d 0a 65 6e 75 6d 20 0x0004 }..enum
11e50 3a 20 75 69 6e 74 20 7b 20 53 45 43 54 49 4f 4e : uint { SECTION
11e60 5f 4d 41 50 5f 45 58 45 43 55 54 45 20 3d 20 30 _MAP_EXECUTE = 0
11e70 78 30 30 30 38 20 7d 0d 0a 65 6e 75 6d 20 3a 20 x0008 }..enum :
11e80 75 69 6e 74 20 7b 20 53 45 43 54 49 4f 4e 5f 45 uint { SECTION_E
11e90 58 54 45 4e 44 5f 53 49 5a 45 20 3d 20 30 78 30 XTEND_SIZE = 0x0
11ea0 30 31 30 20 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 010 }....enum :
11eb0 75 69 6e 74 20 7b 20 53 45 43 54 49 4f 4e 5f 41 uint { SECTION_A
11ec0 4c 4c 5f 41 43 43 45 53 53 20 3d 20 53 54 41 4e LL_ACCESS = STAN
11ed0 44 41 52 44 5f 52 49 47 48 54 53 5f 52 45 51 55 DARD_RIGHTS_REQU
11ee0 49 52 45 44 7c 53 45 43 54 49 4f 4e 5f 51 55 45 IRED|SECTION_QUE
11ef0 52 59 7c 20 53 45 43 54 49 4f 4e 5f 4d 41 50 5f RY| SECTION_MAP_
11f00 57 52 49 54 45 20 7c 20 53 45 43 54 49 4f 4e 5f WRITE | SECTION_
11f10 4d 41 50 5f 52 45 41 44 20 7c 20 53 45 43 54 49 MAP_READ | SECTI
11f20 4f 4e 5f 4d 41 50 5f 45 58 45 43 55 54 45 20 7c ON_MAP_EXECUTE |
11f30 20 53 45 43 54 49 4f 4e 5f 45 58 54 45 4e 44 5f SECTION_EXTEND_
11f40 53 49 5a 45 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 SIZE }..enum : u
11f50 69 6e 74 20 7b 20 50 41 47 45 5f 4e 4f 41 43 43 int { PAGE_NOACC
11f60 45 53 53 20 3d 20 30 78 30 31 20 7d 0d 0a 65 6e ESS = 0x01 }..en
11f70 75 6d 20 3a 20 75 69 6e 74 20 7b 20 50 41 47 45 um : uint { PAGE
11f80 5f 52 45 41 44 4f 4e 4c 59 20 3d 20 30 78 30 32 _READONLY = 0x02
11f90 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 }..enum : uint
11fa0 7b 20 50 41 47 45 5f 52 45 41 44 57 52 49 54 45 { PAGE_READWRITE
11fb0 20 3d 20 30 78 30 34 20 7d 0d 0a 65 6e 75 6d 20 = 0x04 }..enum
11fc0 3a 20 75 69 6e 74 20 7b 20 50 41 47 45 5f 57 52 : uint { PAGE_WR
11fd0 49 54 45 43 4f 50 59 20 3d 20 30 78 30 38 20 7d ITECOPY = 0x08 }
11fe0 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
11ff0 50 41 47 45 5f 45 58 45 43 55 54 45 20 3d 20 30 PAGE_EXECUTE = 0
12000 78 31 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 x10 }..enum : ui
12010 6e 74 20 7b 20 50 41 47 45 5f 45 58 45 43 55 54 nt { PAGE_EXECUT
12020 45 5f 52 45 41 44 20 3d 20 30 78 32 30 20 7d 0d E_READ = 0x20 }.
12030 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 50 .enum : uint { P
12040 41 47 45 5f 45 58 45 43 55 54 45 5f 52 45 41 44 AGE_EXECUTE_READ
12050 57 52 49 54 45 20 3d 20 30 78 34 30 20 7d 0d 0a WRITE = 0x40 }..
12060 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 50 41 enum : uint { PA
12070 47 45 5f 45 58 45 43 55 54 45 5f 57 52 49 54 45 GE_EXECUTE_WRITE
12080 43 4f 50 59 20 3d 20 30 78 38 30 20 7d 0d 0a 65 COPY = 0x80 }..e
12090 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 50 41 47 num : uint { PAG
120a0 45 5f 47 55 41 52 44 20 3d 20 30 78 31 30 30 20 E_GUARD = 0x100
120b0 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b }..enum : uint {
120c0 20 50 41 47 45 5f 4e 4f 43 41 43 48 45 20 3d 20 PAGE_NOCACHE =
120d0 30 78 32 30 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 0x200 }..enum :
120e0 75 69 6e 74 20 7b 20 50 41 47 45 5f 57 52 49 54 uint { PAGE_WRIT
120f0 45 43 4f 4d 42 49 4e 45 20 3d 20 30 78 34 30 30 ECOMBINE = 0x400
12100 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 }..enum : uint
12110 7b 20 4d 45 4d 5f 43 4f 4d 4d 49 54 20 3d 20 30 { MEM_COMMIT = 0
12120 78 31 30 30 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 x1000 }..enum :
12130 75 69 6e 74 20 7b 20 4d 45 4d 5f 52 45 53 45 52 uint { MEM_RESER
12140 56 45 20 3d 20 30 78 32 30 30 30 20 7d 0d 0a 65 VE = 0x2000 }..e
12150 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 4d 45 4d num : uint { MEM
12160 5f 44 45 43 4f 4d 4d 49 54 20 3d 20 30 78 34 30 _DECOMMIT = 0x40
12170 30 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 00 }..enum : uin
12180 74 20 7b 20 4d 45 4d 5f 52 45 4c 45 41 53 45 20 t { MEM_RELEASE
12190 3d 20 30 78 38 30 30 30 20 7d 0d 0a 65 6e 75 6d = 0x8000 }..enum
121a0 20 3a 20 75 69 6e 74 20 7b 20 4d 45 4d 5f 46 52 : uint { MEM_FR
121b0 45 45 20 3d 20 30 78 31 30 30 30 30 20 7d 0d 0a EE = 0x10000 }..
121c0 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 4d 45 enum : uint { ME
121d0 4d 5f 50 52 49 56 41 54 45 20 3d 20 30 78 32 30 M_PRIVATE = 0x20
121e0 30 30 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 000 }..enum : ui
121f0 6e 74 20 7b 20 4d 45 4d 5f 4d 41 50 50 45 44 20 nt { MEM_MAPPED
12200 3d 20 30 78 34 30 30 30 30 20 7d 0d 0a 65 6e 75 = 0x40000 }..enu
12210 6d 20 3a 20 75 69 6e 74 20 7b 20 4d 45 4d 5f 52 m : uint { MEM_R
12220 45 53 45 54 20 3d 20 30 78 38 30 30 30 30 20 7d ESET = 0x80000 }
12230 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
12240 4d 45 4d 5f 54 4f 50 5f 44 4f 57 4e 20 3d 20 30 MEM_TOP_DOWN = 0
12250 78 31 30 30 30 30 30 20 7d 0d 0a 65 6e 75 6d 20 x100000 }..enum
12260 3a 20 75 69 6e 74 20 7b 20 4d 45 4d 5f 57 52 49 : uint { MEM_WRI
12270 54 45 5f 57 41 54 43 48 20 3d 20 30 78 32 30 30 TE_WATCH = 0x200
12280 30 30 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 000 }..enum : ui
12290 6e 74 20 7b 20 4d 45 4d 5f 50 48 59 53 49 43 41 nt { MEM_PHYSICA
122a0 4c 20 3d 20 30 78 34 30 30 30 30 30 20 7d 0d 0a L = 0x400000 }..
122b0 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 4d 45 enum : uint { ME
122c0 4d 5f 34 4d 42 5f 50 41 47 45 53 20 3d 20 30 78 M_4MB_PAGES = 0x
122d0 38 30 30 30 30 30 30 30 20 7d 0d 0a 65 6e 75 6d 80000000 }..enum
122e0 20 3a 20 75 69 6e 74 20 7b 20 53 45 43 5f 46 49 : uint { SEC_FI
122f0 4c 45 20 3d 20 30 78 38 30 30 30 30 30 20 7d 0d LE = 0x800000 }.
12300 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 53 .enum : uint { S
12310 45 43 5f 49 4d 41 47 45 20 3d 20 30 78 31 30 30 EC_IMAGE = 0x100
12320 30 30 30 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 0000 }..enum : u
12330 69 6e 74 20 7b 20 53 45 43 5f 52 45 53 45 52 56 int { SEC_RESERV
12340 45 20 3d 20 30 78 34 30 30 30 30 30 30 20 7d 0d E = 0x4000000 }.
12350 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 53 .enum : uint { S
12360 45 43 5f 43 4f 4d 4d 49 54 20 3d 20 30 78 38 30 EC_COMMIT = 0x80
12370 30 30 30 30 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 00000 }..enum :
12380 75 69 6e 74 20 7b 20 53 45 43 5f 4e 4f 43 41 43 uint { SEC_NOCAC
12390 48 45 20 3d 20 30 78 31 30 30 30 30 30 30 30 20 HE = 0x10000000
123a0 7d 0d 0a 61 6c 69 61 73 20 53 45 43 5f 49 4d 41 }..alias SEC_IMA
123b0 47 45 20 4d 45 4d 5f 49 4d 41 47 45 3b 0d 0a 65 GE MEM_IMAGE;..e
123c0 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 57 52 49 num : uint { WRI
123d0 54 45 5f 57 41 54 43 48 5f 46 4c 41 47 5f 52 45 TE_WATCH_FLAG_RE
123e0 53 45 54 20 3d 20 30 78 30 31 20 7d 0d 0a 0d 0a SET = 0x01 }....
123f0 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 46 49 enum : uint { FI
12400 4c 45 5f 52 45 41 44 5f 44 41 54 41 20 3d 20 30 LE_READ_DATA = 0
12410 78 30 30 30 31 20 7d 0d 0a 65 6e 75 6d 20 3a 20 x0001 }..enum :
12420 75 69 6e 74 20 7b 20 46 49 4c 45 5f 4c 49 53 54 uint { FILE_LIST
12430 5f 44 49 52 45 43 54 4f 52 59 20 3d 20 30 78 30 _DIRECTORY = 0x0
12440 30 30 31 20 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 001 }....enum :
12450 75 69 6e 74 20 7b 20 46 49 4c 45 5f 57 52 49 54 uint { FILE_WRIT
12460 45 5f 44 41 54 41 20 3d 20 30 78 30 30 30 32 20 E_DATA = 0x0002
12470 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b }..enum : uint {
12480 20 46 49 4c 45 5f 41 44 44 5f 46 49 4c 45 20 3d FILE_ADD_FILE =
12490 20 30 78 30 30 30 32 20 7d 0d 0a 0d 0a 65 6e 75 0x0002 }....enu
124a0 6d 20 3a 20 75 69 6e 74 20 7b 20 46 49 4c 45 5f m : uint { FILE_
124b0 41 50 50 45 4e 44 5f 44 41 54 41 20 3d 20 30 78 APPEND_DATA = 0x
124c0 30 30 30 34 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 0004 }..enum : u
124d0 69 6e 74 20 7b 20 46 49 4c 45 5f 41 44 44 5f 53 int { FILE_ADD_S
124e0 55 42 44 49 52 45 43 54 4f 52 59 20 3d 20 30 78 UBDIRECTORY = 0x
124f0 30 30 30 34 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 0004 }..enum : u
12500 69 6e 74 20 7b 20 46 49 4c 45 5f 43 52 45 41 54 int { FILE_CREAT
12510 45 5f 50 49 50 45 5f 49 4e 53 54 41 4e 43 45 20 E_PIPE_INSTANCE
12520 3d 20 30 78 30 30 30 34 20 7d 0d 0a 0d 0a 65 6e = 0x0004 }....en
12530 75 6d 20 3a 20 75 69 6e 74 20 7b 20 46 49 4c 45 um : uint { FILE
12540 5f 52 45 41 44 5f 45 41 20 3d 20 30 78 30 30 30 _READ_EA = 0x000
12550 38 20 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 75 69 8 }....enum : ui
12560 6e 74 20 7b 20 46 49 4c 45 5f 57 52 49 54 45 5f nt { FILE_WRITE_
12570 45 41 20 3d 20 30 78 30 30 31 30 20 7d 0d 0a 0d EA = 0x0010 }...
12580 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 46 .enum : uint { F
12590 49 4c 45 5f 45 58 45 43 55 54 45 20 3d 20 30 78 ILE_EXECUTE = 0x
125a0 30 30 32 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 0020 }..enum : u
125b0 69 6e 74 20 7b 20 46 49 4c 45 5f 54 52 41 56 45 int { FILE_TRAVE
125c0 52 53 45 20 3d 20 30 78 30 30 32 30 20 7d 0d 0a RSE = 0x0020 }..
125d0 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
125e0 46 49 4c 45 5f 44 45 4c 45 54 45 5f 43 48 49 4c FILE_DELETE_CHIL
125f0 44 20 3d 20 30 78 30 30 34 30 20 7d 0d 0a 0d 0a D = 0x0040 }....
12600 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 46 49 enum : uint { FI
12610 4c 45 5f 52 45 41 44 5f 41 54 54 52 49 42 55 54 LE_READ_ATTRIBUT
12620 45 53 20 3d 20 30 78 30 30 38 30 20 7d 0d 0a 0d ES = 0x0080 }...
12630 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 46 .enum : uint { F
12640 49 4c 45 5f 57 52 49 54 45 5f 41 54 54 52 49 42 ILE_WRITE_ATTRIB
12650 55 54 45 53 20 3d 20 30 78 30 31 30 30 20 7d 0d UTES = 0x0100 }.
12660 0a 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b ...enum : uint {
12670 20 46 49 4c 45 5f 41 4c 4c 5f 41 43 43 45 53 53 FILE_ALL_ACCESS
12680 20 3d 20 53 54 41 4e 44 41 52 44 5f 52 49 47 48 = STANDARD_RIGH
12690 54 53 5f 52 45 51 55 49 52 45 44 20 7c 20 53 59 TS_REQUIRED | SY
126a0 4e 43 48 52 4f 4e 49 5a 45 20 7c 20 30 78 31 46 NCHRONIZE | 0x1F
126b0 46 20 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 75 69 F }....enum : ui
126c0 6e 74 20 7b 20 46 49 4c 45 5f 47 45 4e 45 52 49 nt { FILE_GENERI
126d0 43 5f 52 45 41 44 20 3d 20 53 54 41 4e 44 41 52 C_READ = STANDAR
126e0 44 5f 52 49 47 48 54 53 5f 52 45 41 44 20 7c 20 D_RIGHTS_READ |
126f0 46 49 4c 45 5f 52 45 41 44 5f 44 41 54 41 20 7c FILE_READ_DATA |
12700 20 46 49 4c 45 5f 52 45 41 44 5f 41 54 54 52 49 FILE_READ_ATTRI
12710 42 55 54 45 53 20 7c 20 46 49 4c 45 5f 52 45 41 BUTES | FILE_REA
12720 44 5f 45 41 20 7c 20 53 59 4e 43 48 52 4f 4e 49 D_EA | SYNCHRONI
12730 5a 45 20 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 75 ZE }....enum : u
12740 69 6e 74 20 7b 20 46 49 4c 45 5f 47 45 4e 45 52 int { FILE_GENER
12750 49 43 5f 57 52 49 54 45 20 3d 20 53 54 41 4e 44 IC_WRITE = STAND
12760 41 52 44 5f 52 49 47 48 54 53 5f 57 52 49 54 45 ARD_RIGHTS_WRITE
12770 20 7c 20 46 49 4c 45 5f 57 52 49 54 45 5f 44 41 | FILE_WRITE_DA
12780 54 41 20 7c 20 46 49 4c 45 5f 57 52 49 54 45 5f TA | FILE_WRITE_
12790 41 54 54 52 49 42 55 54 45 53 20 7c 20 46 49 4c ATTRIBUTES | FIL
127a0 45 5f 57 52 49 54 45 5f 45 41 20 7c 20 46 49 4c E_WRITE_EA | FIL
127b0 45 5f 41 50 50 45 4e 44 5f 44 41 54 41 20 7c 20 E_APPEND_DATA |
127c0 53 59 4e 43 48 52 4f 4e 49 5a 45 20 7d 0d 0a 0d SYNCHRONIZE }...
127d0 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 46 .enum : uint { F
127e0 49 4c 45 5f 47 45 4e 45 52 49 43 5f 45 58 45 43 ILE_GENERIC_EXEC
127f0 55 54 45 20 3d 20 53 54 41 4e 44 41 52 44 5f 52 UTE = STANDARD_R
12800 49 47 48 54 53 5f 45 58 45 43 55 54 45 20 7c 20 IGHTS_EXECUTE |
12810 46 49 4c 45 5f 52 45 41 44 5f 41 54 54 52 49 42 FILE_READ_ATTRIB
12820 55 54 45 53 20 7c 20 46 49 4c 45 5f 45 58 45 43 UTES | FILE_EXEC
12830 55 54 45 20 7c 20 53 59 4e 43 48 52 4f 4e 49 5a UTE | SYNCHRONIZ
12840 45 20 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 75 69 E }....enum : ui
12850 6e 74 20 7b 20 46 49 4c 45 5f 53 48 41 52 45 5f nt { FILE_SHARE_
12860 52 45 41 44 20 3d 20 30 78 30 30 30 30 30 30 30 READ = 0x0000000
12870 31 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 1 }..enum : uint
12880 20 7b 20 46 49 4c 45 5f 53 48 41 52 45 5f 57 52 { FILE_SHARE_WR
12890 49 54 45 20 3d 20 30 78 30 30 30 30 30 30 30 32 ITE = 0x00000002
128a0 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 }..enum : uint
128b0 7b 20 46 49 4c 45 5f 53 48 41 52 45 5f 44 45 4c { FILE_SHARE_DEL
128c0 45 54 45 20 3d 20 30 78 30 30 30 30 30 30 30 34 ETE = 0x00000004
128d0 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 }..enum : uint
128e0 7b 20 46 49 4c 45 5f 41 54 54 52 49 42 55 54 45 { FILE_ATTRIBUTE
128f0 5f 52 45 41 44 4f 4e 4c 59 20 3d 20 30 78 30 30 _READONLY = 0x00
12900 30 30 30 30 30 31 20 7d 0d 0a 65 6e 75 6d 20 3a 000001 }..enum :
12910 20 75 69 6e 74 20 7b 20 46 49 4c 45 5f 41 54 54 uint { FILE_ATT
12920 52 49 42 55 54 45 5f 48 49 44 44 45 4e 20 3d 20 RIBUTE_HIDDEN =
12930 30 78 30 30 30 30 30 30 30 32 20 7d 0d 0a 65 6e 0x00000002 }..en
12940 75 6d 20 3a 20 75 69 6e 74 20 7b 20 46 49 4c 45 um : uint { FILE
12950 5f 41 54 54 52 49 42 55 54 45 5f 53 59 53 54 45 _ATTRIBUTE_SYSTE
12960 4d 20 3d 20 30 78 30 30 30 30 30 30 30 34 20 7d M = 0x00000004 }
12970 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
12980 46 49 4c 45 5f 41 54 54 52 49 42 55 54 45 5f 44 FILE_ATTRIBUTE_D
12990 49 52 45 43 54 4f 52 59 20 3d 20 30 78 30 30 30 IRECTORY = 0x000
129a0 30 30 30 31 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 00010 }..enum :
129b0 75 69 6e 74 20 7b 20 46 49 4c 45 5f 41 54 54 52 uint { FILE_ATTR
129c0 49 42 55 54 45 5f 41 52 43 48 49 56 45 20 3d 20 IBUTE_ARCHIVE =
129d0 30 78 30 30 30 30 30 30 32 30 20 7d 0d 0a 65 6e 0x00000020 }..en
129e0 75 6d 20 3a 20 75 69 6e 74 20 7b 20 46 49 4c 45 um : uint { FILE
129f0 5f 41 54 54 52 49 42 55 54 45 5f 44 45 56 49 43 _ATTRIBUTE_DEVIC
12a00 45 20 3d 20 30 78 30 30 30 30 30 30 34 30 20 7d E = 0x00000040 }
12a10 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
12a20 46 49 4c 45 5f 41 54 54 52 49 42 55 54 45 5f 4e FILE_ATTRIBUTE_N
12a30 4f 52 4d 41 4c 20 3d 20 30 78 30 30 30 30 30 30 ORMAL = 0x000000
12a40 38 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 80 }..enum : uin
12a50 74 20 7b 20 46 49 4c 45 5f 41 54 54 52 49 42 55 t { FILE_ATTRIBU
12a60 54 45 5f 54 45 4d 50 4f 52 41 52 59 20 3d 20 30 TE_TEMPORARY = 0
12a70 78 30 30 30 30 30 31 30 30 20 7d 0d 0a 65 6e 75 x00000100 }..enu
12a80 6d 20 3a 20 75 69 6e 74 20 7b 20 46 49 4c 45 5f m : uint { FILE_
12a90 41 54 54 52 49 42 55 54 45 5f 53 50 41 52 53 45 ATTRIBUTE_SPARSE
12aa0 5f 46 49 4c 45 20 3d 20 30 78 30 30 30 30 30 32 _FILE = 0x000002
12ab0 30 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 00 }..enum : uin
12ac0 74 20 7b 20 46 49 4c 45 5f 41 54 54 52 49 42 55 t { FILE_ATTRIBU
12ad0 54 45 5f 52 45 50 41 52 53 45 5f 50 4f 49 4e 54 TE_REPARSE_POINT
12ae0 20 3d 20 30 78 30 30 30 30 30 34 30 30 20 7d 0d = 0x00000400 }.
12af0 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 46 .enum : uint { F
12b00 49 4c 45 5f 41 54 54 52 49 42 55 54 45 5f 43 4f ILE_ATTRIBUTE_CO
12b10 4d 50 52 45 53 53 45 44 20 3d 20 30 78 30 30 30 MPRESSED = 0x000
12b20 30 30 38 30 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 00800 }..enum :
12b30 75 69 6e 74 20 7b 20 46 49 4c 45 5f 41 54 54 52 uint { FILE_ATTR
12b40 49 42 55 54 45 5f 4f 46 46 4c 49 4e 45 20 3d 20 IBUTE_OFFLINE =
12b50 30 78 30 30 30 30 31 30 30 30 20 7d 0d 0a 65 6e 0x00001000 }..en
12b60 75 6d 20 3a 20 75 69 6e 74 20 7b 20 46 49 4c 45 um : uint { FILE
12b70 5f 41 54 54 52 49 42 55 54 45 5f 4e 4f 54 5f 43 _ATTRIBUTE_NOT_C
12b80 4f 4e 54 45 4e 54 5f 49 4e 44 45 58 45 44 20 3d ONTENT_INDEXED =
12b90 20 30 78 30 30 30 30 32 30 30 30 20 7d 0d 0a 65 0x00002000 }..e
12ba0 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 46 49 4c num : uint { FIL
12bb0 45 5f 41 54 54 52 49 42 55 54 45 5f 45 4e 43 52 E_ATTRIBUTE_ENCR
12bc0 59 50 54 45 44 20 3d 20 30 78 30 30 30 30 34 30 YPTED = 0x000040
12bd0 30 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 00 }..enum : uin
12be0 74 20 7b 20 46 49 4c 45 5f 4e 4f 54 49 46 59 5f t { FILE_NOTIFY_
12bf0 43 48 41 4e 47 45 5f 46 49 4c 45 5f 4e 41 4d 45 CHANGE_FILE_NAME
12c00 20 3d 20 30 78 30 30 30 30 30 30 30 31 20 7d 0d = 0x00000001 }.
12c10 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 46 .enum : uint { F
12c20 49 4c 45 5f 4e 4f 54 49 46 59 5f 43 48 41 4e 47 ILE_NOTIFY_CHANG
12c30 45 5f 44 49 52 5f 4e 41 4d 45 20 3d 20 30 78 30 E_DIR_NAME = 0x0
12c40 30 30 30 30 30 30 32 20 7d 0d 0a 65 6e 75 6d 20 0000002 }..enum
12c50 3a 20 75 69 6e 74 20 7b 20 46 49 4c 45 5f 4e 4f : uint { FILE_NO
12c60 54 49 46 59 5f 43 48 41 4e 47 45 5f 41 54 54 52 TIFY_CHANGE_ATTR
12c70 49 42 55 54 45 53 20 3d 20 30 78 30 30 30 30 30 IBUTES = 0x00000
12c80 30 30 34 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 004 }..enum : ui
12c90 6e 74 20 7b 20 46 49 4c 45 5f 4e 4f 54 49 46 59 nt { FILE_NOTIFY
12ca0 5f 43 48 41 4e 47 45 5f 53 49 5a 45 20 3d 20 30 _CHANGE_SIZE = 0
12cb0 78 30 30 30 30 30 30 30 38 20 7d 0d 0a 65 6e 75 x00000008 }..enu
12cc0 6d 20 3a 20 75 69 6e 74 20 7b 20 46 49 4c 45 5f m : uint { FILE_
12cd0 4e 4f 54 49 46 59 5f 43 48 41 4e 47 45 5f 4c 41 NOTIFY_CHANGE_LA
12ce0 53 54 5f 57 52 49 54 45 20 3d 20 30 78 30 30 30 ST_WRITE = 0x000
12cf0 30 30 30 31 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 00010 }..enum :
12d00 75 69 6e 74 20 7b 20 46 49 4c 45 5f 4e 4f 54 49 uint { FILE_NOTI
12d10 46 59 5f 43 48 41 4e 47 45 5f 4c 41 53 54 5f 41 FY_CHANGE_LAST_A
12d20 43 43 45 53 53 20 3d 20 30 78 30 30 30 30 30 30 CCESS = 0x000000
12d30 32 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 20 }..enum : uin
12d40 74 20 7b 20 46 49 4c 45 5f 4e 4f 54 49 46 59 5f t { FILE_NOTIFY_
12d50 43 48 41 4e 47 45 5f 43 52 45 41 54 49 4f 4e 20 CHANGE_CREATION
12d60 3d 20 30 78 30 30 30 30 30 30 34 30 20 7d 0d 0a = 0x00000040 }..
12d70 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 46 49 enum : uint { FI
12d80 4c 45 5f 4e 4f 54 49 46 59 5f 43 48 41 4e 47 45 LE_NOTIFY_CHANGE
12d90 5f 53 45 43 55 52 49 54 59 20 3d 20 30 78 30 30 _SECURITY = 0x00
12da0 30 30 30 31 30 30 20 7d 0d 0a 65 6e 75 6d 20 3a 000100 }..enum :
12db0 20 75 69 6e 74 20 7b 20 46 49 4c 45 5f 41 43 54 uint { FILE_ACT
12dc0 49 4f 4e 5f 41 44 44 45 44 20 3d 20 30 78 30 30 ION_ADDED = 0x00
12dd0 30 30 30 30 30 31 20 7d 0d 0a 65 6e 75 6d 20 3a 000001 }..enum :
12de0 20 75 69 6e 74 20 7b 20 46 49 4c 45 5f 41 43 54 uint { FILE_ACT
12df0 49 4f 4e 5f 52 45 4d 4f 56 45 44 20 3d 20 30 78 ION_REMOVED = 0x
12e00 30 30 30 30 30 30 30 32 20 7d 0d 0a 65 6e 75 6d 00000002 }..enum
12e10 20 3a 20 75 69 6e 74 20 7b 20 46 49 4c 45 5f 41 : uint { FILE_A
12e20 43 54 49 4f 4e 5f 4d 4f 44 49 46 49 45 44 20 3d CTION_MODIFIED =
12e30 20 30 78 30 30 30 30 30 30 30 33 20 7d 0d 0a 65 0x00000003 }..e
12e40 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 46 49 4c num : uint { FIL
12e50 45 5f 41 43 54 49 4f 4e 5f 52 45 4e 41 4d 45 44 E_ACTION_RENAMED
12e60 5f 4f 4c 44 5f 4e 41 4d 45 20 3d 20 30 78 30 30 _OLD_NAME = 0x00
12e70 30 30 30 30 30 34 20 7d 0d 0a 65 6e 75 6d 20 3a 000004 }..enum :
12e80 20 75 69 6e 74 20 7b 20 46 49 4c 45 5f 41 43 54 uint { FILE_ACT
12e90 49 4f 4e 5f 52 45 4e 41 4d 45 44 5f 4e 45 57 5f ION_RENAMED_NEW_
12ea0 4e 41 4d 45 20 3d 20 30 78 30 30 30 30 30 30 30 NAME = 0x0000000
12eb0 35 20 7d 0d 0a 65 6e 75 6d 20 3a 20 44 57 4f 52 5 }..enum : DWOR
12ec0 44 20 7b 20 4d 41 49 4c 53 4c 4f 54 5f 4e 4f 5f D { MAILSLOT_NO_
12ed0 4d 45 53 53 41 47 45 20 3d 20 63 61 73 74 28 44 MESSAGE = cast(D
12ee0 57 4f 52 44 29 2d 31 20 7d 0d 0a 65 6e 75 6d 20 WORD)-1 }..enum
12ef0 3a 20 44 57 4f 52 44 20 7b 20 4d 41 49 4c 53 4c : DWORD { MAILSL
12f00 4f 54 5f 57 41 49 54 5f 46 4f 52 45 56 45 52 20 OT_WAIT_FOREVER
12f10 3d 20 63 61 73 74 28 44 57 4f 52 44 29 2d 31 20 = cast(DWORD)-1
12f20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b }..enum : uint {
12f30 20 46 49 4c 45 5f 43 41 53 45 5f 53 45 4e 53 49 FILE_CASE_SENSI
12f40 54 49 56 45 5f 53 45 41 52 43 48 20 3d 20 30 78 TIVE_SEARCH = 0x
12f50 30 30 30 30 30 30 30 31 20 7d 0d 0a 65 6e 75 6d 00000001 }..enum
12f60 20 3a 20 75 69 6e 74 20 7b 20 46 49 4c 45 5f 43 : uint { FILE_C
12f70 41 53 45 5f 50 52 45 53 45 52 56 45 44 5f 4e 41 ASE_PRESERVED_NA
12f80 4d 45 53 20 3d 20 30 78 30 30 30 30 30 30 30 32 MES = 0x00000002
12f90 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 }..enum : uint
12fa0 7b 20 46 49 4c 45 5f 55 4e 49 43 4f 44 45 5f 4f { FILE_UNICODE_O
12fb0 4e 5f 44 49 53 4b 20 3d 20 30 78 30 30 30 30 30 N_DISK = 0x00000
12fc0 30 30 34 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 004 }..enum : ui
12fd0 6e 74 20 7b 20 46 49 4c 45 5f 50 45 52 53 49 53 nt { FILE_PERSIS
12fe0 54 45 4e 54 5f 41 43 4c 53 20 3d 20 30 78 30 30 TENT_ACLS = 0x00
12ff0 30 30 30 30 30 38 20 7d 0d 0a 65 6e 75 6d 20 3a 000008 }..enum :
13000 20 75 69 6e 74 20 7b 20 46 49 4c 45 5f 46 49 4c uint { FILE_FIL
13010 45 5f 43 4f 4d 50 52 45 53 53 49 4f 4e 20 3d 20 E_COMPRESSION =
13020 30 78 30 30 30 30 30 30 31 30 20 7d 0d 0a 65 6e 0x00000010 }..en
13030 75 6d 20 3a 20 75 69 6e 74 20 7b 20 46 49 4c 45 um : uint { FILE
13040 5f 56 4f 4c 55 4d 45 5f 51 55 4f 54 41 53 20 3d _VOLUME_QUOTAS =
13050 20 30 78 30 30 30 30 30 30 32 30 20 7d 0d 0a 65 0x00000020 }..e
13060 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 46 49 4c num : uint { FIL
13070 45 5f 53 55 50 50 4f 52 54 53 5f 53 50 41 52 53 E_SUPPORTS_SPARS
13080 45 5f 46 49 4c 45 53 20 3d 20 30 78 30 30 30 30 E_FILES = 0x0000
13090 30 30 34 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 0040 }..enum : u
130a0 69 6e 74 20 7b 20 46 49 4c 45 5f 53 55 50 50 4f int { FILE_SUPPO
130b0 52 54 53 5f 52 45 50 41 52 53 45 5f 50 4f 49 4e RTS_REPARSE_POIN
130c0 54 53 20 3d 20 30 78 30 30 30 30 30 30 38 30 20 TS = 0x00000080
130d0 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b }..enum : uint {
130e0 20 46 49 4c 45 5f 53 55 50 50 4f 52 54 53 5f 52 FILE_SUPPORTS_R
130f0 45 4d 4f 54 45 5f 53 54 4f 52 41 47 45 20 3d 20 EMOTE_STORAGE =
13100 30 78 30 30 30 30 30 31 30 30 20 7d 0d 0a 65 6e 0x00000100 }..en
13110 75 6d 20 3a 20 75 69 6e 74 20 7b 20 46 49 4c 45 um : uint { FILE
13120 5f 56 4f 4c 55 4d 45 5f 49 53 5f 43 4f 4d 50 52 _VOLUME_IS_COMPR
13130 45 53 53 45 44 20 3d 20 30 78 30 30 30 30 38 30 ESSED = 0x000080
13140 30 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 00 }..enum : uin
13150 74 20 7b 20 46 49 4c 45 5f 53 55 50 50 4f 52 54 t { FILE_SUPPORT
13160 53 5f 4f 42 4a 45 43 54 5f 49 44 53 20 3d 20 30 S_OBJECT_IDS = 0
13170 78 30 30 30 31 30 30 30 30 20 7d 0d 0a 65 6e 75 x00010000 }..enu
13180 6d 20 3a 20 75 69 6e 74 20 7b 20 46 49 4c 45 5f m : uint { FILE_
13190 53 55 50 50 4f 52 54 53 5f 45 4e 43 52 59 50 54 SUPPORTS_ENCRYPT
131a0 49 4f 4e 20 3d 20 30 78 30 30 30 32 30 30 30 30 ION = 0x00020000
131b0 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 }..enum : uint
131c0 7b 20 46 49 4c 45 5f 4e 41 4d 45 44 5f 53 54 52 { FILE_NAMED_STR
131d0 45 41 4d 53 20 3d 20 30 78 30 30 30 34 30 30 30 EAMS = 0x0004000
131e0 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 0 }..enum : uint
131f0 20 7b 20 46 49 4c 45 5f 52 45 41 44 5f 4f 4e 4c { FILE_READ_ONL
13200 59 5f 56 4f 4c 55 4d 45 20 3d 20 30 78 30 30 30 Y_VOLUME = 0x000
13210 38 30 30 30 30 20 7d 0d 0a 0d 0a 73 74 72 75 63 80000 }....struc
13220 74 20 5f 46 49 4c 45 5f 4e 4f 54 49 46 59 5f 49 t _FILE_NOTIFY_I
13230 4e 46 4f 52 4d 41 54 49 4f 4e 20 7b 0d 0a 20 20 NFORMATION {..
13240 44 57 4f 52 44 20 4e 65 78 74 45 6e 74 72 79 4f DWORD NextEntryO
13250 66 66 73 65 74 3b 0d 0a 20 20 44 57 4f 52 44 20 ffset;.. DWORD
13260 41 63 74 69 6f 6e 3b 0d 0a 20 20 44 57 4f 52 44 Action;.. DWORD
13270 20 46 69 6c 65 4e 61 6d 65 4c 65 6e 67 74 68 3b FileNameLength;
13280 0d 0a 20 20 57 43 48 41 52 20 46 69 6c 65 4e 61 .. WCHAR FileNa
13290 6d 65 5b 31 5d 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 me[1];..}..alias
132a0 20 5f 46 49 4c 45 5f 4e 4f 54 49 46 59 5f 49 4e _FILE_NOTIFY_IN
132b0 46 4f 52 4d 41 54 49 4f 4e 20 46 49 4c 45 5f 4e FORMATION FILE_N
132c0 4f 54 49 46 59 5f 49 4e 46 4f 52 4d 41 54 49 4f OTIFY_INFORMATIO
132d0 4e 3b 0d 0a 61 6c 69 61 73 20 5f 46 49 4c 45 5f N;..alias _FILE_
132e0 4e 4f 54 49 46 59 5f 49 4e 46 4f 52 4d 41 54 49 NOTIFY_INFORMATI
132f0 4f 4e 2a 20 50 46 49 4c 45 5f 4e 4f 54 49 46 59 ON* PFILE_NOTIFY
13300 5f 49 4e 46 4f 52 4d 41 54 49 4f 4e 3b 0d 0a 0d _INFORMATION;...
13310 0a 75 6e 69 6f 6e 20 5f 46 49 4c 45 5f 53 45 47 .union _FILE_SEG
13320 4d 45 4e 54 5f 45 4c 45 4d 45 4e 54 20 7b 0d 0a MENT_ELEMENT {..
13330 20 20 50 56 4f 49 44 36 34 20 42 75 66 66 65 72 PVOID64 Buffer
13340 3b 0d 0a 20 20 55 4c 4f 4e 47 4c 4f 4e 47 20 41 ;.. ULONGLONG A
13350 6c 69 67 6e 6d 65 6e 74 3b 0d 0a 7d 0d 0a 61 6c lignment;..}..al
13360 69 61 73 20 5f 46 49 4c 45 5f 53 45 47 4d 45 4e ias _FILE_SEGMEN
13370 54 5f 45 4c 45 4d 45 4e 54 20 46 49 4c 45 5f 53 T_ELEMENT FILE_S
13380 45 47 4d 45 4e 54 5f 45 4c 45 4d 45 4e 54 3b 0d EGMENT_ELEMENT;.
13390 0a 61 6c 69 61 73 20 5f 46 49 4c 45 5f 53 45 47 .alias _FILE_SEG
133a0 4d 45 4e 54 5f 45 4c 45 4d 45 4e 54 2a 20 50 46 MENT_ELEMENT* PF
133b0 49 4c 45 5f 53 45 47 4d 45 4e 54 5f 45 4c 45 4d ILE_SEGMENT_ELEM
133c0 45 4e 54 3b 0d 0a 0d 0a 73 74 72 75 63 74 20 5f ENT;....struct _
133d0 52 45 50 41 52 53 45 5f 47 55 49 44 5f 44 41 54 REPARSE_GUID_DAT
133e0 41 5f 42 55 46 46 45 52 20 7b 0d 0a 20 20 44 57 A_BUFFER {.. DW
133f0 4f 52 44 20 52 65 70 61 72 73 65 54 61 67 3b 0d ORD ReparseTag;.
13400 0a 20 20 57 4f 52 44 20 52 65 70 61 72 73 65 44 . WORD ReparseD
13410 61 74 61 4c 65 6e 67 74 68 3b 0d 0a 20 20 57 4f ataLength;.. WO
13420 52 44 20 52 65 73 65 72 76 65 64 3b 0d 0a 20 20 RD Reserved;..
13430 47 55 49 44 20 52 65 70 61 72 73 65 47 75 69 64 GUID ReparseGuid
13440 3b 0d 0a 73 74 72 75 63 74 20 7b 0d 0a 20 20 42 ;..struct {.. B
13450 59 54 45 20 44 61 74 61 42 75 66 66 65 72 5b 31 YTE DataBuffer[1
13460 5d 3b 0d 0a 7d 0d 0a 0d 0a 7d 0d 0a 61 6c 69 61 ];..}....}..alia
13470 73 20 5f 52 45 50 41 52 53 45 5f 47 55 49 44 5f s _REPARSE_GUID_
13480 44 41 54 41 5f 42 55 46 46 45 52 20 52 45 50 41 DATA_BUFFER REPA
13490 52 53 45 5f 47 55 49 44 5f 44 41 54 41 5f 42 55 RSE_GUID_DATA_BU
134a0 46 46 45 52 3b 0d 0a 61 6c 69 61 73 20 5f 52 45 FFER;..alias _RE
134b0 50 41 52 53 45 5f 47 55 49 44 5f 44 41 54 41 5f PARSE_GUID_DATA_
134c0 42 55 46 46 45 52 2a 20 50 52 45 50 41 52 53 45 BUFFER* PREPARSE
134d0 5f 47 55 49 44 5f 44 41 54 41 5f 42 55 46 46 45 _GUID_DATA_BUFFE
134e0 52 3b 0d 0a 0d 0a 2f 2f 20 23 64 65 66 69 6e 65 R;....// #define
134f0 20 52 45 50 41 52 53 45 5f 47 55 49 44 5f 44 41 REPARSE_GUID_DA
13500 54 41 5f 42 55 46 46 45 52 5f 48 45 41 44 45 52 TA_BUFFER_HEADER
13510 5f 53 49 5a 45 20 46 49 45 4c 44 5f 4f 46 46 53 _SIZE FIELD_OFFS
13520 45 54 28 52 45 50 41 52 53 45 5f 47 55 49 44 5f ET(REPARSE_GUID_
13530 44 41 54 41 5f 42 55 46 46 45 52 2c 20 47 65 6e DATA_BUFFER, Gen
13540 65 72 69 63 52 65 70 61 72 73 65 42 75 66 66 65 ericReparseBuffe
13550 72 29 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e r)....enum : uin
13560 74 20 7b 20 4d 41 58 49 4d 55 4d 5f 52 45 50 41 t { MAXIMUM_REPA
13570 52 53 45 5f 44 41 54 41 5f 42 55 46 46 45 52 5f RSE_DATA_BUFFER_
13580 53 49 5a 45 20 3d 20 20 31 36 20 2a 20 31 30 32 SIZE = 16 * 102
13590 34 20 20 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 75 4 }....enum : u
135a0 69 6e 74 20 7b 20 49 4f 5f 52 45 50 41 52 53 45 int { IO_REPARSE
135b0 5f 54 41 47 5f 52 45 53 45 52 56 45 44 5f 5a 45 _TAG_RESERVED_ZE
135c0 52 4f 20 3d 20 30 20 7d 0d 0a 65 6e 75 6d 20 3a RO = 0 }..enum :
135d0 20 75 69 6e 74 20 7b 20 49 4f 5f 52 45 50 41 52 uint { IO_REPAR
135e0 53 45 5f 54 41 47 5f 52 45 53 45 52 56 45 44 5f SE_TAG_RESERVED_
135f0 4f 4e 45 20 3d 20 31 20 7d 0d 0a 0d 0a 61 6c 69 ONE = 1 }....ali
13600 61 73 20 49 4f 5f 52 45 50 41 52 53 45 5f 54 41 as IO_REPARSE_TA
13610 47 5f 52 45 53 45 52 56 45 44 5f 4f 4e 45 20 49 G_RESERVED_ONE I
13620 4f 5f 52 45 50 41 52 53 45 5f 54 41 47 5f 52 45 O_REPARSE_TAG_RE
13630 53 45 52 56 45 44 5f 52 41 4e 47 45 3b 0d 0a 0d SERVED_RANGE;...
13640 0a 2f 2f 20 23 64 65 66 69 6e 65 20 49 73 52 65 .// #define IsRe
13650 70 61 72 73 65 54 61 67 4d 69 63 72 6f 73 6f 66 parseTagMicrosof
13660 74 28 5f 74 61 67 29 20 28 20 28 28 5f 74 61 67 t(_tag) ( ((_tag
13670 29 20 26 20 30 78 38 30 30 30 30 30 30 30 29 20 ) & 0x80000000)
13680 29 0d 0a 0d 0a 2f 2f 20 23 64 65 66 69 6e 65 20 )....// #define
13690 49 73 52 65 70 61 72 73 65 54 61 67 4e 61 6d 65 IsReparseTagName
136a0 53 75 72 72 6f 67 61 74 65 28 5f 74 61 67 29 20 Surrogate(_tag)
136b0 28 20 28 28 5f 74 61 67 29 20 26 20 30 78 32 30 ( ((_tag) & 0x20
136c0 30 30 30 30 30 30 29 20 29 0d 0a 0d 0a 65 6e 75 000000) )....enu
136d0 6d 20 3a 20 75 69 6e 74 20 7b 20 49 4f 5f 52 45 m : uint { IO_RE
136e0 50 41 52 53 45 5f 54 41 47 5f 4d 4f 55 4e 54 5f PARSE_TAG_MOUNT_
136f0 50 4f 49 4e 54 20 3d 20 30 78 41 30 30 30 30 30 POINT = 0xA00000
13700 30 33 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 03 }..enum : uin
13710 74 20 7b 20 49 4f 5f 52 45 50 41 52 53 45 5f 54 t { IO_REPARSE_T
13720 41 47 5f 48 53 4d 20 3d 20 30 78 43 30 30 30 30 AG_HSM = 0xC0000
13730 30 30 34 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 004 }..enum : ui
13740 6e 74 20 7b 20 49 4f 5f 52 45 50 41 52 53 45 5f nt { IO_REPARSE_
13750 54 41 47 5f 53 49 53 20 3d 20 30 78 38 30 30 30 TAG_SIS = 0x8000
13760 30 30 30 37 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 0007 }..enum : u
13770 69 6e 74 20 7b 20 49 4f 5f 52 45 50 41 52 53 45 int { IO_REPARSE
13780 5f 54 41 47 5f 46 49 4c 54 45 52 5f 4d 41 4e 41 _TAG_FILTER_MANA
13790 47 45 52 20 3d 20 30 78 38 30 30 30 30 30 30 42 GER = 0x8000000B
137a0 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 }..enum : uint
137b0 7b 20 49 4f 5f 43 4f 4d 50 4c 45 54 49 4f 4e 5f { IO_COMPLETION_
137c0 4d 4f 44 49 46 59 5f 53 54 41 54 45 20 3d 20 30 MODIFY_STATE = 0
137d0 78 30 30 30 32 20 7d 0d 0a 65 6e 75 6d 20 3a 20 x0002 }..enum :
137e0 75 69 6e 74 20 7b 20 49 4f 5f 43 4f 4d 50 4c 45 uint { IO_COMPLE
137f0 54 49 4f 4e 5f 41 4c 4c 5f 41 43 43 45 53 53 20 TION_ALL_ACCESS
13800 3d 20 53 54 41 4e 44 41 52 44 5f 52 49 47 48 54 = STANDARD_RIGHT
13810 53 5f 52 45 51 55 49 52 45 44 7c 53 59 4e 43 48 S_REQUIRED|SYNCH
13820 52 4f 4e 49 5a 45 7c 30 78 33 20 7d 0d 0a 65 6e RONIZE|0x3 }..en
13830 75 6d 20 3a 20 75 69 6e 74 20 7b 20 44 55 50 4c um : uint { DUPL
13840 49 43 41 54 45 5f 43 4c 4f 53 45 5f 53 4f 55 52 ICATE_CLOSE_SOUR
13850 43 45 20 3d 20 30 78 30 30 30 30 30 30 30 31 20 CE = 0x00000001
13860 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b }..enum : uint {
13870 20 44 55 50 4c 49 43 41 54 45 5f 53 41 4d 45 5f DUPLICATE_SAME_
13880 41 43 43 45 53 53 20 3d 20 30 78 30 30 30 30 30 ACCESS = 0x00000
13890 30 30 32 20 7d 0d 0a 0d 0a 61 6c 69 61 73 20 69 002 }....alias i
138a0 6e 74 20 5f 53 59 53 54 45 4d 5f 50 4f 57 45 52 nt _SYSTEM_POWER
138b0 5f 53 54 41 54 45 3b 0d 0a 65 6e 75 6d 20 7b 0d _STATE;..enum {.
138c0 0a 20 20 50 6f 77 65 72 53 79 73 74 65 6d 55 6e . PowerSystemUn
138d0 73 70 65 63 69 66 69 65 64 20 3d 20 30 2c 0d 0a specified = 0,..
138e0 20 20 50 6f 77 65 72 53 79 73 74 65 6d 57 6f 72 PowerSystemWor
138f0 6b 69 6e 67 20 3d 20 31 2c 0d 0a 20 20 50 6f 77 king = 1,.. Pow
13900 65 72 53 79 73 74 65 6d 53 6c 65 65 70 69 6e 67 erSystemSleeping
13910 31 20 3d 20 32 2c 0d 0a 20 20 50 6f 77 65 72 53 1 = 2,.. PowerS
13920 79 73 74 65 6d 53 6c 65 65 70 69 6e 67 32 20 3d ystemSleeping2 =
13930 20 33 2c 0d 0a 20 20 50 6f 77 65 72 53 79 73 74 3,.. PowerSyst
13940 65 6d 53 6c 65 65 70 69 6e 67 33 20 3d 20 34 2c emSleeping3 = 4,
13950 0d 0a 20 20 50 6f 77 65 72 53 79 73 74 65 6d 48 .. PowerSystemH
13960 69 62 65 72 6e 61 74 65 20 3d 20 35 2c 0d 0a 20 ibernate = 5,..
13970 20 50 6f 77 65 72 53 79 73 74 65 6d 53 68 75 74 PowerSystemShut
13980 64 6f 77 6e 20 3d 20 36 2c 0d 0a 20 20 50 6f 77 down = 6,.. Pow
13990 65 72 53 79 73 74 65 6d 4d 61 78 69 6d 75 6d 20 erSystemMaximum
139a0 3d 20 37 2c 0d 0a 7d 0d 0a 61 6c 69 61 73 20 5f = 7,..}..alias _
139b0 53 59 53 54 45 4d 5f 50 4f 57 45 52 5f 53 54 41 SYSTEM_POWER_STA
139c0 54 45 20 53 59 53 54 45 4d 5f 50 4f 57 45 52 5f TE SYSTEM_POWER_
139d0 53 54 41 54 45 3b 0d 0a 61 6c 69 61 73 20 5f 53 STATE;..alias _S
139e0 59 53 54 45 4d 5f 50 4f 57 45 52 5f 53 54 41 54 YSTEM_POWER_STAT
139f0 45 2a 20 50 53 59 53 54 45 4d 5f 50 4f 57 45 52 E* PSYSTEM_POWER
13a00 5f 53 54 41 54 45 3b 0d 0a 0d 0a 65 6e 75 6d 20 _STATE;....enum
13a10 3a 20 75 69 6e 74 20 7b 20 50 4f 57 45 52 5f 53 : uint { POWER_S
13a20 59 53 54 45 4d 5f 4d 41 58 49 4d 55 4d 20 3d 20 YSTEM_MAXIMUM =
13a30 37 20 7d 0d 0a 0d 0a 65 6e 75 6d 20 5f 34 20 7b 7 }....enum _4 {
13a40 0d 0a 20 20 50 6f 77 65 72 41 63 74 69 6f 6e 4e .. PowerActionN
13a50 6f 6e 65 20 3d 20 30 2c 0d 0a 20 20 50 6f 77 65 one = 0,.. Powe
13a60 72 41 63 74 69 6f 6e 52 65 73 65 72 76 65 64 2c rActionReserved,
13a70 0d 0a 20 20 50 6f 77 65 72 41 63 74 69 6f 6e 53 .. PowerActionS
13a80 6c 65 65 70 2c 0d 0a 20 20 50 6f 77 65 72 41 63 leep,.. PowerAc
13a90 74 69 6f 6e 48 69 62 65 72 6e 61 74 65 2c 0d 0a tionHibernate,..
13aa0 20 20 50 6f 77 65 72 41 63 74 69 6f 6e 53 68 75 PowerActionShu
13ab0 74 64 6f 77 6e 2c 0d 0a 20 20 50 6f 77 65 72 41 tdown,.. PowerA
13ac0 63 74 69 6f 6e 53 68 75 74 64 6f 77 6e 52 65 73 ctionShutdownRes
13ad0 65 74 2c 0d 0a 20 20 50 6f 77 65 72 41 63 74 69 et,.. PowerActi
13ae0 6f 6e 53 68 75 74 64 6f 77 6e 4f 66 66 2c 0d 0a onShutdownOff,..
13af0 20 20 50 6f 77 65 72 41 63 74 69 6f 6e 57 61 72 PowerActionWar
13b00 6d 45 6a 65 63 74 2c 0d 0a 7d 0d 0a 61 6c 69 61 mEject,..}..alia
13b10 73 20 5f 34 20 50 4f 57 45 52 5f 41 43 54 49 4f s _4 POWER_ACTIO
13b20 4e 3b 0d 0a 61 6c 69 61 73 20 5f 34 2a 20 50 50 N;..alias _4* PP
13b30 4f 57 45 52 5f 41 43 54 49 4f 4e 3b 0d 0a 0d 0a OWER_ACTION;....
13b40 61 6c 69 61 73 20 69 6e 74 20 5f 44 45 56 49 43 alias int _DEVIC
13b50 45 5f 50 4f 57 45 52 5f 53 54 41 54 45 3b 0d 0a E_POWER_STATE;..
13b60 65 6e 75 6d 20 7b 0d 0a 20 20 50 6f 77 65 72 44 enum {.. PowerD
13b70 65 76 69 63 65 55 6e 73 70 65 63 69 66 69 65 64 eviceUnspecified
13b80 20 3d 20 30 2c 0d 0a 20 20 50 6f 77 65 72 44 65 = 0,.. PowerDe
13b90 76 69 63 65 44 30 2c 0d 0a 20 20 50 6f 77 65 72 viceD0,.. Power
13ba0 44 65 76 69 63 65 44 31 2c 0d 0a 20 20 50 6f 77 DeviceD1,.. Pow
13bb0 65 72 44 65 76 69 63 65 44 32 2c 0d 0a 20 20 50 erDeviceD2,.. P
13bc0 6f 77 65 72 44 65 76 69 63 65 44 33 2c 0d 0a 20 owerDeviceD3,..
13bd0 20 50 6f 77 65 72 44 65 76 69 63 65 4d 61 78 69 PowerDeviceMaxi
13be0 6d 75 6d 2c 0d 0a 7d 0d 0a 61 6c 69 61 73 20 5f mum,..}..alias _
13bf0 44 45 56 49 43 45 5f 50 4f 57 45 52 5f 53 54 41 DEVICE_POWER_STA
13c00 54 45 20 44 45 56 49 43 45 5f 50 4f 57 45 52 5f TE DEVICE_POWER_
13c10 53 54 41 54 45 3b 0d 0a 61 6c 69 61 73 20 5f 44 STATE;..alias _D
13c20 45 56 49 43 45 5f 50 4f 57 45 52 5f 53 54 41 54 EVICE_POWER_STAT
13c30 45 2a 20 50 44 45 56 49 43 45 5f 50 4f 57 45 52 E* PDEVICE_POWER
13c40 5f 53 54 41 54 45 3b 0d 0a 0d 0a 65 6e 75 6d 20 _STATE;....enum
13c50 3a 20 44 57 4f 52 44 20 7b 20 45 53 5f 53 59 53 : DWORD { ES_SYS
13c60 54 45 4d 5f 52 45 51 55 49 52 45 44 20 3d 20 30 TEM_REQUIRED = 0
13c70 78 30 30 30 30 30 30 30 31 20 7d 0d 0a 65 6e 75 x00000001 }..enu
13c80 6d 20 3a 20 44 57 4f 52 44 20 7b 20 45 53 5f 44 m : DWORD { ES_D
13c90 49 53 50 4c 41 59 5f 52 45 51 55 49 52 45 44 20 ISPLAY_REQUIRED
13ca0 3d 20 30 78 30 30 30 30 30 30 30 32 20 7d 0d 0a = 0x00000002 }..
13cb0 65 6e 75 6d 20 3a 20 44 57 4f 52 44 20 7b 20 45 enum : DWORD { E
13cc0 53 5f 55 53 45 52 5f 50 52 45 53 45 4e 54 20 3d S_USER_PRESENT =
13cd0 20 30 78 30 30 30 30 30 30 30 34 20 7d 0d 0a 65 0x00000004 }..e
13ce0 6e 75 6d 20 3a 20 44 57 4f 52 44 20 7b 20 45 53 num : DWORD { ES
13cf0 5f 43 4f 4e 54 49 4e 55 4f 55 53 20 3d 20 30 78 _CONTINUOUS = 0x
13d00 38 30 30 30 30 30 30 30 20 7d 0d 0a 0d 0a 61 6c 80000000 }....al
13d10 69 61 73 20 44 57 4f 52 44 20 45 58 45 43 55 54 ias DWORD EXECUT
13d20 49 4f 4e 5f 53 54 41 54 45 3b 0d 0a 0d 0a 65 6e ION_STATE;....en
13d30 75 6d 20 5f 35 20 7b 0d 0a 20 20 4c 54 5f 44 4f um _5 {.. LT_DO
13d40 4e 54 5f 43 41 52 45 2c 0d 0a 20 20 4c 54 5f 4c NT_CARE,.. LT_L
13d50 4f 57 45 53 54 5f 4c 41 54 45 4e 43 59 2c 0d 0a OWEST_LATENCY,..
13d60 7d 0d 0a 61 6c 69 61 73 20 5f 35 20 4c 41 54 45 }..alias _5 LATE
13d70 4e 43 59 5f 54 49 4d 45 3b 0d 0a 0d 0a 65 6e 75 NCY_TIME;....enu
13d80 6d 20 3a 20 75 69 6e 74 20 7b 20 50 44 43 41 50 m : uint { PDCAP
13d90 5f 44 30 5f 53 55 50 50 4f 52 54 45 44 20 3d 20 _D0_SUPPORTED =
13da0 30 78 30 30 30 30 30 30 30 31 20 7d 0d 0a 65 6e 0x00000001 }..en
13db0 75 6d 20 3a 20 75 69 6e 74 20 7b 20 50 44 43 41 um : uint { PDCA
13dc0 50 5f 44 31 5f 53 55 50 50 4f 52 54 45 44 20 3d P_D1_SUPPORTED =
13dd0 20 30 78 30 30 30 30 30 30 30 32 20 7d 0d 0a 65 0x00000002 }..e
13de0 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 50 44 43 num : uint { PDC
13df0 41 50 5f 44 32 5f 53 55 50 50 4f 52 54 45 44 20 AP_D2_SUPPORTED
13e00 3d 20 30 78 30 30 30 30 30 30 30 34 20 7d 0d 0a = 0x00000004 }..
13e10 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 50 44 enum : uint { PD
13e20 43 41 50 5f 44 33 5f 53 55 50 50 4f 52 54 45 44 CAP_D3_SUPPORTED
13e30 20 3d 20 30 78 30 30 30 30 30 30 30 38 20 7d 0d = 0x00000008 }.
13e40 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 50 .enum : uint { P
13e50 44 43 41 50 5f 57 41 4b 45 5f 46 52 4f 4d 5f 44 DCAP_WAKE_FROM_D
13e60 30 5f 53 55 50 50 4f 52 54 45 44 20 3d 20 30 78 0_SUPPORTED = 0x
13e70 30 30 30 30 30 30 31 30 20 7d 0d 0a 65 6e 75 6d 00000010 }..enum
13e80 20 3a 20 75 69 6e 74 20 7b 20 50 44 43 41 50 5f : uint { PDCAP_
13e90 57 41 4b 45 5f 46 52 4f 4d 5f 44 31 5f 53 55 50 WAKE_FROM_D1_SUP
13ea0 50 4f 52 54 45 44 20 3d 20 30 78 30 30 30 30 30 PORTED = 0x00000
13eb0 30 32 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 020 }..enum : ui
13ec0 6e 74 20 7b 20 50 44 43 41 50 5f 57 41 4b 45 5f nt { PDCAP_WAKE_
13ed0 46 52 4f 4d 5f 44 32 5f 53 55 50 50 4f 52 54 45 FROM_D2_SUPPORTE
13ee0 44 20 3d 20 30 78 30 30 30 30 30 30 34 30 20 7d D = 0x00000040 }
13ef0 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
13f00 50 44 43 41 50 5f 57 41 4b 45 5f 46 52 4f 4d 5f PDCAP_WAKE_FROM_
13f10 44 33 5f 53 55 50 50 4f 52 54 45 44 20 3d 20 30 D3_SUPPORTED = 0
13f20 78 30 30 30 30 30 30 38 30 20 7d 0d 0a 65 6e 75 x00000080 }..enu
13f30 6d 20 3a 20 75 69 6e 74 20 7b 20 50 44 43 41 50 m : uint { PDCAP
13f40 5f 57 41 52 4d 5f 45 4a 45 43 54 5f 53 55 50 50 _WARM_EJECT_SUPP
13f50 4f 52 54 45 44 20 3d 20 30 78 30 30 30 30 30 31 ORTED = 0x000001
13f60 30 30 20 7d 0d 0a 0d 0a 73 74 72 75 63 74 20 43 00 }....struct C
13f70 4d 5f 50 6f 77 65 72 5f 44 61 74 61 5f 73 20 7b M_Power_Data_s {
13f80 0d 0a 20 20 44 57 4f 52 44 20 50 44 5f 53 69 7a .. DWORD PD_Siz
13f90 65 3b 0d 0a 20 20 44 45 56 49 43 45 5f 50 4f 57 e;.. DEVICE_POW
13fa0 45 52 5f 53 54 41 54 45 20 50 44 5f 4d 6f 73 74 ER_STATE PD_Most
13fb0 52 65 63 65 6e 74 50 6f 77 65 72 53 74 61 74 65 RecentPowerState
13fc0 3b 0d 0a 20 20 44 57 4f 52 44 20 50 44 5f 43 61 ;.. DWORD PD_Ca
13fd0 70 61 62 69 6c 69 74 69 65 73 3b 0d 0a 20 20 44 pabilities;.. D
13fe0 57 4f 52 44 20 50 44 5f 44 31 4c 61 74 65 6e 63 WORD PD_D1Latenc
13ff0 79 3b 0d 0a 20 20 44 57 4f 52 44 20 50 44 5f 44 y;.. DWORD PD_D
14000 32 4c 61 74 65 6e 63 79 3b 0d 0a 20 20 44 57 4f 2Latency;.. DWO
14010 52 44 20 50 44 5f 44 33 4c 61 74 65 6e 63 79 3b RD PD_D3Latency;
14020 0d 0a 20 20 44 45 56 49 43 45 5f 50 4f 57 45 52 .. DEVICE_POWER
14030 5f 53 54 41 54 45 20 50 44 5f 50 6f 77 65 72 53 _STATE PD_PowerS
14040 74 61 74 65 4d 61 70 70 69 6e 67 5b 50 4f 57 45 tateMapping[POWE
14050 52 5f 53 59 53 54 45 4d 5f 4d 41 58 49 4d 55 4d R_SYSTEM_MAXIMUM
14060 5d 3b 0d 0a 20 20 53 59 53 54 45 4d 5f 50 4f 57 ];.. SYSTEM_POW
14070 45 52 5f 53 54 41 54 45 20 50 44 5f 44 65 65 70 ER_STATE PD_Deep
14080 65 73 74 53 79 73 74 65 6d 57 61 6b 65 3b 0d 0a estSystemWake;..
14090 7d 0d 0a 61 6c 69 61 73 20 43 4d 5f 50 6f 77 65 }..alias CM_Powe
140a0 72 5f 44 61 74 61 5f 73 20 43 4d 5f 50 4f 57 45 r_Data_s CM_POWE
140b0 52 5f 44 41 54 41 3b 0d 0a 61 6c 69 61 73 20 43 R_DATA;..alias C
140c0 4d 5f 50 6f 77 65 72 5f 44 61 74 61 5f 73 2a 20 M_Power_Data_s*
140d0 50 43 4d 5f 50 4f 57 45 52 5f 44 41 54 41 3b 0d PCM_POWER_DATA;.
140e0 0a 0d 0a 65 6e 75 6d 20 5f 36 20 7b 0d 0a 20 20 ...enum _6 {..
140f0 53 79 73 74 65 6d 50 6f 77 65 72 50 6f 6c 69 63 SystemPowerPolic
14100 79 41 63 2c 0d 0a 20 20 53 79 73 74 65 6d 50 6f yAc,.. SystemPo
14110 77 65 72 50 6f 6c 69 63 79 44 63 2c 0d 0a 20 20 werPolicyDc,..
14120 56 65 72 69 66 79 53 79 73 74 65 6d 50 6f 6c 69 VerifySystemPoli
14130 63 79 41 63 2c 0d 0a 20 20 56 65 72 69 66 79 53 cyAc,.. VerifyS
14140 79 73 74 65 6d 50 6f 6c 69 63 79 44 63 2c 0d 0a ystemPolicyDc,..
14150 20 20 53 79 73 74 65 6d 50 6f 77 65 72 43 61 70 SystemPowerCap
14160 61 62 69 6c 69 74 69 65 73 2c 0d 0a 20 20 53 79 abilities,.. Sy
14170 73 74 65 6d 42 61 74 74 65 72 79 53 74 61 74 65 stemBatteryState
14180 2c 0d 0a 20 20 53 79 73 74 65 6d 50 6f 77 65 72 ,.. SystemPower
14190 53 74 61 74 65 48 61 6e 64 6c 65 72 2c 0d 0a 20 StateHandler,..
141a0 20 50 72 6f 63 65 73 73 6f 72 53 74 61 74 65 48 ProcessorStateH
141b0 61 6e 64 6c 65 72 2c 0d 0a 20 20 53 79 73 74 65 andler,.. Syste
141c0 6d 50 6f 77 65 72 50 6f 6c 69 63 79 43 75 72 72 mPowerPolicyCurr
141d0 65 6e 74 2c 0d 0a 20 20 41 64 6d 69 6e 69 73 74 ent,.. Administ
141e0 72 61 74 6f 72 50 6f 77 65 72 50 6f 6c 69 63 79 ratorPowerPolicy
141f0 2c 0d 0a 20 20 53 79 73 74 65 6d 52 65 73 65 72 ,.. SystemReser
14200 76 65 48 69 62 65 72 46 69 6c 65 2c 0d 0a 20 20 veHiberFile,..
14210 50 72 6f 63 65 73 73 6f 72 49 6e 66 6f 72 6d 61 ProcessorInforma
14220 74 69 6f 6e 2c 0d 0a 20 20 53 79 73 74 65 6d 50 tion,.. SystemP
14230 6f 77 65 72 49 6e 66 6f 72 6d 61 74 69 6f 6e 2c owerInformation,
14240 0d 0a 20 20 50 72 6f 63 65 73 73 6f 72 53 74 61 .. ProcessorSta
14250 74 65 48 61 6e 64 6c 65 72 32 2c 0d 0a 20 20 4c teHandler2,.. L
14260 61 73 74 57 61 6b 65 54 69 6d 65 2c 0d 0a 20 20 astWakeTime,..
14270 4c 61 73 74 53 6c 65 65 70 54 69 6d 65 2c 0d 0a LastSleepTime,..
14280 20 20 53 79 73 74 65 6d 45 78 65 63 75 74 69 6f SystemExecutio
14290 6e 53 74 61 74 65 2c 0d 0a 20 20 53 79 73 74 65 nState,.. Syste
142a0 6d 50 6f 77 65 72 53 74 61 74 65 4e 6f 74 69 66 mPowerStateNotif
142b0 79 48 61 6e 64 6c 65 72 2c 0d 0a 20 20 50 72 6f yHandler,.. Pro
142c0 63 65 73 73 6f 72 50 6f 77 65 72 50 6f 6c 69 63 cessorPowerPolic
142d0 79 41 63 2c 0d 0a 20 20 50 72 6f 63 65 73 73 6f yAc,.. Processo
142e0 72 50 6f 77 65 72 50 6f 6c 69 63 79 44 63 2c 0d rPowerPolicyDc,.
142f0 0a 20 20 56 65 72 69 66 79 50 72 6f 63 65 73 73 . VerifyProcess
14300 6f 72 50 6f 77 65 72 50 6f 6c 69 63 79 41 63 2c orPowerPolicyAc,
14310 0d 0a 20 20 56 65 72 69 66 79 50 72 6f 63 65 73 .. VerifyProces
14320 73 6f 72 50 6f 77 65 72 50 6f 6c 69 63 79 44 63 sorPowerPolicyDc
14330 2c 0d 0a 20 20 50 72 6f 63 65 73 73 6f 72 50 6f ,.. ProcessorPo
14340 77 65 72 50 6f 6c 69 63 79 43 75 72 72 65 6e 74 werPolicyCurrent
14350 2c 0d 0a 7d 0d 0a 61 6c 69 61 73 20 5f 36 20 50 ,..}..alias _6 P
14360 4f 57 45 52 5f 49 4e 46 4f 52 4d 41 54 49 4f 4e OWER_INFORMATION
14370 5f 4c 45 56 45 4c 3b 0d 0a 0d 0a 73 74 72 75 63 _LEVEL;....struc
14380 74 20 5f 37 20 7b 0d 0a 20 20 44 57 4f 52 44 20 t _7 {.. DWORD
14390 47 72 61 6e 75 6c 61 72 69 74 79 3b 0d 0a 20 20 Granularity;..
143a0 44 57 4f 52 44 20 43 61 70 61 63 69 74 79 3b 0d DWORD Capacity;.
143b0 0a 7d 0d 0a 61 6c 69 61 73 20 5f 37 20 42 41 54 .}..alias _7 BAT
143c0 54 45 52 59 5f 52 45 50 4f 52 54 49 4e 47 5f 53 TERY_REPORTING_S
143d0 43 41 4c 45 3b 0d 0a 61 6c 69 61 73 20 5f 37 2a CALE;..alias _7*
143e0 20 50 42 41 54 54 45 52 59 5f 52 45 50 4f 52 54 PBATTERY_REPORT
143f0 49 4e 47 5f 53 43 41 4c 45 3b 0d 0a 0d 0a 73 74 ING_SCALE;....st
14400 72 75 63 74 20 5f 38 20 7b 0d 0a 20 20 50 4f 57 ruct _8 {.. POW
14410 45 52 5f 41 43 54 49 4f 4e 20 41 63 74 69 6f 6e ER_ACTION Action
14420 3b 0d 0a 20 20 44 57 4f 52 44 20 46 6c 61 67 73 ;.. DWORD Flags
14430 3b 0d 0a 20 20 44 57 4f 52 44 20 45 76 65 6e 74 ;.. DWORD Event
14440 43 6f 64 65 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 Code;..}..alias
14450 5f 38 20 50 4f 57 45 52 5f 41 43 54 49 4f 4e 5f _8 POWER_ACTION_
14460 50 4f 4c 49 43 59 3b 0d 0a 61 6c 69 61 73 20 5f POLICY;..alias _
14470 38 2a 20 50 50 4f 57 45 52 5f 41 43 54 49 4f 4e 8* PPOWER_ACTION
14480 5f 50 4f 4c 49 43 59 3b 0d 0a 0d 0a 65 6e 75 6d _POLICY;....enum
14490 20 3a 20 75 69 6e 74 20 7b 20 50 4f 57 45 52 5f : uint { POWER_
144a0 41 43 54 49 4f 4e 5f 51 55 45 52 59 5f 41 4c 4c ACTION_QUERY_ALL
144b0 4f 57 45 44 20 3d 20 30 78 30 30 30 30 30 30 30 OWED = 0x0000000
144c0 31 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 1 }..enum : uint
144d0 20 7b 20 50 4f 57 45 52 5f 41 43 54 49 4f 4e 5f { POWER_ACTION_
144e0 55 49 5f 41 4c 4c 4f 57 45 44 20 3d 20 30 78 30 UI_ALLOWED = 0x0
144f0 30 30 30 30 30 30 32 20 7d 0d 0a 65 6e 75 6d 20 0000002 }..enum
14500 3a 20 75 69 6e 74 20 7b 20 50 4f 57 45 52 5f 41 : uint { POWER_A
14510 43 54 49 4f 4e 5f 4f 56 45 52 52 49 44 45 5f 41 CTION_OVERRIDE_A
14520 50 50 53 20 3d 20 30 78 30 30 30 30 30 30 30 34 PPS = 0x00000004
14530 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 }..enum : uint
14540 7b 20 50 4f 57 45 52 5f 41 43 54 49 4f 4e 5f 4c { POWER_ACTION_L
14550 49 47 48 54 45 53 54 5f 46 49 52 53 54 20 3d 20 IGHTEST_FIRST =
14560 30 78 31 30 30 30 30 30 30 30 20 7d 0d 0a 65 6e 0x10000000 }..en
14570 75 6d 20 3a 20 75 69 6e 74 20 7b 20 50 4f 57 45 um : uint { POWE
14580 52 5f 41 43 54 49 4f 4e 5f 4c 4f 43 4b 5f 43 4f R_ACTION_LOCK_CO
14590 4e 53 4f 4c 45 20 3d 20 30 78 32 30 30 30 30 30 NSOLE = 0x200000
145a0 30 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 00 }..enum : uin
145b0 74 20 7b 20 50 4f 57 45 52 5f 41 43 54 49 4f 4e t { POWER_ACTION
145c0 5f 44 49 53 41 42 4c 45 5f 57 41 4b 45 53 20 3d _DISABLE_WAKES =
145d0 20 30 78 34 30 30 30 30 30 30 30 20 7d 0d 0a 65 0x40000000 }..e
145e0 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 50 4f 57 num : uint { POW
145f0 45 52 5f 41 43 54 49 4f 4e 5f 43 52 49 54 49 43 ER_ACTION_CRITIC
14600 41 4c 20 3d 20 30 78 38 30 30 30 30 30 30 30 20 AL = 0x80000000
14610 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 }....enum : uint
14620 20 7b 20 50 4f 57 45 52 5f 4c 45 56 45 4c 5f 55 { POWER_LEVEL_U
14630 53 45 52 5f 4e 4f 54 49 46 59 5f 54 45 58 54 20 SER_NOTIFY_TEXT
14640 3d 20 30 78 30 30 30 30 30 30 30 31 20 7d 0d 0a = 0x00000001 }..
14650 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 50 4f enum : uint { PO
14660 57 45 52 5f 4c 45 56 45 4c 5f 55 53 45 52 5f 4e WER_LEVEL_USER_N
14670 4f 54 49 46 59 5f 53 4f 55 4e 44 20 3d 20 30 78 OTIFY_SOUND = 0x
14680 30 30 30 30 30 30 30 32 20 7d 0d 0a 65 6e 75 6d 00000002 }..enum
14690 20 3a 20 75 69 6e 74 20 7b 20 50 4f 57 45 52 5f : uint { POWER_
146a0 4c 45 56 45 4c 5f 55 53 45 52 5f 4e 4f 54 49 46 LEVEL_USER_NOTIF
146b0 59 5f 45 58 45 43 20 3d 20 30 78 30 30 30 30 30 Y_EXEC = 0x00000
146c0 30 30 34 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 004 }..enum : ui
146d0 6e 74 20 7b 20 50 4f 57 45 52 5f 55 53 45 52 5f nt { POWER_USER_
146e0 4e 4f 54 49 46 59 5f 42 55 54 54 4f 4e 20 3d 20 NOTIFY_BUTTON =
146f0 30 78 30 30 30 30 30 30 30 38 20 7d 0d 0a 65 6e 0x00000008 }..en
14700 75 6d 20 3a 20 75 69 6e 74 20 7b 20 50 4f 57 45 um : uint { POWE
14710 52 5f 55 53 45 52 5f 4e 4f 54 49 46 59 5f 53 48 R_USER_NOTIFY_SH
14720 55 54 44 4f 57 4e 20 3d 20 30 78 30 30 30 30 30 UTDOWN = 0x00000
14730 30 31 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 010 }..enum : ui
14740 6e 74 20 7b 20 50 4f 57 45 52 5f 46 4f 52 43 45 nt { POWER_FORCE
14750 5f 54 52 49 47 47 45 52 5f 52 45 53 45 54 20 3d _TRIGGER_RESET =
14760 20 30 78 38 30 30 30 30 30 30 30 20 7d 0d 0a 0d 0x80000000 }...
14770 0a 73 74 72 75 63 74 20 5f 39 20 7b 0d 0a 20 20 .struct _9 {..
14780 42 4f 4f 4c 45 41 4e 20 45 6e 61 62 6c 65 3b 0d BOOLEAN Enable;.
14790 0a 20 20 42 59 54 45 20 53 70 61 72 65 5b 33 5d . BYTE Spare[3]
147a0 3b 0d 0a 20 20 44 57 4f 52 44 20 42 61 74 74 65 ;.. DWORD Batte
147b0 72 79 4c 65 76 65 6c 3b 0d 0a 20 20 50 4f 57 45 ryLevel;.. POWE
147c0 52 5f 41 43 54 49 4f 4e 5f 50 4f 4c 49 43 59 20 R_ACTION_POLICY
147d0 50 6f 77 65 72 50 6f 6c 69 63 79 3b 0d 0a 20 20 PowerPolicy;..
147e0 53 59 53 54 45 4d 5f 50 4f 57 45 52 5f 53 54 41 SYSTEM_POWER_STA
147f0 54 45 20 4d 69 6e 53 79 73 74 65 6d 53 74 61 74 TE MinSystemStat
14800 65 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 5f 39 20 e;..}..alias _9
14810 53 59 53 54 45 4d 5f 50 4f 57 45 52 5f 4c 45 56 SYSTEM_POWER_LEV
14820 45 4c 3b 0d 0a 61 6c 69 61 73 20 5f 39 2a 20 50 EL;..alias _9* P
14830 53 59 53 54 45 4d 5f 50 4f 57 45 52 5f 4c 45 56 SYSTEM_POWER_LEV
14840 45 4c 3b 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 75 69 EL;....enum : ui
14850 6e 74 20 7b 20 4e 55 4d 5f 44 49 53 43 48 41 52 nt { NUM_DISCHAR
14860 47 45 5f 50 4f 4c 49 43 49 45 53 20 3d 20 34 20 GE_POLICIES = 4
14870 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b }..enum : uint {
14880 20 44 49 53 43 48 41 52 47 45 5f 50 4f 4c 49 43 DISCHARGE_POLIC
14890 59 5f 43 52 49 54 49 43 41 4c 20 3d 20 30 20 7d Y_CRITICAL = 0 }
148a0 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
148b0 44 49 53 43 48 41 52 47 45 5f 50 4f 4c 49 43 59 DISCHARGE_POLICY
148c0 5f 4c 4f 57 20 3d 20 31 20 7d 0d 0a 0d 0a 65 6e _LOW = 1 }....en
148d0 75 6d 20 3a 20 75 69 6e 74 20 7b 20 50 4f 5f 54 um : uint { PO_T
148e0 48 52 4f 54 54 4c 45 5f 4e 4f 4e 45 20 3d 20 30 HROTTLE_NONE = 0
148f0 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 }..enum : uint
14900 7b 20 50 4f 5f 54 48 52 4f 54 54 4c 45 5f 43 4f { PO_THROTTLE_CO
14910 4e 53 54 41 4e 54 20 3d 20 31 20 7d 0d 0a 65 6e NSTANT = 1 }..en
14920 75 6d 20 3a 20 75 69 6e 74 20 7b 20 50 4f 5f 54 um : uint { PO_T
14930 48 52 4f 54 54 4c 45 5f 44 45 47 52 41 44 45 20 HROTTLE_DEGRADE
14940 3d 20 32 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 = 2 }..enum : ui
14950 6e 74 20 7b 20 50 4f 5f 54 48 52 4f 54 54 4c 45 nt { PO_THROTTLE
14960 5f 41 44 41 50 54 49 56 45 20 3d 20 33 20 7d 0d _ADAPTIVE = 3 }.
14970 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 50 .enum : uint { P
14980 4f 5f 54 48 52 4f 54 54 4c 45 5f 4d 41 58 49 4d O_THROTTLE_MAXIM
14990 55 4d 20 3d 20 34 20 7d 0d 0a 0d 0a 73 74 72 75 UM = 4 }....stru
149a0 63 74 20 5f 53 59 53 54 45 4d 5f 50 4f 57 45 52 ct _SYSTEM_POWER
149b0 5f 50 4f 4c 49 43 59 20 7b 0d 0a 20 20 44 57 4f _POLICY {.. DWO
149c0 52 44 20 52 65 76 69 73 69 6f 6e 3b 0d 0a 0d 0a RD Revision;....
149d0 20 20 50 4f 57 45 52 5f 41 43 54 49 4f 4e 5f 50 POWER_ACTION_P
149e0 4f 4c 49 43 59 20 50 6f 77 65 72 42 75 74 74 6f OLICY PowerButto
149f0 6e 3b 0d 0a 20 20 50 4f 57 45 52 5f 41 43 54 49 n;.. POWER_ACTI
14a00 4f 4e 5f 50 4f 4c 49 43 59 20 53 6c 65 65 70 42 ON_POLICY SleepB
14a10 75 74 74 6f 6e 3b 0d 0a 20 20 50 4f 57 45 52 5f utton;.. POWER_
14a20 41 43 54 49 4f 4e 5f 50 4f 4c 49 43 59 20 4c 69 ACTION_POLICY Li
14a30 64 43 6c 6f 73 65 3b 0d 0a 20 20 53 59 53 54 45 dClose;.. SYSTE
14a40 4d 5f 50 4f 57 45 52 5f 53 54 41 54 45 20 4c 69 M_POWER_STATE Li
14a50 64 4f 70 65 6e 57 61 6b 65 3b 0d 0a 20 20 44 57 dOpenWake;.. DW
14a60 4f 52 44 20 52 65 73 65 72 76 65 64 3b 0d 0a 20 ORD Reserved;..
14a70 20 50 4f 57 45 52 5f 41 43 54 49 4f 4e 5f 50 4f POWER_ACTION_PO
14a80 4c 49 43 59 20 49 64 6c 65 3b 0d 0a 20 20 44 57 LICY Idle;.. DW
14a90 4f 52 44 20 49 64 6c 65 54 69 6d 65 6f 75 74 3b ORD IdleTimeout;
14aa0 0d 0a 20 20 42 59 54 45 20 49 64 6c 65 53 65 6e .. BYTE IdleSen
14ab0 73 69 74 69 76 69 74 79 3b 0d 0a 0d 0a 20 20 42 sitivity;.... B
14ac0 59 54 45 20 44 79 6e 61 6d 69 63 54 68 72 6f 74 YTE DynamicThrot
14ad0 74 6c 65 3b 0d 0a 20 20 42 59 54 45 20 53 70 61 tle;.. BYTE Spa
14ae0 72 65 32 5b 32 5d 3b 0d 0a 20 20 53 59 53 54 45 re2[2];.. SYSTE
14af0 4d 5f 50 4f 57 45 52 5f 53 54 41 54 45 20 4d 69 M_POWER_STATE Mi
14b00 6e 53 6c 65 65 70 3b 0d 0a 20 20 53 59 53 54 45 nSleep;.. SYSTE
14b10 4d 5f 50 4f 57 45 52 5f 53 54 41 54 45 20 4d 61 M_POWER_STATE Ma
14b20 78 53 6c 65 65 70 3b 0d 0a 20 20 53 59 53 54 45 xSleep;.. SYSTE
14b30 4d 5f 50 4f 57 45 52 5f 53 54 41 54 45 20 52 65 M_POWER_STATE Re
14b40 64 75 63 65 64 4c 61 74 65 6e 63 79 53 6c 65 65 ducedLatencySlee
14b50 70 3b 0d 0a 20 20 44 57 4f 52 44 20 57 69 6e 4c p;.. DWORD WinL
14b60 6f 67 6f 6e 46 6c 61 67 73 3b 0d 0a 20 20 44 57 ogonFlags;.. DW
14b70 4f 52 44 20 53 70 61 72 65 33 3b 0d 0a 20 20 44 ORD Spare3;.. D
14b80 57 4f 52 44 20 44 6f 7a 65 53 34 54 69 6d 65 6f WORD DozeS4Timeo
14b90 75 74 3b 0d 0a 20 20 44 57 4f 52 44 20 42 72 6f ut;.. DWORD Bro
14ba0 61 64 63 61 73 74 43 61 70 61 63 69 74 79 52 65 adcastCapacityRe
14bb0 73 6f 6c 75 74 69 6f 6e 3b 0d 0a 20 20 53 59 53 solution;.. SYS
14bc0 54 45 4d 5f 50 4f 57 45 52 5f 4c 45 56 45 4c 20 TEM_POWER_LEVEL
14bd0 44 69 73 63 68 61 72 67 65 50 6f 6c 69 63 79 5b DischargePolicy[
14be0 4e 55 4d 5f 44 49 53 43 48 41 52 47 45 5f 50 4f NUM_DISCHARGE_PO
14bf0 4c 49 43 49 45 53 5d 3b 0d 0a 20 20 44 57 4f 52 LICIES];.. DWOR
14c00 44 20 56 69 64 65 6f 54 69 6d 65 6f 75 74 3b 0d D VideoTimeout;.
14c10 0a 20 20 42 4f 4f 4c 45 41 4e 20 56 69 64 65 6f . BOOLEAN Video
14c20 44 69 6d 44 69 73 70 6c 61 79 3b 0d 0a 20 20 44 DimDisplay;.. D
14c30 57 4f 52 44 20 56 69 64 65 6f 52 65 73 65 72 76 WORD VideoReserv
14c40 65 64 5b 33 5d 3b 0d 0a 20 20 44 57 4f 52 44 20 ed[3];.. DWORD
14c50 53 70 69 6e 64 6f 77 6e 54 69 6d 65 6f 75 74 3b SpindownTimeout;
14c60 0d 0a 20 20 42 4f 4f 4c 45 41 4e 20 4f 70 74 69 .. BOOLEAN Opti
14c70 6d 69 7a 65 46 6f 72 50 6f 77 65 72 3b 0d 0a 20 mizeForPower;..
14c80 20 42 59 54 45 20 46 61 6e 54 68 72 6f 74 74 6c BYTE FanThrottl
14c90 65 54 6f 6c 65 72 61 6e 63 65 3b 0d 0a 20 20 42 eTolerance;.. B
14ca0 59 54 45 20 46 6f 72 63 65 64 54 68 72 6f 74 74 YTE ForcedThrott
14cb0 6c 65 3b 0d 0a 20 20 42 59 54 45 20 4d 69 6e 54 le;.. BYTE MinT
14cc0 68 72 6f 74 74 6c 65 3b 0d 0a 20 20 50 4f 57 45 hrottle;.. POWE
14cd0 52 5f 41 43 54 49 4f 4e 5f 50 4f 4c 49 43 59 20 R_ACTION_POLICY
14ce0 4f 76 65 72 54 68 72 6f 74 74 6c 65 64 3b 0d 0a OverThrottled;..
14cf0 7d 0d 0a 61 6c 69 61 73 20 5f 53 59 53 54 45 4d }..alias _SYSTEM
14d00 5f 50 4f 57 45 52 5f 50 4f 4c 49 43 59 20 53 59 _POWER_POLICY SY
14d10 53 54 45 4d 5f 50 4f 57 45 52 5f 50 4f 4c 49 43 STEM_POWER_POLIC
14d20 59 3b 0d 0a 61 6c 69 61 73 20 5f 53 59 53 54 45 Y;..alias _SYSTE
14d30 4d 5f 50 4f 57 45 52 5f 50 4f 4c 49 43 59 2a 20 M_POWER_POLICY*
14d40 50 53 59 53 54 45 4d 5f 50 4f 57 45 52 5f 50 4f PSYSTEM_POWER_PO
14d50 4c 49 43 59 3b 0d 0a 0d 0a 73 74 72 75 63 74 20 LICY;....struct
14d60 5f 50 52 4f 43 45 53 53 4f 52 5f 50 4f 57 45 52 _PROCESSOR_POWER
14d70 5f 50 4f 4c 49 43 59 5f 49 4e 46 4f 20 7b 0d 0a _POLICY_INFO {..
14d80 0d 0a 20 20 44 57 4f 52 44 20 54 69 6d 65 43 68 .. DWORD TimeCh
14d90 65 63 6b 3b 0d 0a 20 20 44 57 4f 52 44 20 44 65 eck;.. DWORD De
14da0 6d 6f 74 65 4c 69 6d 69 74 3b 0d 0a 20 20 44 57 moteLimit;.. DW
14db0 4f 52 44 20 50 72 6f 6d 6f 74 65 4c 69 6d 69 74 ORD PromoteLimit
14dc0 3b 0d 0a 0d 0a 20 20 42 59 54 45 20 44 65 6d 6f ;.... BYTE Demo
14dd0 74 65 50 65 72 63 65 6e 74 3b 0d 0a 20 20 42 59 tePercent;.. BY
14de0 54 45 20 50 72 6f 6d 6f 74 65 50 65 72 63 65 6e TE PromotePercen
14df0 74 3b 0d 0a 20 20 42 59 54 45 20 53 70 61 72 65 t;.. BYTE Spare
14e00 5b 32 5d 3b 0d 0a 2f 2f 20 44 57 4f 52 44 20 20 [2];..// DWORD
14e10 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
14e20 20 41 6c 6c 6f 77 44 65 6d 6f 74 69 6f 6e 3a 31 AllowDemotion:1
14e30 3b 0d 0a 2f 2f 20 44 57 4f 52 44 20 20 20 20 20 ;..// DWORD
14e40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 41 6c Al
14e50 6c 6f 77 50 72 6f 6d 6f 74 69 6f 6e 3a 31 3b 0d lowPromotion:1;.
14e60 0a 2f 2f 20 44 57 4f 52 44 20 20 20 20 20 20 20 .// DWORD
14e70 20 20 20 20 20 20 20 20 20 20 20 20 52 65 73 65 Rese
14e80 72 76 65 64 3a 33 30 3b 0d 0a 0d 0a 7d 0d 0a 61 rved:30;....}..a
14e90 6c 69 61 73 20 5f 50 52 4f 43 45 53 53 4f 52 5f lias _PROCESSOR_
14ea0 50 4f 57 45 52 5f 50 4f 4c 49 43 59 5f 49 4e 46 POWER_POLICY_INF
14eb0 4f 20 50 52 4f 43 45 53 53 4f 52 5f 50 4f 57 45 O PROCESSOR_POWE
14ec0 52 5f 50 4f 4c 49 43 59 5f 49 4e 46 4f 3b 0d 0a R_POLICY_INFO;..
14ed0 61 6c 69 61 73 20 5f 50 52 4f 43 45 53 53 4f 52 alias _PROCESSOR
14ee0 5f 50 4f 57 45 52 5f 50 4f 4c 49 43 59 5f 49 4e _POWER_POLICY_IN
14ef0 46 4f 2a 20 50 50 52 4f 43 45 53 53 4f 52 5f 50 FO* PPROCESSOR_P
14f00 4f 57 45 52 5f 50 4f 4c 49 43 59 5f 49 4e 46 4f OWER_POLICY_INFO
14f10 3b 0d 0a 0d 0a 73 74 72 75 63 74 20 5f 50 52 4f ;....struct _PRO
14f20 43 45 53 53 4f 52 5f 50 4f 57 45 52 5f 50 4f 4c CESSOR_POWER_POL
14f30 49 43 59 20 7b 0d 0a 20 20 44 57 4f 52 44 20 52 ICY {.. DWORD R
14f40 65 76 69 73 69 6f 6e 3b 0d 0a 0d 0a 20 20 42 59 evision;.... BY
14f50 54 45 20 44 79 6e 61 6d 69 63 54 68 72 6f 74 74 TE DynamicThrott
14f60 6c 65 3b 0d 0a 20 20 42 59 54 45 20 53 70 61 72 le;.. BYTE Spar
14f70 65 5b 33 5d 3b 0d 0a 20 20 44 57 4f 52 44 20 52 e[3];.. DWORD R
14f80 65 73 65 72 76 65 64 3b 0d 0a 0d 0a 20 20 44 57 eserved;.... DW
14f90 4f 52 44 20 50 6f 6c 69 63 79 43 6f 75 6e 74 3b ORD PolicyCount;
14fa0 0d 0a 20 20 50 52 4f 43 45 53 53 4f 52 5f 50 4f .. PROCESSOR_PO
14fb0 57 45 52 5f 50 4f 4c 49 43 59 5f 49 4e 46 4f 20 WER_POLICY_INFO
14fc0 50 6f 6c 69 63 79 5b 33 5d 3b 0d 0a 7d 0d 0a 61 Policy[3];..}..a
14fd0 6c 69 61 73 20 5f 50 52 4f 43 45 53 53 4f 52 5f lias _PROCESSOR_
14fe0 50 4f 57 45 52 5f 50 4f 4c 49 43 59 20 50 52 4f POWER_POLICY PRO
14ff0 43 45 53 53 4f 52 5f 50 4f 57 45 52 5f 50 4f 4c CESSOR_POWER_POL
15000 49 43 59 3b 0d 0a 61 6c 69 61 73 20 5f 50 52 4f ICY;..alias _PRO
15010 43 45 53 53 4f 52 5f 50 4f 57 45 52 5f 50 4f 4c CESSOR_POWER_POL
15020 49 43 59 2a 20 50 50 52 4f 43 45 53 53 4f 52 5f ICY* PPROCESSOR_
15030 50 4f 57 45 52 5f 50 4f 4c 49 43 59 3b 0d 0a 0d POWER_POLICY;...
15040 0a 73 74 72 75 63 74 20 5f 41 44 4d 49 4e 49 53 .struct _ADMINIS
15050 54 52 41 54 4f 52 5f 50 4f 57 45 52 5f 50 4f 4c TRATOR_POWER_POL
15060 49 43 59 20 7b 0d 0a 0d 0a 20 20 53 59 53 54 45 ICY {.... SYSTE
15070 4d 5f 50 4f 57 45 52 5f 53 54 41 54 45 20 4d 69 M_POWER_STATE Mi
15080 6e 53 6c 65 65 70 3b 0d 0a 20 20 53 59 53 54 45 nSleep;.. SYSTE
15090 4d 5f 50 4f 57 45 52 5f 53 54 41 54 45 20 4d 61 M_POWER_STATE Ma
150a0 78 53 6c 65 65 70 3b 0d 0a 20 20 44 57 4f 52 44 xSleep;.. DWORD
150b0 20 4d 69 6e 56 69 64 65 6f 54 69 6d 65 6f 75 74 MinVideoTimeout
150c0 3b 0d 0a 20 20 44 57 4f 52 44 20 4d 61 78 56 69 ;.. DWORD MaxVi
150d0 64 65 6f 54 69 6d 65 6f 75 74 3b 0d 0a 20 20 44 deoTimeout;.. D
150e0 57 4f 52 44 20 4d 69 6e 53 70 69 6e 64 6f 77 6e WORD MinSpindown
150f0 54 69 6d 65 6f 75 74 3b 0d 0a 20 20 44 57 4f 52 Timeout;.. DWOR
15100 44 20 4d 61 78 53 70 69 6e 64 6f 77 6e 54 69 6d D MaxSpindownTim
15110 65 6f 75 74 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 eout;..}..alias
15120 5f 41 44 4d 49 4e 49 53 54 52 41 54 4f 52 5f 50 _ADMINISTRATOR_P
15130 4f 57 45 52 5f 50 4f 4c 49 43 59 20 41 44 4d 49 OWER_POLICY ADMI
15140 4e 49 53 54 52 41 54 4f 52 5f 50 4f 57 45 52 5f NISTRATOR_POWER_
15150 50 4f 4c 49 43 59 3b 0d 0a 61 6c 69 61 73 20 5f POLICY;..alias _
15160 41 44 4d 49 4e 49 53 54 52 41 54 4f 52 5f 50 4f ADMINISTRATOR_PO
15170 57 45 52 5f 50 4f 4c 49 43 59 2a 20 50 41 44 4d WER_POLICY* PADM
15180 49 4e 49 53 54 52 41 54 4f 52 5f 50 4f 57 45 52 INISTRATOR_POWER
15190 5f 50 4f 4c 49 43 59 3b 0d 0a 0d 0a 73 74 72 75 _POLICY;....stru
151a0 63 74 20 5f 31 30 20 7b 0d 0a 0d 0a 20 20 42 4f ct _10 {.... BO
151b0 4f 4c 45 41 4e 20 50 6f 77 65 72 42 75 74 74 6f OLEAN PowerButto
151c0 6e 50 72 65 73 65 6e 74 3b 0d 0a 20 20 42 4f 4f nPresent;.. BOO
151d0 4c 45 41 4e 20 53 6c 65 65 70 42 75 74 74 6f 6e LEAN SleepButton
151e0 50 72 65 73 65 6e 74 3b 0d 0a 20 20 42 4f 4f 4c Present;.. BOOL
151f0 45 41 4e 20 4c 69 64 50 72 65 73 65 6e 74 3b 0d EAN LidPresent;.
15200 0a 20 20 42 4f 4f 4c 45 41 4e 20 53 79 73 74 65 . BOOLEAN Syste
15210 6d 53 31 3b 0d 0a 20 20 42 4f 4f 4c 45 41 4e 20 mS1;.. BOOLEAN
15220 53 79 73 74 65 6d 53 32 3b 0d 0a 20 20 42 4f 4f SystemS2;.. BOO
15230 4c 45 41 4e 20 53 79 73 74 65 6d 53 33 3b 0d 0a LEAN SystemS3;..
15240 20 20 42 4f 4f 4c 45 41 4e 20 53 79 73 74 65 6d BOOLEAN System
15250 53 34 3b 0d 0a 20 20 42 4f 4f 4c 45 41 4e 20 53 S4;.. BOOLEAN S
15260 79 73 74 65 6d 53 35 3b 0d 0a 20 20 42 4f 4f 4c ystemS5;.. BOOL
15270 45 41 4e 20 48 69 62 65 72 46 69 6c 65 50 72 65 EAN HiberFilePre
15280 73 65 6e 74 3b 0d 0a 20 20 42 4f 4f 4c 45 41 4e sent;.. BOOLEAN
15290 20 46 75 6c 6c 57 61 6b 65 3b 0d 0a 20 20 42 4f FullWake;.. BO
152a0 4f 4c 45 41 4e 20 56 69 64 65 6f 44 69 6d 50 72 OLEAN VideoDimPr
152b0 65 73 65 6e 74 3b 0d 0a 20 20 42 4f 4f 4c 45 41 esent;.. BOOLEA
152c0 4e 20 41 70 6d 50 72 65 73 65 6e 74 3b 0d 0a 20 N ApmPresent;..
152d0 20 42 4f 4f 4c 45 41 4e 20 55 70 73 50 72 65 73 BOOLEAN UpsPres
152e0 65 6e 74 3b 0d 0a 20 20 42 4f 4f 4c 45 41 4e 20 ent;.. BOOLEAN
152f0 54 68 65 72 6d 61 6c 43 6f 6e 74 72 6f 6c 3b 0d ThermalControl;.
15300 0a 20 20 42 4f 4f 4c 45 41 4e 20 50 72 6f 63 65 . BOOLEAN Proce
15310 73 73 6f 72 54 68 72 6f 74 74 6c 65 3b 0d 0a 20 ssorThrottle;..
15320 20 42 59 54 45 20 50 72 6f 63 65 73 73 6f 72 4d BYTE ProcessorM
15330 69 6e 54 68 72 6f 74 74 6c 65 3b 0d 0a 20 20 42 inThrottle;.. B
15340 59 54 45 20 50 72 6f 63 65 73 73 6f 72 4d 61 78 YTE ProcessorMax
15350 54 68 72 6f 74 74 6c 65 3b 0d 0a 20 20 42 59 54 Throttle;.. BYT
15360 45 20 73 70 61 72 65 32 5b 34 5d 3b 0d 0a 20 20 E spare2[4];..
15370 42 4f 4f 4c 45 41 4e 20 44 69 73 6b 53 70 69 6e BOOLEAN DiskSpin
15380 44 6f 77 6e 3b 0d 0a 20 20 42 59 54 45 20 73 70 Down;.. BYTE sp
15390 61 72 65 33 5b 38 5d 3b 0d 0a 20 20 42 4f 4f 4c are3[8];.. BOOL
153a0 45 41 4e 20 53 79 73 74 65 6d 42 61 74 74 65 72 EAN SystemBatter
153b0 69 65 73 50 72 65 73 65 6e 74 3b 0d 0a 20 20 42 iesPresent;.. B
153c0 4f 4f 4c 45 41 4e 20 42 61 74 74 65 72 69 65 73 OOLEAN Batteries
153d0 41 72 65 53 68 6f 72 74 54 65 72 6d 3b 0d 0a 20 AreShortTerm;..
153e0 20 42 41 54 54 45 52 59 5f 52 45 50 4f 52 54 49 BATTERY_REPORTI
153f0 4e 47 5f 53 43 41 4c 45 20 42 61 74 74 65 72 79 NG_SCALE Battery
15400 53 63 61 6c 65 5b 33 5d 3b 0d 0a 20 20 53 59 53 Scale[3];.. SYS
15410 54 45 4d 5f 50 4f 57 45 52 5f 53 54 41 54 45 20 TEM_POWER_STATE
15420 41 63 4f 6e 4c 69 6e 65 57 61 6b 65 3b 0d 0a 20 AcOnLineWake;..
15430 20 53 59 53 54 45 4d 5f 50 4f 57 45 52 5f 53 54 SYSTEM_POWER_ST
15440 41 54 45 20 53 6f 66 74 4c 69 64 57 61 6b 65 3b ATE SoftLidWake;
15450 0d 0a 20 20 53 59 53 54 45 4d 5f 50 4f 57 45 52 .. SYSTEM_POWER
15460 5f 53 54 41 54 45 20 52 74 63 57 61 6b 65 3b 0d _STATE RtcWake;.
15470 0a 20 20 53 59 53 54 45 4d 5f 50 4f 57 45 52 5f . SYSTEM_POWER_
15480 53 54 41 54 45 20 4d 69 6e 44 65 76 69 63 65 57 STATE MinDeviceW
15490 61 6b 65 53 74 61 74 65 3b 0d 0a 20 20 53 59 53 akeState;.. SYS
154a0 54 45 4d 5f 50 4f 57 45 52 5f 53 54 41 54 45 20 TEM_POWER_STATE
154b0 44 65 66 61 75 6c 74 4c 6f 77 4c 61 74 65 6e 63 DefaultLowLatenc
154c0 79 57 61 6b 65 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 yWake;..}..alias
154d0 20 5f 31 30 20 53 59 53 54 45 4d 5f 50 4f 57 45 _10 SYSTEM_POWE
154e0 52 5f 43 41 50 41 42 49 4c 49 54 49 45 53 3b 0d R_CAPABILITIES;.
154f0 0a 61 6c 69 61 73 20 5f 31 30 2a 20 50 53 59 53 .alias _10* PSYS
15500 54 45 4d 5f 50 4f 57 45 52 5f 43 41 50 41 42 49 TEM_POWER_CAPABI
15510 4c 49 54 49 45 53 3b 0d 0a 0d 0a 73 74 72 75 63 LITIES;....struc
15520 74 20 5f 31 31 20 7b 0d 0a 20 20 42 4f 4f 4c 45 t _11 {.. BOOLE
15530 41 4e 20 41 63 4f 6e 4c 69 6e 65 3b 0d 0a 20 20 AN AcOnLine;..
15540 42 4f 4f 4c 45 41 4e 20 42 61 74 74 65 72 79 50 BOOLEAN BatteryP
15550 72 65 73 65 6e 74 3b 0d 0a 20 20 42 4f 4f 4c 45 resent;.. BOOLE
15560 41 4e 20 43 68 61 72 67 69 6e 67 3b 0d 0a 20 20 AN Charging;..
15570 42 4f 4f 4c 45 41 4e 20 44 69 73 63 68 61 72 67 BOOLEAN Discharg
15580 69 6e 67 3b 0d 0a 20 20 42 4f 4f 4c 45 41 4e 20 ing;.. BOOLEAN
15590 53 70 61 72 65 31 5b 34 5d 3b 0d 0a 20 20 44 57 Spare1[4];.. DW
155a0 4f 52 44 20 4d 61 78 43 61 70 61 63 69 74 79 3b ORD MaxCapacity;
155b0 0d 0a 20 20 44 57 4f 52 44 20 52 65 6d 61 69 6e .. DWORD Remain
155c0 69 6e 67 43 61 70 61 63 69 74 79 3b 0d 0a 20 20 ingCapacity;..
155d0 44 57 4f 52 44 20 52 61 74 65 3b 0d 0a 20 20 44 DWORD Rate;.. D
155e0 57 4f 52 44 20 45 73 74 69 6d 61 74 65 64 54 69 WORD EstimatedTi
155f0 6d 65 3b 0d 0a 20 20 44 57 4f 52 44 20 44 65 66 me;.. DWORD Def
15600 61 75 6c 74 41 6c 65 72 74 31 3b 0d 0a 20 20 44 aultAlert1;.. D
15610 57 4f 52 44 20 44 65 66 61 75 6c 74 41 6c 65 72 WORD DefaultAler
15620 74 32 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 5f 31 t2;..}..alias _1
15630 31 20 53 59 53 54 45 4d 5f 42 41 54 54 45 52 59 1 SYSTEM_BATTERY
15640 5f 53 54 41 54 45 3b 0d 0a 61 6c 69 61 73 20 5f _STATE;..alias _
15650 31 31 2a 20 50 53 59 53 54 45 4d 5f 42 41 54 54 11* PSYSTEM_BATT
15660 45 52 59 5f 53 54 41 54 45 3b 0d 0a 0d 0a 2f 2f ERY_STATE;....//
15670 20 23 69 66 6e 64 65 66 20 5f 4d 41 43 0d 0a 0d #ifndef _MAC...
15680 0a 61 6c 69 67 6e 28 34 29 3a 0d 0a 0d 0a 65 6e .align(4):....en
15690 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 4d 41 47 um : uint { IMAG
156a0 45 5f 44 4f 53 5f 53 49 47 4e 41 54 55 52 45 20 E_DOS_SIGNATURE
156b0 3d 20 30 78 35 41 34 44 20 7d 0d 0a 65 6e 75 6d = 0x5A4D }..enum
156c0 20 3a 20 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f : uint { IMAGE_
156d0 4f 53 32 5f 53 49 47 4e 41 54 55 52 45 20 3d 20 OS2_SIGNATURE =
156e0 30 78 34 35 34 45 20 7d 0d 0a 65 6e 75 6d 20 3a 0x454E }..enum :
156f0 20 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f 4f 53 uint { IMAGE_OS
15700 32 5f 53 49 47 4e 41 54 55 52 45 5f 4c 45 20 3d 2_SIGNATURE_LE =
15710 20 30 78 34 35 34 43 20 7d 0d 0a 65 6e 75 6d 20 0x454C }..enum
15720 3a 20 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f 56 : uint { IMAGE_V
15730 58 44 5f 53 49 47 4e 41 54 55 52 45 20 3d 20 30 XD_SIGNATURE = 0
15740 78 34 35 34 43 20 7d 0d 0a 65 6e 75 6d 20 3a 20 x454C }..enum :
15750 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f 4e 54 5f uint { IMAGE_NT_
15760 53 49 47 4e 41 54 55 52 45 20 3d 20 30 78 30 30 SIGNATURE = 0x00
15770 30 30 34 35 35 30 20 7d 0d 0a 0d 0a 61 6c 69 67 004550 }....alig
15780 6e 28 32 29 3a 0d 0a 0d 0a 2f 2f 20 23 65 6c 73 n(2):....// #els
15790 65 0d 0a 0d 0a 2f 2f 20 23 2e 2e 2e 0d 0a 0d 0a e....// #.......
157a0 2f 2f 20 23 2e 2e 2e 0d 0a 2f 2f 20 23 2e 2e 2e // #.....// #...
157b0 0d 0a 2f 2f 20 23 2e 2e 2e 0d 0a 2f 2f 20 23 2e ..// #.....// #.
157c0 2e 2e 0d 0a 2f 2f 20 23 65 6e 64 69 66 0d 0a 0d ....// #endif...
157d0 0a 73 74 72 75 63 74 20 5f 49 4d 41 47 45 5f 44 .struct _IMAGE_D
157e0 4f 53 5f 48 45 41 44 45 52 20 7b 0d 0a 20 20 57 OS_HEADER {.. W
157f0 4f 52 44 20 65 5f 6d 61 67 69 63 3b 0d 0a 20 20 ORD e_magic;..
15800 57 4f 52 44 20 65 5f 63 62 6c 70 3b 0d 0a 20 20 WORD e_cblp;..
15810 57 4f 52 44 20 65 5f 63 70 3b 0d 0a 20 20 57 4f WORD e_cp;.. WO
15820 52 44 20 65 5f 63 72 6c 63 3b 0d 0a 20 20 57 4f RD e_crlc;.. WO
15830 52 44 20 65 5f 63 70 61 72 68 64 72 3b 0d 0a 20 RD e_cparhdr;..
15840 20 57 4f 52 44 20 65 5f 6d 69 6e 61 6c 6c 6f 63 WORD e_minalloc
15850 3b 0d 0a 20 20 57 4f 52 44 20 65 5f 6d 61 78 61 ;.. WORD e_maxa
15860 6c 6c 6f 63 3b 0d 0a 20 20 57 4f 52 44 20 65 5f lloc;.. WORD e_
15870 73 73 3b 0d 0a 20 20 57 4f 52 44 20 65 5f 73 70 ss;.. WORD e_sp
15880 3b 0d 0a 20 20 57 4f 52 44 20 65 5f 63 73 75 6d ;.. WORD e_csum
15890 3b 0d 0a 20 20 57 4f 52 44 20 65 5f 69 70 3b 0d ;.. WORD e_ip;.
158a0 0a 20 20 57 4f 52 44 20 65 5f 63 73 3b 0d 0a 20 . WORD e_cs;..
158b0 20 57 4f 52 44 20 65 5f 6c 66 61 72 6c 63 3b 0d WORD e_lfarlc;.
158c0 0a 20 20 57 4f 52 44 20 65 5f 6f 76 6e 6f 3b 0d . WORD e_ovno;.
158d0 0a 20 20 57 4f 52 44 20 65 5f 72 65 73 5b 34 5d . WORD e_res[4]
158e0 3b 0d 0a 20 20 57 4f 52 44 20 65 5f 6f 65 6d 69 ;.. WORD e_oemi
158f0 64 3b 0d 0a 20 20 57 4f 52 44 20 65 5f 6f 65 6d d;.. WORD e_oem
15900 69 6e 66 6f 3b 0d 0a 20 20 57 4f 52 44 20 65 5f info;.. WORD e_
15910 72 65 73 32 5b 31 30 5d 3b 0d 0a 20 20 4c 4f 4e res2[10];.. LON
15920 47 20 65 5f 6c 66 61 6e 65 77 3b 0d 0a 7d 0d 0a G e_lfanew;..}..
15930 61 6c 69 61 73 20 5f 49 4d 41 47 45 5f 44 4f 53 alias _IMAGE_DOS
15940 5f 48 45 41 44 45 52 20 49 4d 41 47 45 5f 44 4f _HEADER IMAGE_DO
15950 53 5f 48 45 41 44 45 52 3b 0d 0a 61 6c 69 61 73 S_HEADER;..alias
15960 20 5f 49 4d 41 47 45 5f 44 4f 53 5f 48 45 41 44 _IMAGE_DOS_HEAD
15970 45 52 2a 20 50 49 4d 41 47 45 5f 44 4f 53 5f 48 ER* PIMAGE_DOS_H
15980 45 41 44 45 52 3b 0d 0a 0d 0a 73 74 72 75 63 74 EADER;....struct
15990 20 5f 49 4d 41 47 45 5f 4f 53 32 5f 48 45 41 44 _IMAGE_OS2_HEAD
159a0 45 52 20 7b 0d 0a 20 20 57 4f 52 44 20 6e 65 5f ER {.. WORD ne_
159b0 6d 61 67 69 63 3b 0d 0a 20 20 43 48 41 52 20 6e magic;.. CHAR n
159c0 65 5f 76 65 72 3b 0d 0a 20 20 43 48 41 52 20 6e e_ver;.. CHAR n
159d0 65 5f 72 65 76 3b 0d 0a 20 20 57 4f 52 44 20 6e e_rev;.. WORD n
159e0 65 5f 65 6e 74 74 61 62 3b 0d 0a 20 20 57 4f 52 e_enttab;.. WOR
159f0 44 20 6e 65 5f 63 62 65 6e 74 74 61 62 3b 0d 0a D ne_cbenttab;..
15a00 20 20 4c 4f 4e 47 20 6e 65 5f 63 72 63 3b 0d 0a LONG ne_crc;..
15a10 20 20 57 4f 52 44 20 6e 65 5f 66 6c 61 67 73 3b WORD ne_flags;
15a20 0d 0a 20 20 57 4f 52 44 20 6e 65 5f 61 75 74 6f .. WORD ne_auto
15a30 64 61 74 61 3b 0d 0a 20 20 57 4f 52 44 20 6e 65 data;.. WORD ne
15a40 5f 68 65 61 70 3b 0d 0a 20 20 57 4f 52 44 20 6e _heap;.. WORD n
15a50 65 5f 73 74 61 63 6b 3b 0d 0a 20 20 4c 4f 4e 47 e_stack;.. LONG
15a60 20 6e 65 5f 63 73 69 70 3b 0d 0a 20 20 4c 4f 4e ne_csip;.. LON
15a70 47 20 6e 65 5f 73 73 73 70 3b 0d 0a 20 20 57 4f G ne_sssp;.. WO
15a80 52 44 20 6e 65 5f 63 73 65 67 3b 0d 0a 20 20 57 RD ne_cseg;.. W
15a90 4f 52 44 20 6e 65 5f 63 6d 6f 64 3b 0d 0a 20 20 ORD ne_cmod;..
15aa0 57 4f 52 44 20 6e 65 5f 63 62 6e 72 65 73 74 61 WORD ne_cbnresta
15ab0 62 3b 0d 0a 20 20 57 4f 52 44 20 6e 65 5f 73 65 b;.. WORD ne_se
15ac0 67 74 61 62 3b 0d 0a 20 20 57 4f 52 44 20 6e 65 gtab;.. WORD ne
15ad0 5f 72 73 72 63 74 61 62 3b 0d 0a 20 20 57 4f 52 _rsrctab;.. WOR
15ae0 44 20 6e 65 5f 72 65 73 74 61 62 3b 0d 0a 20 20 D ne_restab;..
15af0 57 4f 52 44 20 6e 65 5f 6d 6f 64 74 61 62 3b 0d WORD ne_modtab;.
15b00 0a 20 20 57 4f 52 44 20 6e 65 5f 69 6d 70 74 61 . WORD ne_impta
15b10 62 3b 0d 0a 20 20 4c 4f 4e 47 20 6e 65 5f 6e 72 b;.. LONG ne_nr
15b20 65 73 74 61 62 3b 0d 0a 20 20 57 4f 52 44 20 6e estab;.. WORD n
15b30 65 5f 63 6d 6f 76 65 6e 74 3b 0d 0a 20 20 57 4f e_cmovent;.. WO
15b40 52 44 20 6e 65 5f 61 6c 69 67 6e 3b 0d 0a 20 20 RD ne_align;..
15b50 57 4f 52 44 20 6e 65 5f 63 72 65 73 3b 0d 0a 20 WORD ne_cres;..
15b60 20 42 59 54 45 20 6e 65 5f 65 78 65 74 79 70 3b BYTE ne_exetyp;
15b70 0d 0a 20 20 42 59 54 45 20 6e 65 5f 66 6c 61 67 .. BYTE ne_flag
15b80 73 6f 74 68 65 72 73 3b 0d 0a 20 20 57 4f 52 44 sothers;.. WORD
15b90 20 6e 65 5f 70 72 65 74 74 68 75 6e 6b 73 3b 0d ne_pretthunks;.
15ba0 0a 20 20 57 4f 52 44 20 6e 65 5f 70 73 65 67 72 . WORD ne_psegr
15bb0 65 66 62 79 74 65 73 3b 0d 0a 20 20 57 4f 52 44 efbytes;.. WORD
15bc0 20 6e 65 5f 73 77 61 70 61 72 65 61 3b 0d 0a 20 ne_swaparea;..
15bd0 20 57 4f 52 44 20 6e 65 5f 65 78 70 76 65 72 3b WORD ne_expver;
15be0 0d 0a 7d 0d 0a 61 6c 69 61 73 20 5f 49 4d 41 47 ..}..alias _IMAG
15bf0 45 5f 4f 53 32 5f 48 45 41 44 45 52 20 49 4d 41 E_OS2_HEADER IMA
15c00 47 45 5f 4f 53 32 5f 48 45 41 44 45 52 3b 0d 0a GE_OS2_HEADER;..
15c10 61 6c 69 61 73 20 5f 49 4d 41 47 45 5f 4f 53 32 alias _IMAGE_OS2
15c20 5f 48 45 41 44 45 52 2a 20 50 49 4d 41 47 45 5f _HEADER* PIMAGE_
15c30 4f 53 32 5f 48 45 41 44 45 52 3b 0d 0a 0d 0a 73 OS2_HEADER;....s
15c40 74 72 75 63 74 20 5f 49 4d 41 47 45 5f 56 58 44 truct _IMAGE_VXD
15c50 5f 48 45 41 44 45 52 20 7b 0d 0a 20 20 57 4f 52 _HEADER {.. WOR
15c60 44 20 65 33 32 5f 6d 61 67 69 63 3b 0d 0a 20 20 D e32_magic;..
15c70 42 59 54 45 20 65 33 32 5f 62 6f 72 64 65 72 3b BYTE e32_border;
15c80 0d 0a 20 20 42 59 54 45 20 65 33 32 5f 77 6f 72 .. BYTE e32_wor
15c90 64 65 72 3b 0d 0a 20 20 44 57 4f 52 44 20 65 33 der;.. DWORD e3
15ca0 32 5f 6c 65 76 65 6c 3b 0d 0a 20 20 57 4f 52 44 2_level;.. WORD
15cb0 20 65 33 32 5f 63 70 75 3b 0d 0a 20 20 57 4f 52 e32_cpu;.. WOR
15cc0 44 20 65 33 32 5f 6f 73 3b 0d 0a 20 20 44 57 4f D e32_os;.. DWO
15cd0 52 44 20 65 33 32 5f 76 65 72 3b 0d 0a 20 20 44 RD e32_ver;.. D
15ce0 57 4f 52 44 20 65 33 32 5f 6d 66 6c 61 67 73 3b WORD e32_mflags;
15cf0 0d 0a 20 20 44 57 4f 52 44 20 65 33 32 5f 6d 70 .. DWORD e32_mp
15d00 61 67 65 73 3b 0d 0a 20 20 44 57 4f 52 44 20 65 ages;.. DWORD e
15d10 33 32 5f 73 74 61 72 74 6f 62 6a 3b 0d 0a 20 20 32_startobj;..
15d20 44 57 4f 52 44 20 65 33 32 5f 65 69 70 3b 0d 0a DWORD e32_eip;..
15d30 20 20 44 57 4f 52 44 20 65 33 32 5f 73 74 61 63 DWORD e32_stac
15d40 6b 6f 62 6a 3b 0d 0a 20 20 44 57 4f 52 44 20 65 kobj;.. DWORD e
15d50 33 32 5f 65 73 70 3b 0d 0a 20 20 44 57 4f 52 44 32_esp;.. DWORD
15d60 20 65 33 32 5f 70 61 67 65 73 69 7a 65 3b 0d 0a e32_pagesize;..
15d70 20 20 44 57 4f 52 44 20 65 33 32 5f 6c 61 73 74 DWORD e32_last
15d80 70 61 67 65 73 69 7a 65 3b 0d 0a 20 20 44 57 4f pagesize;.. DWO
15d90 52 44 20 65 33 32 5f 66 69 78 75 70 73 69 7a 65 RD e32_fixupsize
15da0 3b 0d 0a 20 20 44 57 4f 52 44 20 65 33 32 5f 66 ;.. DWORD e32_f
15db0 69 78 75 70 73 75 6d 3b 0d 0a 20 20 44 57 4f 52 ixupsum;.. DWOR
15dc0 44 20 65 33 32 5f 6c 64 72 73 69 7a 65 3b 0d 0a D e32_ldrsize;..
15dd0 20 20 44 57 4f 52 44 20 65 33 32 5f 6c 64 72 73 DWORD e32_ldrs
15de0 75 6d 3b 0d 0a 20 20 44 57 4f 52 44 20 65 33 32 um;.. DWORD e32
15df0 5f 6f 62 6a 74 61 62 3b 0d 0a 20 20 44 57 4f 52 _objtab;.. DWOR
15e00 44 20 65 33 32 5f 6f 62 6a 63 6e 74 3b 0d 0a 20 D e32_objcnt;..
15e10 20 44 57 4f 52 44 20 65 33 32 5f 6f 62 6a 6d 61 DWORD e32_objma
15e20 70 3b 0d 0a 20 20 44 57 4f 52 44 20 65 33 32 5f p;.. DWORD e32_
15e30 69 74 65 72 6d 61 70 3b 0d 0a 20 20 44 57 4f 52 itermap;.. DWOR
15e40 44 20 65 33 32 5f 72 73 72 63 74 61 62 3b 0d 0a D e32_rsrctab;..
15e50 20 20 44 57 4f 52 44 20 65 33 32 5f 72 73 72 63 DWORD e32_rsrc
15e60 63 6e 74 3b 0d 0a 20 20 44 57 4f 52 44 20 65 33 cnt;.. DWORD e3
15e70 32 5f 72 65 73 74 61 62 3b 0d 0a 20 20 44 57 4f 2_restab;.. DWO
15e80 52 44 20 65 33 32 5f 65 6e 74 74 61 62 3b 0d 0a RD e32_enttab;..
15e90 20 20 44 57 4f 52 44 20 65 33 32 5f 64 69 72 74 DWORD e32_dirt
15ea0 61 62 3b 0d 0a 20 20 44 57 4f 52 44 20 65 33 32 ab;.. DWORD e32
15eb0 5f 64 69 72 63 6e 74 3b 0d 0a 20 20 44 57 4f 52 _dircnt;.. DWOR
15ec0 44 20 65 33 32 5f 66 70 61 67 65 74 61 62 3b 0d D e32_fpagetab;.
15ed0 0a 20 20 44 57 4f 52 44 20 65 33 32 5f 66 72 65 . DWORD e32_fre
15ee0 63 74 61 62 3b 0d 0a 20 20 44 57 4f 52 44 20 65 ctab;.. DWORD e
15ef0 33 32 5f 69 6d 70 6d 6f 64 3b 0d 0a 20 20 44 57 32_impmod;.. DW
15f00 4f 52 44 20 65 33 32 5f 69 6d 70 6d 6f 64 63 6e ORD e32_impmodcn
15f10 74 3b 0d 0a 20 20 44 57 4f 52 44 20 65 33 32 5f t;.. DWORD e32_
15f20 69 6d 70 70 72 6f 63 3b 0d 0a 20 20 44 57 4f 52 impproc;.. DWOR
15f30 44 20 65 33 32 5f 70 61 67 65 73 75 6d 3b 0d 0a D e32_pagesum;..
15f40 20 20 44 57 4f 52 44 20 65 33 32 5f 64 61 74 61 DWORD e32_data
15f50 70 61 67 65 3b 0d 0a 20 20 44 57 4f 52 44 20 65 page;.. DWORD e
15f60 33 32 5f 70 72 65 6c 6f 61 64 3b 0d 0a 20 20 44 32_preload;.. D
15f70 57 4f 52 44 20 65 33 32 5f 6e 72 65 73 74 61 62 WORD e32_nrestab
15f80 3b 0d 0a 20 20 44 57 4f 52 44 20 65 33 32 5f 63 ;.. DWORD e32_c
15f90 62 6e 72 65 73 74 61 62 3b 0d 0a 20 20 44 57 4f bnrestab;.. DWO
15fa0 52 44 20 65 33 32 5f 6e 72 65 73 73 75 6d 3b 0d RD e32_nressum;.
15fb0 0a 20 20 44 57 4f 52 44 20 65 33 32 5f 61 75 74 . DWORD e32_aut
15fc0 6f 64 61 74 61 3b 0d 0a 20 20 44 57 4f 52 44 20 odata;.. DWORD
15fd0 65 33 32 5f 64 65 62 75 67 69 6e 66 6f 3b 0d 0a e32_debuginfo;..
15fe0 20 20 44 57 4f 52 44 20 65 33 32 5f 64 65 62 75 DWORD e32_debu
15ff0 67 6c 65 6e 3b 0d 0a 20 20 44 57 4f 52 44 20 65 glen;.. DWORD e
16000 33 32 5f 69 6e 73 74 70 72 65 6c 6f 61 64 3b 0d 32_instpreload;.
16010 0a 20 20 44 57 4f 52 44 20 65 33 32 5f 69 6e 73 . DWORD e32_ins
16020 74 64 65 6d 61 6e 64 3b 0d 0a 20 20 44 57 4f 52 tdemand;.. DWOR
16030 44 20 65 33 32 5f 68 65 61 70 73 69 7a 65 3b 0d D e32_heapsize;.
16040 0a 20 20 42 59 54 45 20 65 33 32 5f 72 65 73 33 . BYTE e32_res3
16050 5b 31 32 5d 3b 0d 0a 20 20 44 57 4f 52 44 20 65 [12];.. DWORD e
16060 33 32 5f 77 69 6e 72 65 73 6f 66 66 3b 0d 0a 20 32_winresoff;..
16070 20 44 57 4f 52 44 20 65 33 32 5f 77 69 6e 72 65 DWORD e32_winre
16080 73 6c 65 6e 3b 0d 0a 20 20 57 4f 52 44 20 65 33 slen;.. WORD e3
16090 32 5f 64 65 76 69 64 3b 0d 0a 20 20 57 4f 52 44 2_devid;.. WORD
160a0 20 65 33 32 5f 64 64 6b 76 65 72 3b 0d 0a 7d 0d e32_ddkver;..}.
160b0 0a 61 6c 69 61 73 20 5f 49 4d 41 47 45 5f 56 58 .alias _IMAGE_VX
160c0 44 5f 48 45 41 44 45 52 20 49 4d 41 47 45 5f 56 D_HEADER IMAGE_V
160d0 58 44 5f 48 45 41 44 45 52 3b 0d 0a 61 6c 69 61 XD_HEADER;..alia
160e0 73 20 5f 49 4d 41 47 45 5f 56 58 44 5f 48 45 41 s _IMAGE_VXD_HEA
160f0 44 45 52 2a 20 50 49 4d 41 47 45 5f 56 58 44 5f DER* PIMAGE_VXD_
16100 48 45 41 44 45 52 3b 0d 0a 0d 0a 2f 2f 20 23 69 HEADER;....// #i
16110 66 6e 64 65 66 20 5f 4d 41 43 0d 0a 61 6c 69 67 fndef _MAC..alig
16120 6e 3a 0d 0a 2f 2f 20 23 65 6e 64 69 66 0d 0a 0d n:..// #endif...
16130 0a 73 74 72 75 63 74 20 5f 49 4d 41 47 45 5f 46 .struct _IMAGE_F
16140 49 4c 45 5f 48 45 41 44 45 52 20 7b 0d 0a 20 20 ILE_HEADER {..
16150 57 4f 52 44 20 4d 61 63 68 69 6e 65 3b 0d 0a 20 WORD Machine;..
16160 20 57 4f 52 44 20 4e 75 6d 62 65 72 4f 66 53 65 WORD NumberOfSe
16170 63 74 69 6f 6e 73 3b 0d 0a 20 20 44 57 4f 52 44 ctions;.. DWORD
16180 20 54 69 6d 65 44 61 74 65 53 74 61 6d 70 3b 0d TimeDateStamp;.
16190 0a 20 20 44 57 4f 52 44 20 50 6f 69 6e 74 65 72 . DWORD Pointer
161a0 54 6f 53 79 6d 62 6f 6c 54 61 62 6c 65 3b 0d 0a ToSymbolTable;..
161b0 20 20 44 57 4f 52 44 20 4e 75 6d 62 65 72 4f 66 DWORD NumberOf
161c0 53 79 6d 62 6f 6c 73 3b 0d 0a 20 20 57 4f 52 44 Symbols;.. WORD
161d0 20 53 69 7a 65 4f 66 4f 70 74 69 6f 6e 61 6c 48 SizeOfOptionalH
161e0 65 61 64 65 72 3b 0d 0a 20 20 57 4f 52 44 20 43 eader;.. WORD C
161f0 68 61 72 61 63 74 65 72 69 73 74 69 63 73 3b 0d haracteristics;.
16200 0a 7d 0d 0a 61 6c 69 61 73 20 5f 49 4d 41 47 45 .}..alias _IMAGE
16210 5f 46 49 4c 45 5f 48 45 41 44 45 52 20 49 4d 41 _FILE_HEADER IMA
16220 47 45 5f 46 49 4c 45 5f 48 45 41 44 45 52 3b 0d GE_FILE_HEADER;.
16230 0a 61 6c 69 61 73 20 5f 49 4d 41 47 45 5f 46 49 .alias _IMAGE_FI
16240 4c 45 5f 48 45 41 44 45 52 2a 20 50 49 4d 41 47 LE_HEADER* PIMAG
16250 45 5f 46 49 4c 45 5f 48 45 41 44 45 52 3b 0d 0a E_FILE_HEADER;..
16260 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
16270 49 4d 41 47 45 5f 53 49 5a 45 4f 46 5f 46 49 4c IMAGE_SIZEOF_FIL
16280 45 5f 48 45 41 44 45 52 20 3d 20 32 30 20 7d 0d E_HEADER = 20 }.
16290 0a 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b ...enum : uint {
162a0 20 49 4d 41 47 45 5f 46 49 4c 45 5f 52 45 4c 4f IMAGE_FILE_RELO
162b0 43 53 5f 53 54 52 49 50 50 45 44 20 3d 20 30 78 CS_STRIPPED = 0x
162c0 30 30 30 31 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 0001 }..enum : u
162d0 69 6e 74 20 7b 20 49 4d 41 47 45 5f 46 49 4c 45 int { IMAGE_FILE
162e0 5f 45 58 45 43 55 54 41 42 4c 45 5f 49 4d 41 47 _EXECUTABLE_IMAG
162f0 45 20 3d 20 30 78 30 30 30 32 20 7d 0d 0a 65 6e E = 0x0002 }..en
16300 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 4d 41 47 um : uint { IMAG
16310 45 5f 46 49 4c 45 5f 4c 49 4e 45 5f 4e 55 4d 53 E_FILE_LINE_NUMS
16320 5f 53 54 52 49 50 50 45 44 20 3d 20 30 78 30 30 _STRIPPED = 0x00
16330 30 34 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 04 }..enum : uin
16340 74 20 7b 20 49 4d 41 47 45 5f 46 49 4c 45 5f 4c t { IMAGE_FILE_L
16350 4f 43 41 4c 5f 53 59 4d 53 5f 53 54 52 49 50 50 OCAL_SYMS_STRIPP
16360 45 44 20 3d 20 30 78 30 30 30 38 20 7d 0d 0a 65 ED = 0x0008 }..e
16370 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 4d 41 num : uint { IMA
16380 47 45 5f 46 49 4c 45 5f 41 47 47 52 45 53 49 56 GE_FILE_AGGRESIV
16390 45 5f 57 53 5f 54 52 49 4d 20 3d 20 30 78 30 30 E_WS_TRIM = 0x00
163a0 31 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 10 }..enum : uin
163b0 74 20 7b 20 49 4d 41 47 45 5f 46 49 4c 45 5f 4c t { IMAGE_FILE_L
163c0 41 52 47 45 5f 41 44 44 52 45 53 53 5f 41 57 41 ARGE_ADDRESS_AWA
163d0 52 45 20 3d 20 30 78 30 30 32 30 20 7d 0d 0a 65 RE = 0x0020 }..e
163e0 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 4d 41 num : uint { IMA
163f0 47 45 5f 46 49 4c 45 5f 42 59 54 45 53 5f 52 45 GE_FILE_BYTES_RE
16400 56 45 52 53 45 44 5f 4c 4f 20 3d 20 30 78 30 30 VERSED_LO = 0x00
16410 38 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 80 }..enum : uin
16420 74 20 7b 20 49 4d 41 47 45 5f 46 49 4c 45 5f 33 t { IMAGE_FILE_3
16430 32 42 49 54 5f 4d 41 43 48 49 4e 45 20 3d 20 30 2BIT_MACHINE = 0
16440 78 30 31 30 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 x0100 }..enum :
16450 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f 46 49 4c uint { IMAGE_FIL
16460 45 5f 44 45 42 55 47 5f 53 54 52 49 50 50 45 44 E_DEBUG_STRIPPED
16470 20 3d 20 30 78 30 32 30 30 20 7d 0d 0a 65 6e 75 = 0x0200 }..enu
16480 6d 20 3a 20 75 69 6e 74 20 7b 20 49 4d 41 47 45 m : uint { IMAGE
16490 5f 46 49 4c 45 5f 52 45 4d 4f 56 41 42 4c 45 5f _FILE_REMOVABLE_
164a0 52 55 4e 5f 46 52 4f 4d 5f 53 57 41 50 20 3d 20 RUN_FROM_SWAP =
164b0 30 78 30 34 30 30 20 7d 0d 0a 65 6e 75 6d 20 3a 0x0400 }..enum :
164c0 20 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f 46 49 uint { IMAGE_FI
164d0 4c 45 5f 4e 45 54 5f 52 55 4e 5f 46 52 4f 4d 5f LE_NET_RUN_FROM_
164e0 53 57 41 50 20 3d 20 30 78 30 38 30 30 20 7d 0d SWAP = 0x0800 }.
164f0 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 .enum : uint { I
16500 4d 41 47 45 5f 46 49 4c 45 5f 53 59 53 54 45 4d MAGE_FILE_SYSTEM
16510 20 3d 20 30 78 31 30 30 30 20 7d 0d 0a 65 6e 75 = 0x1000 }..enu
16520 6d 20 3a 20 75 69 6e 74 20 7b 20 49 4d 41 47 45 m : uint { IMAGE
16530 5f 46 49 4c 45 5f 44 4c 4c 20 3d 20 30 78 32 30 _FILE_DLL = 0x20
16540 30 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 00 }..enum : uin
16550 74 20 7b 20 49 4d 41 47 45 5f 46 49 4c 45 5f 55 t { IMAGE_FILE_U
16560 50 5f 53 59 53 54 45 4d 5f 4f 4e 4c 59 20 3d 20 P_SYSTEM_ONLY =
16570 30 78 34 30 30 30 20 7d 0d 0a 65 6e 75 6d 20 3a 0x4000 }..enum :
16580 20 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f 46 49 uint { IMAGE_FI
16590 4c 45 5f 42 59 54 45 53 5f 52 45 56 45 52 53 45 LE_BYTES_REVERSE
165a0 44 5f 48 49 20 3d 20 30 78 38 30 30 30 20 7d 0d D_HI = 0x8000 }.
165b0 0a 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b ...enum : uint {
165c0 20 49 4d 41 47 45 5f 46 49 4c 45 5f 4d 41 43 48 IMAGE_FILE_MACH
165d0 49 4e 45 5f 55 4e 4b 4e 4f 57 4e 20 3d 20 30 20 INE_UNKNOWN = 0
165e0 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b }..enum : uint {
165f0 20 49 4d 41 47 45 5f 46 49 4c 45 5f 4d 41 43 48 IMAGE_FILE_MACH
16600 49 4e 45 5f 49 33 38 36 20 3d 20 30 78 30 31 34 INE_I386 = 0x014
16610 63 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 c }..enum : uint
16620 20 7b 20 49 4d 41 47 45 5f 46 49 4c 45 5f 4d 41 { IMAGE_FILE_MA
16630 43 48 49 4e 45 5f 52 33 30 30 30 20 3d 20 30 78 CHINE_R3000 = 0x
16640 30 31 36 32 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 0162 }..enum : u
16650 69 6e 74 20 7b 20 49 4d 41 47 45 5f 46 49 4c 45 int { IMAGE_FILE
16660 5f 4d 41 43 48 49 4e 45 5f 52 34 30 30 30 20 3d _MACHINE_R4000 =
16670 20 30 78 30 31 36 36 20 7d 0d 0a 65 6e 75 6d 20 0x0166 }..enum
16680 3a 20 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f 46 : uint { IMAGE_F
16690 49 4c 45 5f 4d 41 43 48 49 4e 45 5f 52 31 30 30 ILE_MACHINE_R100
166a0 30 30 20 3d 20 30 78 30 31 36 38 20 7d 0d 0a 65 00 = 0x0168 }..e
166b0 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 4d 41 num : uint { IMA
166c0 47 45 5f 46 49 4c 45 5f 4d 41 43 48 49 4e 45 5f GE_FILE_MACHINE_
166d0 57 43 45 4d 49 50 53 56 32 20 3d 20 30 78 30 31 WCEMIPSV2 = 0x01
166e0 36 39 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 69 }..enum : uin
166f0 74 20 7b 20 49 4d 41 47 45 5f 46 49 4c 45 5f 4d t { IMAGE_FILE_M
16700 41 43 48 49 4e 45 5f 41 4c 50 48 41 20 3d 20 30 ACHINE_ALPHA = 0
16710 78 30 31 38 34 20 7d 0d 0a 65 6e 75 6d 20 3a 20 x0184 }..enum :
16720 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f 46 49 4c uint { IMAGE_FIL
16730 45 5f 4d 41 43 48 49 4e 45 5f 53 48 33 20 3d 20 E_MACHINE_SH3 =
16740 30 78 30 31 61 32 20 7d 0d 0a 65 6e 75 6d 20 3a 0x01a2 }..enum :
16750 20 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f 46 49 uint { IMAGE_FI
16760 4c 45 5f 4d 41 43 48 49 4e 45 5f 53 48 33 44 53 LE_MACHINE_SH3DS
16770 50 20 3d 20 30 78 30 31 61 33 20 7d 0d 0a 65 6e P = 0x01a3 }..en
16780 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 4d 41 47 um : uint { IMAG
16790 45 5f 46 49 4c 45 5f 4d 41 43 48 49 4e 45 5f 53 E_FILE_MACHINE_S
167a0 48 33 45 20 3d 20 30 78 30 31 61 34 20 7d 0d 0a H3E = 0x01a4 }..
167b0 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 4d enum : uint { IM
167c0 41 47 45 5f 46 49 4c 45 5f 4d 41 43 48 49 4e 45 AGE_FILE_MACHINE
167d0 5f 53 48 34 20 3d 20 30 78 30 31 61 36 20 7d 0d _SH4 = 0x01a6 }.
167e0 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 .enum : uint { I
167f0 4d 41 47 45 5f 46 49 4c 45 5f 4d 41 43 48 49 4e MAGE_FILE_MACHIN
16800 45 5f 53 48 35 20 3d 20 30 78 30 31 61 38 20 7d E_SH5 = 0x01a8 }
16810 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
16820 49 4d 41 47 45 5f 46 49 4c 45 5f 4d 41 43 48 49 IMAGE_FILE_MACHI
16830 4e 45 5f 41 52 4d 20 3d 20 30 78 30 31 63 30 20 NE_ARM = 0x01c0
16840 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b }..enum : uint {
16850 20 49 4d 41 47 45 5f 46 49 4c 45 5f 4d 41 43 48 IMAGE_FILE_MACH
16860 49 4e 45 5f 54 48 55 4d 42 20 3d 20 30 78 30 31 INE_THUMB = 0x01
16870 63 32 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e c2 }..enum : uin
16880 74 20 7b 20 49 4d 41 47 45 5f 46 49 4c 45 5f 4d t { IMAGE_FILE_M
16890 41 43 48 49 4e 45 5f 41 4d 33 33 20 3d 20 30 78 ACHINE_AM33 = 0x
168a0 30 31 64 33 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 01d3 }..enum : u
168b0 69 6e 74 20 7b 20 49 4d 41 47 45 5f 46 49 4c 45 int { IMAGE_FILE
168c0 5f 4d 41 43 48 49 4e 45 5f 50 4f 57 45 52 50 43 _MACHINE_POWERPC
168d0 20 3d 20 30 78 30 31 46 30 20 7d 0d 0a 65 6e 75 = 0x01F0 }..enu
168e0 6d 20 3a 20 75 69 6e 74 20 7b 20 49 4d 41 47 45 m : uint { IMAGE
168f0 5f 46 49 4c 45 5f 4d 41 43 48 49 4e 45 5f 50 4f _FILE_MACHINE_PO
16900 57 45 52 50 43 46 50 20 3d 20 30 78 30 31 66 31 WERPCFP = 0x01f1
16910 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 }..enum : uint
16920 7b 20 49 4d 41 47 45 5f 46 49 4c 45 5f 4d 41 43 { IMAGE_FILE_MAC
16930 48 49 4e 45 5f 49 41 36 34 20 3d 20 30 78 30 32 HINE_IA64 = 0x02
16940 30 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 00 }..enum : uin
16950 74 20 7b 20 49 4d 41 47 45 5f 46 49 4c 45 5f 4d t { IMAGE_FILE_M
16960 41 43 48 49 4e 45 5f 4d 49 50 53 31 36 20 3d 20 ACHINE_MIPS16 =
16970 30 78 30 32 36 36 20 7d 0d 0a 65 6e 75 6d 20 3a 0x0266 }..enum :
16980 20 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f 46 49 uint { IMAGE_FI
16990 4c 45 5f 4d 41 43 48 49 4e 45 5f 41 4c 50 48 41 LE_MACHINE_ALPHA
169a0 36 34 20 3d 20 30 78 30 32 38 34 20 7d 0d 0a 65 64 = 0x0284 }..e
169b0 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 4d 41 num : uint { IMA
169c0 47 45 5f 46 49 4c 45 5f 4d 41 43 48 49 4e 45 5f GE_FILE_MACHINE_
169d0 4d 49 50 53 46 50 55 20 3d 20 30 78 30 33 36 36 MIPSFPU = 0x0366
169e0 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 }..enum : uint
169f0 7b 20 49 4d 41 47 45 5f 46 49 4c 45 5f 4d 41 43 { IMAGE_FILE_MAC
16a00 48 49 4e 45 5f 4d 49 50 53 46 50 55 31 36 20 3d HINE_MIPSFPU16 =
16a10 20 30 78 30 34 36 36 20 7d 0d 0a 61 6c 69 61 73 0x0466 }..alias
16a20 20 49 4d 41 47 45 5f 46 49 4c 45 5f 4d 41 43 48 IMAGE_FILE_MACH
16a30 49 4e 45 5f 41 4c 50 48 41 36 34 20 49 4d 41 47 INE_ALPHA64 IMAG
16a40 45 5f 46 49 4c 45 5f 4d 41 43 48 49 4e 45 5f 41 E_FILE_MACHINE_A
16a50 58 50 36 34 3b 0d 0a 65 6e 75 6d 20 3a 20 75 69 XP64;..enum : ui
16a60 6e 74 20 7b 20 49 4d 41 47 45 5f 46 49 4c 45 5f nt { IMAGE_FILE_
16a70 4d 41 43 48 49 4e 45 5f 54 52 49 43 4f 52 45 20 MACHINE_TRICORE
16a80 3d 20 30 78 30 35 32 30 20 7d 0d 0a 65 6e 75 6d = 0x0520 }..enum
16a90 20 3a 20 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f : uint { IMAGE_
16aa0 46 49 4c 45 5f 4d 41 43 48 49 4e 45 5f 43 45 46 FILE_MACHINE_CEF
16ab0 20 3d 20 30 78 30 43 45 46 20 7d 0d 0a 65 6e 75 = 0x0CEF }..enu
16ac0 6d 20 3a 20 75 69 6e 74 20 7b 20 49 4d 41 47 45 m : uint { IMAGE
16ad0 5f 46 49 4c 45 5f 4d 41 43 48 49 4e 45 5f 45 42 _FILE_MACHINE_EB
16ae0 43 20 3d 20 30 78 30 45 42 43 20 7d 0d 0a 65 6e C = 0x0EBC }..en
16af0 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 4d 41 47 um : uint { IMAG
16b00 45 5f 46 49 4c 45 5f 4d 41 43 48 49 4e 45 5f 41 E_FILE_MACHINE_A
16b10 4d 44 36 34 20 3d 20 30 78 38 36 36 34 20 7d 0d MD64 = 0x8664 }.
16b20 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 .enum : uint { I
16b30 4d 41 47 45 5f 46 49 4c 45 5f 4d 41 43 48 49 4e MAGE_FILE_MACHIN
16b40 45 5f 4d 33 32 52 20 3d 20 30 78 39 30 34 31 20 E_M32R = 0x9041
16b50 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b }..enum : uint {
16b60 20 49 4d 41 47 45 5f 46 49 4c 45 5f 4d 41 43 48 IMAGE_FILE_MACH
16b70 49 4e 45 5f 43 45 45 20 3d 20 30 78 43 30 45 45 INE_CEE = 0xC0EE
16b80 20 7d 0d 0a 0d 0a 73 74 72 75 63 74 20 5f 49 4d }....struct _IM
16b90 41 47 45 5f 44 41 54 41 5f 44 49 52 45 43 54 4f AGE_DATA_DIRECTO
16ba0 52 59 20 7b 0d 0a 20 20 44 57 4f 52 44 20 56 69 RY {.. DWORD Vi
16bb0 72 74 75 61 6c 41 64 64 72 65 73 73 3b 0d 0a 20 rtualAddress;..
16bc0 20 44 57 4f 52 44 20 53 69 7a 65 3b 0d 0a 7d 0d DWORD Size;..}.
16bd0 0a 61 6c 69 61 73 20 5f 49 4d 41 47 45 5f 44 41 .alias _IMAGE_DA
16be0 54 41 5f 44 49 52 45 43 54 4f 52 59 20 49 4d 41 TA_DIRECTORY IMA
16bf0 47 45 5f 44 41 54 41 5f 44 49 52 45 43 54 4f 52 GE_DATA_DIRECTOR
16c00 59 3b 0d 0a 61 6c 69 61 73 20 5f 49 4d 41 47 45 Y;..alias _IMAGE
16c10 5f 44 41 54 41 5f 44 49 52 45 43 54 4f 52 59 2a _DATA_DIRECTORY*
16c20 20 50 49 4d 41 47 45 5f 44 41 54 41 5f 44 49 52 PIMAGE_DATA_DIR
16c30 45 43 54 4f 52 59 3b 0d 0a 0d 0a 65 6e 75 6d 20 ECTORY;....enum
16c40 3a 20 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f 4e : uint { IMAGE_N
16c50 55 4d 42 45 52 4f 46 5f 44 49 52 45 43 54 4f 52 UMBEROF_DIRECTOR
16c60 59 5f 45 4e 54 52 49 45 53 20 3d 20 31 36 20 7d Y_ENTRIES = 16 }
16c70 0d 0a 0d 0a 73 74 72 75 63 74 20 5f 49 4d 41 47 ....struct _IMAG
16c80 45 5f 4f 50 54 49 4f 4e 41 4c 5f 48 45 41 44 45 E_OPTIONAL_HEADE
16c90 52 20 7b 0d 0a 0d 0a 20 20 57 4f 52 44 20 4d 61 R {.... WORD Ma
16ca0 67 69 63 3b 0d 0a 20 20 42 59 54 45 20 4d 61 6a gic;.. BYTE Maj
16cb0 6f 72 4c 69 6e 6b 65 72 56 65 72 73 69 6f 6e 3b orLinkerVersion;
16cc0 0d 0a 20 20 42 59 54 45 20 4d 69 6e 6f 72 4c 69 .. BYTE MinorLi
16cd0 6e 6b 65 72 56 65 72 73 69 6f 6e 3b 0d 0a 20 20 nkerVersion;..
16ce0 44 57 4f 52 44 20 53 69 7a 65 4f 66 43 6f 64 65 DWORD SizeOfCode
16cf0 3b 0d 0a 20 20 44 57 4f 52 44 20 53 69 7a 65 4f ;.. DWORD SizeO
16d00 66 49 6e 69 74 69 61 6c 69 7a 65 64 44 61 74 61 fInitializedData
16d10 3b 0d 0a 20 20 44 57 4f 52 44 20 53 69 7a 65 4f ;.. DWORD SizeO
16d20 66 55 6e 69 6e 69 74 69 61 6c 69 7a 65 64 44 61 fUninitializedDa
16d30 74 61 3b 0d 0a 20 20 44 57 4f 52 44 20 41 64 64 ta;.. DWORD Add
16d40 72 65 73 73 4f 66 45 6e 74 72 79 50 6f 69 6e 74 ressOfEntryPoint
16d50 3b 0d 0a 20 20 44 57 4f 52 44 20 42 61 73 65 4f ;.. DWORD BaseO
16d60 66 43 6f 64 65 3b 0d 0a 20 20 44 57 4f 52 44 20 fCode;.. DWORD
16d70 42 61 73 65 4f 66 44 61 74 61 3b 0d 0a 0d 0a 20 BaseOfData;....
16d80 20 44 57 4f 52 44 20 49 6d 61 67 65 42 61 73 65 DWORD ImageBase
16d90 3b 0d 0a 20 20 44 57 4f 52 44 20 53 65 63 74 69 ;.. DWORD Secti
16da0 6f 6e 41 6c 69 67 6e 6d 65 6e 74 3b 0d 0a 20 20 onAlignment;..
16db0 44 57 4f 52 44 20 46 69 6c 65 41 6c 69 67 6e 6d DWORD FileAlignm
16dc0 65 6e 74 3b 0d 0a 20 20 57 4f 52 44 20 4d 61 6a ent;.. WORD Maj
16dd0 6f 72 4f 70 65 72 61 74 69 6e 67 53 79 73 74 65 orOperatingSyste
16de0 6d 56 65 72 73 69 6f 6e 3b 0d 0a 20 20 57 4f 52 mVersion;.. WOR
16df0 44 20 4d 69 6e 6f 72 4f 70 65 72 61 74 69 6e 67 D MinorOperating
16e00 53 79 73 74 65 6d 56 65 72 73 69 6f 6e 3b 0d 0a SystemVersion;..
16e10 20 20 57 4f 52 44 20 4d 61 6a 6f 72 49 6d 61 67 WORD MajorImag
16e20 65 56 65 72 73 69 6f 6e 3b 0d 0a 20 20 57 4f 52 eVersion;.. WOR
16e30 44 20 4d 69 6e 6f 72 49 6d 61 67 65 56 65 72 73 D MinorImageVers
16e40 69 6f 6e 3b 0d 0a 20 20 57 4f 52 44 20 4d 61 6a ion;.. WORD Maj
16e50 6f 72 53 75 62 73 79 73 74 65 6d 56 65 72 73 69 orSubsystemVersi
16e60 6f 6e 3b 0d 0a 20 20 57 4f 52 44 20 4d 69 6e 6f on;.. WORD Mino
16e70 72 53 75 62 73 79 73 74 65 6d 56 65 72 73 69 6f rSubsystemVersio
16e80 6e 3b 0d 0a 20 20 44 57 4f 52 44 20 57 69 6e 33 n;.. DWORD Win3
16e90 32 56 65 72 73 69 6f 6e 56 61 6c 75 65 3b 0d 0a 2VersionValue;..
16ea0 20 20 44 57 4f 52 44 20 53 69 7a 65 4f 66 49 6d DWORD SizeOfIm
16eb0 61 67 65 3b 0d 0a 20 20 44 57 4f 52 44 20 53 69 age;.. DWORD Si
16ec0 7a 65 4f 66 48 65 61 64 65 72 73 3b 0d 0a 20 20 zeOfHeaders;..
16ed0 44 57 4f 52 44 20 43 68 65 63 6b 53 75 6d 3b 0d DWORD CheckSum;.
16ee0 0a 20 20 57 4f 52 44 20 53 75 62 73 79 73 74 65 . WORD Subsyste
16ef0 6d 3b 0d 0a 20 20 57 4f 52 44 20 44 6c 6c 43 68 m;.. WORD DllCh
16f00 61 72 61 63 74 65 72 69 73 74 69 63 73 3b 0d 0a aracteristics;..
16f10 20 20 44 57 4f 52 44 20 53 69 7a 65 4f 66 53 74 DWORD SizeOfSt
16f20 61 63 6b 52 65 73 65 72 76 65 3b 0d 0a 20 20 44 ackReserve;.. D
16f30 57 4f 52 44 20 53 69 7a 65 4f 66 53 74 61 63 6b WORD SizeOfStack
16f40 43 6f 6d 6d 69 74 3b 0d 0a 20 20 44 57 4f 52 44 Commit;.. DWORD
16f50 20 53 69 7a 65 4f 66 48 65 61 70 52 65 73 65 72 SizeOfHeapReser
16f60 76 65 3b 0d 0a 20 20 44 57 4f 52 44 20 53 69 7a ve;.. DWORD Siz
16f70 65 4f 66 48 65 61 70 43 6f 6d 6d 69 74 3b 0d 0a eOfHeapCommit;..
16f80 20 20 44 57 4f 52 44 20 4c 6f 61 64 65 72 46 6c DWORD LoaderFl
16f90 61 67 73 3b 0d 0a 20 20 44 57 4f 52 44 20 4e 75 ags;.. DWORD Nu
16fa0 6d 62 65 72 4f 66 52 76 61 41 6e 64 53 69 7a 65 mberOfRvaAndSize
16fb0 73 3b 0d 0a 20 20 49 4d 41 47 45 5f 44 41 54 41 s;.. IMAGE_DATA
16fc0 5f 44 49 52 45 43 54 4f 52 59 20 44 61 74 61 44 _DIRECTORY DataD
16fd0 69 72 65 63 74 6f 72 79 5b 49 4d 41 47 45 5f 4e irectory[IMAGE_N
16fe0 55 4d 42 45 52 4f 46 5f 44 49 52 45 43 54 4f 52 UMBEROF_DIRECTOR
16ff0 59 5f 45 4e 54 52 49 45 53 5d 3b 0d 0a 7d 0d 0a Y_ENTRIES];..}..
17000 61 6c 69 61 73 20 5f 49 4d 41 47 45 5f 4f 50 54 alias _IMAGE_OPT
17010 49 4f 4e 41 4c 5f 48 45 41 44 45 52 20 49 4d 41 IONAL_HEADER IMA
17020 47 45 5f 4f 50 54 49 4f 4e 41 4c 5f 48 45 41 44 GE_OPTIONAL_HEAD
17030 45 52 33 32 3b 0d 0a 61 6c 69 61 73 20 5f 49 4d ER32;..alias _IM
17040 41 47 45 5f 4f 50 54 49 4f 4e 41 4c 5f 48 45 41 AGE_OPTIONAL_HEA
17050 44 45 52 2a 20 50 49 4d 41 47 45 5f 4f 50 54 49 DER* PIMAGE_OPTI
17060 4f 4e 41 4c 5f 48 45 41 44 45 52 33 32 3b 0d 0a ONAL_HEADER32;..
17070 0d 0a 73 74 72 75 63 74 20 5f 49 4d 41 47 45 5f ..struct _IMAGE_
17080 52 4f 4d 5f 4f 50 54 49 4f 4e 41 4c 5f 48 45 41 ROM_OPTIONAL_HEA
17090 44 45 52 20 7b 0d 0a 20 20 57 4f 52 44 20 4d 61 DER {.. WORD Ma
170a0 67 69 63 3b 0d 0a 20 20 42 59 54 45 20 4d 61 6a gic;.. BYTE Maj
170b0 6f 72 4c 69 6e 6b 65 72 56 65 72 73 69 6f 6e 3b orLinkerVersion;
170c0 0d 0a 20 20 42 59 54 45 20 4d 69 6e 6f 72 4c 69 .. BYTE MinorLi
170d0 6e 6b 65 72 56 65 72 73 69 6f 6e 3b 0d 0a 20 20 nkerVersion;..
170e0 44 57 4f 52 44 20 53 69 7a 65 4f 66 43 6f 64 65 DWORD SizeOfCode
170f0 3b 0d 0a 20 20 44 57 4f 52 44 20 53 69 7a 65 4f ;.. DWORD SizeO
17100 66 49 6e 69 74 69 61 6c 69 7a 65 64 44 61 74 61 fInitializedData
17110 3b 0d 0a 20 20 44 57 4f 52 44 20 53 69 7a 65 4f ;.. DWORD SizeO
17120 66 55 6e 69 6e 69 74 69 61 6c 69 7a 65 64 44 61 fUninitializedDa
17130 74 61 3b 0d 0a 20 20 44 57 4f 52 44 20 41 64 64 ta;.. DWORD Add
17140 72 65 73 73 4f 66 45 6e 74 72 79 50 6f 69 6e 74 ressOfEntryPoint
17150 3b 0d 0a 20 20 44 57 4f 52 44 20 42 61 73 65 4f ;.. DWORD BaseO
17160 66 43 6f 64 65 3b 0d 0a 20 20 44 57 4f 52 44 20 fCode;.. DWORD
17170 42 61 73 65 4f 66 44 61 74 61 3b 0d 0a 20 20 44 BaseOfData;.. D
17180 57 4f 52 44 20 42 61 73 65 4f 66 42 73 73 3b 0d WORD BaseOfBss;.
17190 0a 20 20 44 57 4f 52 44 20 47 70 72 4d 61 73 6b . DWORD GprMask
171a0 3b 0d 0a 20 20 44 57 4f 52 44 20 43 70 72 4d 61 ;.. DWORD CprMa
171b0 73 6b 5b 34 5d 3b 0d 0a 20 20 44 57 4f 52 44 20 sk[4];.. DWORD
171c0 47 70 56 61 6c 75 65 3b 0d 0a 7d 0d 0a 61 6c 69 GpValue;..}..ali
171d0 61 73 20 5f 49 4d 41 47 45 5f 52 4f 4d 5f 4f 50 as _IMAGE_ROM_OP
171e0 54 49 4f 4e 41 4c 5f 48 45 41 44 45 52 20 49 4d TIONAL_HEADER IM
171f0 41 47 45 5f 52 4f 4d 5f 4f 50 54 49 4f 4e 41 4c AGE_ROM_OPTIONAL
17200 5f 48 45 41 44 45 52 3b 0d 0a 61 6c 69 61 73 20 _HEADER;..alias
17210 5f 49 4d 41 47 45 5f 52 4f 4d 5f 4f 50 54 49 4f _IMAGE_ROM_OPTIO
17220 4e 41 4c 5f 48 45 41 44 45 52 2a 20 50 49 4d 41 NAL_HEADER* PIMA
17230 47 45 5f 52 4f 4d 5f 4f 50 54 49 4f 4e 41 4c 5f GE_ROM_OPTIONAL_
17240 48 45 41 44 45 52 3b 0d 0a 0d 0a 73 74 72 75 63 HEADER;....struc
17250 74 20 5f 49 4d 41 47 45 5f 4f 50 54 49 4f 4e 41 t _IMAGE_OPTIONA
17260 4c 5f 48 45 41 44 45 52 36 34 20 7b 0d 0a 20 20 L_HEADER64 {..
17270 57 4f 52 44 20 4d 61 67 69 63 3b 0d 0a 20 20 42 WORD Magic;.. B
17280 59 54 45 20 4d 61 6a 6f 72 4c 69 6e 6b 65 72 56 YTE MajorLinkerV
17290 65 72 73 69 6f 6e 3b 0d 0a 20 20 42 59 54 45 20 ersion;.. BYTE
172a0 4d 69 6e 6f 72 4c 69 6e 6b 65 72 56 65 72 73 69 MinorLinkerVersi
172b0 6f 6e 3b 0d 0a 20 20 44 57 4f 52 44 20 53 69 7a on;.. DWORD Siz
172c0 65 4f 66 43 6f 64 65 3b 0d 0a 20 20 44 57 4f 52 eOfCode;.. DWOR
172d0 44 20 53 69 7a 65 4f 66 49 6e 69 74 69 61 6c 69 D SizeOfInitiali
172e0 7a 65 64 44 61 74 61 3b 0d 0a 20 20 44 57 4f 52 zedData;.. DWOR
172f0 44 20 53 69 7a 65 4f 66 55 6e 69 6e 69 74 69 61 D SizeOfUninitia
17300 6c 69 7a 65 64 44 61 74 61 3b 0d 0a 20 20 44 57 lizedData;.. DW
17310 4f 52 44 20 41 64 64 72 65 73 73 4f 66 45 6e 74 ORD AddressOfEnt
17320 72 79 50 6f 69 6e 74 3b 0d 0a 20 20 44 57 4f 52 ryPoint;.. DWOR
17330 44 20 42 61 73 65 4f 66 43 6f 64 65 3b 0d 0a 20 D BaseOfCode;..
17340 20 55 4c 4f 4e 47 4c 4f 4e 47 20 49 6d 61 67 65 ULONGLONG Image
17350 42 61 73 65 3b 0d 0a 20 20 44 57 4f 52 44 20 53 Base;.. DWORD S
17360 65 63 74 69 6f 6e 41 6c 69 67 6e 6d 65 6e 74 3b ectionAlignment;
17370 0d 0a 20 20 44 57 4f 52 44 20 46 69 6c 65 41 6c .. DWORD FileAl
17380 69 67 6e 6d 65 6e 74 3b 0d 0a 20 20 57 4f 52 44 ignment;.. WORD
17390 20 4d 61 6a 6f 72 4f 70 65 72 61 74 69 6e 67 53 MajorOperatingS
173a0 79 73 74 65 6d 56 65 72 73 69 6f 6e 3b 0d 0a 20 ystemVersion;..
173b0 20 57 4f 52 44 20 4d 69 6e 6f 72 4f 70 65 72 61 WORD MinorOpera
173c0 74 69 6e 67 53 79 73 74 65 6d 56 65 72 73 69 6f tingSystemVersio
173d0 6e 3b 0d 0a 20 20 57 4f 52 44 20 4d 61 6a 6f 72 n;.. WORD Major
173e0 49 6d 61 67 65 56 65 72 73 69 6f 6e 3b 0d 0a 20 ImageVersion;..
173f0 20 57 4f 52 44 20 4d 69 6e 6f 72 49 6d 61 67 65 WORD MinorImage
17400 56 65 72 73 69 6f 6e 3b 0d 0a 20 20 57 4f 52 44 Version;.. WORD
17410 20 4d 61 6a 6f 72 53 75 62 73 79 73 74 65 6d 56 MajorSubsystemV
17420 65 72 73 69 6f 6e 3b 0d 0a 20 20 57 4f 52 44 20 ersion;.. WORD
17430 4d 69 6e 6f 72 53 75 62 73 79 73 74 65 6d 56 65 MinorSubsystemVe
17440 72 73 69 6f 6e 3b 0d 0a 20 20 44 57 4f 52 44 20 rsion;.. DWORD
17450 57 69 6e 33 32 56 65 72 73 69 6f 6e 56 61 6c 75 Win32VersionValu
17460 65 3b 0d 0a 20 20 44 57 4f 52 44 20 53 69 7a 65 e;.. DWORD Size
17470 4f 66 49 6d 61 67 65 3b 0d 0a 20 20 44 57 4f 52 OfImage;.. DWOR
17480 44 20 53 69 7a 65 4f 66 48 65 61 64 65 72 73 3b D SizeOfHeaders;
17490 0d 0a 20 20 44 57 4f 52 44 20 43 68 65 63 6b 53 .. DWORD CheckS
174a0 75 6d 3b 0d 0a 20 20 57 4f 52 44 20 53 75 62 73 um;.. WORD Subs
174b0 79 73 74 65 6d 3b 0d 0a 20 20 57 4f 52 44 20 44 ystem;.. WORD D
174c0 6c 6c 43 68 61 72 61 63 74 65 72 69 73 74 69 63 llCharacteristic
174d0 73 3b 0d 0a 20 20 55 4c 4f 4e 47 4c 4f 4e 47 20 s;.. ULONGLONG
174e0 53 69 7a 65 4f 66 53 74 61 63 6b 52 65 73 65 72 SizeOfStackReser
174f0 76 65 3b 0d 0a 20 20 55 4c 4f 4e 47 4c 4f 4e 47 ve;.. ULONGLONG
17500 20 53 69 7a 65 4f 66 53 74 61 63 6b 43 6f 6d 6d SizeOfStackComm
17510 69 74 3b 0d 0a 20 20 55 4c 4f 4e 47 4c 4f 4e 47 it;.. ULONGLONG
17520 20 53 69 7a 65 4f 66 48 65 61 70 52 65 73 65 72 SizeOfHeapReser
17530 76 65 3b 0d 0a 20 20 55 4c 4f 4e 47 4c 4f 4e 47 ve;.. ULONGLONG
17540 20 53 69 7a 65 4f 66 48 65 61 70 43 6f 6d 6d 69 SizeOfHeapCommi
17550 74 3b 0d 0a 20 20 44 57 4f 52 44 20 4c 6f 61 64 t;.. DWORD Load
17560 65 72 46 6c 61 67 73 3b 0d 0a 20 20 44 57 4f 52 erFlags;.. DWOR
17570 44 20 4e 75 6d 62 65 72 4f 66 52 76 61 41 6e 64 D NumberOfRvaAnd
17580 53 69 7a 65 73 3b 0d 0a 20 20 49 4d 41 47 45 5f Sizes;.. IMAGE_
17590 44 41 54 41 5f 44 49 52 45 43 54 4f 52 59 20 44 DATA_DIRECTORY D
175a0 61 74 61 44 69 72 65 63 74 6f 72 79 5b 49 4d 41 ataDirectory[IMA
175b0 47 45 5f 4e 55 4d 42 45 52 4f 46 5f 44 49 52 45 GE_NUMBEROF_DIRE
175c0 43 54 4f 52 59 5f 45 4e 54 52 49 45 53 5d 3b 0d CTORY_ENTRIES];.
175d0 0a 7d 0d 0a 61 6c 69 61 73 20 5f 49 4d 41 47 45 .}..alias _IMAGE
175e0 5f 4f 50 54 49 4f 4e 41 4c 5f 48 45 41 44 45 52 _OPTIONAL_HEADER
175f0 36 34 20 49 4d 41 47 45 5f 4f 50 54 49 4f 4e 41 64 IMAGE_OPTIONA
17600 4c 5f 48 45 41 44 45 52 36 34 3b 0d 0a 61 6c 69 L_HEADER64;..ali
17610 61 73 20 5f 49 4d 41 47 45 5f 4f 50 54 49 4f 4e as _IMAGE_OPTION
17620 41 4c 5f 48 45 41 44 45 52 36 34 2a 20 50 49 4d AL_HEADER64* PIM
17630 41 47 45 5f 4f 50 54 49 4f 4e 41 4c 5f 48 45 41 AGE_OPTIONAL_HEA
17640 44 45 52 36 34 3b 0d 0a 0d 0a 65 6e 75 6d 20 3a DER64;....enum :
17650 20 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f 53 49 uint { IMAGE_SI
17660 5a 45 4f 46 5f 52 4f 4d 5f 4f 50 54 49 4f 4e 41 ZEOF_ROM_OPTIONA
17670 4c 5f 48 45 41 44 45 52 20 3d 20 35 36 20 7d 0d L_HEADER = 56 }.
17680 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 .enum : uint { I
17690 4d 41 47 45 5f 53 49 5a 45 4f 46 5f 53 54 44 5f MAGE_SIZEOF_STD_
176a0 4f 50 54 49 4f 4e 41 4c 5f 48 45 41 44 45 52 20 OPTIONAL_HEADER
176b0 3d 20 32 38 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 = 28 }..enum : u
176c0 69 6e 74 20 7b 20 49 4d 41 47 45 5f 53 49 5a 45 int { IMAGE_SIZE
176d0 4f 46 5f 4e 54 5f 4f 50 54 49 4f 4e 41 4c 33 32 OF_NT_OPTIONAL32
176e0 5f 48 45 41 44 45 52 20 3d 20 32 32 34 20 7d 0d _HEADER = 224 }.
176f0 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 .enum : uint { I
17700 4d 41 47 45 5f 53 49 5a 45 4f 46 5f 4e 54 5f 4f MAGE_SIZEOF_NT_O
17710 50 54 49 4f 4e 41 4c 36 34 5f 48 45 41 44 45 52 PTIONAL64_HEADER
17720 20 3d 20 32 34 30 20 7d 0d 0a 0d 0a 65 6e 75 6d = 240 }....enum
17730 20 3a 20 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f : uint { IMAGE_
17740 4e 54 5f 4f 50 54 49 4f 4e 41 4c 5f 48 44 52 33 NT_OPTIONAL_HDR3
17750 32 5f 4d 41 47 49 43 20 3d 20 30 78 31 30 62 20 2_MAGIC = 0x10b
17760 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b }..enum : uint {
17770 20 49 4d 41 47 45 5f 4e 54 5f 4f 50 54 49 4f 4e IMAGE_NT_OPTION
17780 41 4c 5f 48 44 52 36 34 5f 4d 41 47 49 43 20 3d AL_HDR64_MAGIC =
17790 20 30 78 32 30 62 20 7d 0d 0a 65 6e 75 6d 20 3a 0x20b }..enum :
177a0 20 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f 52 4f uint { IMAGE_RO
177b0 4d 5f 4f 50 54 49 4f 4e 41 4c 5f 48 44 52 5f 4d M_OPTIONAL_HDR_M
177c0 41 47 49 43 20 3d 20 30 78 31 30 37 20 7d 0d 0a AGIC = 0x107 }..
177d0 0d 0a 2f 2f 20 23 69 66 64 65 66 20 5f 57 49 4e ..// #ifdef _WIN
177e0 36 34 0d 0a 2f 2f 20 2e 2e 2e 0d 0a 2f 2f 20 23 64..// .....// #
177f0 2e 2e 2e 0d 0a 2f 2f 20 23 2e 2e 2e 0d 0a 2f 2f .....// #.....//
17800 20 23 65 6c 73 65 0d 0a 61 6c 69 61 73 20 49 4d #else..alias IM
17810 41 47 45 5f 4f 50 54 49 4f 4e 41 4c 5f 48 45 41 AGE_OPTIONAL_HEA
17820 44 45 52 33 32 20 49 4d 41 47 45 5f 4f 50 54 49 DER32 IMAGE_OPTI
17830 4f 4e 41 4c 5f 48 45 41 44 45 52 3b 0d 0a 61 6c ONAL_HEADER;..al
17840 69 61 73 20 50 49 4d 41 47 45 5f 4f 50 54 49 4f ias PIMAGE_OPTIO
17850 4e 41 4c 5f 48 45 41 44 45 52 33 32 20 50 49 4d NAL_HEADER32 PIM
17860 41 47 45 5f 4f 50 54 49 4f 4e 41 4c 5f 48 45 41 AGE_OPTIONAL_HEA
17870 44 45 52 3b 0d 0a 61 6c 69 61 73 20 49 4d 41 47 DER;..alias IMAG
17880 45 5f 53 49 5a 45 4f 46 5f 4e 54 5f 4f 50 54 49 E_SIZEOF_NT_OPTI
17890 4f 4e 41 4c 33 32 5f 48 45 41 44 45 52 20 49 4d ONAL32_HEADER IM
178a0 41 47 45 5f 53 49 5a 45 4f 46 5f 4e 54 5f 4f 50 AGE_SIZEOF_NT_OP
178b0 54 49 4f 4e 41 4c 5f 48 45 41 44 45 52 3b 0d 0a TIONAL_HEADER;..
178c0 61 6c 69 61 73 20 49 4d 41 47 45 5f 4e 54 5f 4f alias IMAGE_NT_O
178d0 50 54 49 4f 4e 41 4c 5f 48 44 52 33 32 5f 4d 41 PTIONAL_HDR32_MA
178e0 47 49 43 20 49 4d 41 47 45 5f 4e 54 5f 4f 50 54 GIC IMAGE_NT_OPT
178f0 49 4f 4e 41 4c 5f 48 44 52 5f 4d 41 47 49 43 3b IONAL_HDR_MAGIC;
17900 0d 0a 2f 2f 20 23 65 6e 64 69 66 0d 0a 0d 0a 73 ..// #endif....s
17910 74 72 75 63 74 20 5f 49 4d 41 47 45 5f 4e 54 5f truct _IMAGE_NT_
17920 48 45 41 44 45 52 53 36 34 20 7b 0d 0a 20 20 44 HEADERS64 {.. D
17930 57 4f 52 44 20 53 69 67 6e 61 74 75 72 65 3b 0d WORD Signature;.
17940 0a 20 20 49 4d 41 47 45 5f 46 49 4c 45 5f 48 45 . IMAGE_FILE_HE
17950 41 44 45 52 20 46 69 6c 65 48 65 61 64 65 72 3b ADER FileHeader;
17960 0d 0a 20 20 49 4d 41 47 45 5f 4f 50 54 49 4f 4e .. IMAGE_OPTION
17970 41 4c 5f 48 45 41 44 45 52 36 34 20 4f 70 74 69 AL_HEADER64 Opti
17980 6f 6e 61 6c 48 65 61 64 65 72 3b 0d 0a 7d 0d 0a onalHeader;..}..
17990 61 6c 69 61 73 20 5f 49 4d 41 47 45 5f 4e 54 5f alias _IMAGE_NT_
179a0 48 45 41 44 45 52 53 36 34 20 49 4d 41 47 45 5f HEADERS64 IMAGE_
179b0 4e 54 5f 48 45 41 44 45 52 53 36 34 3b 0d 0a 61 NT_HEADERS64;..a
179c0 6c 69 61 73 20 5f 49 4d 41 47 45 5f 4e 54 5f 48 lias _IMAGE_NT_H
179d0 45 41 44 45 52 53 36 34 2a 20 50 49 4d 41 47 45 EADERS64* PIMAGE
179e0 5f 4e 54 5f 48 45 41 44 45 52 53 36 34 3b 0d 0a _NT_HEADERS64;..
179f0 0d 0a 73 74 72 75 63 74 20 5f 49 4d 41 47 45 5f ..struct _IMAGE_
17a00 4e 54 5f 48 45 41 44 45 52 53 20 7b 0d 0a 20 20 NT_HEADERS {..
17a10 44 57 4f 52 44 20 53 69 67 6e 61 74 75 72 65 3b DWORD Signature;
17a20 0d 0a 20 20 49 4d 41 47 45 5f 46 49 4c 45 5f 48 .. IMAGE_FILE_H
17a30 45 41 44 45 52 20 46 69 6c 65 48 65 61 64 65 72 EADER FileHeader
17a40 3b 0d 0a 20 20 49 4d 41 47 45 5f 4f 50 54 49 4f ;.. IMAGE_OPTIO
17a50 4e 41 4c 5f 48 45 41 44 45 52 33 32 20 4f 70 74 NAL_HEADER32 Opt
17a60 69 6f 6e 61 6c 48 65 61 64 65 72 3b 0d 0a 7d 0d ionalHeader;..}.
17a70 0a 61 6c 69 61 73 20 5f 49 4d 41 47 45 5f 4e 54 .alias _IMAGE_NT
17a80 5f 48 45 41 44 45 52 53 20 49 4d 41 47 45 5f 4e _HEADERS IMAGE_N
17a90 54 5f 48 45 41 44 45 52 53 33 32 3b 0d 0a 61 6c T_HEADERS32;..al
17aa0 69 61 73 20 5f 49 4d 41 47 45 5f 4e 54 5f 48 45 ias _IMAGE_NT_HE
17ab0 41 44 45 52 53 2a 20 50 49 4d 41 47 45 5f 4e 54 ADERS* PIMAGE_NT
17ac0 5f 48 45 41 44 45 52 53 33 32 3b 0d 0a 0d 0a 73 _HEADERS32;....s
17ad0 74 72 75 63 74 20 5f 49 4d 41 47 45 5f 52 4f 4d truct _IMAGE_ROM
17ae0 5f 48 45 41 44 45 52 53 20 7b 0d 0a 20 20 49 4d _HEADERS {.. IM
17af0 41 47 45 5f 46 49 4c 45 5f 48 45 41 44 45 52 20 AGE_FILE_HEADER
17b00 46 69 6c 65 48 65 61 64 65 72 3b 0d 0a 20 20 49 FileHeader;.. I
17b10 4d 41 47 45 5f 52 4f 4d 5f 4f 50 54 49 4f 4e 41 MAGE_ROM_OPTIONA
17b20 4c 5f 48 45 41 44 45 52 20 4f 70 74 69 6f 6e 61 L_HEADER Optiona
17b30 6c 48 65 61 64 65 72 3b 0d 0a 7d 0d 0a 61 6c 69 lHeader;..}..ali
17b40 61 73 20 5f 49 4d 41 47 45 5f 52 4f 4d 5f 48 45 as _IMAGE_ROM_HE
17b50 41 44 45 52 53 20 49 4d 41 47 45 5f 52 4f 4d 5f ADERS IMAGE_ROM_
17b60 48 45 41 44 45 52 53 3b 0d 0a 61 6c 69 61 73 20 HEADERS;..alias
17b70 5f 49 4d 41 47 45 5f 52 4f 4d 5f 48 45 41 44 45 _IMAGE_ROM_HEADE
17b80 52 53 2a 20 50 49 4d 41 47 45 5f 52 4f 4d 5f 48 RS* PIMAGE_ROM_H
17b90 45 41 44 45 52 53 3b 0d 0a 0d 0a 2f 2f 20 23 69 EADERS;....// #i
17ba0 66 64 65 66 20 5f 57 49 4e 36 34 0d 0a 2f 2f 20 fdef _WIN64..//
17bb0 2e 2e 2e 0d 0a 2f 2f 20 23 65 6c 73 65 0d 0a 61 .....// #else..a
17bc0 6c 69 61 73 20 49 4d 41 47 45 5f 4e 54 5f 48 45 lias IMAGE_NT_HE
17bd0 41 44 45 52 53 33 32 20 49 4d 41 47 45 5f 4e 54 ADERS32 IMAGE_NT
17be0 5f 48 45 41 44 45 52 53 3b 0d 0a 61 6c 69 61 73 _HEADERS;..alias
17bf0 20 50 49 4d 41 47 45 5f 4e 54 5f 48 45 41 44 45 PIMAGE_NT_HEADE
17c00 52 53 33 32 20 50 49 4d 41 47 45 5f 4e 54 5f 48 RS32 PIMAGE_NT_H
17c10 45 41 44 45 52 53 3b 0d 0a 2f 2f 20 23 65 6e 64 EADERS;..// #end
17c20 69 66 0d 0a 0d 0a 2f 2f 20 23 64 65 66 69 6e 65 if....// #define
17c30 20 49 4d 41 47 45 5f 46 49 52 53 54 5f 53 45 43 IMAGE_FIRST_SEC
17c40 54 49 4f 4e 28 20 6e 74 68 65 61 64 65 72 20 29 TION( ntheader )
17c50 20 28 28 50 49 4d 41 47 45 5f 53 45 43 54 49 4f ((PIMAGE_SECTIO
17c60 4e 5f 48 45 41 44 45 52 29 20 28 28 55 4c 4f 4e N_HEADER) ((ULON
17c70 47 5f 50 54 52 29 6e 74 68 65 61 64 65 72 20 2b G_PTR)ntheader +
17c80 20 46 49 45 4c 44 5f 4f 46 46 53 45 54 28 20 49 FIELD_OFFSET( I
17c90 4d 41 47 45 5f 4e 54 5f 48 45 41 44 45 52 53 2c MAGE_NT_HEADERS,
17ca0 20 4f 70 74 69 6f 6e 61 6c 48 65 61 64 65 72 20 OptionalHeader
17cb0 29 20 2b 20 28 28 50 49 4d 41 47 45 5f 4e 54 5f ) + ((PIMAGE_NT_
17cc0 48 45 41 44 45 52 53 29 28 6e 74 68 65 61 64 65 HEADERS)(ntheade
17cd0 72 29 29 2d 3e 46 69 6c 65 48 65 61 64 65 72 2e r))->FileHeader.
17ce0 53 69 7a 65 4f 66 4f 70 74 69 6f 6e 61 6c 48 65 SizeOfOptionalHe
17cf0 61 64 65 72 20 29 29 0d 0a 0d 0a 65 6e 75 6d 20 ader ))....enum
17d00 3a 20 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f 53 : uint { IMAGE_S
17d10 55 42 53 59 53 54 45 4d 5f 55 4e 4b 4e 4f 57 4e UBSYSTEM_UNKNOWN
17d20 20 3d 20 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 = 0 }..enum : u
17d30 69 6e 74 20 7b 20 49 4d 41 47 45 5f 53 55 42 53 int { IMAGE_SUBS
17d40 59 53 54 45 4d 5f 4e 41 54 49 56 45 20 3d 20 31 YSTEM_NATIVE = 1
17d50 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 }..enum : uint
17d60 7b 20 49 4d 41 47 45 5f 53 55 42 53 59 53 54 45 { IMAGE_SUBSYSTE
17d70 4d 5f 57 49 4e 44 4f 57 53 5f 47 55 49 20 3d 20 M_WINDOWS_GUI =
17d80 32 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 2 }..enum : uint
17d90 20 7b 20 49 4d 41 47 45 5f 53 55 42 53 59 53 54 { IMAGE_SUBSYST
17da0 45 4d 5f 57 49 4e 44 4f 57 53 5f 43 55 49 20 3d EM_WINDOWS_CUI =
17db0 20 33 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 3 }..enum : uin
17dc0 74 20 7b 20 49 4d 41 47 45 5f 53 55 42 53 59 53 t { IMAGE_SUBSYS
17dd0 54 45 4d 5f 4f 53 32 5f 43 55 49 20 3d 20 35 20 TEM_OS2_CUI = 5
17de0 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b }..enum : uint {
17df0 20 49 4d 41 47 45 5f 53 55 42 53 59 53 54 45 4d IMAGE_SUBSYSTEM
17e00 5f 50 4f 53 49 58 5f 43 55 49 20 3d 20 37 20 7d _POSIX_CUI = 7 }
17e10 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
17e20 49 4d 41 47 45 5f 53 55 42 53 59 53 54 45 4d 5f IMAGE_SUBSYSTEM_
17e30 4e 41 54 49 56 45 5f 57 49 4e 44 4f 57 53 20 3d NATIVE_WINDOWS =
17e40 20 38 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 8 }..enum : uin
17e50 74 20 7b 20 49 4d 41 47 45 5f 53 55 42 53 59 53 t { IMAGE_SUBSYS
17e60 54 45 4d 5f 57 49 4e 44 4f 57 53 5f 43 45 5f 47 TEM_WINDOWS_CE_G
17e70 55 49 20 3d 20 39 20 7d 0d 0a 65 6e 75 6d 20 3a UI = 9 }..enum :
17e80 20 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f 53 55 uint { IMAGE_SU
17e90 42 53 59 53 54 45 4d 5f 45 46 49 5f 41 50 50 4c BSYSTEM_EFI_APPL
17ea0 49 43 41 54 49 4f 4e 20 3d 20 31 30 20 7d 0d 0a ICATION = 10 }..
17eb0 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 4d enum : uint { IM
17ec0 41 47 45 5f 53 55 42 53 59 53 54 45 4d 5f 45 46 AGE_SUBSYSTEM_EF
17ed0 49 5f 42 4f 4f 54 5f 53 45 52 56 49 43 45 5f 44 I_BOOT_SERVICE_D
17ee0 52 49 56 45 52 20 3d 20 31 31 20 7d 0d 0a 65 6e RIVER = 11 }..en
17ef0 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 4d 41 47 um : uint { IMAG
17f00 45 5f 53 55 42 53 59 53 54 45 4d 5f 45 46 49 5f E_SUBSYSTEM_EFI_
17f10 52 55 4e 54 49 4d 45 5f 44 52 49 56 45 52 20 3d RUNTIME_DRIVER =
17f20 20 31 32 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 12 }..enum : ui
17f30 6e 74 20 7b 20 49 4d 41 47 45 5f 53 55 42 53 59 nt { IMAGE_SUBSY
17f40 53 54 45 4d 5f 45 46 49 5f 52 4f 4d 20 3d 20 31 STEM_EFI_ROM = 1
17f50 33 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 3 }..enum : uint
17f60 20 7b 20 49 4d 41 47 45 5f 53 55 42 53 59 53 54 { IMAGE_SUBSYST
17f70 45 4d 5f 58 42 4f 58 20 3d 20 31 34 20 7d 0d 0a EM_XBOX = 14 }..
17f80 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
17f90 49 4d 41 47 45 5f 44 4c 4c 43 48 41 52 41 43 54 IMAGE_DLLCHARACT
17fa0 45 52 49 53 54 49 43 53 5f 4e 4f 5f 42 49 4e 44 ERISTICS_NO_BIND
17fb0 20 3d 20 30 78 30 38 30 30 20 7d 0d 0a 0d 0a 65 = 0x0800 }....e
17fc0 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 4d 41 num : uint { IMA
17fd0 47 45 5f 44 4c 4c 43 48 41 52 41 43 54 45 52 49 GE_DLLCHARACTERI
17fe0 53 54 49 43 53 5f 57 44 4d 5f 44 52 49 56 45 52 STICS_WDM_DRIVER
17ff0 20 3d 20 30 78 32 30 30 30 20 7d 0d 0a 0d 0a 65 = 0x2000 }....e
18000 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 4d 41 num : uint { IMA
18010 47 45 5f 44 4c 4c 43 48 41 52 41 43 54 45 52 49 GE_DLLCHARACTERI
18020 53 54 49 43 53 5f 54 45 52 4d 49 4e 41 4c 5f 53 STICS_TERMINAL_S
18030 45 52 56 45 52 5f 41 57 41 52 45 20 3d 20 30 78 ERVER_AWARE = 0x
18040 38 30 30 30 20 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 8000 }....enum :
18050 20 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f 44 49 uint { IMAGE_DI
18060 52 45 43 54 4f 52 59 5f 45 4e 54 52 59 5f 45 58 RECTORY_ENTRY_EX
18070 50 4f 52 54 20 3d 20 30 20 7d 0d 0a 65 6e 75 6d PORT = 0 }..enum
18080 20 3a 20 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f : uint { IMAGE_
18090 44 49 52 45 43 54 4f 52 59 5f 45 4e 54 52 59 5f DIRECTORY_ENTRY_
180a0 49 4d 50 4f 52 54 20 3d 20 31 20 7d 0d 0a 65 6e IMPORT = 1 }..en
180b0 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 4d 41 47 um : uint { IMAG
180c0 45 5f 44 49 52 45 43 54 4f 52 59 5f 45 4e 54 52 E_DIRECTORY_ENTR
180d0 59 5f 52 45 53 4f 55 52 43 45 20 3d 20 32 20 7d Y_RESOURCE = 2 }
180e0 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
180f0 49 4d 41 47 45 5f 44 49 52 45 43 54 4f 52 59 5f IMAGE_DIRECTORY_
18100 45 4e 54 52 59 5f 45 58 43 45 50 54 49 4f 4e 20 ENTRY_EXCEPTION
18110 3d 20 33 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 = 3 }..enum : ui
18120 6e 74 20 7b 20 49 4d 41 47 45 5f 44 49 52 45 43 nt { IMAGE_DIREC
18130 54 4f 52 59 5f 45 4e 54 52 59 5f 53 45 43 55 52 TORY_ENTRY_SECUR
18140 49 54 59 20 3d 20 34 20 7d 0d 0a 65 6e 75 6d 20 ITY = 4 }..enum
18150 3a 20 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f 44 : uint { IMAGE_D
18160 49 52 45 43 54 4f 52 59 5f 45 4e 54 52 59 5f 42 IRECTORY_ENTRY_B
18170 41 53 45 52 45 4c 4f 43 20 3d 20 35 20 7d 0d 0a ASERELOC = 5 }..
18180 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 4d enum : uint { IM
18190 41 47 45 5f 44 49 52 45 43 54 4f 52 59 5f 45 4e AGE_DIRECTORY_EN
181a0 54 52 59 5f 44 45 42 55 47 20 3d 20 36 20 7d 0d TRY_DEBUG = 6 }.
181b0 0a 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b ...enum : uint {
181c0 20 49 4d 41 47 45 5f 44 49 52 45 43 54 4f 52 59 IMAGE_DIRECTORY
181d0 5f 45 4e 54 52 59 5f 41 52 43 48 49 54 45 43 54 _ENTRY_ARCHITECT
181e0 55 52 45 20 3d 20 37 20 7d 0d 0a 65 6e 75 6d 20 URE = 7 }..enum
181f0 3a 20 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f 44 : uint { IMAGE_D
18200 49 52 45 43 54 4f 52 59 5f 45 4e 54 52 59 5f 47 IRECTORY_ENTRY_G
18210 4c 4f 42 41 4c 50 54 52 20 3d 20 38 20 7d 0d 0a LOBALPTR = 8 }..
18220 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 4d enum : uint { IM
18230 41 47 45 5f 44 49 52 45 43 54 4f 52 59 5f 45 4e AGE_DIRECTORY_EN
18240 54 52 59 5f 54 4c 53 20 3d 20 39 20 7d 0d 0a 65 TRY_TLS = 9 }..e
18250 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 4d 41 num : uint { IMA
18260 47 45 5f 44 49 52 45 43 54 4f 52 59 5f 45 4e 54 GE_DIRECTORY_ENT
18270 52 59 5f 4c 4f 41 44 5f 43 4f 4e 46 49 47 20 3d RY_LOAD_CONFIG =
18280 20 31 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 10 }..enum : ui
18290 6e 74 20 7b 20 49 4d 41 47 45 5f 44 49 52 45 43 nt { IMAGE_DIREC
182a0 54 4f 52 59 5f 45 4e 54 52 59 5f 42 4f 55 4e 44 TORY_ENTRY_BOUND
182b0 5f 49 4d 50 4f 52 54 20 3d 20 31 31 20 7d 0d 0a _IMPORT = 11 }..
182c0 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 4d enum : uint { IM
182d0 41 47 45 5f 44 49 52 45 43 54 4f 52 59 5f 45 4e AGE_DIRECTORY_EN
182e0 54 52 59 5f 49 41 54 20 3d 20 31 32 20 7d 0d 0a TRY_IAT = 12 }..
182f0 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 4d enum : uint { IM
18300 41 47 45 5f 44 49 52 45 43 54 4f 52 59 5f 45 4e AGE_DIRECTORY_EN
18310 54 52 59 5f 44 45 4c 41 59 5f 49 4d 50 4f 52 54 TRY_DELAY_IMPORT
18320 20 3d 20 31 33 20 7d 0d 0a 65 6e 75 6d 20 3a 20 = 13 }..enum :
18330 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f 44 49 52 uint { IMAGE_DIR
18340 45 43 54 4f 52 59 5f 45 4e 54 52 59 5f 43 4f 4d ECTORY_ENTRY_COM
18350 5f 44 45 53 43 52 49 50 54 4f 52 20 3d 20 31 34 _DESCRIPTOR = 14
18360 20 7d 0d 0a 0d 0a 73 74 72 75 63 74 20 41 4e 4f }....struct ANO
18370 4e 5f 4f 42 4a 45 43 54 5f 48 45 41 44 45 52 20 N_OBJECT_HEADER
18380 7b 0d 0a 20 20 57 4f 52 44 20 53 69 67 31 3b 0d {.. WORD Sig1;.
18390 0a 20 20 57 4f 52 44 20 53 69 67 32 3b 0d 0a 20 . WORD Sig2;..
183a0 20 57 4f 52 44 20 56 65 72 73 69 6f 6e 3b 0d 0a WORD Version;..
183b0 20 20 57 4f 52 44 20 4d 61 63 68 69 6e 65 3b 0d WORD Machine;.
183c0 0a 20 20 44 57 4f 52 44 20 54 69 6d 65 44 61 74 . DWORD TimeDat
183d0 65 53 74 61 6d 70 3b 0d 0a 20 20 43 4c 53 49 44 eStamp;.. CLSID
183e0 20 43 6c 61 73 73 49 44 3b 0d 0a 20 20 44 57 4f ClassID;.. DWO
183f0 52 44 20 53 69 7a 65 4f 66 44 61 74 61 3b 0d 0a RD SizeOfData;..
18400 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 }....enum : uint
18410 20 7b 20 49 4d 41 47 45 5f 53 49 5a 45 4f 46 5f { IMAGE_SIZEOF_
18420 53 48 4f 52 54 5f 4e 41 4d 45 20 3d 20 38 20 7d SHORT_NAME = 8 }
18430 0d 0a 0d 0a 73 74 72 75 63 74 20 5f 49 4d 41 47 ....struct _IMAG
18440 45 5f 53 45 43 54 49 4f 4e 5f 48 45 41 44 45 52 E_SECTION_HEADER
18450 20 7b 0d 0a 20 20 42 59 54 45 20 4e 61 6d 65 5b {.. BYTE Name[
18460 49 4d 41 47 45 5f 53 49 5a 45 4f 46 5f 53 48 4f IMAGE_SIZEOF_SHO
18470 52 54 5f 4e 41 4d 45 5d 3b 0d 0a 75 6e 69 6f 6e RT_NAME];..union
18480 20 7b 0d 0a 20 20 44 57 4f 52 44 20 50 68 79 73 {.. DWORD Phys
18490 69 63 61 6c 41 64 64 72 65 73 73 3b 0d 0a 20 20 icalAddress;..
184a0 44 57 4f 52 44 20 56 69 72 74 75 61 6c 53 69 7a DWORD VirtualSiz
184b0 65 3b 0d 0a 7d 0d 0a 0d 0a 20 20 44 57 4f 52 44 e;..}.... DWORD
184c0 20 56 69 72 74 75 61 6c 41 64 64 72 65 73 73 3b VirtualAddress;
184d0 0d 0a 20 20 44 57 4f 52 44 20 53 69 7a 65 4f 66 .. DWORD SizeOf
184e0 52 61 77 44 61 74 61 3b 0d 0a 20 20 44 57 4f 52 RawData;.. DWOR
184f0 44 20 50 6f 69 6e 74 65 72 54 6f 52 61 77 44 61 D PointerToRawDa
18500 74 61 3b 0d 0a 20 20 44 57 4f 52 44 20 50 6f 69 ta;.. DWORD Poi
18510 6e 74 65 72 54 6f 52 65 6c 6f 63 61 74 69 6f 6e nterToRelocation
18520 73 3b 0d 0a 20 20 44 57 4f 52 44 20 50 6f 69 6e s;.. DWORD Poin
18530 74 65 72 54 6f 4c 69 6e 65 6e 75 6d 62 65 72 73 terToLinenumbers
18540 3b 0d 0a 20 20 57 4f 52 44 20 4e 75 6d 62 65 72 ;.. WORD Number
18550 4f 66 52 65 6c 6f 63 61 74 69 6f 6e 73 3b 0d 0a OfRelocations;..
18560 20 20 57 4f 52 44 20 4e 75 6d 62 65 72 4f 66 4c WORD NumberOfL
18570 69 6e 65 6e 75 6d 62 65 72 73 3b 0d 0a 20 20 44 inenumbers;.. D
18580 57 4f 52 44 20 43 68 61 72 61 63 74 65 72 69 73 WORD Characteris
18590 74 69 63 73 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 tics;..}..alias
185a0 5f 49 4d 41 47 45 5f 53 45 43 54 49 4f 4e 5f 48 _IMAGE_SECTION_H
185b0 45 41 44 45 52 20 49 4d 41 47 45 5f 53 45 43 54 EADER IMAGE_SECT
185c0 49 4f 4e 5f 48 45 41 44 45 52 3b 0d 0a 61 6c 69 ION_HEADER;..ali
185d0 61 73 20 5f 49 4d 41 47 45 5f 53 45 43 54 49 4f as _IMAGE_SECTIO
185e0 4e 5f 48 45 41 44 45 52 2a 20 50 49 4d 41 47 45 N_HEADER* PIMAGE
185f0 5f 53 45 43 54 49 4f 4e 5f 48 45 41 44 45 52 3b _SECTION_HEADER;
18600 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 ....enum : uint
18610 7b 20 49 4d 41 47 45 5f 53 49 5a 45 4f 46 5f 53 { IMAGE_SIZEOF_S
18620 45 43 54 49 4f 4e 5f 48 45 41 44 45 52 20 3d 20 ECTION_HEADER =
18630 34 30 20 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 75 40 }....enum : u
18640 69 6e 74 20 7b 20 49 4d 41 47 45 5f 53 43 4e 5f int { IMAGE_SCN_
18650 54 59 50 45 5f 4e 4f 5f 50 41 44 20 3d 20 30 78 TYPE_NO_PAD = 0x
18660 30 30 30 30 30 30 30 38 20 7d 0d 0a 0d 0a 65 6e 00000008 }....en
18670 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 4d 41 47 um : uint { IMAG
18680 45 5f 53 43 4e 5f 43 4e 54 5f 43 4f 44 45 20 3d E_SCN_CNT_CODE =
18690 20 30 78 30 30 30 30 30 30 32 30 20 7d 0d 0a 65 0x00000020 }..e
186a0 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 4d 41 num : uint { IMA
186b0 47 45 5f 53 43 4e 5f 43 4e 54 5f 49 4e 49 54 49 GE_SCN_CNT_INITI
186c0 41 4c 49 5a 45 44 5f 44 41 54 41 20 3d 20 30 78 ALIZED_DATA = 0x
186d0 30 30 30 30 30 30 34 30 20 7d 0d 0a 65 6e 75 6d 00000040 }..enum
186e0 20 3a 20 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f : uint { IMAGE_
186f0 53 43 4e 5f 43 4e 54 5f 55 4e 49 4e 49 54 49 41 SCN_CNT_UNINITIA
18700 4c 49 5a 45 44 5f 44 41 54 41 20 3d 20 30 78 30 LIZED_DATA = 0x0
18710 30 30 30 30 30 38 30 20 7d 0d 0a 0d 0a 65 6e 75 0000080 }....enu
18720 6d 20 3a 20 75 69 6e 74 20 7b 20 49 4d 41 47 45 m : uint { IMAGE
18730 5f 53 43 4e 5f 4c 4e 4b 5f 4f 54 48 45 52 20 3d _SCN_LNK_OTHER =
18740 20 30 78 30 30 30 30 30 31 30 30 20 7d 0d 0a 65 0x00000100 }..e
18750 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 4d 41 num : uint { IMA
18760 47 45 5f 53 43 4e 5f 4c 4e 4b 5f 49 4e 46 4f 20 GE_SCN_LNK_INFO
18770 3d 20 30 78 30 30 30 30 30 32 30 30 20 7d 0d 0a = 0x00000200 }..
18780 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
18790 49 4d 41 47 45 5f 53 43 4e 5f 4c 4e 4b 5f 52 45 IMAGE_SCN_LNK_RE
187a0 4d 4f 56 45 20 3d 20 30 78 30 30 30 30 30 38 30 MOVE = 0x0000080
187b0 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 0 }..enum : uint
187c0 20 7b 20 49 4d 41 47 45 5f 53 43 4e 5f 4c 4e 4b { IMAGE_SCN_LNK
187d0 5f 43 4f 4d 44 41 54 20 3d 20 30 78 30 30 30 30 _COMDAT = 0x0000
187e0 31 30 30 30 20 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 1000 }....enum :
187f0 20 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f 53 43 uint { IMAGE_SC
18800 4e 5f 4e 4f 5f 44 45 46 45 52 5f 53 50 45 43 5f N_NO_DEFER_SPEC_
18810 45 58 43 20 3d 20 30 78 30 30 30 30 34 30 30 30 EXC = 0x00004000
18820 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 }..enum : uint
18830 7b 20 49 4d 41 47 45 5f 53 43 4e 5f 47 50 52 45 { IMAGE_SCN_GPRE
18840 4c 20 3d 20 30 78 30 30 30 30 38 30 30 30 20 7d L = 0x00008000 }
18850 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
18860 49 4d 41 47 45 5f 53 43 4e 5f 4d 45 4d 5f 46 41 IMAGE_SCN_MEM_FA
18870 52 44 41 54 41 20 3d 20 30 78 30 30 30 30 38 30 RDATA = 0x000080
18880 30 30 20 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 75 00 }....enum : u
18890 69 6e 74 20 7b 20 49 4d 41 47 45 5f 53 43 4e 5f int { IMAGE_SCN_
188a0 4d 45 4d 5f 50 55 52 47 45 41 42 4c 45 20 3d 20 MEM_PURGEABLE =
188b0 30 78 30 30 30 32 30 30 30 30 20 7d 0d 0a 65 6e 0x00020000 }..en
188c0 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 4d 41 47 um : uint { IMAG
188d0 45 5f 53 43 4e 5f 4d 45 4d 5f 31 36 42 49 54 20 E_SCN_MEM_16BIT
188e0 3d 20 30 78 30 30 30 32 30 30 30 30 20 7d 0d 0a = 0x00020000 }..
188f0 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 4d enum : uint { IM
18900 41 47 45 5f 53 43 4e 5f 4d 45 4d 5f 4c 4f 43 4b AGE_SCN_MEM_LOCK
18910 45 44 20 3d 20 30 78 30 30 30 34 30 30 30 30 20 ED = 0x00040000
18920 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b }..enum : uint {
18930 20 49 4d 41 47 45 5f 53 43 4e 5f 4d 45 4d 5f 50 IMAGE_SCN_MEM_P
18940 52 45 4c 4f 41 44 20 3d 20 30 78 30 30 30 38 30 RELOAD = 0x00080
18950 30 30 30 20 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 000 }....enum :
18960 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f 53 43 4e uint { IMAGE_SCN
18970 5f 41 4c 49 47 4e 5f 31 42 59 54 45 53 20 3d 20 _ALIGN_1BYTES =
18980 30 78 30 30 31 30 30 30 30 30 20 7d 0d 0a 65 6e 0x00100000 }..en
18990 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 4d 41 47 um : uint { IMAG
189a0 45 5f 53 43 4e 5f 41 4c 49 47 4e 5f 32 42 59 54 E_SCN_ALIGN_2BYT
189b0 45 53 20 3d 20 30 78 30 30 32 30 30 30 30 30 20 ES = 0x00200000
189c0 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b }..enum : uint {
189d0 20 49 4d 41 47 45 5f 53 43 4e 5f 41 4c 49 47 4e IMAGE_SCN_ALIGN
189e0 5f 34 42 59 54 45 53 20 3d 20 30 78 30 30 33 30 _4BYTES = 0x0030
189f0 30 30 30 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 0000 }..enum : u
18a00 69 6e 74 20 7b 20 49 4d 41 47 45 5f 53 43 4e 5f int { IMAGE_SCN_
18a10 41 4c 49 47 4e 5f 38 42 59 54 45 53 20 3d 20 30 ALIGN_8BYTES = 0
18a20 78 30 30 34 30 30 30 30 30 20 7d 0d 0a 65 6e 75 x00400000 }..enu
18a30 6d 20 3a 20 75 69 6e 74 20 7b 20 49 4d 41 47 45 m : uint { IMAGE
18a40 5f 53 43 4e 5f 41 4c 49 47 4e 5f 31 36 42 59 54 _SCN_ALIGN_16BYT
18a50 45 53 20 3d 20 30 78 30 30 35 30 30 30 30 30 20 ES = 0x00500000
18a60 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b }..enum : uint {
18a70 20 49 4d 41 47 45 5f 53 43 4e 5f 41 4c 49 47 4e IMAGE_SCN_ALIGN
18a80 5f 33 32 42 59 54 45 53 20 3d 20 30 78 30 30 36 _32BYTES = 0x006
18a90 30 30 30 30 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 00000 }..enum :
18aa0 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f 53 43 4e uint { IMAGE_SCN
18ab0 5f 41 4c 49 47 4e 5f 36 34 42 59 54 45 53 20 3d _ALIGN_64BYTES =
18ac0 20 30 78 30 30 37 30 30 30 30 30 20 7d 0d 0a 65 0x00700000 }..e
18ad0 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 4d 41 num : uint { IMA
18ae0 47 45 5f 53 43 4e 5f 41 4c 49 47 4e 5f 31 32 38 GE_SCN_ALIGN_128
18af0 42 59 54 45 53 20 3d 20 30 78 30 30 38 30 30 30 BYTES = 0x008000
18b00 30 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 00 }..enum : uin
18b10 74 20 7b 20 49 4d 41 47 45 5f 53 43 4e 5f 41 4c t { IMAGE_SCN_AL
18b20 49 47 4e 5f 32 35 36 42 59 54 45 53 20 3d 20 30 IGN_256BYTES = 0
18b30 78 30 30 39 30 30 30 30 30 20 7d 0d 0a 65 6e 75 x00900000 }..enu
18b40 6d 20 3a 20 75 69 6e 74 20 7b 20 49 4d 41 47 45 m : uint { IMAGE
18b50 5f 53 43 4e 5f 41 4c 49 47 4e 5f 35 31 32 42 59 _SCN_ALIGN_512BY
18b60 54 45 53 20 3d 20 30 78 30 30 41 30 30 30 30 30 TES = 0x00A00000
18b70 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 }..enum : uint
18b80 7b 20 49 4d 41 47 45 5f 53 43 4e 5f 41 4c 49 47 { IMAGE_SCN_ALIG
18b90 4e 5f 31 30 32 34 42 59 54 45 53 20 3d 20 30 78 N_1024BYTES = 0x
18ba0 30 30 42 30 30 30 30 30 20 7d 0d 0a 65 6e 75 6d 00B00000 }..enum
18bb0 20 3a 20 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f : uint { IMAGE_
18bc0 53 43 4e 5f 41 4c 49 47 4e 5f 32 30 34 38 42 59 SCN_ALIGN_2048BY
18bd0 54 45 53 20 3d 20 30 78 30 30 43 30 30 30 30 30 TES = 0x00C00000
18be0 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 }..enum : uint
18bf0 7b 20 49 4d 41 47 45 5f 53 43 4e 5f 41 4c 49 47 { IMAGE_SCN_ALIG
18c00 4e 5f 34 30 39 36 42 59 54 45 53 20 3d 20 30 78 N_4096BYTES = 0x
18c10 30 30 44 30 30 30 30 30 20 7d 0d 0a 65 6e 75 6d 00D00000 }..enum
18c20 20 3a 20 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f : uint { IMAGE_
18c30 53 43 4e 5f 41 4c 49 47 4e 5f 38 31 39 32 42 59 SCN_ALIGN_8192BY
18c40 54 45 53 20 3d 20 30 78 30 30 45 30 30 30 30 30 TES = 0x00E00000
18c50 20 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e }....enum : uin
18c60 74 20 7b 20 49 4d 41 47 45 5f 53 43 4e 5f 41 4c t { IMAGE_SCN_AL
18c70 49 47 4e 5f 4d 41 53 4b 20 3d 20 30 78 30 30 46 IGN_MASK = 0x00F
18c80 30 30 30 30 30 20 7d 0d 0a 0d 0a 65 6e 75 6d 20 00000 }....enum
18c90 3a 20 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f 53 : uint { IMAGE_S
18ca0 43 4e 5f 4c 4e 4b 5f 4e 52 45 4c 4f 43 5f 4f 56 CN_LNK_NRELOC_OV
18cb0 46 4c 20 3d 20 30 78 30 31 30 30 30 30 30 30 20 FL = 0x01000000
18cc0 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b }..enum : uint {
18cd0 20 49 4d 41 47 45 5f 53 43 4e 5f 4d 45 4d 5f 44 IMAGE_SCN_MEM_D
18ce0 49 53 43 41 52 44 41 42 4c 45 20 3d 20 30 78 30 ISCARDABLE = 0x0
18cf0 32 30 30 30 30 30 30 20 7d 0d 0a 65 6e 75 6d 20 2000000 }..enum
18d00 3a 20 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f 53 : uint { IMAGE_S
18d10 43 4e 5f 4d 45 4d 5f 4e 4f 54 5f 43 41 43 48 45 CN_MEM_NOT_CACHE
18d20 44 20 3d 20 30 78 30 34 30 30 30 30 30 30 20 7d D = 0x04000000 }
18d30 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
18d40 49 4d 41 47 45 5f 53 43 4e 5f 4d 45 4d 5f 4e 4f IMAGE_SCN_MEM_NO
18d50 54 5f 50 41 47 45 44 20 3d 20 30 78 30 38 30 30 T_PAGED = 0x0800
18d60 30 30 30 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 0000 }..enum : u
18d70 69 6e 74 20 7b 20 49 4d 41 47 45 5f 53 43 4e 5f int { IMAGE_SCN_
18d80 4d 45 4d 5f 53 48 41 52 45 44 20 3d 20 30 78 31 MEM_SHARED = 0x1
18d90 30 30 30 30 30 30 30 20 7d 0d 0a 65 6e 75 6d 20 0000000 }..enum
18da0 3a 20 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f 53 : uint { IMAGE_S
18db0 43 4e 5f 4d 45 4d 5f 45 58 45 43 55 54 45 20 3d CN_MEM_EXECUTE =
18dc0 20 30 78 32 30 30 30 30 30 30 30 20 7d 0d 0a 65 0x20000000 }..e
18dd0 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 4d 41 num : uint { IMA
18de0 47 45 5f 53 43 4e 5f 4d 45 4d 5f 52 45 41 44 20 GE_SCN_MEM_READ
18df0 3d 20 30 78 34 30 30 30 30 30 30 30 20 7d 0d 0a = 0x40000000 }..
18e00 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 4d enum : uint { IM
18e10 41 47 45 5f 53 43 4e 5f 4d 45 4d 5f 57 52 49 54 AGE_SCN_MEM_WRIT
18e20 45 20 3d 20 30 78 38 30 30 30 30 30 30 30 20 7d E = 0x80000000 }
18e30 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 ....enum : uint
18e40 7b 20 49 4d 41 47 45 5f 53 43 4e 5f 53 43 41 4c { IMAGE_SCN_SCAL
18e50 45 5f 49 4e 44 45 58 20 3d 20 30 78 30 30 30 30 E_INDEX = 0x0000
18e60 30 30 30 31 20 7d 0d 0a 0d 0a 2f 2f 20 23 69 66 0001 }....// #if
18e70 6e 64 65 66 20 5f 4d 41 43 0d 0a 61 6c 69 67 6e ndef _MAC..align
18e80 28 32 29 3a 0d 0a 2f 2f 20 23 65 6e 64 69 66 0d (2):..// #endif.
18e90 0a 0d 0a 73 74 72 75 63 74 20 5f 49 4d 41 47 45 ...struct _IMAGE
18ea0 5f 53 59 4d 42 4f 4c 20 7b 0d 0a 75 6e 69 6f 6e _SYMBOL {..union
18eb0 20 7b 0d 0a 20 20 42 59 54 45 20 53 68 6f 72 74 {.. BYTE Short
18ec0 4e 61 6d 65 5b 38 5d 3b 0d 0a 73 74 72 75 63 74 Name[8];..struct
18ed0 20 7b 0d 0a 20 20 44 57 4f 52 44 20 53 68 6f 72 {.. DWORD Shor
18ee0 74 3b 0d 0a 20 20 44 57 4f 52 44 20 4c 6f 6e 67 t;.. DWORD Long
18ef0 3b 0d 0a 7d 0d 0a 0d 0a 20 20 44 57 4f 52 44 20 ;..}.... DWORD
18f00 4c 6f 6e 67 4e 61 6d 65 5b 32 5d 3b 0d 0a 7d 0d LongName[2];..}.
18f10 0a 0d 0a 20 20 44 57 4f 52 44 20 56 61 6c 75 65 ... DWORD Value
18f20 3b 0d 0a 20 20 53 48 4f 52 54 20 53 65 63 74 69 ;.. SHORT Secti
18f30 6f 6e 4e 75 6d 62 65 72 3b 0d 0a 20 20 57 4f 52 onNumber;.. WOR
18f40 44 20 54 79 70 65 3b 0d 0a 20 20 42 59 54 45 20 D Type;.. BYTE
18f50 53 74 6f 72 61 67 65 43 6c 61 73 73 3b 0d 0a 20 StorageClass;..
18f60 20 42 59 54 45 20 4e 75 6d 62 65 72 4f 66 41 75 BYTE NumberOfAu
18f70 78 53 79 6d 62 6f 6c 73 3b 0d 0a 7d 0d 0a 61 6c xSymbols;..}..al
18f80 69 61 73 20 5f 49 4d 41 47 45 5f 53 59 4d 42 4f ias _IMAGE_SYMBO
18f90 4c 20 49 4d 41 47 45 5f 53 59 4d 42 4f 4c 3b 0d L IMAGE_SYMBOL;.
18fa0 0a 0d 0a 61 6c 69 61 73 20 49 4d 41 47 45 5f 53 ...alias IMAGE_S
18fb0 59 4d 42 4f 4c 2a 20 50 49 4d 41 47 45 5f 53 59 YMBOL* PIMAGE_SY
18fc0 4d 42 4f 4c 3b 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 MBOL;....enum :
18fd0 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f 53 49 5a uint { IMAGE_SIZ
18fe0 45 4f 46 5f 53 59 4d 42 4f 4c 20 3d 20 31 38 20 EOF_SYMBOL = 18
18ff0 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 53 48 4f 52 }....enum : SHOR
19000 54 20 7b 20 49 4d 41 47 45 5f 53 59 4d 5f 55 4e T { IMAGE_SYM_UN
19010 44 45 46 49 4e 45 44 20 3d 20 30 20 7d 0d 0a 65 DEFINED = 0 }..e
19020 6e 75 6d 20 3a 20 53 48 4f 52 54 20 7b 20 49 4d num : SHORT { IM
19030 41 47 45 5f 53 59 4d 5f 41 42 53 4f 4c 55 54 45 AGE_SYM_ABSOLUTE
19040 20 3d 20 2d 31 20 7d 0d 0a 65 6e 75 6d 20 3a 20 = -1 }..enum :
19050 53 48 4f 52 54 20 7b 20 49 4d 41 47 45 5f 53 59 SHORT { IMAGE_SY
19060 4d 5f 44 45 42 55 47 20 3d 20 2d 32 20 7d 0d 0a M_DEBUG = -2 }..
19070 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 4d enum : uint { IM
19080 41 47 45 5f 53 59 4d 5f 53 45 43 54 49 4f 4e 5f AGE_SYM_SECTION_
19090 4d 41 58 20 3d 20 30 78 46 45 46 46 20 7d 0d 0a MAX = 0xFEFF }..
190a0 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
190b0 49 4d 41 47 45 5f 53 59 4d 5f 54 59 50 45 5f 4e IMAGE_SYM_TYPE_N
190c0 55 4c 4c 20 3d 20 30 78 30 30 30 30 20 7d 0d 0a ULL = 0x0000 }..
190d0 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 4d enum : uint { IM
190e0 41 47 45 5f 53 59 4d 5f 54 59 50 45 5f 56 4f 49 AGE_SYM_TYPE_VOI
190f0 44 20 3d 20 30 78 30 30 30 31 20 7d 0d 0a 65 6e D = 0x0001 }..en
19100 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 4d 41 47 um : uint { IMAG
19110 45 5f 53 59 4d 5f 54 59 50 45 5f 43 48 41 52 20 E_SYM_TYPE_CHAR
19120 3d 20 30 78 30 30 30 32 20 7d 0d 0a 65 6e 75 6d = 0x0002 }..enum
19130 20 3a 20 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f : uint { IMAGE_
19140 53 59 4d 5f 54 59 50 45 5f 53 48 4f 52 54 20 3d SYM_TYPE_SHORT =
19150 20 30 78 30 30 30 33 20 7d 0d 0a 65 6e 75 6d 20 0x0003 }..enum
19160 3a 20 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f 53 : uint { IMAGE_S
19170 59 4d 5f 54 59 50 45 5f 49 4e 54 20 3d 20 30 78 YM_TYPE_INT = 0x
19180 30 30 30 34 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 0004 }..enum : u
19190 69 6e 74 20 7b 20 49 4d 41 47 45 5f 53 59 4d 5f int { IMAGE_SYM_
191a0 54 59 50 45 5f 4c 4f 4e 47 20 3d 20 30 78 30 30 TYPE_LONG = 0x00
191b0 30 35 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 05 }..enum : uin
191c0 74 20 7b 20 49 4d 41 47 45 5f 53 59 4d 5f 54 59 t { IMAGE_SYM_TY
191d0 50 45 5f 46 4c 4f 41 54 20 3d 20 30 78 30 30 30 PE_FLOAT = 0x000
191e0 36 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 6 }..enum : uint
191f0 20 7b 20 49 4d 41 47 45 5f 53 59 4d 5f 54 59 50 { IMAGE_SYM_TYP
19200 45 5f 44 4f 55 42 4c 45 20 3d 20 30 78 30 30 30 E_DOUBLE = 0x000
19210 37 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 7 }..enum : uint
19220 20 7b 20 49 4d 41 47 45 5f 53 59 4d 5f 54 59 50 { IMAGE_SYM_TYP
19230 45 5f 53 54 52 55 43 54 20 3d 20 30 78 30 30 30 E_STRUCT = 0x000
19240 38 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 8 }..enum : uint
19250 20 7b 20 49 4d 41 47 45 5f 53 59 4d 5f 54 59 50 { IMAGE_SYM_TYP
19260 45 5f 55 4e 49 4f 4e 20 3d 20 30 78 30 30 30 39 E_UNION = 0x0009
19270 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 }..enum : uint
19280 7b 20 49 4d 41 47 45 5f 53 59 4d 5f 54 59 50 45 { IMAGE_SYM_TYPE
19290 5f 45 4e 55 4d 20 3d 20 30 78 30 30 30 41 20 7d _ENUM = 0x000A }
192a0 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
192b0 49 4d 41 47 45 5f 53 59 4d 5f 54 59 50 45 5f 4d IMAGE_SYM_TYPE_M
192c0 4f 45 20 3d 20 30 78 30 30 30 42 20 7d 0d 0a 65 OE = 0x000B }..e
192d0 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 4d 41 num : uint { IMA
192e0 47 45 5f 53 59 4d 5f 54 59 50 45 5f 42 59 54 45 GE_SYM_TYPE_BYTE
192f0 20 3d 20 30 78 30 30 30 43 20 7d 0d 0a 65 6e 75 = 0x000C }..enu
19300 6d 20 3a 20 75 69 6e 74 20 7b 20 49 4d 41 47 45 m : uint { IMAGE
19310 5f 53 59 4d 5f 54 59 50 45 5f 57 4f 52 44 20 3d _SYM_TYPE_WORD =
19320 20 30 78 30 30 30 44 20 7d 0d 0a 65 6e 75 6d 20 0x000D }..enum
19330 3a 20 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f 53 : uint { IMAGE_S
19340 59 4d 5f 54 59 50 45 5f 55 49 4e 54 20 3d 20 30 YM_TYPE_UINT = 0
19350 78 30 30 30 45 20 7d 0d 0a 65 6e 75 6d 20 3a 20 x000E }..enum :
19360 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f 53 59 4d uint { IMAGE_SYM
19370 5f 54 59 50 45 5f 44 57 4f 52 44 20 3d 20 30 78 _TYPE_DWORD = 0x
19380 30 30 30 46 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 000F }..enum : u
19390 69 6e 74 20 7b 20 49 4d 41 47 45 5f 53 59 4d 5f int { IMAGE_SYM_
193a0 54 59 50 45 5f 50 43 4f 44 45 20 3d 20 30 78 38 TYPE_PCODE = 0x8
193b0 30 30 30 20 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 000 }....enum :
193c0 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f 53 59 4d uint { IMAGE_SYM
193d0 5f 44 54 59 50 45 5f 4e 55 4c 4c 20 3d 20 30 20 _DTYPE_NULL = 0
193e0 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b }..enum : uint {
193f0 20 49 4d 41 47 45 5f 53 59 4d 5f 44 54 59 50 45 IMAGE_SYM_DTYPE
19400 5f 50 4f 49 4e 54 45 52 20 3d 20 31 20 7d 0d 0a _POINTER = 1 }..
19410 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 4d enum : uint { IM
19420 41 47 45 5f 53 59 4d 5f 44 54 59 50 45 5f 46 55 AGE_SYM_DTYPE_FU
19430 4e 43 54 49 4f 4e 20 3d 20 32 20 7d 0d 0a 65 6e NCTION = 2 }..en
19440 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 4d 41 47 um : uint { IMAG
19450 45 5f 53 59 4d 5f 44 54 59 50 45 5f 41 52 52 41 E_SYM_DTYPE_ARRA
19460 59 20 3d 20 33 20 7d 0d 0a 0d 0a 65 6e 75 6d 20 Y = 3 }....enum
19470 3a 20 42 59 54 45 20 7b 20 49 4d 41 47 45 5f 53 : BYTE { IMAGE_S
19480 59 4d 5f 43 4c 41 53 53 5f 45 4e 44 5f 4f 46 5f YM_CLASS_END_OF_
19490 46 55 4e 43 54 49 4f 4e 20 3d 20 63 61 73 74 28 FUNCTION = cast(
194a0 42 59 54 45 29 2d 31 20 7d 0d 0a 65 6e 75 6d 20 BYTE)-1 }..enum
194b0 3a 20 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f 53 : uint { IMAGE_S
194c0 59 4d 5f 43 4c 41 53 53 5f 4e 55 4c 4c 20 3d 20 YM_CLASS_NULL =
194d0 30 78 30 30 30 30 20 7d 0d 0a 65 6e 75 6d 20 3a 0x0000 }..enum :
194e0 20 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f 53 59 uint { IMAGE_SY
194f0 4d 5f 43 4c 41 53 53 5f 41 55 54 4f 4d 41 54 49 M_CLASS_AUTOMATI
19500 43 20 3d 20 30 78 30 30 30 31 20 7d 0d 0a 65 6e C = 0x0001 }..en
19510 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 4d 41 47 um : uint { IMAG
19520 45 5f 53 59 4d 5f 43 4c 41 53 53 5f 45 58 54 45 E_SYM_CLASS_EXTE
19530 52 4e 41 4c 20 3d 20 30 78 30 30 30 32 20 7d 0d RNAL = 0x0002 }.
19540 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 .enum : uint { I
19550 4d 41 47 45 5f 53 59 4d 5f 43 4c 41 53 53 5f 53 MAGE_SYM_CLASS_S
19560 54 41 54 49 43 20 3d 20 30 78 30 30 30 33 20 7d TATIC = 0x0003 }
19570 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
19580 49 4d 41 47 45 5f 53 59 4d 5f 43 4c 41 53 53 5f IMAGE_SYM_CLASS_
19590 52 45 47 49 53 54 45 52 20 3d 20 30 78 30 30 30 REGISTER = 0x000
195a0 34 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 4 }..enum : uint
195b0 20 7b 20 49 4d 41 47 45 5f 53 59 4d 5f 43 4c 41 { IMAGE_SYM_CLA
195c0 53 53 5f 45 58 54 45 52 4e 41 4c 5f 44 45 46 20 SS_EXTERNAL_DEF
195d0 3d 20 30 78 30 30 30 35 20 7d 0d 0a 65 6e 75 6d = 0x0005 }..enum
195e0 20 3a 20 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f : uint { IMAGE_
195f0 53 59 4d 5f 43 4c 41 53 53 5f 4c 41 42 45 4c 20 SYM_CLASS_LABEL
19600 3d 20 30 78 30 30 30 36 20 7d 0d 0a 65 6e 75 6d = 0x0006 }..enum
19610 20 3a 20 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f : uint { IMAGE_
19620 53 59 4d 5f 43 4c 41 53 53 5f 55 4e 44 45 46 49 SYM_CLASS_UNDEFI
19630 4e 45 44 5f 4c 41 42 45 4c 20 3d 20 30 78 30 30 NED_LABEL = 0x00
19640 30 37 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 07 }..enum : uin
19650 74 20 7b 20 49 4d 41 47 45 5f 53 59 4d 5f 43 4c t { IMAGE_SYM_CL
19660 41 53 53 5f 4d 45 4d 42 45 52 5f 4f 46 5f 53 54 ASS_MEMBER_OF_ST
19670 52 55 43 54 20 3d 20 30 78 30 30 30 38 20 7d 0d RUCT = 0x0008 }.
19680 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 .enum : uint { I
19690 4d 41 47 45 5f 53 59 4d 5f 43 4c 41 53 53 5f 41 MAGE_SYM_CLASS_A
196a0 52 47 55 4d 45 4e 54 20 3d 20 30 78 30 30 30 39 RGUMENT = 0x0009
196b0 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 }..enum : uint
196c0 7b 20 49 4d 41 47 45 5f 53 59 4d 5f 43 4c 41 53 { IMAGE_SYM_CLAS
196d0 53 5f 53 54 52 55 43 54 5f 54 41 47 20 3d 20 30 S_STRUCT_TAG = 0
196e0 78 30 30 30 41 20 7d 0d 0a 65 6e 75 6d 20 3a 20 x000A }..enum :
196f0 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f 53 59 4d uint { IMAGE_SYM
19700 5f 43 4c 41 53 53 5f 4d 45 4d 42 45 52 5f 4f 46 _CLASS_MEMBER_OF
19710 5f 55 4e 49 4f 4e 20 3d 20 30 78 30 30 30 42 20 _UNION = 0x000B
19720 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b }..enum : uint {
19730 20 49 4d 41 47 45 5f 53 59 4d 5f 43 4c 41 53 53 IMAGE_SYM_CLASS
19740 5f 55 4e 49 4f 4e 5f 54 41 47 20 3d 20 30 78 30 _UNION_TAG = 0x0
19750 30 30 43 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 00C }..enum : ui
19760 6e 74 20 7b 20 49 4d 41 47 45 5f 53 59 4d 5f 43 nt { IMAGE_SYM_C
19770 4c 41 53 53 5f 54 59 50 45 5f 44 45 46 49 4e 49 LASS_TYPE_DEFINI
19780 54 49 4f 4e 20 3d 20 30 78 30 30 30 44 20 7d 0d TION = 0x000D }.
19790 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 .enum : uint { I
197a0 4d 41 47 45 5f 53 59 4d 5f 43 4c 41 53 53 5f 55 MAGE_SYM_CLASS_U
197b0 4e 44 45 46 49 4e 45 44 5f 53 54 41 54 49 43 20 NDEFINED_STATIC
197c0 3d 20 30 78 30 30 30 45 20 7d 0d 0a 65 6e 75 6d = 0x000E }..enum
197d0 20 3a 20 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f : uint { IMAGE_
197e0 53 59 4d 5f 43 4c 41 53 53 5f 45 4e 55 4d 5f 54 SYM_CLASS_ENUM_T
197f0 41 47 20 3d 20 30 78 30 30 30 46 20 7d 0d 0a 65 AG = 0x000F }..e
19800 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 4d 41 num : uint { IMA
19810 47 45 5f 53 59 4d 5f 43 4c 41 53 53 5f 4d 45 4d GE_SYM_CLASS_MEM
19820 42 45 52 5f 4f 46 5f 45 4e 55 4d 20 3d 20 30 78 BER_OF_ENUM = 0x
19830 30 30 31 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 0010 }..enum : u
19840 69 6e 74 20 7b 20 49 4d 41 47 45 5f 53 59 4d 5f int { IMAGE_SYM_
19850 43 4c 41 53 53 5f 52 45 47 49 53 54 45 52 5f 50 CLASS_REGISTER_P
19860 41 52 41 4d 20 3d 20 30 78 30 30 31 31 20 7d 0d ARAM = 0x0011 }.
19870 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 .enum : uint { I
19880 4d 41 47 45 5f 53 59 4d 5f 43 4c 41 53 53 5f 42 MAGE_SYM_CLASS_B
19890 49 54 5f 46 49 45 4c 44 20 3d 20 30 78 30 30 31 IT_FIELD = 0x001
198a0 32 20 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 75 69 2 }....enum : ui
198b0 6e 74 20 7b 20 49 4d 41 47 45 5f 53 59 4d 5f 43 nt { IMAGE_SYM_C
198c0 4c 41 53 53 5f 46 41 52 5f 45 58 54 45 52 4e 41 LASS_FAR_EXTERNA
198d0 4c 20 3d 20 30 78 30 30 34 34 20 7d 0d 0a 0d 0a L = 0x0044 }....
198e0 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 4d enum : uint { IM
198f0 41 47 45 5f 53 59 4d 5f 43 4c 41 53 53 5f 42 4c AGE_SYM_CLASS_BL
19900 4f 43 4b 20 3d 20 30 78 30 30 36 34 20 7d 0d 0a OCK = 0x0064 }..
19910 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 4d enum : uint { IM
19920 41 47 45 5f 53 59 4d 5f 43 4c 41 53 53 5f 46 55 AGE_SYM_CLASS_FU
19930 4e 43 54 49 4f 4e 20 3d 20 30 78 30 30 36 35 20 NCTION = 0x0065
19940 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b }..enum : uint {
19950 20 49 4d 41 47 45 5f 53 59 4d 5f 43 4c 41 53 53 IMAGE_SYM_CLASS
19960 5f 45 4e 44 5f 4f 46 5f 53 54 52 55 43 54 20 3d _END_OF_STRUCT =
19970 20 30 78 30 30 36 36 20 7d 0d 0a 65 6e 75 6d 20 0x0066 }..enum
19980 3a 20 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f 53 : uint { IMAGE_S
19990 59 4d 5f 43 4c 41 53 53 5f 46 49 4c 45 20 3d 20 YM_CLASS_FILE =
199a0 30 78 30 30 36 37 20 7d 0d 0a 0d 0a 65 6e 75 6d 0x0067 }....enum
199b0 20 3a 20 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f : uint { IMAGE_
199c0 53 59 4d 5f 43 4c 41 53 53 5f 53 45 43 54 49 4f SYM_CLASS_SECTIO
199d0 4e 20 3d 20 30 78 30 30 36 38 20 7d 0d 0a 65 6e N = 0x0068 }..en
199e0 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 4d 41 47 um : uint { IMAG
199f0 45 5f 53 59 4d 5f 43 4c 41 53 53 5f 57 45 41 4b E_SYM_CLASS_WEAK
19a00 5f 45 58 54 45 52 4e 41 4c 20 3d 20 30 78 30 30 _EXTERNAL = 0x00
19a10 36 39 20 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 75 69 }....enum : u
19a20 69 6e 74 20 7b 20 49 4d 41 47 45 5f 53 59 4d 5f int { IMAGE_SYM_
19a30 43 4c 41 53 53 5f 43 4c 52 5f 54 4f 4b 45 4e 20 CLASS_CLR_TOKEN
19a40 3d 20 30 78 30 30 36 42 20 7d 0d 0a 0d 0a 65 6e = 0x006B }....en
19a50 75 6d 20 3a 20 75 69 6e 74 20 7b 20 4e 5f 42 54 um : uint { N_BT
19a60 4d 41 53 4b 20 3d 20 30 78 30 30 30 46 20 7d 0d MASK = 0x000F }.
19a70 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 4e .enum : uint { N
19a80 5f 54 4d 41 53 4b 20 3d 20 30 78 30 30 33 30 20 _TMASK = 0x0030
19a90 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b }..enum : uint {
19aa0 20 4e 5f 54 4d 41 53 4b 31 20 3d 20 30 78 30 30 N_TMASK1 = 0x00
19ab0 43 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e C0 }..enum : uin
19ac0 74 20 7b 20 4e 5f 54 4d 41 53 4b 32 20 3d 20 30 t { N_TMASK2 = 0
19ad0 78 30 30 46 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 x00F0 }..enum :
19ae0 75 69 6e 74 20 7b 20 4e 5f 42 54 53 48 46 54 20 uint { N_BTSHFT
19af0 3d 20 34 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 = 4 }..enum : ui
19b00 6e 74 20 7b 20 4e 5f 54 53 48 49 46 54 20 3d 20 nt { N_TSHIFT =
19b10 32 20 7d 0d 0a 0d 0a 42 59 54 45 20 42 54 59 50 2 }....BYTE BTYP
19b20 45 28 42 59 54 45 20 78 29 7b 20 72 65 74 75 72 E(BYTE x){ retur
19b30 6e 20 78 20 26 20 4e 5f 42 54 4d 41 53 4b 3b 20 n x & N_BTMASK;
19b40 7d 0d 0a 0d 0a 2f 2f 20 23 69 66 6e 64 65 66 20 }....// #ifndef
19b50 49 53 50 54 52 0d 0a 62 69 74 20 49 53 50 54 52 ISPTR..bit ISPTR
19b60 28 75 69 6e 74 20 78 29 7b 20 72 65 74 75 72 6e (uint x){ return
19b70 20 28 78 20 26 20 4e 5f 54 4d 41 53 4b 29 20 3d (x & N_TMASK) =
19b80 3d 20 28 49 4d 41 47 45 5f 53 59 4d 5f 44 54 59 = (IMAGE_SYM_DTY
19b90 50 45 5f 50 4f 49 4e 54 45 52 20 3c 3c 20 4e 5f PE_POINTER << N_
19ba0 42 54 53 48 46 54 29 3b 20 7d 0d 0a 2f 2f 20 23 BTSHFT); }..// #
19bb0 65 6e 64 69 66 0d 0a 0d 0a 2f 2f 20 23 69 66 6e endif....// #ifn
19bc0 64 65 66 20 49 53 46 43 4e 0d 0a 62 69 74 20 49 def ISFCN..bit I
19bd0 53 46 43 4e 28 75 69 6e 74 20 78 29 7b 20 72 65 SFCN(uint x){ re
19be0 74 75 72 6e 20 28 78 20 26 20 4e 5f 54 4d 41 53 turn (x & N_TMAS
19bf0 4b 29 20 3d 3d 20 28 49 4d 41 47 45 5f 53 59 4d K) == (IMAGE_SYM
19c00 5f 44 54 59 50 45 5f 46 55 4e 43 54 49 4f 4e 20 _DTYPE_FUNCTION
19c10 3c 3c 20 4e 5f 42 54 53 48 46 54 29 3b 20 7d 0d << N_BTSHFT); }.
19c20 0a 2f 2f 20 23 65 6e 64 69 66 0d 0a 0d 0a 2f 2f .// #endif....//
19c30 20 23 69 66 6e 64 65 66 20 49 53 41 52 59 0d 0a #ifndef ISARY..
19c40 62 69 74 20 49 53 41 52 59 28 75 69 6e 74 20 78 bit ISARY(uint x
19c50 29 7b 20 72 65 74 75 72 6e 20 28 78 20 26 20 4e ){ return (x & N
19c60 5f 54 4d 41 53 4b 29 20 3d 3d 20 28 49 4d 41 47 _TMASK) == (IMAG
19c70 45 5f 53 59 4d 5f 44 54 59 50 45 5f 41 52 52 41 E_SYM_DTYPE_ARRA
19c80 59 20 3c 3c 20 4e 5f 42 54 53 48 46 54 29 3b 20 Y << N_BTSHFT);
19c90 7d 0d 0a 2f 2f 20 23 65 6e 64 69 66 0d 0a 0d 0a }..// #endif....
19ca0 2f 2f 20 23 69 66 6e 64 65 66 20 49 53 54 41 47 // #ifndef ISTAG
19cb0 0d 0a 62 69 74 20 49 53 54 41 47 28 75 69 6e 74 ..bit ISTAG(uint
19cc0 20 78 29 7b 20 72 65 74 75 72 6e 20 78 20 3d 3d x){ return x ==
19cd0 20 49 4d 41 47 45 5f 53 59 4d 5f 43 4c 41 53 53 IMAGE_SYM_CLASS
19ce0 5f 53 54 52 55 43 54 5f 54 41 47 20 7c 7c 20 78 _STRUCT_TAG || x
19cf0 20 3d 3d 20 49 4d 41 47 45 5f 53 59 4d 5f 43 4c == IMAGE_SYM_CL
19d00 41 53 53 5f 55 4e 49 4f 4e 5f 54 41 47 20 7c 7c ASS_UNION_TAG ||
19d10 20 78 20 3d 3d 20 49 4d 41 47 45 5f 53 59 4d 5f x == IMAGE_SYM_
19d20 43 4c 41 53 53 5f 45 4e 55 4d 5f 54 41 47 3b 20 CLASS_ENUM_TAG;
19d30 7d 0d 0a 2f 2f 20 23 65 6e 64 69 66 0d 0a 0d 0a }..// #endif....
19d40 2f 2f 20 23 69 66 6e 64 65 66 20 49 4e 43 52 45 // #ifndef INCRE
19d50 46 0d 0a 75 69 6e 74 20 49 4e 43 52 45 46 28 75 F..uint INCREF(u
19d60 69 6e 74 20 78 29 7b 20 72 65 74 75 72 6e 20 28 int x){ return (
19d70 28 78 26 7e 4e 5f 42 54 4d 41 53 4b 29 3c 3c 4e (x&~N_BTMASK)<<N
19d80 5f 54 53 48 49 46 54 29 7c 28 49 4d 41 47 45 5f _TSHIFT)|(IMAGE_
19d90 53 59 4d 5f 44 54 59 50 45 5f 50 4f 49 4e 54 45 SYM_DTYPE_POINTE
19da0 52 3c 3c 4e 5f 42 54 53 48 46 54 29 7c 28 78 26 R<<N_BTSHFT)|(x&
19db0 4e 5f 42 54 4d 41 53 4b 29 3b 20 7d 0d 0a 2f 2f N_BTMASK); }..//
19dc0 20 23 65 6e 64 69 66 0d 0a 2f 2f 20 23 69 66 6e #endif..// #ifn
19dd0 64 65 66 20 44 45 43 52 45 46 0d 0a 75 69 6e 74 def DECREF..uint
19de0 20 44 45 43 52 45 46 28 75 69 6e 74 20 78 29 7b DECREF(uint x){
19df0 20 72 65 74 75 72 6e 20 28 28 78 20 3e 3e 3e 20 return ((x >>>
19e00 4e 5f 54 53 48 49 46 54 29 20 26 20 7e 4e 5f 42 N_TSHIFT) & ~N_B
19e10 54 4d 41 53 4b 29 7c 28 78 20 26 20 4e 5f 42 54 TMASK)|(x & N_BT
19e20 4d 41 53 4b 29 3b 20 7d 0d 0a 2f 2f 20 23 65 6e MASK); }..// #en
19e30 64 69 66 0d 0a 0d 0a 75 6e 69 6f 6e 20 5f 49 4d dif....union _IM
19e40 41 47 45 5f 41 55 58 5f 53 59 4d 42 4f 4c 20 7b AGE_AUX_SYMBOL {
19e50 0d 0a 73 74 72 75 63 74 20 7b 0d 0a 20 20 44 57 ..struct {.. DW
19e60 4f 52 44 20 54 61 67 49 6e 64 65 78 3b 0d 0a 75 ORD TagIndex;..u
19e70 6e 69 6f 6e 20 7b 0d 0a 73 74 72 75 63 74 20 7b nion {..struct {
19e80 0d 0a 20 20 57 4f 52 44 20 4c 69 6e 65 6e 75 6d .. WORD Linenum
19e90 62 65 72 3b 0d 0a 20 20 57 4f 52 44 20 53 69 7a ber;.. WORD Siz
19ea0 65 3b 0d 0a 7d 0d 0a 0d 0a 20 20 44 57 4f 52 44 e;..}.... DWORD
19eb0 20 54 6f 74 61 6c 53 69 7a 65 3b 0d 0a 7d 0d 0a TotalSize;..}..
19ec0 0d 0a 75 6e 69 6f 6e 20 7b 0d 0a 73 74 72 75 63 ..union {..struc
19ed0 74 20 7b 0d 0a 20 20 44 57 4f 52 44 20 50 6f 69 t {.. DWORD Poi
19ee0 6e 74 65 72 54 6f 4c 69 6e 65 6e 75 6d 62 65 72 nterToLinenumber
19ef0 3b 0d 0a 20 20 44 57 4f 52 44 20 50 6f 69 6e 74 ;.. DWORD Point
19f00 65 72 54 6f 4e 65 78 74 46 75 6e 63 74 69 6f 6e erToNextFunction
19f10 3b 0d 0a 7d 0d 0a 0d 0a 73 74 72 75 63 74 20 7b ;..}....struct {
19f20 0d 0a 20 20 57 4f 52 44 20 44 69 6d 65 6e 73 69 .. WORD Dimensi
19f30 6f 6e 5b 34 5d 3b 0d 0a 7d 0d 0a 0d 0a 7d 0d 0a on[4];..}....}..
19f40 0d 0a 20 20 57 4f 52 44 20 54 76 49 6e 64 65 78 .. WORD TvIndex
19f50 3b 0d 0a 7d 0d 0a 0d 0a 73 74 72 75 63 74 20 7b ;..}....struct {
19f60 0d 0a 20 20 42 59 54 45 20 4e 61 6d 65 5b 49 4d .. BYTE Name[IM
19f70 41 47 45 5f 53 49 5a 45 4f 46 5f 53 59 4d 42 4f AGE_SIZEOF_SYMBO
19f80 4c 5d 3b 0d 0a 7d 0d 0a 0d 0a 73 74 72 75 63 74 L];..}....struct
19f90 20 7b 0d 0a 20 20 44 57 4f 52 44 20 4c 65 6e 67 {.. DWORD Leng
19fa0 74 68 3b 0d 0a 20 20 57 4f 52 44 20 4e 75 6d 62 th;.. WORD Numb
19fb0 65 72 4f 66 52 65 6c 6f 63 61 74 69 6f 6e 73 3b erOfRelocations;
19fc0 0d 0a 20 20 57 4f 52 44 20 4e 75 6d 62 65 72 4f .. WORD NumberO
19fd0 66 4c 69 6e 65 6e 75 6d 62 65 72 73 3b 0d 0a 20 fLinenumbers;..
19fe0 20 44 57 4f 52 44 20 43 68 65 63 6b 53 75 6d 3b DWORD CheckSum;
19ff0 0d 0a 20 20 53 48 4f 52 54 20 4e 75 6d 62 65 72 .. SHORT Number
1a000 3b 0d 0a 20 20 42 59 54 45 20 53 65 6c 65 63 74 ;.. BYTE Select
1a010 69 6f 6e 3b 0d 0a 7d 0d 0a 0d 0a 7d 0d 0a 61 6c ion;..}....}..al
1a020 69 61 73 20 5f 49 4d 41 47 45 5f 41 55 58 5f 53 ias _IMAGE_AUX_S
1a030 59 4d 42 4f 4c 20 49 4d 41 47 45 5f 41 55 58 5f YMBOL IMAGE_AUX_
1a040 53 59 4d 42 4f 4c 3b 0d 0a 0d 0a 61 6c 69 61 73 SYMBOL;....alias
1a050 20 49 4d 41 47 45 5f 41 55 58 5f 53 59 4d 42 4f IMAGE_AUX_SYMBO
1a060 4c 2a 20 50 49 4d 41 47 45 5f 41 55 58 5f 53 59 L* PIMAGE_AUX_SY
1a070 4d 42 4f 4c 3b 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 MBOL;....enum :
1a080 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f 53 49 5a uint { IMAGE_SIZ
1a090 45 4f 46 5f 41 55 58 5f 53 59 4d 42 4f 4c 20 3d EOF_AUX_SYMBOL =
1a0a0 20 31 38 20 7d 0d 0a 0d 0a 61 6c 69 61 73 20 69 18 }....alias i
1a0b0 6e 74 20 49 4d 41 47 45 5f 41 55 58 5f 53 59 4d nt IMAGE_AUX_SYM
1a0c0 42 4f 4c 5f 54 59 50 45 3b 0d 0a 65 6e 75 6d 20 BOL_TYPE;..enum
1a0d0 7b 0d 0a 20 20 49 4d 41 47 45 5f 41 55 58 5f 53 {.. IMAGE_AUX_S
1a0e0 59 4d 42 4f 4c 5f 54 59 50 45 5f 54 4f 4b 45 4e YMBOL_TYPE_TOKEN
1a0f0 5f 44 45 46 20 3d 20 31 2c 0d 0a 7d 0d 0a 0d 0a _DEF = 1,..}....
1a100 61 6c 69 67 6e 28 32 29 3a 0d 0a 0d 0a 73 74 72 align(2):....str
1a110 75 63 74 20 49 4d 41 47 45 5f 41 55 58 5f 53 59 uct IMAGE_AUX_SY
1a120 4d 42 4f 4c 5f 54 4f 4b 45 4e 5f 44 45 46 20 7b MBOL_TOKEN_DEF {
1a130 0d 0a 20 20 42 59 54 45 20 62 41 75 78 54 79 70 .. BYTE bAuxTyp
1a140 65 3b 0d 0a 20 20 42 59 54 45 20 62 52 65 73 65 e;.. BYTE bRese
1a150 72 76 65 64 3b 0d 0a 20 20 44 57 4f 52 44 20 53 rved;.. DWORD S
1a160 79 6d 62 6f 6c 54 61 62 6c 65 49 6e 64 65 78 3b ymbolTableIndex;
1a170 0d 0a 20 20 42 59 54 45 20 72 67 62 52 65 73 65 .. BYTE rgbRese
1a180 72 76 65 64 5b 31 32 5d 3b 0d 0a 7d 0d 0a 0d 0a rved[12];..}....
1a190 61 6c 69 61 73 20 49 4d 41 47 45 5f 41 55 58 5f alias IMAGE_AUX_
1a1a0 53 59 4d 42 4f 4c 5f 54 4f 4b 45 4e 5f 44 45 46 SYMBOL_TOKEN_DEF
1a1b0 2a 20 50 49 4d 41 47 45 5f 41 55 58 5f 53 59 4d * PIMAGE_AUX_SYM
1a1c0 42 4f 4c 5f 54 4f 4b 45 4e 5f 44 45 46 3b 0d 0a BOL_TOKEN_DEF;..
1a1d0 0d 0a 61 6c 69 67 6e 3a 0d 0a 0d 0a 65 6e 75 6d ..align:....enum
1a1e0 20 3a 20 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f : uint { IMAGE_
1a1f0 43 4f 4d 44 41 54 5f 53 45 4c 45 43 54 5f 4e 4f COMDAT_SELECT_NO
1a200 44 55 50 4c 49 43 41 54 45 53 20 3d 20 31 20 7d DUPLICATES = 1 }
1a210 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
1a220 49 4d 41 47 45 5f 43 4f 4d 44 41 54 5f 53 45 4c IMAGE_COMDAT_SEL
1a230 45 43 54 5f 41 4e 59 20 3d 20 32 20 7d 0d 0a 65 ECT_ANY = 2 }..e
1a240 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 4d 41 num : uint { IMA
1a250 47 45 5f 43 4f 4d 44 41 54 5f 53 45 4c 45 43 54 GE_COMDAT_SELECT
1a260 5f 53 41 4d 45 5f 53 49 5a 45 20 3d 20 33 20 7d _SAME_SIZE = 3 }
1a270 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
1a280 49 4d 41 47 45 5f 43 4f 4d 44 41 54 5f 53 45 4c IMAGE_COMDAT_SEL
1a290 45 43 54 5f 45 58 41 43 54 5f 4d 41 54 43 48 20 ECT_EXACT_MATCH
1a2a0 3d 20 34 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 = 4 }..enum : ui
1a2b0 6e 74 20 7b 20 49 4d 41 47 45 5f 43 4f 4d 44 41 nt { IMAGE_COMDA
1a2c0 54 5f 53 45 4c 45 43 54 5f 41 53 53 4f 43 49 41 T_SELECT_ASSOCIA
1a2d0 54 49 56 45 20 3d 20 35 20 7d 0d 0a 65 6e 75 6d TIVE = 5 }..enum
1a2e0 20 3a 20 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f : uint { IMAGE_
1a2f0 43 4f 4d 44 41 54 5f 53 45 4c 45 43 54 5f 4c 41 COMDAT_SELECT_LA
1a300 52 47 45 53 54 20 3d 20 36 20 7d 0d 0a 65 6e 75 RGEST = 6 }..enu
1a310 6d 20 3a 20 75 69 6e 74 20 7b 20 49 4d 41 47 45 m : uint { IMAGE
1a320 5f 43 4f 4d 44 41 54 5f 53 45 4c 45 43 54 5f 4e _COMDAT_SELECT_N
1a330 45 57 45 53 54 20 3d 20 37 20 7d 0d 0a 0d 0a 65 EWEST = 7 }....e
1a340 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 4d 41 num : uint { IMA
1a350 47 45 5f 57 45 41 4b 5f 45 58 54 45 52 4e 5f 53 GE_WEAK_EXTERN_S
1a360 45 41 52 43 48 5f 4e 4f 4c 49 42 52 41 52 59 20 EARCH_NOLIBRARY
1a370 3d 20 31 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 = 1 }..enum : ui
1a380 6e 74 20 7b 20 49 4d 41 47 45 5f 57 45 41 4b 5f nt { IMAGE_WEAK_
1a390 45 58 54 45 52 4e 5f 53 45 41 52 43 48 5f 4c 49 EXTERN_SEARCH_LI
1a3a0 42 52 41 52 59 20 3d 20 32 20 7d 0d 0a 65 6e 75 BRARY = 2 }..enu
1a3b0 6d 20 3a 20 75 69 6e 74 20 7b 20 49 4d 41 47 45 m : uint { IMAGE
1a3c0 5f 57 45 41 4b 5f 45 58 54 45 52 4e 5f 53 45 41 _WEAK_EXTERN_SEA
1a3d0 52 43 48 5f 41 4c 49 41 53 20 3d 20 33 20 7d 0d RCH_ALIAS = 3 }.
1a3e0 0a 0d 0a 73 74 72 75 63 74 20 5f 49 4d 41 47 45 ...struct _IMAGE
1a3f0 5f 52 45 4c 4f 43 41 54 49 4f 4e 20 7b 0d 0a 75 _RELOCATION {..u
1a400 6e 69 6f 6e 20 7b 0d 0a 20 20 44 57 4f 52 44 20 nion {.. DWORD
1a410 56 69 72 74 75 61 6c 41 64 64 72 65 73 73 3b 0d VirtualAddress;.
1a420 0a 20 20 44 57 4f 52 44 20 52 65 6c 6f 63 43 6f . DWORD RelocCo
1a430 75 6e 74 3b 0d 0a 7d 0d 0a 0d 0a 20 20 44 57 4f unt;..}.... DWO
1a440 52 44 20 53 79 6d 62 6f 6c 54 61 62 6c 65 49 6e RD SymbolTableIn
1a450 64 65 78 3b 0d 0a 20 20 57 4f 52 44 20 54 79 70 dex;.. WORD Typ
1a460 65 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 5f 49 4d e;..}..alias _IM
1a470 41 47 45 5f 52 45 4c 4f 43 41 54 49 4f 4e 20 49 AGE_RELOCATION I
1a480 4d 41 47 45 5f 52 45 4c 4f 43 41 54 49 4f 4e 3b MAGE_RELOCATION;
1a490 0d 0a 0d 0a 61 6c 69 61 73 20 49 4d 41 47 45 5f ....alias IMAGE_
1a4a0 52 45 4c 4f 43 41 54 49 4f 4e 2a 20 50 49 4d 41 RELOCATION* PIMA
1a4b0 47 45 5f 52 45 4c 4f 43 41 54 49 4f 4e 3b 0d 0a GE_RELOCATION;..
1a4c0 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
1a4d0 49 4d 41 47 45 5f 53 49 5a 45 4f 46 5f 52 45 4c IMAGE_SIZEOF_REL
1a4e0 4f 43 41 54 49 4f 4e 20 3d 20 31 30 20 7d 0d 0a OCATION = 10 }..
1a4f0 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
1a500 49 4d 41 47 45 5f 52 45 4c 5f 49 33 38 36 5f 41 IMAGE_REL_I386_A
1a510 42 53 4f 4c 55 54 45 20 3d 20 30 78 30 30 30 30 BSOLUTE = 0x0000
1a520 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 }..enum : uint
1a530 7b 20 49 4d 41 47 45 5f 52 45 4c 5f 49 33 38 36 { IMAGE_REL_I386
1a540 5f 44 49 52 31 36 20 3d 20 30 78 30 30 30 31 20 _DIR16 = 0x0001
1a550 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b }..enum : uint {
1a560 20 49 4d 41 47 45 5f 52 45 4c 5f 49 33 38 36 5f IMAGE_REL_I386_
1a570 52 45 4c 31 36 20 3d 20 30 78 30 30 30 32 20 7d REL16 = 0x0002 }
1a580 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
1a590 49 4d 41 47 45 5f 52 45 4c 5f 49 33 38 36 5f 44 IMAGE_REL_I386_D
1a5a0 49 52 33 32 20 3d 20 30 78 30 30 30 36 20 7d 0d IR32 = 0x0006 }.
1a5b0 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 .enum : uint { I
1a5c0 4d 41 47 45 5f 52 45 4c 5f 49 33 38 36 5f 44 49 MAGE_REL_I386_DI
1a5d0 52 33 32 4e 42 20 3d 20 30 78 30 30 30 37 20 7d R32NB = 0x0007 }
1a5e0 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
1a5f0 49 4d 41 47 45 5f 52 45 4c 5f 49 33 38 36 5f 53 IMAGE_REL_I386_S
1a600 45 47 31 32 20 3d 20 30 78 30 30 30 39 20 7d 0d EG12 = 0x0009 }.
1a610 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 .enum : uint { I
1a620 4d 41 47 45 5f 52 45 4c 5f 49 33 38 36 5f 53 45 MAGE_REL_I386_SE
1a630 43 54 49 4f 4e 20 3d 20 30 78 30 30 30 41 20 7d CTION = 0x000A }
1a640 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
1a650 49 4d 41 47 45 5f 52 45 4c 5f 49 33 38 36 5f 53 IMAGE_REL_I386_S
1a660 45 43 52 45 4c 20 3d 20 30 78 30 30 30 42 20 7d ECREL = 0x000B }
1a670 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
1a680 49 4d 41 47 45 5f 52 45 4c 5f 49 33 38 36 5f 54 IMAGE_REL_I386_T
1a690 4f 4b 45 4e 20 3d 20 30 78 30 30 30 43 20 7d 0d OKEN = 0x000C }.
1a6a0 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 .enum : uint { I
1a6b0 4d 41 47 45 5f 52 45 4c 5f 49 33 38 36 5f 53 45 MAGE_REL_I386_SE
1a6c0 43 52 45 4c 37 20 3d 20 30 78 30 30 30 44 20 7d CREL7 = 0x000D }
1a6d0 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
1a6e0 49 4d 41 47 45 5f 52 45 4c 5f 49 33 38 36 5f 52 IMAGE_REL_I386_R
1a6f0 45 4c 33 32 20 3d 20 30 78 30 30 31 34 20 7d 0d EL32 = 0x0014 }.
1a700 0a 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b ...enum : uint {
1a710 20 49 4d 41 47 45 5f 52 45 4c 5f 4d 49 50 53 5f IMAGE_REL_MIPS_
1a720 41 42 53 4f 4c 55 54 45 20 3d 20 30 78 30 30 30 ABSOLUTE = 0x000
1a730 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 0 }..enum : uint
1a740 20 7b 20 49 4d 41 47 45 5f 52 45 4c 5f 4d 49 50 { IMAGE_REL_MIP
1a750 53 5f 52 45 46 48 41 4c 46 20 3d 20 30 78 30 30 S_REFHALF = 0x00
1a760 30 31 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 01 }..enum : uin
1a770 74 20 7b 20 49 4d 41 47 45 5f 52 45 4c 5f 4d 49 t { IMAGE_REL_MI
1a780 50 53 5f 52 45 46 57 4f 52 44 20 3d 20 30 78 30 PS_REFWORD = 0x0
1a790 30 30 32 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 002 }..enum : ui
1a7a0 6e 74 20 7b 20 49 4d 41 47 45 5f 52 45 4c 5f 4d nt { IMAGE_REL_M
1a7b0 49 50 53 5f 4a 4d 50 41 44 44 52 20 3d 20 30 78 IPS_JMPADDR = 0x
1a7c0 30 30 30 33 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 0003 }..enum : u
1a7d0 69 6e 74 20 7b 20 49 4d 41 47 45 5f 52 45 4c 5f int { IMAGE_REL_
1a7e0 4d 49 50 53 5f 52 45 46 48 49 20 3d 20 30 78 30 MIPS_REFHI = 0x0
1a7f0 30 30 34 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 004 }..enum : ui
1a800 6e 74 20 7b 20 49 4d 41 47 45 5f 52 45 4c 5f 4d nt { IMAGE_REL_M
1a810 49 50 53 5f 52 45 46 4c 4f 20 3d 20 30 78 30 30 IPS_REFLO = 0x00
1a820 30 35 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 05 }..enum : uin
1a830 74 20 7b 20 49 4d 41 47 45 5f 52 45 4c 5f 4d 49 t { IMAGE_REL_MI
1a840 50 53 5f 47 50 52 45 4c 20 3d 20 30 78 30 30 30 PS_GPREL = 0x000
1a850 36 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 6 }..enum : uint
1a860 20 7b 20 49 4d 41 47 45 5f 52 45 4c 5f 4d 49 50 { IMAGE_REL_MIP
1a870 53 5f 4c 49 54 45 52 41 4c 20 3d 20 30 78 30 30 S_LITERAL = 0x00
1a880 30 37 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 07 }..enum : uin
1a890 74 20 7b 20 49 4d 41 47 45 5f 52 45 4c 5f 4d 49 t { IMAGE_REL_MI
1a8a0 50 53 5f 53 45 43 54 49 4f 4e 20 3d 20 30 78 30 PS_SECTION = 0x0
1a8b0 30 30 41 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 00A }..enum : ui
1a8c0 6e 74 20 7b 20 49 4d 41 47 45 5f 52 45 4c 5f 4d nt { IMAGE_REL_M
1a8d0 49 50 53 5f 53 45 43 52 45 4c 20 3d 20 30 78 30 IPS_SECREL = 0x0
1a8e0 30 30 42 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 00B }..enum : ui
1a8f0 6e 74 20 7b 20 49 4d 41 47 45 5f 52 45 4c 5f 4d nt { IMAGE_REL_M
1a900 49 50 53 5f 53 45 43 52 45 4c 4c 4f 20 3d 20 30 IPS_SECRELLO = 0
1a910 78 30 30 30 43 20 7d 0d 0a 65 6e 75 6d 20 3a 20 x000C }..enum :
1a920 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f 52 45 4c uint { IMAGE_REL
1a930 5f 4d 49 50 53 5f 53 45 43 52 45 4c 48 49 20 3d _MIPS_SECRELHI =
1a940 20 30 78 30 30 30 44 20 7d 0d 0a 65 6e 75 6d 20 0x000D }..enum
1a950 3a 20 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f 52 : uint { IMAGE_R
1a960 45 4c 5f 4d 49 50 53 5f 54 4f 4b 45 4e 20 3d 20 EL_MIPS_TOKEN =
1a970 30 78 30 30 30 45 20 7d 0d 0a 65 6e 75 6d 20 3a 0x000E }..enum :
1a980 20 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f 52 45 uint { IMAGE_RE
1a990 4c 5f 4d 49 50 53 5f 4a 4d 50 41 44 44 52 31 36 L_MIPS_JMPADDR16
1a9a0 20 3d 20 30 78 30 30 31 30 20 7d 0d 0a 65 6e 75 = 0x0010 }..enu
1a9b0 6d 20 3a 20 75 69 6e 74 20 7b 20 49 4d 41 47 45 m : uint { IMAGE
1a9c0 5f 52 45 4c 5f 4d 49 50 53 5f 52 45 46 57 4f 52 _REL_MIPS_REFWOR
1a9d0 44 4e 42 20 3d 20 30 78 30 30 32 32 20 7d 0d 0a DNB = 0x0022 }..
1a9e0 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 4d enum : uint { IM
1a9f0 41 47 45 5f 52 45 4c 5f 4d 49 50 53 5f 50 41 49 AGE_REL_MIPS_PAI
1aa00 52 20 3d 20 30 78 30 30 32 35 20 7d 0d 0a 0d 0a R = 0x0025 }....
1aa10 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 4d enum : uint { IM
1aa20 41 47 45 5f 52 45 4c 5f 41 4c 50 48 41 5f 41 42 AGE_REL_ALPHA_AB
1aa30 53 4f 4c 55 54 45 20 3d 20 30 78 30 30 30 30 20 SOLUTE = 0x0000
1aa40 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b }..enum : uint {
1aa50 20 49 4d 41 47 45 5f 52 45 4c 5f 41 4c 50 48 41 IMAGE_REL_ALPHA
1aa60 5f 52 45 46 4c 4f 4e 47 20 3d 20 30 78 30 30 30 _REFLONG = 0x000
1aa70 31 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 1 }..enum : uint
1aa80 20 7b 20 49 4d 41 47 45 5f 52 45 4c 5f 41 4c 50 { IMAGE_REL_ALP
1aa90 48 41 5f 52 45 46 51 55 41 44 20 3d 20 30 78 30 HA_REFQUAD = 0x0
1aaa0 30 30 32 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 002 }..enum : ui
1aab0 6e 74 20 7b 20 49 4d 41 47 45 5f 52 45 4c 5f 41 nt { IMAGE_REL_A
1aac0 4c 50 48 41 5f 47 50 52 45 4c 33 32 20 3d 20 30 LPHA_GPREL32 = 0
1aad0 78 30 30 30 33 20 7d 0d 0a 65 6e 75 6d 20 3a 20 x0003 }..enum :
1aae0 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f 52 45 4c uint { IMAGE_REL
1aaf0 5f 41 4c 50 48 41 5f 4c 49 54 45 52 41 4c 20 3d _ALPHA_LITERAL =
1ab00 20 30 78 30 30 30 34 20 7d 0d 0a 65 6e 75 6d 20 0x0004 }..enum
1ab10 3a 20 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f 52 : uint { IMAGE_R
1ab20 45 4c 5f 41 4c 50 48 41 5f 4c 49 54 55 53 45 20 EL_ALPHA_LITUSE
1ab30 3d 20 30 78 30 30 30 35 20 7d 0d 0a 65 6e 75 6d = 0x0005 }..enum
1ab40 20 3a 20 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f : uint { IMAGE_
1ab50 52 45 4c 5f 41 4c 50 48 41 5f 47 50 44 49 53 50 REL_ALPHA_GPDISP
1ab60 20 3d 20 30 78 30 30 30 36 20 7d 0d 0a 65 6e 75 = 0x0006 }..enu
1ab70 6d 20 3a 20 75 69 6e 74 20 7b 20 49 4d 41 47 45 m : uint { IMAGE
1ab80 5f 52 45 4c 5f 41 4c 50 48 41 5f 42 52 41 44 44 _REL_ALPHA_BRADD
1ab90 52 20 3d 20 30 78 30 30 30 37 20 7d 0d 0a 65 6e R = 0x0007 }..en
1aba0 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 4d 41 47 um : uint { IMAG
1abb0 45 5f 52 45 4c 5f 41 4c 50 48 41 5f 48 49 4e 54 E_REL_ALPHA_HINT
1abc0 20 3d 20 30 78 30 30 30 38 20 7d 0d 0a 65 6e 75 = 0x0008 }..enu
1abd0 6d 20 3a 20 75 69 6e 74 20 7b 20 49 4d 41 47 45 m : uint { IMAGE
1abe0 5f 52 45 4c 5f 41 4c 50 48 41 5f 49 4e 4c 49 4e _REL_ALPHA_INLIN
1abf0 45 5f 52 45 46 4c 4f 4e 47 20 3d 20 30 78 30 30 E_REFLONG = 0x00
1ac00 30 39 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 09 }..enum : uin
1ac10 74 20 7b 20 49 4d 41 47 45 5f 52 45 4c 5f 41 4c t { IMAGE_REL_AL
1ac20 50 48 41 5f 52 45 46 48 49 20 3d 20 30 78 30 30 PHA_REFHI = 0x00
1ac30 30 41 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 0A }..enum : uin
1ac40 74 20 7b 20 49 4d 41 47 45 5f 52 45 4c 5f 41 4c t { IMAGE_REL_AL
1ac50 50 48 41 5f 52 45 46 4c 4f 20 3d 20 30 78 30 30 PHA_REFLO = 0x00
1ac60 30 42 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 0B }..enum : uin
1ac70 74 20 7b 20 49 4d 41 47 45 5f 52 45 4c 5f 41 4c t { IMAGE_REL_AL
1ac80 50 48 41 5f 50 41 49 52 20 3d 20 30 78 30 30 30 PHA_PAIR = 0x000
1ac90 43 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 C }..enum : uint
1aca0 20 7b 20 49 4d 41 47 45 5f 52 45 4c 5f 41 4c 50 { IMAGE_REL_ALP
1acb0 48 41 5f 4d 41 54 43 48 20 3d 20 30 78 30 30 30 HA_MATCH = 0x000
1acc0 44 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 D }..enum : uint
1acd0 20 7b 20 49 4d 41 47 45 5f 52 45 4c 5f 41 4c 50 { IMAGE_REL_ALP
1ace0 48 41 5f 53 45 43 54 49 4f 4e 20 3d 20 30 78 30 HA_SECTION = 0x0
1acf0 30 30 45 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 00E }..enum : ui
1ad00 6e 74 20 7b 20 49 4d 41 47 45 5f 52 45 4c 5f 41 nt { IMAGE_REL_A
1ad10 4c 50 48 41 5f 53 45 43 52 45 4c 20 3d 20 30 78 LPHA_SECREL = 0x
1ad20 30 30 30 46 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 000F }..enum : u
1ad30 69 6e 74 20 7b 20 49 4d 41 47 45 5f 52 45 4c 5f int { IMAGE_REL_
1ad40 41 4c 50 48 41 5f 52 45 46 4c 4f 4e 47 4e 42 20 ALPHA_REFLONGNB
1ad50 3d 20 30 78 30 30 31 30 20 7d 0d 0a 65 6e 75 6d = 0x0010 }..enum
1ad60 20 3a 20 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f : uint { IMAGE_
1ad70 52 45 4c 5f 41 4c 50 48 41 5f 53 45 43 52 45 4c REL_ALPHA_SECREL
1ad80 4c 4f 20 3d 20 30 78 30 30 31 31 20 7d 0d 0a 65 LO = 0x0011 }..e
1ad90 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 4d 41 num : uint { IMA
1ada0 47 45 5f 52 45 4c 5f 41 4c 50 48 41 5f 53 45 43 GE_REL_ALPHA_SEC
1adb0 52 45 4c 48 49 20 3d 20 30 78 30 30 31 32 20 7d RELHI = 0x0012 }
1adc0 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
1add0 49 4d 41 47 45 5f 52 45 4c 5f 41 4c 50 48 41 5f IMAGE_REL_ALPHA_
1ade0 52 45 46 51 33 20 3d 20 30 78 30 30 31 33 20 7d REFQ3 = 0x0013 }
1adf0 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
1ae00 49 4d 41 47 45 5f 52 45 4c 5f 41 4c 50 48 41 5f IMAGE_REL_ALPHA_
1ae10 52 45 46 51 32 20 3d 20 30 78 30 30 31 34 20 7d REFQ2 = 0x0014 }
1ae20 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
1ae30 49 4d 41 47 45 5f 52 45 4c 5f 41 4c 50 48 41 5f IMAGE_REL_ALPHA_
1ae40 52 45 46 51 31 20 3d 20 30 78 30 30 31 35 20 7d REFQ1 = 0x0015 }
1ae50 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
1ae60 49 4d 41 47 45 5f 52 45 4c 5f 41 4c 50 48 41 5f IMAGE_REL_ALPHA_
1ae70 47 50 52 45 4c 4c 4f 20 3d 20 30 78 30 30 31 36 GPRELLO = 0x0016
1ae80 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 }..enum : uint
1ae90 7b 20 49 4d 41 47 45 5f 52 45 4c 5f 41 4c 50 48 { IMAGE_REL_ALPH
1aea0 41 5f 47 50 52 45 4c 48 49 20 3d 20 30 78 30 30 A_GPRELHI = 0x00
1aeb0 31 37 20 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 75 17 }....enum : u
1aec0 69 6e 74 20 7b 20 49 4d 41 47 45 5f 52 45 4c 5f int { IMAGE_REL_
1aed0 50 50 43 5f 41 42 53 4f 4c 55 54 45 20 3d 20 30 PPC_ABSOLUTE = 0
1aee0 78 30 30 30 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 x0000 }..enum :
1aef0 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f 52 45 4c uint { IMAGE_REL
1af00 5f 50 50 43 5f 41 44 44 52 36 34 20 3d 20 30 78 _PPC_ADDR64 = 0x
1af10 30 30 30 31 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 0001 }..enum : u
1af20 69 6e 74 20 7b 20 49 4d 41 47 45 5f 52 45 4c 5f int { IMAGE_REL_
1af30 50 50 43 5f 41 44 44 52 33 32 20 3d 20 30 78 30 PPC_ADDR32 = 0x0
1af40 30 30 32 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 002 }..enum : ui
1af50 6e 74 20 7b 20 49 4d 41 47 45 5f 52 45 4c 5f 50 nt { IMAGE_REL_P
1af60 50 43 5f 41 44 44 52 32 34 20 3d 20 30 78 30 30 PC_ADDR24 = 0x00
1af70 30 33 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 03 }..enum : uin
1af80 74 20 7b 20 49 4d 41 47 45 5f 52 45 4c 5f 50 50 t { IMAGE_REL_PP
1af90 43 5f 41 44 44 52 31 36 20 3d 20 30 78 30 30 30 C_ADDR16 = 0x000
1afa0 34 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 4 }..enum : uint
1afb0 20 7b 20 49 4d 41 47 45 5f 52 45 4c 5f 50 50 43 { IMAGE_REL_PPC
1afc0 5f 41 44 44 52 31 34 20 3d 20 30 78 30 30 30 35 _ADDR14 = 0x0005
1afd0 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 }..enum : uint
1afe0 7b 20 49 4d 41 47 45 5f 52 45 4c 5f 50 50 43 5f { IMAGE_REL_PPC_
1aff0 52 45 4c 32 34 20 3d 20 30 78 30 30 30 36 20 7d REL24 = 0x0006 }
1b000 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
1b010 49 4d 41 47 45 5f 52 45 4c 5f 50 50 43 5f 52 45 IMAGE_REL_PPC_RE
1b020 4c 31 34 20 3d 20 30 78 30 30 30 37 20 7d 0d 0a L14 = 0x0007 }..
1b030 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 4d enum : uint { IM
1b040 41 47 45 5f 52 45 4c 5f 50 50 43 5f 54 4f 43 52 AGE_REL_PPC_TOCR
1b050 45 4c 31 36 20 3d 20 30 78 30 30 30 38 20 7d 0d EL16 = 0x0008 }.
1b060 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 .enum : uint { I
1b070 4d 41 47 45 5f 52 45 4c 5f 50 50 43 5f 54 4f 43 MAGE_REL_PPC_TOC
1b080 52 45 4c 31 34 20 3d 20 30 78 30 30 30 39 20 7d REL14 = 0x0009 }
1b090 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 ....enum : uint
1b0a0 7b 20 49 4d 41 47 45 5f 52 45 4c 5f 50 50 43 5f { IMAGE_REL_PPC_
1b0b0 41 44 44 52 33 32 4e 42 20 3d 20 30 78 30 30 30 ADDR32NB = 0x000
1b0c0 41 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 A }..enum : uint
1b0d0 20 7b 20 49 4d 41 47 45 5f 52 45 4c 5f 50 50 43 { IMAGE_REL_PPC
1b0e0 5f 53 45 43 52 45 4c 20 3d 20 30 78 30 30 30 42 _SECREL = 0x000B
1b0f0 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 }..enum : uint
1b100 7b 20 49 4d 41 47 45 5f 52 45 4c 5f 50 50 43 5f { IMAGE_REL_PPC_
1b110 53 45 43 54 49 4f 4e 20 3d 20 30 78 30 30 30 43 SECTION = 0x000C
1b120 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 }..enum : uint
1b130 7b 20 49 4d 41 47 45 5f 52 45 4c 5f 50 50 43 5f { IMAGE_REL_PPC_
1b140 49 46 47 4c 55 45 20 3d 20 30 78 30 30 30 44 20 IFGLUE = 0x000D
1b150 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b }..enum : uint {
1b160 20 49 4d 41 47 45 5f 52 45 4c 5f 50 50 43 5f 49 IMAGE_REL_PPC_I
1b170 4d 47 4c 55 45 20 3d 20 30 78 30 30 30 45 20 7d MGLUE = 0x000E }
1b180 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
1b190 49 4d 41 47 45 5f 52 45 4c 5f 50 50 43 5f 53 45 IMAGE_REL_PPC_SE
1b1a0 43 52 45 4c 31 36 20 3d 20 30 78 30 30 30 46 20 CREL16 = 0x000F
1b1b0 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b }..enum : uint {
1b1c0 20 49 4d 41 47 45 5f 52 45 4c 5f 50 50 43 5f 52 IMAGE_REL_PPC_R
1b1d0 45 46 48 49 20 3d 20 30 78 30 30 31 30 20 7d 0d EFHI = 0x0010 }.
1b1e0 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 .enum : uint { I
1b1f0 4d 41 47 45 5f 52 45 4c 5f 50 50 43 5f 52 45 46 MAGE_REL_PPC_REF
1b200 4c 4f 20 3d 20 30 78 30 30 31 31 20 7d 0d 0a 65 LO = 0x0011 }..e
1b210 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 4d 41 num : uint { IMA
1b220 47 45 5f 52 45 4c 5f 50 50 43 5f 50 41 49 52 20 GE_REL_PPC_PAIR
1b230 3d 20 30 78 30 30 31 32 20 7d 0d 0a 65 6e 75 6d = 0x0012 }..enum
1b240 20 3a 20 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f : uint { IMAGE_
1b250 52 45 4c 5f 50 50 43 5f 53 45 43 52 45 4c 4c 4f REL_PPC_SECRELLO
1b260 20 3d 20 30 78 30 30 31 33 20 7d 0d 0a 65 6e 75 = 0x0013 }..enu
1b270 6d 20 3a 20 75 69 6e 74 20 7b 20 49 4d 41 47 45 m : uint { IMAGE
1b280 5f 52 45 4c 5f 50 50 43 5f 53 45 43 52 45 4c 48 _REL_PPC_SECRELH
1b290 49 20 3d 20 30 78 30 30 31 34 20 7d 0d 0a 65 6e I = 0x0014 }..en
1b2a0 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 4d 41 47 um : uint { IMAG
1b2b0 45 5f 52 45 4c 5f 50 50 43 5f 47 50 52 45 4c 20 E_REL_PPC_GPREL
1b2c0 3d 20 30 78 30 30 31 35 20 7d 0d 0a 65 6e 75 6d = 0x0015 }..enum
1b2d0 20 3a 20 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f : uint { IMAGE_
1b2e0 52 45 4c 5f 50 50 43 5f 54 4f 4b 45 4e 20 3d 20 REL_PPC_TOKEN =
1b2f0 30 78 30 30 31 36 20 7d 0d 0a 0d 0a 65 6e 75 6d 0x0016 }....enum
1b300 20 3a 20 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f : uint { IMAGE_
1b310 52 45 4c 5f 50 50 43 5f 54 59 50 45 4d 41 53 4b REL_PPC_TYPEMASK
1b320 20 3d 20 30 78 30 30 46 46 20 7d 0d 0a 0d 0a 65 = 0x00FF }....e
1b330 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 4d 41 num : uint { IMA
1b340 47 45 5f 52 45 4c 5f 50 50 43 5f 4e 45 47 20 3d GE_REL_PPC_NEG =
1b350 20 30 78 30 31 30 30 20 7d 0d 0a 65 6e 75 6d 20 0x0100 }..enum
1b360 3a 20 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f 52 : uint { IMAGE_R
1b370 45 4c 5f 50 50 43 5f 42 52 54 41 4b 45 4e 20 3d EL_PPC_BRTAKEN =
1b380 20 30 78 30 32 30 30 20 7d 0d 0a 65 6e 75 6d 20 0x0200 }..enum
1b390 3a 20 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f 52 : uint { IMAGE_R
1b3a0 45 4c 5f 50 50 43 5f 42 52 4e 54 41 4b 45 4e 20 EL_PPC_BRNTAKEN
1b3b0 3d 20 30 78 30 34 30 30 20 7d 0d 0a 65 6e 75 6d = 0x0400 }..enum
1b3c0 20 3a 20 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f : uint { IMAGE_
1b3d0 52 45 4c 5f 50 50 43 5f 54 4f 43 44 45 46 4e 20 REL_PPC_TOCDEFN
1b3e0 3d 20 30 78 30 38 30 30 20 7d 0d 0a 0d 0a 65 6e = 0x0800 }....en
1b3f0 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 4d 41 47 um : uint { IMAG
1b400 45 5f 52 45 4c 5f 53 48 33 5f 41 42 53 4f 4c 55 E_REL_SH3_ABSOLU
1b410 54 45 20 3d 20 30 78 30 30 30 30 20 7d 0d 0a 65 TE = 0x0000 }..e
1b420 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 4d 41 num : uint { IMA
1b430 47 45 5f 52 45 4c 5f 53 48 33 5f 44 49 52 45 43 GE_REL_SH3_DIREC
1b440 54 31 36 20 3d 20 30 78 30 30 30 31 20 7d 0d 0a T16 = 0x0001 }..
1b450 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 4d enum : uint { IM
1b460 41 47 45 5f 52 45 4c 5f 53 48 33 5f 44 49 52 45 AGE_REL_SH3_DIRE
1b470 43 54 33 32 20 3d 20 30 78 30 30 30 32 20 7d 0d CT32 = 0x0002 }.
1b480 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 .enum : uint { I
1b490 4d 41 47 45 5f 52 45 4c 5f 53 48 33 5f 44 49 52 MAGE_REL_SH3_DIR
1b4a0 45 43 54 38 20 3d 20 30 78 30 30 30 33 20 7d 0d ECT8 = 0x0003 }.
1b4b0 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 .enum : uint { I
1b4c0 4d 41 47 45 5f 52 45 4c 5f 53 48 33 5f 44 49 52 MAGE_REL_SH3_DIR
1b4d0 45 43 54 38 5f 57 4f 52 44 20 3d 20 30 78 30 30 ECT8_WORD = 0x00
1b4e0 30 34 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 04 }..enum : uin
1b4f0 74 20 7b 20 49 4d 41 47 45 5f 52 45 4c 5f 53 48 t { IMAGE_REL_SH
1b500 33 5f 44 49 52 45 43 54 38 5f 4c 4f 4e 47 20 3d 3_DIRECT8_LONG =
1b510 20 30 78 30 30 30 35 20 7d 0d 0a 65 6e 75 6d 20 0x0005 }..enum
1b520 3a 20 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f 52 : uint { IMAGE_R
1b530 45 4c 5f 53 48 33 5f 44 49 52 45 43 54 34 20 3d EL_SH3_DIRECT4 =
1b540 20 30 78 30 30 30 36 20 7d 0d 0a 65 6e 75 6d 20 0x0006 }..enum
1b550 3a 20 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f 52 : uint { IMAGE_R
1b560 45 4c 5f 53 48 33 5f 44 49 52 45 43 54 34 5f 57 EL_SH3_DIRECT4_W
1b570 4f 52 44 20 3d 20 30 78 30 30 30 37 20 7d 0d 0a ORD = 0x0007 }..
1b580 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 4d enum : uint { IM
1b590 41 47 45 5f 52 45 4c 5f 53 48 33 5f 44 49 52 45 AGE_REL_SH3_DIRE
1b5a0 43 54 34 5f 4c 4f 4e 47 20 3d 20 30 78 30 30 30 CT4_LONG = 0x000
1b5b0 38 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 8 }..enum : uint
1b5c0 20 7b 20 49 4d 41 47 45 5f 52 45 4c 5f 53 48 33 { IMAGE_REL_SH3
1b5d0 5f 50 43 52 45 4c 38 5f 57 4f 52 44 20 3d 20 30 _PCREL8_WORD = 0
1b5e0 78 30 30 30 39 20 7d 0d 0a 65 6e 75 6d 20 3a 20 x0009 }..enum :
1b5f0 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f 52 45 4c uint { IMAGE_REL
1b600 5f 53 48 33 5f 50 43 52 45 4c 38 5f 4c 4f 4e 47 _SH3_PCREL8_LONG
1b610 20 3d 20 30 78 30 30 30 41 20 7d 0d 0a 65 6e 75 = 0x000A }..enu
1b620 6d 20 3a 20 75 69 6e 74 20 7b 20 49 4d 41 47 45 m : uint { IMAGE
1b630 5f 52 45 4c 5f 53 48 33 5f 50 43 52 45 4c 31 32 _REL_SH3_PCREL12
1b640 5f 57 4f 52 44 20 3d 20 30 78 30 30 30 42 20 7d _WORD = 0x000B }
1b650 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
1b660 49 4d 41 47 45 5f 52 45 4c 5f 53 48 33 5f 53 54 IMAGE_REL_SH3_ST
1b670 41 52 54 4f 46 5f 53 45 43 54 49 4f 4e 20 3d 20 ARTOF_SECTION =
1b680 30 78 30 30 30 43 20 7d 0d 0a 65 6e 75 6d 20 3a 0x000C }..enum :
1b690 20 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f 52 45 uint { IMAGE_RE
1b6a0 4c 5f 53 48 33 5f 53 49 5a 45 4f 46 5f 53 45 43 L_SH3_SIZEOF_SEC
1b6b0 54 49 4f 4e 20 3d 20 30 78 30 30 30 44 20 7d 0d TION = 0x000D }.
1b6c0 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 .enum : uint { I
1b6d0 4d 41 47 45 5f 52 45 4c 5f 53 48 33 5f 53 45 43 MAGE_REL_SH3_SEC
1b6e0 54 49 4f 4e 20 3d 20 30 78 30 30 30 45 20 7d 0d TION = 0x000E }.
1b6f0 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 .enum : uint { I
1b700 4d 41 47 45 5f 52 45 4c 5f 53 48 33 5f 53 45 43 MAGE_REL_SH3_SEC
1b710 52 45 4c 20 3d 20 30 78 30 30 30 46 20 7d 0d 0a REL = 0x000F }..
1b720 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 4d enum : uint { IM
1b730 41 47 45 5f 52 45 4c 5f 53 48 33 5f 44 49 52 45 AGE_REL_SH3_DIRE
1b740 43 54 33 32 5f 4e 42 20 3d 20 30 78 30 30 31 30 CT32_NB = 0x0010
1b750 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 }..enum : uint
1b760 7b 20 49 4d 41 47 45 5f 52 45 4c 5f 53 48 33 5f { IMAGE_REL_SH3_
1b770 47 50 52 45 4c 34 5f 4c 4f 4e 47 20 3d 20 30 78 GPREL4_LONG = 0x
1b780 30 30 31 31 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 0011 }..enum : u
1b790 69 6e 74 20 7b 20 49 4d 41 47 45 5f 52 45 4c 5f int { IMAGE_REL_
1b7a0 53 48 33 5f 54 4f 4b 45 4e 20 3d 20 30 78 30 30 SH3_TOKEN = 0x00
1b7b0 31 32 20 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 75 12 }....enum : u
1b7c0 69 6e 74 20 7b 20 49 4d 41 47 45 5f 52 45 4c 5f int { IMAGE_REL_
1b7d0 41 52 4d 5f 41 42 53 4f 4c 55 54 45 20 3d 20 30 ARM_ABSOLUTE = 0
1b7e0 78 30 30 30 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 x0000 }..enum :
1b7f0 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f 52 45 4c uint { IMAGE_REL
1b800 5f 41 52 4d 5f 41 44 44 52 33 32 20 3d 20 30 78 _ARM_ADDR32 = 0x
1b810 30 30 30 31 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 0001 }..enum : u
1b820 69 6e 74 20 7b 20 49 4d 41 47 45 5f 52 45 4c 5f int { IMAGE_REL_
1b830 41 52 4d 5f 41 44 44 52 33 32 4e 42 20 3d 20 30 ARM_ADDR32NB = 0
1b840 78 30 30 30 32 20 7d 0d 0a 65 6e 75 6d 20 3a 20 x0002 }..enum :
1b850 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f 52 45 4c uint { IMAGE_REL
1b860 5f 41 52 4d 5f 42 52 41 4e 43 48 32 34 20 3d 20 _ARM_BRANCH24 =
1b870 30 78 30 30 30 33 20 7d 0d 0a 65 6e 75 6d 20 3a 0x0003 }..enum :
1b880 20 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f 52 45 uint { IMAGE_RE
1b890 4c 5f 41 52 4d 5f 42 52 41 4e 43 48 31 31 20 3d L_ARM_BRANCH11 =
1b8a0 20 30 78 30 30 30 34 20 7d 0d 0a 65 6e 75 6d 20 0x0004 }..enum
1b8b0 3a 20 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f 52 : uint { IMAGE_R
1b8c0 45 4c 5f 41 52 4d 5f 54 4f 4b 45 4e 20 3d 20 30 EL_ARM_TOKEN = 0
1b8d0 78 30 30 30 35 20 7d 0d 0a 65 6e 75 6d 20 3a 20 x0005 }..enum :
1b8e0 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f 52 45 4c uint { IMAGE_REL
1b8f0 5f 41 52 4d 5f 47 50 52 45 4c 31 32 20 3d 20 30 _ARM_GPREL12 = 0
1b900 78 30 30 30 36 20 7d 0d 0a 65 6e 75 6d 20 3a 20 x0006 }..enum :
1b910 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f 52 45 4c uint { IMAGE_REL
1b920 5f 41 52 4d 5f 47 50 52 45 4c 37 20 3d 20 30 78 _ARM_GPREL7 = 0x
1b930 30 30 30 37 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 0007 }..enum : u
1b940 69 6e 74 20 7b 20 49 4d 41 47 45 5f 52 45 4c 5f int { IMAGE_REL_
1b950 41 52 4d 5f 42 4c 58 32 34 20 3d 20 30 78 30 30 ARM_BLX24 = 0x00
1b960 30 38 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 08 }..enum : uin
1b970 74 20 7b 20 49 4d 41 47 45 5f 52 45 4c 5f 41 52 t { IMAGE_REL_AR
1b980 4d 5f 42 4c 58 31 31 20 3d 20 30 78 30 30 30 39 M_BLX11 = 0x0009
1b990 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 }..enum : uint
1b9a0 7b 20 49 4d 41 47 45 5f 52 45 4c 5f 41 52 4d 5f { IMAGE_REL_ARM_
1b9b0 53 45 43 54 49 4f 4e 20 3d 20 30 78 30 30 30 45 SECTION = 0x000E
1b9c0 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 }..enum : uint
1b9d0 7b 20 49 4d 41 47 45 5f 52 45 4c 5f 41 52 4d 5f { IMAGE_REL_ARM_
1b9e0 53 45 43 52 45 4c 20 3d 20 30 78 30 30 30 46 20 SECREL = 0x000F
1b9f0 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 }....enum : uint
1ba00 20 7b 20 49 4d 41 47 45 5f 52 45 4c 5f 41 4d 5f { IMAGE_REL_AM_
1ba10 41 42 53 4f 4c 55 54 45 20 3d 20 30 78 30 30 30 ABSOLUTE = 0x000
1ba20 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 0 }..enum : uint
1ba30 20 7b 20 49 4d 41 47 45 5f 52 45 4c 5f 41 4d 5f { IMAGE_REL_AM_
1ba40 41 44 44 52 33 32 20 3d 20 30 78 30 30 30 31 20 ADDR32 = 0x0001
1ba50 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b }..enum : uint {
1ba60 20 49 4d 41 47 45 5f 52 45 4c 5f 41 4d 5f 41 44 IMAGE_REL_AM_AD
1ba70 44 52 33 32 4e 42 20 3d 20 30 78 30 30 30 32 20 DR32NB = 0x0002
1ba80 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b }..enum : uint {
1ba90 20 49 4d 41 47 45 5f 52 45 4c 5f 41 4d 5f 43 41 IMAGE_REL_AM_CA
1baa0 4c 4c 33 32 20 3d 20 30 78 30 30 30 33 20 7d 0d LL32 = 0x0003 }.
1bab0 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 .enum : uint { I
1bac0 4d 41 47 45 5f 52 45 4c 5f 41 4d 5f 46 55 4e 43 MAGE_REL_AM_FUNC
1bad0 49 4e 46 4f 20 3d 20 30 78 30 30 30 34 20 7d 0d INFO = 0x0004 }.
1bae0 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 .enum : uint { I
1baf0 4d 41 47 45 5f 52 45 4c 5f 41 4d 5f 52 45 4c 33 MAGE_REL_AM_REL3
1bb00 32 5f 31 20 3d 20 30 78 30 30 30 35 20 7d 0d 0a 2_1 = 0x0005 }..
1bb10 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 4d enum : uint { IM
1bb20 41 47 45 5f 52 45 4c 5f 41 4d 5f 52 45 4c 33 32 AGE_REL_AM_REL32
1bb30 5f 32 20 3d 20 30 78 30 30 30 36 20 7d 0d 0a 65 _2 = 0x0006 }..e
1bb40 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 4d 41 num : uint { IMA
1bb50 47 45 5f 52 45 4c 5f 41 4d 5f 53 45 43 52 45 4c GE_REL_AM_SECREL
1bb60 20 3d 20 30 78 30 30 30 37 20 7d 0d 0a 65 6e 75 = 0x0007 }..enu
1bb70 6d 20 3a 20 75 69 6e 74 20 7b 20 49 4d 41 47 45 m : uint { IMAGE
1bb80 5f 52 45 4c 5f 41 4d 5f 53 45 43 54 49 4f 4e 20 _REL_AM_SECTION
1bb90 3d 20 30 78 30 30 30 38 20 7d 0d 0a 65 6e 75 6d = 0x0008 }..enum
1bba0 20 3a 20 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f : uint { IMAGE_
1bbb0 52 45 4c 5f 41 4d 5f 54 4f 4b 45 4e 20 3d 20 30 REL_AM_TOKEN = 0
1bbc0 78 30 30 30 39 20 7d 0d 0a 0d 0a 65 6e 75 6d 20 x0009 }....enum
1bbd0 3a 20 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f 52 : uint { IMAGE_R
1bbe0 45 4c 5f 41 4d 44 36 34 5f 41 42 53 4f 4c 55 54 EL_AMD64_ABSOLUT
1bbf0 45 20 3d 20 30 78 30 30 30 30 20 7d 0d 0a 65 6e E = 0x0000 }..en
1bc00 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 4d 41 47 um : uint { IMAG
1bc10 45 5f 52 45 4c 5f 41 4d 44 36 34 5f 41 44 44 52 E_REL_AMD64_ADDR
1bc20 36 34 20 3d 20 30 78 30 30 30 31 20 7d 0d 0a 65 64 = 0x0001 }..e
1bc30 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 4d 41 num : uint { IMA
1bc40 47 45 5f 52 45 4c 5f 41 4d 44 36 34 5f 41 44 44 GE_REL_AMD64_ADD
1bc50 52 33 32 20 3d 20 30 78 30 30 30 32 20 7d 0d 0a R32 = 0x0002 }..
1bc60 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 4d enum : uint { IM
1bc70 41 47 45 5f 52 45 4c 5f 41 4d 44 36 34 5f 41 44 AGE_REL_AMD64_AD
1bc80 44 52 33 32 4e 42 20 3d 20 30 78 30 30 30 33 20 DR32NB = 0x0003
1bc90 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b }..enum : uint {
1bca0 20 49 4d 41 47 45 5f 52 45 4c 5f 41 4d 44 36 34 IMAGE_REL_AMD64
1bcb0 5f 52 45 4c 33 32 20 3d 20 30 78 30 30 30 34 20 _REL32 = 0x0004
1bcc0 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b }..enum : uint {
1bcd0 20 49 4d 41 47 45 5f 52 45 4c 5f 41 4d 44 36 34 IMAGE_REL_AMD64
1bce0 5f 52 45 4c 33 32 5f 31 20 3d 20 30 78 30 30 30 _REL32_1 = 0x000
1bcf0 35 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 5 }..enum : uint
1bd00 20 7b 20 49 4d 41 47 45 5f 52 45 4c 5f 41 4d 44 { IMAGE_REL_AMD
1bd10 36 34 5f 52 45 4c 33 32 5f 32 20 3d 20 30 78 30 64_REL32_2 = 0x0
1bd20 30 30 36 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 006 }..enum : ui
1bd30 6e 74 20 7b 20 49 4d 41 47 45 5f 52 45 4c 5f 41 nt { IMAGE_REL_A
1bd40 4d 44 36 34 5f 52 45 4c 33 32 5f 33 20 3d 20 30 MD64_REL32_3 = 0
1bd50 78 30 30 30 37 20 7d 0d 0a 65 6e 75 6d 20 3a 20 x0007 }..enum :
1bd60 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f 52 45 4c uint { IMAGE_REL
1bd70 5f 41 4d 44 36 34 5f 52 45 4c 33 32 5f 34 20 3d _AMD64_REL32_4 =
1bd80 20 30 78 30 30 30 38 20 7d 0d 0a 65 6e 75 6d 20 0x0008 }..enum
1bd90 3a 20 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f 52 : uint { IMAGE_R
1bda0 45 4c 5f 41 4d 44 36 34 5f 52 45 4c 33 32 5f 35 EL_AMD64_REL32_5
1bdb0 20 3d 20 30 78 30 30 30 39 20 7d 0d 0a 65 6e 75 = 0x0009 }..enu
1bdc0 6d 20 3a 20 75 69 6e 74 20 7b 20 49 4d 41 47 45 m : uint { IMAGE
1bdd0 5f 52 45 4c 5f 41 4d 44 36 34 5f 53 45 43 54 49 _REL_AMD64_SECTI
1bde0 4f 4e 20 3d 20 30 78 30 30 30 41 20 7d 0d 0a 65 ON = 0x000A }..e
1bdf0 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 4d 41 num : uint { IMA
1be00 47 45 5f 52 45 4c 5f 41 4d 44 36 34 5f 53 45 43 GE_REL_AMD64_SEC
1be10 52 45 4c 20 3d 20 30 78 30 30 30 42 20 7d 0d 0a REL = 0x000B }..
1be20 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 4d enum : uint { IM
1be30 41 47 45 5f 52 45 4c 5f 41 4d 44 36 34 5f 53 45 AGE_REL_AMD64_SE
1be40 43 52 45 4c 37 20 3d 20 30 78 30 30 30 43 20 7d CREL7 = 0x000C }
1be50 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
1be60 49 4d 41 47 45 5f 52 45 4c 5f 41 4d 44 36 34 5f IMAGE_REL_AMD64_
1be70 54 4f 4b 45 4e 20 3d 20 30 78 30 30 30 44 20 7d TOKEN = 0x000D }
1be80 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 ....enum : uint
1be90 7b 20 49 4d 41 47 45 5f 52 45 4c 5f 49 41 36 34 { IMAGE_REL_IA64
1bea0 5f 41 42 53 4f 4c 55 54 45 20 3d 20 30 78 30 30 _ABSOLUTE = 0x00
1beb0 30 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 00 }..enum : uin
1bec0 74 20 7b 20 49 4d 41 47 45 5f 52 45 4c 5f 49 41 t { IMAGE_REL_IA
1bed0 36 34 5f 49 4d 4d 31 34 20 3d 20 30 78 30 30 30 64_IMM14 = 0x000
1bee0 31 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 1 }..enum : uint
1bef0 20 7b 20 49 4d 41 47 45 5f 52 45 4c 5f 49 41 36 { IMAGE_REL_IA6
1bf00 34 5f 49 4d 4d 32 32 20 3d 20 30 78 30 30 30 32 4_IMM22 = 0x0002
1bf10 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 }..enum : uint
1bf20 7b 20 49 4d 41 47 45 5f 52 45 4c 5f 49 41 36 34 { IMAGE_REL_IA64
1bf30 5f 49 4d 4d 36 34 20 3d 20 30 78 30 30 30 33 20 _IMM64 = 0x0003
1bf40 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b }..enum : uint {
1bf50 20 49 4d 41 47 45 5f 52 45 4c 5f 49 41 36 34 5f IMAGE_REL_IA64_
1bf60 44 49 52 33 32 20 3d 20 30 78 30 30 30 34 20 7d DIR32 = 0x0004 }
1bf70 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
1bf80 49 4d 41 47 45 5f 52 45 4c 5f 49 41 36 34 5f 44 IMAGE_REL_IA64_D
1bf90 49 52 36 34 20 3d 20 30 78 30 30 30 35 20 7d 0d IR64 = 0x0005 }.
1bfa0 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 .enum : uint { I
1bfb0 4d 41 47 45 5f 52 45 4c 5f 49 41 36 34 5f 50 43 MAGE_REL_IA64_PC
1bfc0 52 45 4c 32 31 42 20 3d 20 30 78 30 30 30 36 20 REL21B = 0x0006
1bfd0 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b }..enum : uint {
1bfe0 20 49 4d 41 47 45 5f 52 45 4c 5f 49 41 36 34 5f IMAGE_REL_IA64_
1bff0 50 43 52 45 4c 32 31 4d 20 3d 20 30 78 30 30 30 PCREL21M = 0x000
1c000 37 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 7 }..enum : uint
1c010 20 7b 20 49 4d 41 47 45 5f 52 45 4c 5f 49 41 36 { IMAGE_REL_IA6
1c020 34 5f 50 43 52 45 4c 32 31 46 20 3d 20 30 78 30 4_PCREL21F = 0x0
1c030 30 30 38 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 008 }..enum : ui
1c040 6e 74 20 7b 20 49 4d 41 47 45 5f 52 45 4c 5f 49 nt { IMAGE_REL_I
1c050 41 36 34 5f 47 50 52 45 4c 32 32 20 3d 20 30 78 A64_GPREL22 = 0x
1c060 30 30 30 39 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 0009 }..enum : u
1c070 69 6e 74 20 7b 20 49 4d 41 47 45 5f 52 45 4c 5f int { IMAGE_REL_
1c080 49 41 36 34 5f 4c 54 4f 46 46 32 32 20 3d 20 30 IA64_LTOFF22 = 0
1c090 78 30 30 30 41 20 7d 0d 0a 65 6e 75 6d 20 3a 20 x000A }..enum :
1c0a0 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f 52 45 4c uint { IMAGE_REL
1c0b0 5f 49 41 36 34 5f 53 45 43 54 49 4f 4e 20 3d 20 _IA64_SECTION =
1c0c0 30 78 30 30 30 42 20 7d 0d 0a 65 6e 75 6d 20 3a 0x000B }..enum :
1c0d0 20 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f 52 45 uint { IMAGE_RE
1c0e0 4c 5f 49 41 36 34 5f 53 45 43 52 45 4c 32 32 20 L_IA64_SECREL22
1c0f0 3d 20 30 78 30 30 30 43 20 7d 0d 0a 65 6e 75 6d = 0x000C }..enum
1c100 20 3a 20 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f : uint { IMAGE_
1c110 52 45 4c 5f 49 41 36 34 5f 53 45 43 52 45 4c 36 REL_IA64_SECREL6
1c120 34 49 20 3d 20 30 78 30 30 30 44 20 7d 0d 0a 65 4I = 0x000D }..e
1c130 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 4d 41 num : uint { IMA
1c140 47 45 5f 52 45 4c 5f 49 41 36 34 5f 53 45 43 52 GE_REL_IA64_SECR
1c150 45 4c 33 32 20 3d 20 30 78 30 30 30 45 20 7d 0d EL32 = 0x000E }.
1c160 0a 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b ...enum : uint {
1c170 20 49 4d 41 47 45 5f 52 45 4c 5f 49 41 36 34 5f IMAGE_REL_IA64_
1c180 44 49 52 33 32 4e 42 20 3d 20 30 78 30 30 31 30 DIR32NB = 0x0010
1c190 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 }..enum : uint
1c1a0 7b 20 49 4d 41 47 45 5f 52 45 4c 5f 49 41 36 34 { IMAGE_REL_IA64
1c1b0 5f 53 52 45 4c 31 34 20 3d 20 30 78 30 30 31 31 _SREL14 = 0x0011
1c1c0 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 }..enum : uint
1c1d0 7b 20 49 4d 41 47 45 5f 52 45 4c 5f 49 41 36 34 { IMAGE_REL_IA64
1c1e0 5f 53 52 45 4c 32 32 20 3d 20 30 78 30 30 31 32 _SREL22 = 0x0012
1c1f0 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 }..enum : uint
1c200 7b 20 49 4d 41 47 45 5f 52 45 4c 5f 49 41 36 34 { IMAGE_REL_IA64
1c210 5f 53 52 45 4c 33 32 20 3d 20 30 78 30 30 31 33 _SREL32 = 0x0013
1c220 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 }..enum : uint
1c230 7b 20 49 4d 41 47 45 5f 52 45 4c 5f 49 41 36 34 { IMAGE_REL_IA64
1c240 5f 55 52 45 4c 33 32 20 3d 20 30 78 30 30 31 34 _UREL32 = 0x0014
1c250 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 }..enum : uint
1c260 7b 20 49 4d 41 47 45 5f 52 45 4c 5f 49 41 36 34 { IMAGE_REL_IA64
1c270 5f 50 43 52 45 4c 36 30 58 20 3d 20 30 78 30 30 _PCREL60X = 0x00
1c280 31 35 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 15 }..enum : uin
1c290 74 20 7b 20 49 4d 41 47 45 5f 52 45 4c 5f 49 41 t { IMAGE_REL_IA
1c2a0 36 34 5f 50 43 52 45 4c 36 30 42 20 3d 20 30 78 64_PCREL60B = 0x
1c2b0 30 30 31 36 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 0016 }..enum : u
1c2c0 69 6e 74 20 7b 20 49 4d 41 47 45 5f 52 45 4c 5f int { IMAGE_REL_
1c2d0 49 41 36 34 5f 50 43 52 45 4c 36 30 46 20 3d 20 IA64_PCREL60F =
1c2e0 30 78 30 30 31 37 20 7d 0d 0a 65 6e 75 6d 20 3a 0x0017 }..enum :
1c2f0 20 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f 52 45 uint { IMAGE_RE
1c300 4c 5f 49 41 36 34 5f 50 43 52 45 4c 36 30 49 20 L_IA64_PCREL60I
1c310 3d 20 30 78 30 30 31 38 20 7d 0d 0a 65 6e 75 6d = 0x0018 }..enum
1c320 20 3a 20 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f : uint { IMAGE_
1c330 52 45 4c 5f 49 41 36 34 5f 50 43 52 45 4c 36 30 REL_IA64_PCREL60
1c340 4d 20 3d 20 30 78 30 30 31 39 20 7d 0d 0a 65 6e M = 0x0019 }..en
1c350 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 4d 41 47 um : uint { IMAG
1c360 45 5f 52 45 4c 5f 49 41 36 34 5f 49 4d 4d 47 50 E_REL_IA64_IMMGP
1c370 52 45 4c 36 34 20 3d 20 30 78 30 30 31 41 20 7d REL64 = 0x001A }
1c380 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
1c390 49 4d 41 47 45 5f 52 45 4c 5f 49 41 36 34 5f 54 IMAGE_REL_IA64_T
1c3a0 4f 4b 45 4e 20 3d 20 30 78 30 30 31 42 20 7d 0d OKEN = 0x001B }.
1c3b0 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 .enum : uint { I
1c3c0 4d 41 47 45 5f 52 45 4c 5f 49 41 36 34 5f 47 50 MAGE_REL_IA64_GP
1c3d0 52 45 4c 33 32 20 3d 20 30 78 30 30 31 43 20 7d REL32 = 0x001C }
1c3e0 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
1c3f0 49 4d 41 47 45 5f 52 45 4c 5f 49 41 36 34 5f 41 IMAGE_REL_IA64_A
1c400 44 44 45 4e 44 20 3d 20 30 78 30 30 31 46 20 7d DDEND = 0x001F }
1c410 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 ....enum : uint
1c420 7b 20 49 4d 41 47 45 5f 52 45 4c 5f 43 45 46 5f { IMAGE_REL_CEF_
1c430 41 42 53 4f 4c 55 54 45 20 3d 20 30 78 30 30 30 ABSOLUTE = 0x000
1c440 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 0 }..enum : uint
1c450 20 7b 20 49 4d 41 47 45 5f 52 45 4c 5f 43 45 46 { IMAGE_REL_CEF
1c460 5f 41 44 44 52 33 32 20 3d 20 30 78 30 30 30 31 _ADDR32 = 0x0001
1c470 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 }..enum : uint
1c480 7b 20 49 4d 41 47 45 5f 52 45 4c 5f 43 45 46 5f { IMAGE_REL_CEF_
1c490 41 44 44 52 36 34 20 3d 20 30 78 30 30 30 32 20 ADDR64 = 0x0002
1c4a0 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b }..enum : uint {
1c4b0 20 49 4d 41 47 45 5f 52 45 4c 5f 43 45 46 5f 41 IMAGE_REL_CEF_A
1c4c0 44 44 52 33 32 4e 42 20 3d 20 30 78 30 30 30 33 DDR32NB = 0x0003
1c4d0 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 }..enum : uint
1c4e0 7b 20 49 4d 41 47 45 5f 52 45 4c 5f 43 45 46 5f { IMAGE_REL_CEF_
1c4f0 53 45 43 54 49 4f 4e 20 3d 20 30 78 30 30 30 34 SECTION = 0x0004
1c500 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 }..enum : uint
1c510 7b 20 49 4d 41 47 45 5f 52 45 4c 5f 43 45 46 5f { IMAGE_REL_CEF_
1c520 53 45 43 52 45 4c 20 3d 20 30 78 30 30 30 35 20 SECREL = 0x0005
1c530 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b }..enum : uint {
1c540 20 49 4d 41 47 45 5f 52 45 4c 5f 43 45 46 5f 54 IMAGE_REL_CEF_T
1c550 4f 4b 45 4e 20 3d 20 30 78 30 30 30 36 20 7d 0d OKEN = 0x0006 }.
1c560 0a 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b ...enum : uint {
1c570 20 49 4d 41 47 45 5f 52 45 4c 5f 43 45 45 5f 41 IMAGE_REL_CEE_A
1c580 42 53 4f 4c 55 54 45 20 3d 20 30 78 30 30 30 30 BSOLUTE = 0x0000
1c590 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 }..enum : uint
1c5a0 7b 20 49 4d 41 47 45 5f 52 45 4c 5f 43 45 45 5f { IMAGE_REL_CEE_
1c5b0 41 44 44 52 33 32 20 3d 20 30 78 30 30 30 31 20 ADDR32 = 0x0001
1c5c0 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b }..enum : uint {
1c5d0 20 49 4d 41 47 45 5f 52 45 4c 5f 43 45 45 5f 41 IMAGE_REL_CEE_A
1c5e0 44 44 52 36 34 20 3d 20 30 78 30 30 30 32 20 7d DDR64 = 0x0002 }
1c5f0 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
1c600 49 4d 41 47 45 5f 52 45 4c 5f 43 45 45 5f 41 44 IMAGE_REL_CEE_AD
1c610 44 52 33 32 4e 42 20 3d 20 30 78 30 30 30 33 20 DR32NB = 0x0003
1c620 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b }..enum : uint {
1c630 20 49 4d 41 47 45 5f 52 45 4c 5f 43 45 45 5f 53 IMAGE_REL_CEE_S
1c640 45 43 54 49 4f 4e 20 3d 20 30 78 30 30 30 34 20 ECTION = 0x0004
1c650 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b }..enum : uint {
1c660 20 49 4d 41 47 45 5f 52 45 4c 5f 43 45 45 5f 53 IMAGE_REL_CEE_S
1c670 45 43 52 45 4c 20 3d 20 30 78 30 30 30 35 20 7d ECREL = 0x0005 }
1c680 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
1c690 49 4d 41 47 45 5f 52 45 4c 5f 43 45 45 5f 54 4f IMAGE_REL_CEE_TO
1c6a0 4b 45 4e 20 3d 20 30 78 30 30 30 36 20 7d 0d 0a KEN = 0x0006 }..
1c6b0 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
1c6c0 49 4d 41 47 45 5f 52 45 4c 5f 4d 33 32 52 5f 41 IMAGE_REL_M32R_A
1c6d0 42 53 4f 4c 55 54 45 20 3d 20 30 78 30 30 30 30 BSOLUTE = 0x0000
1c6e0 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 }..enum : uint
1c6f0 7b 20 49 4d 41 47 45 5f 52 45 4c 5f 4d 33 32 52 { IMAGE_REL_M32R
1c700 5f 41 44 44 52 33 32 20 3d 20 30 78 30 30 30 31 _ADDR32 = 0x0001
1c710 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 }..enum : uint
1c720 7b 20 49 4d 41 47 45 5f 52 45 4c 5f 4d 33 32 52 { IMAGE_REL_M32R
1c730 5f 41 44 44 52 33 32 4e 42 20 3d 20 30 78 30 30 _ADDR32NB = 0x00
1c740 30 32 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 02 }..enum : uin
1c750 74 20 7b 20 49 4d 41 47 45 5f 52 45 4c 5f 4d 33 t { IMAGE_REL_M3
1c760 32 52 5f 41 44 44 52 32 34 20 3d 20 30 78 30 30 2R_ADDR24 = 0x00
1c770 30 33 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 03 }..enum : uin
1c780 74 20 7b 20 49 4d 41 47 45 5f 52 45 4c 5f 4d 33 t { IMAGE_REL_M3
1c790 32 52 5f 47 50 52 45 4c 31 36 20 3d 20 30 78 30 2R_GPREL16 = 0x0
1c7a0 30 30 34 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 004 }..enum : ui
1c7b0 6e 74 20 7b 20 49 4d 41 47 45 5f 52 45 4c 5f 4d nt { IMAGE_REL_M
1c7c0 33 32 52 5f 50 43 52 45 4c 32 34 20 3d 20 30 78 32R_PCREL24 = 0x
1c7d0 30 30 30 35 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 0005 }..enum : u
1c7e0 69 6e 74 20 7b 20 49 4d 41 47 45 5f 52 45 4c 5f int { IMAGE_REL_
1c7f0 4d 33 32 52 5f 50 43 52 45 4c 31 36 20 3d 20 30 M32R_PCREL16 = 0
1c800 78 30 30 30 36 20 7d 0d 0a 65 6e 75 6d 20 3a 20 x0006 }..enum :
1c810 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f 52 45 4c uint { IMAGE_REL
1c820 5f 4d 33 32 52 5f 50 43 52 45 4c 38 20 3d 20 30 _M32R_PCREL8 = 0
1c830 78 30 30 30 37 20 7d 0d 0a 65 6e 75 6d 20 3a 20 x0007 }..enum :
1c840 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f 52 45 4c uint { IMAGE_REL
1c850 5f 4d 33 32 52 5f 52 45 46 48 41 4c 46 20 3d 20 _M32R_REFHALF =
1c860 30 78 30 30 30 38 20 7d 0d 0a 65 6e 75 6d 20 3a 0x0008 }..enum :
1c870 20 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f 52 45 uint { IMAGE_RE
1c880 4c 5f 4d 33 32 52 5f 52 45 46 48 49 20 3d 20 30 L_M32R_REFHI = 0
1c890 78 30 30 30 39 20 7d 0d 0a 65 6e 75 6d 20 3a 20 x0009 }..enum :
1c8a0 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f 52 45 4c uint { IMAGE_REL
1c8b0 5f 4d 33 32 52 5f 52 45 46 4c 4f 20 3d 20 30 78 _M32R_REFLO = 0x
1c8c0 30 30 30 41 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 000A }..enum : u
1c8d0 69 6e 74 20 7b 20 49 4d 41 47 45 5f 52 45 4c 5f int { IMAGE_REL_
1c8e0 4d 33 32 52 5f 50 41 49 52 20 3d 20 30 78 30 30 M32R_PAIR = 0x00
1c8f0 30 42 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 0B }..enum : uin
1c900 74 20 7b 20 49 4d 41 47 45 5f 52 45 4c 5f 4d 33 t { IMAGE_REL_M3
1c910 32 52 5f 53 45 43 54 49 4f 4e 20 3d 20 30 78 30 2R_SECTION = 0x0
1c920 30 30 43 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 00C }..enum : ui
1c930 6e 74 20 7b 20 49 4d 41 47 45 5f 52 45 4c 5f 4d nt { IMAGE_REL_M
1c940 33 32 52 5f 53 45 43 52 45 4c 33 32 20 3d 20 30 32R_SECREL32 = 0
1c950 78 30 30 30 44 20 7d 0d 0a 65 6e 75 6d 20 3a 20 x000D }..enum :
1c960 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f 52 45 4c uint { IMAGE_REL
1c970 5f 4d 33 32 52 5f 54 4f 4b 45 4e 20 3d 20 30 78 _M32R_TOKEN = 0x
1c980 30 30 30 45 20 7d 0d 0a 0d 0a 2f 2f 20 23 64 65 000E }....// #de
1c990 66 69 6e 65 20 45 58 54 5f 49 4d 4d 36 34 28 56 fine EXT_IMM64(V
1c9a0 61 6c 75 65 2c 20 41 64 64 72 65 73 73 2c 20 53 alue, Address, S
1c9b0 69 7a 65 2c 20 49 6e 73 74 50 6f 73 2c 20 56 61 ize, InstPos, Va
1c9c0 6c 50 6f 73 29 20 56 61 6c 75 65 20 7c 3d 20 28 lPos) Value |= (
1c9d0 28 28 55 4c 4f 4e 47 4c 4f 4e 47 29 28 28 2a 28 ((ULONGLONG)((*(
1c9e0 41 64 64 72 65 73 73 29 20 3e 3e 20 49 6e 73 74 Address) >> Inst
1c9f0 50 6f 73 29 20 26 20 28 28 28 55 4c 4f 4e 47 4c Pos) & (((ULONGL
1ca00 4f 4e 47 29 31 20 3c 3c 20 53 69 7a 65 29 20 2d ONG)1 << Size) -
1ca10 20 31 29 29 29 20 3c 3c 20 56 61 6c 50 6f 73 29 1))) << ValPos)
1ca20 0d 0a 0d 0a 2f 2f 20 23 64 65 66 69 6e 65 20 49 ....// #define I
1ca30 4e 53 5f 49 4d 4d 36 34 28 56 61 6c 75 65 2c 20 NS_IMM64(Value,
1ca40 41 64 64 72 65 73 73 2c 20 53 69 7a 65 2c 20 49 Address, Size, I
1ca50 6e 73 74 50 6f 73 2c 20 56 61 6c 50 6f 73 29 20 nstPos, ValPos)
1ca60 2a 28 50 44 57 4f 52 44 29 41 64 64 72 65 73 73 *(PDWORD)Address
1ca70 20 3d 20 28 2a 28 50 44 57 4f 52 44 29 41 64 64 = (*(PDWORD)Add
1ca80 72 65 73 73 20 26 20 7e 28 28 28 31 20 3c 3c 20 ress & ~(((1 <<
1ca90 53 69 7a 65 29 20 2d 20 31 29 20 3c 3c 20 49 6e Size) - 1) << In
1caa0 73 74 50 6f 73 29 29 20 7c 20 28 28 44 57 4f 52 stPos)) | ((DWOR
1cab0 44 29 28 28 28 28 55 4c 4f 4e 47 4c 4f 4e 47 29 D)((((ULONGLONG)
1cac0 56 61 6c 75 65 20 3e 3e 20 56 61 6c 50 6f 73 29 Value >> ValPos)
1cad0 20 26 20 28 28 28 55 4c 4f 4e 47 4c 4f 4e 47 29 & (((ULONGLONG)
1cae0 31 20 3c 3c 20 53 69 7a 65 29 20 2d 20 31 29 29 1 << Size) - 1))
1caf0 29 20 3c 3c 20 49 6e 73 74 50 6f 73 29 0d 0a 0d ) << InstPos)...
1cb00 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 45 .enum : uint { E
1cb10 4d 41 52 43 48 5f 45 4e 43 5f 49 31 37 5f 49 4d MARCH_ENC_I17_IM
1cb20 4d 37 42 5f 49 4e 53 54 5f 57 4f 52 44 5f 58 20 M7B_INST_WORD_X
1cb30 3d 20 33 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 = 3 }..enum : ui
1cb40 6e 74 20 7b 20 45 4d 41 52 43 48 5f 45 4e 43 5f nt { EMARCH_ENC_
1cb50 49 31 37 5f 49 4d 4d 37 42 5f 53 49 5a 45 5f 58 I17_IMM7B_SIZE_X
1cb60 20 3d 20 37 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 = 7 }..enum : u
1cb70 69 6e 74 20 7b 20 45 4d 41 52 43 48 5f 45 4e 43 int { EMARCH_ENC
1cb80 5f 49 31 37 5f 49 4d 4d 37 42 5f 49 4e 53 54 5f _I17_IMM7B_INST_
1cb90 57 4f 52 44 5f 50 4f 53 5f 58 20 3d 20 34 20 7d WORD_POS_X = 4 }
1cba0 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
1cbb0 45 4d 41 52 43 48 5f 45 4e 43 5f 49 31 37 5f 49 EMARCH_ENC_I17_I
1cbc0 4d 4d 37 42 5f 56 41 4c 5f 50 4f 53 5f 58 20 3d MM7B_VAL_POS_X =
1cbd0 20 30 20 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 75 0 }....enum : u
1cbe0 69 6e 74 20 7b 20 45 4d 41 52 43 48 5f 45 4e 43 int { EMARCH_ENC
1cbf0 5f 49 31 37 5f 49 4d 4d 39 44 5f 49 4e 53 54 5f _I17_IMM9D_INST_
1cc00 57 4f 52 44 5f 58 20 3d 20 33 20 7d 0d 0a 65 6e WORD_X = 3 }..en
1cc10 75 6d 20 3a 20 75 69 6e 74 20 7b 20 45 4d 41 52 um : uint { EMAR
1cc20 43 48 5f 45 4e 43 5f 49 31 37 5f 49 4d 4d 39 44 CH_ENC_I17_IMM9D
1cc30 5f 53 49 5a 45 5f 58 20 3d 20 39 20 7d 0d 0a 65 _SIZE_X = 9 }..e
1cc40 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 45 4d 41 num : uint { EMA
1cc50 52 43 48 5f 45 4e 43 5f 49 31 37 5f 49 4d 4d 39 RCH_ENC_I17_IMM9
1cc60 44 5f 49 4e 53 54 5f 57 4f 52 44 5f 50 4f 53 5f D_INST_WORD_POS_
1cc70 58 20 3d 20 31 38 20 7d 0d 0a 65 6e 75 6d 20 3a X = 18 }..enum :
1cc80 20 75 69 6e 74 20 7b 20 45 4d 41 52 43 48 5f 45 uint { EMARCH_E
1cc90 4e 43 5f 49 31 37 5f 49 4d 4d 39 44 5f 56 41 4c NC_I17_IMM9D_VAL
1cca0 5f 50 4f 53 5f 58 20 3d 20 37 20 7d 0d 0a 0d 0a _POS_X = 7 }....
1ccb0 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 45 4d enum : uint { EM
1ccc0 41 52 43 48 5f 45 4e 43 5f 49 31 37 5f 49 4d 4d ARCH_ENC_I17_IMM
1ccd0 35 43 5f 49 4e 53 54 5f 57 4f 52 44 5f 58 20 3d 5C_INST_WORD_X =
1cce0 20 33 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 3 }..enum : uin
1ccf0 74 20 7b 20 45 4d 41 52 43 48 5f 45 4e 43 5f 49 t { EMARCH_ENC_I
1cd00 31 37 5f 49 4d 4d 35 43 5f 53 49 5a 45 5f 58 20 17_IMM5C_SIZE_X
1cd10 3d 20 35 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 = 5 }..enum : ui
1cd20 6e 74 20 7b 20 45 4d 41 52 43 48 5f 45 4e 43 5f nt { EMARCH_ENC_
1cd30 49 31 37 5f 49 4d 4d 35 43 5f 49 4e 53 54 5f 57 I17_IMM5C_INST_W
1cd40 4f 52 44 5f 50 4f 53 5f 58 20 3d 20 31 33 20 7d ORD_POS_X = 13 }
1cd50 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
1cd60 45 4d 41 52 43 48 5f 45 4e 43 5f 49 31 37 5f 49 EMARCH_ENC_I17_I
1cd70 4d 4d 35 43 5f 56 41 4c 5f 50 4f 53 5f 58 20 3d MM5C_VAL_POS_X =
1cd80 20 31 36 20 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 16 }....enum :
1cd90 75 69 6e 74 20 7b 20 45 4d 41 52 43 48 5f 45 4e uint { EMARCH_EN
1cda0 43 5f 49 31 37 5f 49 43 5f 49 4e 53 54 5f 57 4f C_I17_IC_INST_WO
1cdb0 52 44 5f 58 20 3d 20 33 20 7d 0d 0a 65 6e 75 6d RD_X = 3 }..enum
1cdc0 20 3a 20 75 69 6e 74 20 7b 20 45 4d 41 52 43 48 : uint { EMARCH
1cdd0 5f 45 4e 43 5f 49 31 37 5f 49 43 5f 53 49 5a 45 _ENC_I17_IC_SIZE
1cde0 5f 58 20 3d 20 31 20 7d 0d 0a 65 6e 75 6d 20 3a _X = 1 }..enum :
1cdf0 20 75 69 6e 74 20 7b 20 45 4d 41 52 43 48 5f 45 uint { EMARCH_E
1ce00 4e 43 5f 49 31 37 5f 49 43 5f 49 4e 53 54 5f 57 NC_I17_IC_INST_W
1ce10 4f 52 44 5f 50 4f 53 5f 58 20 3d 20 31 32 20 7d ORD_POS_X = 12 }
1ce20 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
1ce30 45 4d 41 52 43 48 5f 45 4e 43 5f 49 31 37 5f 49 EMARCH_ENC_I17_I
1ce40 43 5f 56 41 4c 5f 50 4f 53 5f 58 20 3d 20 32 31 C_VAL_POS_X = 21
1ce50 20 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e }....enum : uin
1ce60 74 20 7b 20 45 4d 41 52 43 48 5f 45 4e 43 5f 49 t { EMARCH_ENC_I
1ce70 31 37 5f 49 4d 4d 34 31 61 5f 49 4e 53 54 5f 57 17_IMM41a_INST_W
1ce80 4f 52 44 5f 58 20 3d 20 31 20 7d 0d 0a 65 6e 75 ORD_X = 1 }..enu
1ce90 6d 20 3a 20 75 69 6e 74 20 7b 20 45 4d 41 52 43 m : uint { EMARC
1cea0 48 5f 45 4e 43 5f 49 31 37 5f 49 4d 4d 34 31 61 H_ENC_I17_IMM41a
1ceb0 5f 53 49 5a 45 5f 58 20 3d 20 31 30 20 7d 0d 0a _SIZE_X = 10 }..
1cec0 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 45 4d enum : uint { EM
1ced0 41 52 43 48 5f 45 4e 43 5f 49 31 37 5f 49 4d 4d ARCH_ENC_I17_IMM
1cee0 34 31 61 5f 49 4e 53 54 5f 57 4f 52 44 5f 50 4f 41a_INST_WORD_PO
1cef0 53 5f 58 20 3d 20 31 34 20 7d 0d 0a 65 6e 75 6d S_X = 14 }..enum
1cf00 20 3a 20 75 69 6e 74 20 7b 20 45 4d 41 52 43 48 : uint { EMARCH
1cf10 5f 45 4e 43 5f 49 31 37 5f 49 4d 4d 34 31 61 5f _ENC_I17_IMM41a_
1cf20 56 41 4c 5f 50 4f 53 5f 58 20 3d 20 32 32 20 7d VAL_POS_X = 22 }
1cf30 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 ....enum : uint
1cf40 7b 20 45 4d 41 52 43 48 5f 45 4e 43 5f 49 31 37 { EMARCH_ENC_I17
1cf50 5f 49 4d 4d 34 31 62 5f 49 4e 53 54 5f 57 4f 52 _IMM41b_INST_WOR
1cf60 44 5f 58 20 3d 20 31 20 7d 0d 0a 65 6e 75 6d 20 D_X = 1 }..enum
1cf70 3a 20 75 69 6e 74 20 7b 20 45 4d 41 52 43 48 5f : uint { EMARCH_
1cf80 45 4e 43 5f 49 31 37 5f 49 4d 4d 34 31 62 5f 53 ENC_I17_IMM41b_S
1cf90 49 5a 45 5f 58 20 3d 20 38 20 7d 0d 0a 65 6e 75 IZE_X = 8 }..enu
1cfa0 6d 20 3a 20 75 69 6e 74 20 7b 20 45 4d 41 52 43 m : uint { EMARC
1cfb0 48 5f 45 4e 43 5f 49 31 37 5f 49 4d 4d 34 31 62 H_ENC_I17_IMM41b
1cfc0 5f 49 4e 53 54 5f 57 4f 52 44 5f 50 4f 53 5f 58 _INST_WORD_POS_X
1cfd0 20 3d 20 32 34 20 7d 0d 0a 65 6e 75 6d 20 3a 20 = 24 }..enum :
1cfe0 75 69 6e 74 20 7b 20 45 4d 41 52 43 48 5f 45 4e uint { EMARCH_EN
1cff0 43 5f 49 31 37 5f 49 4d 4d 34 31 62 5f 56 41 4c C_I17_IMM41b_VAL
1d000 5f 50 4f 53 5f 58 20 3d 20 33 32 20 7d 0d 0a 0d _POS_X = 32 }...
1d010 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 45 .enum : uint { E
1d020 4d 41 52 43 48 5f 45 4e 43 5f 49 31 37 5f 49 4d MARCH_ENC_I17_IM
1d030 4d 34 31 63 5f 49 4e 53 54 5f 57 4f 52 44 5f 58 M41c_INST_WORD_X
1d040 20 3d 20 32 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 = 2 }..enum : u
1d050 69 6e 74 20 7b 20 45 4d 41 52 43 48 5f 45 4e 43 int { EMARCH_ENC
1d060 5f 49 31 37 5f 49 4d 4d 34 31 63 5f 53 49 5a 45 _I17_IMM41c_SIZE
1d070 5f 58 20 3d 20 32 33 20 7d 0d 0a 65 6e 75 6d 20 _X = 23 }..enum
1d080 3a 20 75 69 6e 74 20 7b 20 45 4d 41 52 43 48 5f : uint { EMARCH_
1d090 45 4e 43 5f 49 31 37 5f 49 4d 4d 34 31 63 5f 49 ENC_I17_IMM41c_I
1d0a0 4e 53 54 5f 57 4f 52 44 5f 50 4f 53 5f 58 20 3d NST_WORD_POS_X =
1d0b0 20 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 0 }..enum : uin
1d0c0 74 20 7b 20 45 4d 41 52 43 48 5f 45 4e 43 5f 49 t { EMARCH_ENC_I
1d0d0 31 37 5f 49 4d 4d 34 31 63 5f 56 41 4c 5f 50 4f 17_IMM41c_VAL_PO
1d0e0 53 5f 58 20 3d 20 34 30 20 7d 0d 0a 0d 0a 65 6e S_X = 40 }....en
1d0f0 75 6d 20 3a 20 75 69 6e 74 20 7b 20 45 4d 41 52 um : uint { EMAR
1d100 43 48 5f 45 4e 43 5f 49 31 37 5f 53 49 47 4e 5f CH_ENC_I17_SIGN_
1d110 49 4e 53 54 5f 57 4f 52 44 5f 58 20 3d 20 33 20 INST_WORD_X = 3
1d120 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b }..enum : uint {
1d130 20 45 4d 41 52 43 48 5f 45 4e 43 5f 49 31 37 5f EMARCH_ENC_I17_
1d140 53 49 47 4e 5f 53 49 5a 45 5f 58 20 3d 20 31 20 SIGN_SIZE_X = 1
1d150 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b }..enum : uint {
1d160 20 45 4d 41 52 43 48 5f 45 4e 43 5f 49 31 37 5f EMARCH_ENC_I17_
1d170 53 49 47 4e 5f 49 4e 53 54 5f 57 4f 52 44 5f 50 SIGN_INST_WORD_P
1d180 4f 53 5f 58 20 3d 20 32 37 20 7d 0d 0a 65 6e 75 OS_X = 27 }..enu
1d190 6d 20 3a 20 75 69 6e 74 20 7b 20 45 4d 41 52 43 m : uint { EMARC
1d1a0 48 5f 45 4e 43 5f 49 31 37 5f 53 49 47 4e 5f 56 H_ENC_I17_SIGN_V
1d1b0 41 4c 5f 50 4f 53 5f 58 20 3d 20 36 33 20 7d 0d AL_POS_X = 63 }.
1d1c0 0a 0d 0a 73 74 72 75 63 74 20 5f 49 4d 41 47 45 ...struct _IMAGE
1d1d0 5f 4c 49 4e 45 4e 55 4d 42 45 52 20 7b 0d 0a 75 _LINENUMBER {..u
1d1e0 6e 69 6f 6e 20 7b 0d 0a 20 20 44 57 4f 52 44 20 nion {.. DWORD
1d1f0 53 79 6d 62 6f 6c 54 61 62 6c 65 49 6e 64 65 78 SymbolTableIndex
1d200 3b 0d 0a 20 20 44 57 4f 52 44 20 56 69 72 74 75 ;.. DWORD Virtu
1d210 61 6c 41 64 64 72 65 73 73 3b 0d 0a 7d 0d 0a 0d alAddress;..}...
1d220 0a 20 20 57 4f 52 44 20 4c 69 6e 65 6e 75 6d 62 . WORD Linenumb
1d230 65 72 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 5f 49 er;..}..alias _I
1d240 4d 41 47 45 5f 4c 49 4e 45 4e 55 4d 42 45 52 20 MAGE_LINENUMBER
1d250 49 4d 41 47 45 5f 4c 49 4e 45 4e 55 4d 42 45 52 IMAGE_LINENUMBER
1d260 3b 0d 0a 0d 0a 61 6c 69 61 73 20 49 4d 41 47 45 ;....alias IMAGE
1d270 5f 4c 49 4e 45 4e 55 4d 42 45 52 2a 20 50 49 4d _LINENUMBER* PIM
1d280 41 47 45 5f 4c 49 4e 45 4e 55 4d 42 45 52 3b 0d AGE_LINENUMBER;.
1d290 0a 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b ...enum : uint {
1d2a0 20 49 4d 41 47 45 5f 53 49 5a 45 4f 46 5f 4c 49 IMAGE_SIZEOF_LI
1d2b0 4e 45 4e 55 4d 42 45 52 20 3d 20 36 20 7d 0d 0a NENUMBER = 6 }..
1d2c0 0d 0a 2f 2f 20 23 69 66 6e 64 65 66 20 5f 4d 41 ..// #ifndef _MA
1d2d0 43 0d 0a 61 6c 69 67 6e 3a 0d 0a 2f 2f 20 23 65 C..align:..// #e
1d2e0 6e 64 69 66 0d 0a 0d 0a 73 74 72 75 63 74 20 5f ndif....struct _
1d2f0 49 4d 41 47 45 5f 42 41 53 45 5f 52 45 4c 4f 43 IMAGE_BASE_RELOC
1d300 41 54 49 4f 4e 20 7b 0d 0a 20 20 44 57 4f 52 44 ATION {.. DWORD
1d310 20 56 69 72 74 75 61 6c 41 64 64 72 65 73 73 3b VirtualAddress;
1d320 0d 0a 20 20 44 57 4f 52 44 20 53 69 7a 65 4f 66 .. DWORD SizeOf
1d330 42 6c 6f 63 6b 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 Block;..}..alias
1d340 20 5f 49 4d 41 47 45 5f 42 41 53 45 5f 52 45 4c _IMAGE_BASE_REL
1d350 4f 43 41 54 49 4f 4e 20 49 4d 41 47 45 5f 42 41 OCATION IMAGE_BA
1d360 53 45 5f 52 45 4c 4f 43 41 54 49 4f 4e 3b 0d 0a SE_RELOCATION;..
1d370 0d 0a 61 6c 69 61 73 20 49 4d 41 47 45 5f 42 41 ..alias IMAGE_BA
1d380 53 45 5f 52 45 4c 4f 43 41 54 49 4f 4e 2a 20 50 SE_RELOCATION* P
1d390 49 4d 41 47 45 5f 42 41 53 45 5f 52 45 4c 4f 43 IMAGE_BASE_RELOC
1d3a0 41 54 49 4f 4e 3b 0d 0a 0d 0a 65 6e 75 6d 20 3a ATION;....enum :
1d3b0 20 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f 53 49 uint { IMAGE_SI
1d3c0 5a 45 4f 46 5f 42 41 53 45 5f 52 45 4c 4f 43 41 ZEOF_BASE_RELOCA
1d3d0 54 49 4f 4e 20 3d 20 38 20 7d 0d 0a 0d 0a 65 6e TION = 8 }....en
1d3e0 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 4d 41 47 um : uint { IMAG
1d3f0 45 5f 52 45 4c 5f 42 41 53 45 44 5f 41 42 53 4f E_REL_BASED_ABSO
1d400 4c 55 54 45 20 3d 20 30 20 7d 0d 0a 65 6e 75 6d LUTE = 0 }..enum
1d410 20 3a 20 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f : uint { IMAGE_
1d420 52 45 4c 5f 42 41 53 45 44 5f 48 49 47 48 20 3d REL_BASED_HIGH =
1d430 20 31 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 1 }..enum : uin
1d440 74 20 7b 20 49 4d 41 47 45 5f 52 45 4c 5f 42 41 t { IMAGE_REL_BA
1d450 53 45 44 5f 4c 4f 57 20 3d 20 32 20 7d 0d 0a 65 SED_LOW = 2 }..e
1d460 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 4d 41 num : uint { IMA
1d470 47 45 5f 52 45 4c 5f 42 41 53 45 44 5f 48 49 47 GE_REL_BASED_HIG
1d480 48 4c 4f 57 20 3d 20 33 20 7d 0d 0a 65 6e 75 6d HLOW = 3 }..enum
1d490 20 3a 20 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f : uint { IMAGE_
1d4a0 52 45 4c 5f 42 41 53 45 44 5f 48 49 47 48 41 44 REL_BASED_HIGHAD
1d4b0 4a 20 3d 20 34 20 7d 0d 0a 65 6e 75 6d 20 3a 20 J = 4 }..enum :
1d4c0 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f 52 45 4c uint { IMAGE_REL
1d4d0 5f 42 41 53 45 44 5f 4d 49 50 53 5f 4a 4d 50 41 _BASED_MIPS_JMPA
1d4e0 44 44 52 20 3d 20 35 20 7d 0d 0a 65 6e 75 6d 20 DDR = 5 }..enum
1d4f0 3a 20 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f 52 : uint { IMAGE_R
1d500 45 4c 5f 42 41 53 45 44 5f 4d 49 50 53 5f 4a 4d EL_BASED_MIPS_JM
1d510 50 41 44 44 52 31 36 20 3d 20 39 20 7d 0d 0a 65 PADDR16 = 9 }..e
1d520 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 4d 41 num : uint { IMA
1d530 47 45 5f 52 45 4c 5f 42 41 53 45 44 5f 49 41 36 GE_REL_BASED_IA6
1d540 34 5f 49 4d 4d 36 34 20 3d 20 39 20 7d 0d 0a 65 4_IMM64 = 9 }..e
1d550 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 4d 41 num : uint { IMA
1d560 47 45 5f 52 45 4c 5f 42 41 53 45 44 5f 44 49 52 GE_REL_BASED_DIR
1d570 36 34 20 3d 20 31 30 20 7d 0d 0a 0d 0a 65 6e 75 64 = 10 }....enu
1d580 6d 20 3a 20 75 69 6e 74 20 7b 20 49 4d 41 47 45 m : uint { IMAGE
1d590 5f 41 52 43 48 49 56 45 5f 53 54 41 52 54 5f 53 _ARCHIVE_START_S
1d5a0 49 5a 45 20 3d 20 38 20 7d 0d 0a 63 6f 6e 73 74 IZE = 8 }..const
1d5b0 20 63 68 61 72 5b 5d 20 49 4d 41 47 45 5f 41 52 char[] IMAGE_AR
1d5c0 43 48 49 56 45 5f 53 54 41 52 54 20 3d 20 22 21 CHIVE_START = "!
1d5d0 3c 61 72 63 68 3e 5c 6e 22 3b 0d 0a 63 6f 6e 73 <arch>\n";..cons
1d5e0 74 20 63 68 61 72 5b 5d 20 49 4d 41 47 45 5f 41 t char[] IMAGE_A
1d5f0 52 43 48 49 56 45 5f 45 4e 44 20 3d 20 22 60 5c RCHIVE_END = "`\
1d600 6e 22 3b 0d 0a 63 6f 6e 73 74 20 63 68 61 72 5b n";..const char[
1d610 5d 20 49 4d 41 47 45 5f 41 52 43 48 49 56 45 5f ] IMAGE_ARCHIVE_
1d620 50 41 44 20 3d 20 22 5c 6e 22 3b 0d 0a 63 6f 6e PAD = "\n";..con
1d630 73 74 20 63 68 61 72 5b 5d 20 49 4d 41 47 45 5f st char[] IMAGE_
1d640 41 52 43 48 49 56 45 5f 4c 49 4e 4b 45 52 5f 4d ARCHIVE_LINKER_M
1d650 45 4d 42 45 52 20 3d 20 22 2f 20 22 3b 0d 0a 63 EMBER = "/ ";..c
1d660 6f 6e 73 74 20 63 68 61 72 5b 5d 20 49 4d 41 47 onst char[] IMAG
1d670 45 5f 41 52 43 48 49 56 45 5f 4c 4f 4e 47 4e 41 E_ARCHIVE_LONGNA
1d680 4d 45 53 5f 4d 45 4d 42 45 52 20 3d 20 22 2f 2f MES_MEMBER = "//
1d690 20 22 3b 0d 0a 0d 0a 73 74 72 75 63 74 20 5f 49 ";....struct _I
1d6a0 4d 41 47 45 5f 41 52 43 48 49 56 45 5f 4d 45 4d MAGE_ARCHIVE_MEM
1d6b0 42 45 52 5f 48 45 41 44 45 52 20 7b 0d 0a 20 20 BER_HEADER {..
1d6c0 42 59 54 45 20 4e 61 6d 65 5b 31 36 5d 3b 0d 0a BYTE Name[16];..
1d6d0 20 20 42 59 54 45 20 44 61 74 65 5b 31 32 5d 3b BYTE Date[12];
1d6e0 0d 0a 20 20 42 59 54 45 20 55 73 65 72 49 44 5b .. BYTE UserID[
1d6f0 36 5d 3b 0d 0a 20 20 42 59 54 45 20 47 72 6f 75 6];.. BYTE Grou
1d700 70 49 44 5b 36 5d 3b 0d 0a 20 20 42 59 54 45 20 pID[6];.. BYTE
1d710 4d 6f 64 65 5b 38 5d 3b 0d 0a 20 20 42 59 54 45 Mode[8];.. BYTE
1d720 20 53 69 7a 65 5b 31 30 5d 3b 0d 0a 20 20 42 59 Size[10];.. BY
1d730 54 45 20 45 6e 64 48 65 61 64 65 72 5b 32 5d 3b TE EndHeader[2];
1d740 0d 0a 7d 0d 0a 61 6c 69 61 73 20 5f 49 4d 41 47 ..}..alias _IMAG
1d750 45 5f 41 52 43 48 49 56 45 5f 4d 45 4d 42 45 52 E_ARCHIVE_MEMBER
1d760 5f 48 45 41 44 45 52 20 49 4d 41 47 45 5f 41 52 _HEADER IMAGE_AR
1d770 43 48 49 56 45 5f 4d 45 4d 42 45 52 5f 48 45 41 CHIVE_MEMBER_HEA
1d780 44 45 52 3b 0d 0a 61 6c 69 61 73 20 5f 49 4d 41 DER;..alias _IMA
1d790 47 45 5f 41 52 43 48 49 56 45 5f 4d 45 4d 42 45 GE_ARCHIVE_MEMBE
1d7a0 52 5f 48 45 41 44 45 52 2a 20 50 49 4d 41 47 45 R_HEADER* PIMAGE
1d7b0 5f 41 52 43 48 49 56 45 5f 4d 45 4d 42 45 52 5f _ARCHIVE_MEMBER_
1d7c0 48 45 41 44 45 52 3b 0d 0a 0d 0a 65 6e 75 6d 20 HEADER;....enum
1d7d0 3a 20 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f 53 : uint { IMAGE_S
1d7e0 49 5a 45 4f 46 5f 41 52 43 48 49 56 45 5f 4d 45 IZEOF_ARCHIVE_ME
1d7f0 4d 42 45 52 5f 48 44 52 20 3d 20 36 30 20 7d 0d MBER_HDR = 60 }.
1d800 0a 0d 0a 73 74 72 75 63 74 20 5f 49 4d 41 47 45 ...struct _IMAGE
1d810 5f 45 58 50 4f 52 54 5f 44 49 52 45 43 54 4f 52 _EXPORT_DIRECTOR
1d820 59 20 7b 0d 0a 20 20 44 57 4f 52 44 20 43 68 61 Y {.. DWORD Cha
1d830 72 61 63 74 65 72 69 73 74 69 63 73 3b 0d 0a 20 racteristics;..
1d840 20 44 57 4f 52 44 20 54 69 6d 65 44 61 74 65 53 DWORD TimeDateS
1d850 74 61 6d 70 3b 0d 0a 20 20 57 4f 52 44 20 4d 61 tamp;.. WORD Ma
1d860 6a 6f 72 56 65 72 73 69 6f 6e 3b 0d 0a 20 20 57 jorVersion;.. W
1d870 4f 52 44 20 4d 69 6e 6f 72 56 65 72 73 69 6f 6e ORD MinorVersion
1d880 3b 0d 0a 20 20 44 57 4f 52 44 20 4e 61 6d 65 3b ;.. DWORD Name;
1d890 0d 0a 20 20 44 57 4f 52 44 20 42 61 73 65 3b 0d .. DWORD Base;.
1d8a0 0a 20 20 44 57 4f 52 44 20 4e 75 6d 62 65 72 4f . DWORD NumberO
1d8b0 66 46 75 6e 63 74 69 6f 6e 73 3b 0d 0a 20 20 44 fFunctions;.. D
1d8c0 57 4f 52 44 20 4e 75 6d 62 65 72 4f 66 4e 61 6d WORD NumberOfNam
1d8d0 65 73 3b 0d 0a 20 20 44 57 4f 52 44 20 41 64 64 es;.. DWORD Add
1d8e0 72 65 73 73 4f 66 46 75 6e 63 74 69 6f 6e 73 3b ressOfFunctions;
1d8f0 0d 0a 20 20 44 57 4f 52 44 20 41 64 64 72 65 73 .. DWORD Addres
1d900 73 4f 66 4e 61 6d 65 73 3b 0d 0a 20 20 44 57 4f sOfNames;.. DWO
1d910 52 44 20 41 64 64 72 65 73 73 4f 66 4e 61 6d 65 RD AddressOfName
1d920 4f 72 64 69 6e 61 6c 73 3b 0d 0a 7d 0d 0a 61 6c Ordinals;..}..al
1d930 69 61 73 20 5f 49 4d 41 47 45 5f 45 58 50 4f 52 ias _IMAGE_EXPOR
1d940 54 5f 44 49 52 45 43 54 4f 52 59 20 49 4d 41 47 T_DIRECTORY IMAG
1d950 45 5f 45 58 50 4f 52 54 5f 44 49 52 45 43 54 4f E_EXPORT_DIRECTO
1d960 52 59 3b 0d 0a 61 6c 69 61 73 20 5f 49 4d 41 47 RY;..alias _IMAG
1d970 45 5f 45 58 50 4f 52 54 5f 44 49 52 45 43 54 4f E_EXPORT_DIRECTO
1d980 52 59 2a 20 50 49 4d 41 47 45 5f 45 58 50 4f 52 RY* PIMAGE_EXPOR
1d990 54 5f 44 49 52 45 43 54 4f 52 59 3b 0d 0a 0d 0a T_DIRECTORY;....
1d9a0 73 74 72 75 63 74 20 5f 49 4d 41 47 45 5f 49 4d struct _IMAGE_IM
1d9b0 50 4f 52 54 5f 42 59 5f 4e 41 4d 45 20 7b 0d 0a PORT_BY_NAME {..
1d9c0 20 20 57 4f 52 44 20 48 69 6e 74 3b 0d 0a 20 20 WORD Hint;..
1d9d0 42 59 54 45 20 4e 61 6d 65 5b 31 5d 3b 0d 0a 7d BYTE Name[1];..}
1d9e0 0d 0a 61 6c 69 61 73 20 5f 49 4d 41 47 45 5f 49 ..alias _IMAGE_I
1d9f0 4d 50 4f 52 54 5f 42 59 5f 4e 41 4d 45 20 49 4d MPORT_BY_NAME IM
1da00 41 47 45 5f 49 4d 50 4f 52 54 5f 42 59 5f 4e 41 AGE_IMPORT_BY_NA
1da10 4d 45 3b 0d 0a 61 6c 69 61 73 20 5f 49 4d 41 47 ME;..alias _IMAG
1da20 45 5f 49 4d 50 4f 52 54 5f 42 59 5f 4e 41 4d 45 E_IMPORT_BY_NAME
1da30 2a 20 50 49 4d 41 47 45 5f 49 4d 50 4f 52 54 5f * PIMAGE_IMPORT_
1da40 42 59 5f 4e 41 4d 45 3b 0d 0a 0d 0a 61 6c 69 67 BY_NAME;....alig
1da50 6e 28 38 29 3a 0d 0a 0d 0a 73 74 72 75 63 74 20 n(8):....struct
1da60 5f 49 4d 41 47 45 5f 54 48 55 4e 4b 5f 44 41 54 _IMAGE_THUNK_DAT
1da70 41 36 34 20 7b 0d 0a 75 6e 69 6f 6e 20 7b 0d 0a A64 {..union {..
1da80 20 20 55 4c 4f 4e 47 4c 4f 4e 47 20 46 6f 72 77 ULONGLONG Forw
1da90 61 72 64 65 72 53 74 72 69 6e 67 3b 0d 0a 20 20 arderString;..
1daa0 55 4c 4f 4e 47 4c 4f 4e 47 20 46 75 6e 63 74 69 ULONGLONG Functi
1dab0 6f 6e 3b 0d 0a 20 20 55 4c 4f 4e 47 4c 4f 4e 47 on;.. ULONGLONG
1dac0 20 4f 72 64 69 6e 61 6c 3b 0d 0a 20 20 55 4c 4f Ordinal;.. ULO
1dad0 4e 47 4c 4f 4e 47 20 41 64 64 72 65 73 73 4f 66 NGLONG AddressOf
1dae0 44 61 74 61 3b 0d 0a 7d 0d 0a 0d 0a 7d 0d 0a 61 Data;..}....}..a
1daf0 6c 69 61 73 20 5f 49 4d 41 47 45 5f 54 48 55 4e lias _IMAGE_THUN
1db00 4b 5f 44 41 54 41 36 34 20 49 4d 41 47 45 5f 54 K_DATA64 IMAGE_T
1db10 48 55 4e 4b 5f 44 41 54 41 36 34 3b 0d 0a 0d 0a HUNK_DATA64;....
1db20 61 6c 69 61 73 20 49 4d 41 47 45 5f 54 48 55 4e alias IMAGE_THUN
1db30 4b 5f 44 41 54 41 36 34 2a 20 50 49 4d 41 47 45 K_DATA64* PIMAGE
1db40 5f 54 48 55 4e 4b 5f 44 41 54 41 36 34 3b 0d 0a _THUNK_DATA64;..
1db50 0d 0a 61 6c 69 67 6e 3a 0d 0a 0d 0a 73 74 72 75 ..align:....stru
1db60 63 74 20 5f 49 4d 41 47 45 5f 54 48 55 4e 4b 5f ct _IMAGE_THUNK_
1db70 44 41 54 41 33 32 20 7b 0d 0a 75 6e 69 6f 6e 20 DATA32 {..union
1db80 7b 0d 0a 20 20 44 57 4f 52 44 20 46 6f 72 77 61 {.. DWORD Forwa
1db90 72 64 65 72 53 74 72 69 6e 67 3b 0d 0a 20 20 44 rderString;.. D
1dba0 57 4f 52 44 20 46 75 6e 63 74 69 6f 6e 3b 0d 0a WORD Function;..
1dbb0 20 20 44 57 4f 52 44 20 4f 72 64 69 6e 61 6c 3b DWORD Ordinal;
1dbc0 0d 0a 20 20 44 57 4f 52 44 20 41 64 64 72 65 73 .. DWORD Addres
1dbd0 73 4f 66 44 61 74 61 3b 0d 0a 7d 0d 0a 0d 0a 7d sOfData;..}....}
1dbe0 0d 0a 61 6c 69 61 73 20 5f 49 4d 41 47 45 5f 54 ..alias _IMAGE_T
1dbf0 48 55 4e 4b 5f 44 41 54 41 33 32 20 49 4d 41 47 HUNK_DATA32 IMAG
1dc00 45 5f 54 48 55 4e 4b 5f 44 41 54 41 33 32 3b 0d E_THUNK_DATA32;.
1dc10 0a 0d 0a 61 6c 69 61 73 20 49 4d 41 47 45 5f 54 ...alias IMAGE_T
1dc20 48 55 4e 4b 5f 44 41 54 41 33 32 2a 20 50 49 4d HUNK_DATA32* PIM
1dc30 41 47 45 5f 54 48 55 4e 4b 5f 44 41 54 41 33 32 AGE_THUNK_DATA32
1dc40 3b 0d 0a 0d 0a 63 6f 6e 73 74 20 75 6c 6f 6e 67 ;....const ulong
1dc50 20 49 4d 41 47 45 5f 4f 52 44 49 4e 41 4c 5f 46 IMAGE_ORDINAL_F
1dc60 4c 41 47 36 34 20 3d 20 30 78 38 30 30 30 30 30 LAG64 = 0x800000
1dc70 30 30 30 30 30 30 30 30 30 30 3b 0d 0a 65 6e 75 0000000000;..enu
1dc80 6d 20 3a 20 75 69 6e 74 20 7b 20 49 4d 41 47 45 m : uint { IMAGE
1dc90 5f 4f 52 44 49 4e 41 4c 5f 46 4c 41 47 33 32 20 _ORDINAL_FLAG32
1dca0 3d 20 30 78 38 30 30 30 30 30 30 30 20 7d 0d 0a = 0x80000000 }..
1dcb0 75 6c 6f 6e 67 20 49 4d 41 47 45 5f 4f 52 44 49 ulong IMAGE_ORDI
1dcc0 4e 41 4c 36 34 28 75 6c 6f 6e 67 20 4f 72 64 69 NAL64(ulong Ordi
1dcd0 6e 61 6c 29 7b 20 72 65 74 75 72 6e 20 4f 72 64 nal){ return Ord
1dce0 69 6e 61 6c 20 26 20 30 78 66 66 66 66 3b 20 7d inal & 0xffff; }
1dcf0 0d 0a 75 69 6e 74 20 49 4d 41 47 45 5f 4f 52 44 ..uint IMAGE_ORD
1dd00 49 4e 41 4c 33 32 28 75 69 6e 74 20 4f 72 64 69 INAL32(uint Ordi
1dd10 6e 61 6c 29 7b 20 72 65 74 75 72 6e 20 4f 72 64 nal){ return Ord
1dd20 69 6e 61 6c 20 26 20 30 78 66 66 66 66 3b 20 7d inal & 0xffff; }
1dd30 0d 0a 62 69 74 20 49 4d 41 47 45 5f 53 4e 41 50 ..bit IMAGE_SNAP
1dd40 5f 42 59 5f 4f 52 44 49 4e 41 4c 36 34 28 75 6c _BY_ORDINAL64(ul
1dd50 6f 6e 67 20 4f 72 64 69 6e 61 6c 29 7b 20 72 65 ong Ordinal){ re
1dd60 74 75 72 6e 20 28 4f 72 64 69 6e 61 6c 20 26 20 turn (Ordinal &
1dd70 49 4d 41 47 45 5f 4f 52 44 49 4e 41 4c 5f 46 4c IMAGE_ORDINAL_FL
1dd80 41 47 36 34 29 20 21 3d 20 30 3b 20 7d 0d 0a 62 AG64) != 0; }..b
1dd90 69 74 20 49 4d 41 47 45 5f 53 4e 41 50 5f 42 59 it IMAGE_SNAP_BY
1dda0 5f 4f 52 44 49 4e 41 4c 33 32 28 75 69 6e 74 20 _ORDINAL32(uint
1ddb0 4f 72 64 69 6e 61 6c 29 7b 20 72 65 74 75 72 6e Ordinal){ return
1ddc0 20 28 4f 72 64 69 6e 61 6c 20 26 20 49 4d 41 47 (Ordinal & IMAG
1ddd0 45 5f 4f 52 44 49 4e 41 4c 5f 46 4c 41 47 33 32 E_ORDINAL_FLAG32
1dde0 29 20 21 3d 20 30 3b 20 7d 0d 0a 0d 0a 65 78 74 ) != 0; }....ext
1ddf0 65 72 6e 28 57 69 6e 64 6f 77 73 29 20 61 6c 69 ern(Windows) ali
1de00 61 73 20 56 4f 49 44 20 66 75 6e 63 74 69 6f 6e as VOID function
1de10 28 20 50 56 4f 49 44 20 44 6c 6c 48 61 6e 64 6c ( PVOID DllHandl
1de20 65 2c 20 44 57 4f 52 44 20 52 65 61 73 6f 6e 2c e, DWORD Reason,
1de30 20 50 56 4f 49 44 20 52 65 73 65 72 76 65 64 20 PVOID Reserved
1de40 29 20 50 49 4d 41 47 45 5f 54 4c 53 5f 43 41 4c ) PIMAGE_TLS_CAL
1de50 4c 42 41 43 4b 3b 0d 0a 0d 0a 73 74 72 75 63 74 LBACK;....struct
1de60 20 5f 49 4d 41 47 45 5f 54 4c 53 5f 44 49 52 45 _IMAGE_TLS_DIRE
1de70 43 54 4f 52 59 36 34 20 7b 0d 0a 20 20 55 4c 4f CTORY64 {.. ULO
1de80 4e 47 4c 4f 4e 47 20 53 74 61 72 74 41 64 64 72 NGLONG StartAddr
1de90 65 73 73 4f 66 52 61 77 44 61 74 61 3b 0d 0a 20 essOfRawData;..
1dea0 20 55 4c 4f 4e 47 4c 4f 4e 47 20 45 6e 64 41 64 ULONGLONG EndAd
1deb0 64 72 65 73 73 4f 66 52 61 77 44 61 74 61 3b 0d dressOfRawData;.
1dec0 0a 20 20 55 4c 4f 4e 47 4c 4f 4e 47 20 41 64 64 . ULONGLONG Add
1ded0 72 65 73 73 4f 66 49 6e 64 65 78 3b 0d 0a 20 20 ressOfIndex;..
1dee0 55 4c 4f 4e 47 4c 4f 4e 47 20 41 64 64 72 65 73 ULONGLONG Addres
1def0 73 4f 66 43 61 6c 6c 42 61 63 6b 73 3b 0d 0a 20 sOfCallBacks;..
1df00 20 44 57 4f 52 44 20 53 69 7a 65 4f 66 5a 65 72 DWORD SizeOfZer
1df10 6f 46 69 6c 6c 3b 0d 0a 20 20 44 57 4f 52 44 20 oFill;.. DWORD
1df20 43 68 61 72 61 63 74 65 72 69 73 74 69 63 73 3b Characteristics;
1df30 0d 0a 7d 0d 0a 61 6c 69 61 73 20 5f 49 4d 41 47 ..}..alias _IMAG
1df40 45 5f 54 4c 53 5f 44 49 52 45 43 54 4f 52 59 36 E_TLS_DIRECTORY6
1df50 34 20 49 4d 41 47 45 5f 54 4c 53 5f 44 49 52 45 4 IMAGE_TLS_DIRE
1df60 43 54 4f 52 59 36 34 3b 0d 0a 0d 0a 61 6c 69 61 CTORY64;....alia
1df70 73 20 49 4d 41 47 45 5f 54 4c 53 5f 44 49 52 45 s IMAGE_TLS_DIRE
1df80 43 54 4f 52 59 36 34 2a 20 50 49 4d 41 47 45 5f CTORY64* PIMAGE_
1df90 54 4c 53 5f 44 49 52 45 43 54 4f 52 59 36 34 3b TLS_DIRECTORY64;
1dfa0 0d 0a 0d 0a 73 74 72 75 63 74 20 5f 49 4d 41 47 ....struct _IMAG
1dfb0 45 5f 54 4c 53 5f 44 49 52 45 43 54 4f 52 59 33 E_TLS_DIRECTORY3
1dfc0 32 20 7b 0d 0a 20 20 44 57 4f 52 44 20 53 74 61 2 {.. DWORD Sta
1dfd0 72 74 41 64 64 72 65 73 73 4f 66 52 61 77 44 61 rtAddressOfRawDa
1dfe0 74 61 3b 0d 0a 20 20 44 57 4f 52 44 20 45 6e 64 ta;.. DWORD End
1dff0 41 64 64 72 65 73 73 4f 66 52 61 77 44 61 74 61 AddressOfRawData
1e000 3b 0d 0a 20 20 44 57 4f 52 44 20 41 64 64 72 65 ;.. DWORD Addre
1e010 73 73 4f 66 49 6e 64 65 78 3b 0d 0a 20 20 44 57 ssOfIndex;.. DW
1e020 4f 52 44 20 41 64 64 72 65 73 73 4f 66 43 61 6c ORD AddressOfCal
1e030 6c 42 61 63 6b 73 3b 0d 0a 20 20 44 57 4f 52 44 lBacks;.. DWORD
1e040 20 53 69 7a 65 4f 66 5a 65 72 6f 46 69 6c 6c 3b SizeOfZeroFill;
1e050 0d 0a 20 20 44 57 4f 52 44 20 43 68 61 72 61 63 .. DWORD Charac
1e060 74 65 72 69 73 74 69 63 73 3b 0d 0a 7d 0d 0a 61 teristics;..}..a
1e070 6c 69 61 73 20 5f 49 4d 41 47 45 5f 54 4c 53 5f lias _IMAGE_TLS_
1e080 44 49 52 45 43 54 4f 52 59 33 32 20 49 4d 41 47 DIRECTORY32 IMAG
1e090 45 5f 54 4c 53 5f 44 49 52 45 43 54 4f 52 59 33 E_TLS_DIRECTORY3
1e0a0 32 3b 0d 0a 0d 0a 61 6c 69 61 73 20 49 4d 41 47 2;....alias IMAG
1e0b0 45 5f 54 4c 53 5f 44 49 52 45 43 54 4f 52 59 33 E_TLS_DIRECTORY3
1e0c0 32 2a 20 50 49 4d 41 47 45 5f 54 4c 53 5f 44 49 2* PIMAGE_TLS_DI
1e0d0 52 45 43 54 4f 52 59 33 32 3b 0d 0a 0d 0a 2f 2f RECTORY32;....//
1e0e0 20 23 69 66 64 65 66 20 5f 57 49 4e 36 34 0d 0a #ifdef _WIN64..
1e0f0 2f 2f 20 23 2e 2e 2e 0d 0a 2f 2f 20 23 2e 2e 2e // #.....// #...
1e100 0d 0a 2f 2f 20 2e 2e 2e 0d 0a 2f 2f 20 23 2e 2e ..// .....// #..
1e110 2e 0d 0a 2f 2f 20 2e 2e 2e 0d 0a 2f 2f 20 23 65 ...// .....// #e
1e120 6c 73 65 0d 0a 61 6c 69 61 73 20 49 4d 41 47 45 lse..alias IMAGE
1e130 5f 4f 52 44 49 4e 41 4c 5f 46 4c 41 47 33 32 20 _ORDINAL_FLAG32
1e140 49 4d 41 47 45 5f 4f 52 44 49 4e 41 4c 5f 46 4c IMAGE_ORDINAL_FL
1e150 41 47 3b 0d 0a 61 6c 69 61 73 20 49 4d 41 47 45 AG;..alias IMAGE
1e160 5f 4f 52 44 49 4e 41 4c 33 32 20 49 4d 41 47 45 _ORDINAL32 IMAGE
1e170 5f 4f 52 44 49 4e 41 4c 3b 0d 0a 61 6c 69 61 73 _ORDINAL;..alias
1e180 20 49 4d 41 47 45 5f 54 48 55 4e 4b 5f 44 41 54 IMAGE_THUNK_DAT
1e190 41 33 32 20 49 4d 41 47 45 5f 54 48 55 4e 4b 5f A32 IMAGE_THUNK_
1e1a0 44 41 54 41 3b 0d 0a 61 6c 69 61 73 20 50 49 4d DATA;..alias PIM
1e1b0 41 47 45 5f 54 48 55 4e 4b 5f 44 41 54 41 33 32 AGE_THUNK_DATA32
1e1c0 20 50 49 4d 41 47 45 5f 54 48 55 4e 4b 5f 44 41 PIMAGE_THUNK_DA
1e1d0 54 41 3b 0d 0a 61 6c 69 61 73 20 49 4d 41 47 45 TA;..alias IMAGE
1e1e0 5f 53 4e 41 50 5f 42 59 5f 4f 52 44 49 4e 41 4c _SNAP_BY_ORDINAL
1e1f0 33 32 20 49 4d 41 47 45 5f 53 4e 41 50 5f 42 59 32 IMAGE_SNAP_BY
1e200 5f 4f 52 44 49 4e 41 4c 3b 0d 0a 61 6c 69 61 73 _ORDINAL;..alias
1e210 20 49 4d 41 47 45 5f 54 4c 53 5f 44 49 52 45 43 IMAGE_TLS_DIREC
1e220 54 4f 52 59 33 32 20 49 4d 41 47 45 5f 54 4c 53 TORY32 IMAGE_TLS
1e230 5f 44 49 52 45 43 54 4f 52 59 3b 0d 0a 61 6c 69 _DIRECTORY;..ali
1e240 61 73 20 50 49 4d 41 47 45 5f 54 4c 53 5f 44 49 as PIMAGE_TLS_DI
1e250 52 45 43 54 4f 52 59 33 32 20 50 49 4d 41 47 45 RECTORY32 PIMAGE
1e260 5f 54 4c 53 5f 44 49 52 45 43 54 4f 52 59 3b 0d _TLS_DIRECTORY;.
1e270 0a 2f 2f 20 23 65 6e 64 69 66 0d 0a 0d 0a 73 74 .// #endif....st
1e280 72 75 63 74 20 5f 49 4d 41 47 45 5f 49 4d 50 4f ruct _IMAGE_IMPO
1e290 52 54 5f 44 45 53 43 52 49 50 54 4f 52 20 7b 0d RT_DESCRIPTOR {.
1e2a0 0a 75 6e 69 6f 6e 20 7b 0d 0a 20 20 44 57 4f 52 .union {.. DWOR
1e2b0 44 20 43 68 61 72 61 63 74 65 72 69 73 74 69 63 D Characteristic
1e2c0 73 3b 0d 0a 20 20 44 57 4f 52 44 20 4f 72 69 67 s;.. DWORD Orig
1e2d0 69 6e 61 6c 46 69 72 73 74 54 68 75 6e 6b 3b 0d inalFirstThunk;.
1e2e0 0a 7d 0d 0a 0d 0a 20 20 44 57 4f 52 44 20 54 69 .}.... DWORD Ti
1e2f0 6d 65 44 61 74 65 53 74 61 6d 70 3b 0d 0a 0d 0a meDateStamp;....
1e300 20 20 44 57 4f 52 44 20 46 6f 72 77 61 72 64 65 DWORD Forwarde
1e310 72 43 68 61 69 6e 3b 0d 0a 20 20 44 57 4f 52 44 rChain;.. DWORD
1e320 20 4e 61 6d 65 3b 0d 0a 20 20 44 57 4f 52 44 20 Name;.. DWORD
1e330 46 69 72 73 74 54 68 75 6e 6b 3b 0d 0a 7d 0d 0a FirstThunk;..}..
1e340 61 6c 69 61 73 20 5f 49 4d 41 47 45 5f 49 4d 50 alias _IMAGE_IMP
1e350 4f 52 54 5f 44 45 53 43 52 49 50 54 4f 52 20 49 ORT_DESCRIPTOR I
1e360 4d 41 47 45 5f 49 4d 50 4f 52 54 5f 44 45 53 43 MAGE_IMPORT_DESC
1e370 52 49 50 54 4f 52 3b 0d 0a 0d 0a 61 6c 69 61 73 RIPTOR;....alias
1e380 20 49 4d 41 47 45 5f 49 4d 50 4f 52 54 5f 44 45 IMAGE_IMPORT_DE
1e390 53 43 52 49 50 54 4f 52 2a 20 50 49 4d 41 47 45 SCRIPTOR* PIMAGE
1e3a0 5f 49 4d 50 4f 52 54 5f 44 45 53 43 52 49 50 54 _IMPORT_DESCRIPT
1e3b0 4f 52 3b 0d 0a 0d 0a 73 74 72 75 63 74 20 5f 49 OR;....struct _I
1e3c0 4d 41 47 45 5f 42 4f 55 4e 44 5f 49 4d 50 4f 52 MAGE_BOUND_IMPOR
1e3d0 54 5f 44 45 53 43 52 49 50 54 4f 52 20 7b 0d 0a T_DESCRIPTOR {..
1e3e0 20 20 44 57 4f 52 44 20 54 69 6d 65 44 61 74 65 DWORD TimeDate
1e3f0 53 74 61 6d 70 3b 0d 0a 20 20 57 4f 52 44 20 4f Stamp;.. WORD O
1e400 66 66 73 65 74 4d 6f 64 75 6c 65 4e 61 6d 65 3b ffsetModuleName;
1e410 0d 0a 20 20 57 4f 52 44 20 4e 75 6d 62 65 72 4f .. WORD NumberO
1e420 66 4d 6f 64 75 6c 65 46 6f 72 77 61 72 64 65 72 fModuleForwarder
1e430 52 65 66 73 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 Refs;..}..alias
1e440 5f 49 4d 41 47 45 5f 42 4f 55 4e 44 5f 49 4d 50 _IMAGE_BOUND_IMP
1e450 4f 52 54 5f 44 45 53 43 52 49 50 54 4f 52 20 49 ORT_DESCRIPTOR I
1e460 4d 41 47 45 5f 42 4f 55 4e 44 5f 49 4d 50 4f 52 MAGE_BOUND_IMPOR
1e470 54 5f 44 45 53 43 52 49 50 54 4f 52 3b 0d 0a 61 T_DESCRIPTOR;..a
1e480 6c 69 61 73 20 5f 49 4d 41 47 45 5f 42 4f 55 4e lias _IMAGE_BOUN
1e490 44 5f 49 4d 50 4f 52 54 5f 44 45 53 43 52 49 50 D_IMPORT_DESCRIP
1e4a0 54 4f 52 2a 20 50 49 4d 41 47 45 5f 42 4f 55 4e TOR* PIMAGE_BOUN
1e4b0 44 5f 49 4d 50 4f 52 54 5f 44 45 53 43 52 49 50 D_IMPORT_DESCRIP
1e4c0 54 4f 52 3b 0d 0a 0d 0a 73 74 72 75 63 74 20 5f TOR;....struct _
1e4d0 49 4d 41 47 45 5f 42 4f 55 4e 44 5f 46 4f 52 57 IMAGE_BOUND_FORW
1e4e0 41 52 44 45 52 5f 52 45 46 20 7b 0d 0a 20 20 44 ARDER_REF {.. D
1e4f0 57 4f 52 44 20 54 69 6d 65 44 61 74 65 53 74 61 WORD TimeDateSta
1e500 6d 70 3b 0d 0a 20 20 57 4f 52 44 20 4f 66 66 73 mp;.. WORD Offs
1e510 65 74 4d 6f 64 75 6c 65 4e 61 6d 65 3b 0d 0a 20 etModuleName;..
1e520 20 57 4f 52 44 20 52 65 73 65 72 76 65 64 3b 0d WORD Reserved;.
1e530 0a 7d 0d 0a 61 6c 69 61 73 20 5f 49 4d 41 47 45 .}..alias _IMAGE
1e540 5f 42 4f 55 4e 44 5f 46 4f 52 57 41 52 44 45 52 _BOUND_FORWARDER
1e550 5f 52 45 46 20 49 4d 41 47 45 5f 42 4f 55 4e 44 _REF IMAGE_BOUND
1e560 5f 46 4f 52 57 41 52 44 45 52 5f 52 45 46 3b 0d _FORWARDER_REF;.
1e570 0a 61 6c 69 61 73 20 5f 49 4d 41 47 45 5f 42 4f .alias _IMAGE_BO
1e580 55 4e 44 5f 46 4f 52 57 41 52 44 45 52 5f 52 45 UND_FORWARDER_RE
1e590 46 2a 20 50 49 4d 41 47 45 5f 42 4f 55 4e 44 5f F* PIMAGE_BOUND_
1e5a0 46 4f 52 57 41 52 44 45 52 5f 52 45 46 3b 0d 0a FORWARDER_REF;..
1e5b0 0d 0a 73 74 72 75 63 74 20 5f 49 4d 41 47 45 5f ..struct _IMAGE_
1e5c0 52 45 53 4f 55 52 43 45 5f 44 49 52 45 43 54 4f RESOURCE_DIRECTO
1e5d0 52 59 20 7b 0d 0a 20 20 44 57 4f 52 44 20 43 68 RY {.. DWORD Ch
1e5e0 61 72 61 63 74 65 72 69 73 74 69 63 73 3b 0d 0a aracteristics;..
1e5f0 20 20 44 57 4f 52 44 20 54 69 6d 65 44 61 74 65 DWORD TimeDate
1e600 53 74 61 6d 70 3b 0d 0a 20 20 57 4f 52 44 20 4d Stamp;.. WORD M
1e610 61 6a 6f 72 56 65 72 73 69 6f 6e 3b 0d 0a 20 20 ajorVersion;..
1e620 57 4f 52 44 20 4d 69 6e 6f 72 56 65 72 73 69 6f WORD MinorVersio
1e630 6e 3b 0d 0a 20 20 57 4f 52 44 20 4e 75 6d 62 65 n;.. WORD Numbe
1e640 72 4f 66 4e 61 6d 65 64 45 6e 74 72 69 65 73 3b rOfNamedEntries;
1e650 0d 0a 20 20 57 4f 52 44 20 4e 75 6d 62 65 72 4f .. WORD NumberO
1e660 66 49 64 45 6e 74 72 69 65 73 3b 0d 0a 7d 0d 0a fIdEntries;..}..
1e670 61 6c 69 61 73 20 5f 49 4d 41 47 45 5f 52 45 53 alias _IMAGE_RES
1e680 4f 55 52 43 45 5f 44 49 52 45 43 54 4f 52 59 20 OURCE_DIRECTORY
1e690 49 4d 41 47 45 5f 52 45 53 4f 55 52 43 45 5f 44 IMAGE_RESOURCE_D
1e6a0 49 52 45 43 54 4f 52 59 3b 0d 0a 61 6c 69 61 73 IRECTORY;..alias
1e6b0 20 5f 49 4d 41 47 45 5f 52 45 53 4f 55 52 43 45 _IMAGE_RESOURCE
1e6c0 5f 44 49 52 45 43 54 4f 52 59 2a 20 50 49 4d 41 _DIRECTORY* PIMA
1e6d0 47 45 5f 52 45 53 4f 55 52 43 45 5f 44 49 52 45 GE_RESOURCE_DIRE
1e6e0 43 54 4f 52 59 3b 0d 0a 0d 0a 65 6e 75 6d 20 3a CTORY;....enum :
1e6f0 20 75 69 6e 74 20 7b 20 49 4d 41 47 45 5f 52 45 uint { IMAGE_RE
1e700 53 4f 55 52 43 45 5f 4e 41 4d 45 5f 49 53 5f 53 SOURCE_NAME_IS_S
1e710 54 52 49 4e 47 20 3d 20 30 78 38 30 30 30 30 30 TRING = 0x800000
1e720 30 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 00 }..enum : uin
1e730 74 20 7b 20 49 4d 41 47 45 5f 52 45 53 4f 55 52 t { IMAGE_RESOUR
1e740 43 45 5f 44 41 54 41 5f 49 53 5f 44 49 52 45 43 CE_DATA_IS_DIREC
1e750 54 4f 52 59 20 3d 20 30 78 38 30 30 30 30 30 30 TORY = 0x8000000
1e760 30 20 7d 0d 0a 0d 0a 73 74 72 75 63 74 20 5f 49 0 }....struct _I
1e770 4d 41 47 45 5f 52 45 53 4f 55 52 43 45 5f 44 49 MAGE_RESOURCE_DI
1e780 52 45 43 54 4f 52 59 5f 45 4e 54 52 59 20 7b 0d RECTORY_ENTRY {.
1e790 0a 75 6e 69 6f 6e 20 7b 0d 0a 73 74 72 75 63 74 .union {..struct
1e7a0 20 7b 0d 0a 2f 2f 20 44 57 4f 52 44 20 4e 61 6d {..// DWORD Nam
1e7b0 65 4f 66 66 73 65 74 3a 33 31 3b 0d 0a 2f 2f 20 eOffset:31;..//
1e7c0 44 57 4f 52 44 20 4e 61 6d 65 49 73 53 74 72 69 DWORD NameIsStri
1e7d0 6e 67 3a 31 3b 0d 0a 7d 0d 0a 0d 0a 20 20 44 57 ng:1;..}.... DW
1e7e0 4f 52 44 20 4e 61 6d 65 3b 0d 0a 20 20 57 4f 52 ORD Name;.. WOR
1e7f0 44 20 49 64 3b 0d 0a 7d 0d 0a 0d 0a 75 6e 69 6f D Id;..}....unio
1e800 6e 20 7b 0d 0a 20 20 44 57 4f 52 44 20 4f 66 66 n {.. DWORD Off
1e810 73 65 74 54 6f 44 61 74 61 3b 0d 0a 73 74 72 75 setToData;..stru
1e820 63 74 20 7b 0d 0a 2f 2f 20 44 57 4f 52 44 20 20 ct {..// DWORD
1e830 20 4f 66 66 73 65 74 54 6f 44 69 72 65 63 74 6f OffsetToDirecto
1e840 72 79 3a 33 31 3b 0d 0a 2f 2f 20 44 57 4f 52 44 ry:31;..// DWORD
1e850 20 20 20 44 61 74 61 49 73 44 69 72 65 63 74 6f DataIsDirecto
1e860 72 79 3a 31 3b 0d 0a 7d 0d 0a 0d 0a 7d 0d 0a 0d ry:1;..}....}...
1e870 0a 7d 0d 0a 61 6c 69 61 73 20 5f 49 4d 41 47 45 .}..alias _IMAGE
1e880 5f 52 45 53 4f 55 52 43 45 5f 44 49 52 45 43 54 _RESOURCE_DIRECT
1e890 4f 52 59 5f 45 4e 54 52 59 20 49 4d 41 47 45 5f ORY_ENTRY IMAGE_
1e8a0 52 45 53 4f 55 52 43 45 5f 44 49 52 45 43 54 4f RESOURCE_DIRECTO
1e8b0 52 59 5f 45 4e 54 52 59 3b 0d 0a 61 6c 69 61 73 RY_ENTRY;..alias
1e8c0 20 5f 49 4d 41 47 45 5f 52 45 53 4f 55 52 43 45 _IMAGE_RESOURCE
1e8d0 5f 44 49 52 45 43 54 4f 52 59 5f 45 4e 54 52 59 _DIRECTORY_ENTRY
1e8e0 2a 20 50 49 4d 41 47 45 5f 52 45 53 4f 55 52 43 * PIMAGE_RESOURC
1e8f0 45 5f 44 49 52 45 43 54 4f 52 59 5f 45 4e 54 52 E_DIRECTORY_ENTR
1e900 59 3b 0d 0a 0d 0a 73 74 72 75 63 74 20 5f 49 4d Y;....struct _IM
1e910 41 47 45 5f 52 45 53 4f 55 52 43 45 5f 44 49 52 AGE_RESOURCE_DIR
1e920 45 43 54 4f 52 59 5f 53 54 52 49 4e 47 20 7b 0d ECTORY_STRING {.
1e930 0a 20 20 57 4f 52 44 20 4c 65 6e 67 74 68 3b 0d . WORD Length;.
1e940 0a 20 20 43 48 41 52 20 4e 61 6d 65 53 74 72 69 . CHAR NameStri
1e950 6e 67 5b 20 31 20 5d 3b 0d 0a 7d 0d 0a 61 6c 69 ng[ 1 ];..}..ali
1e960 61 73 20 5f 49 4d 41 47 45 5f 52 45 53 4f 55 52 as _IMAGE_RESOUR
1e970 43 45 5f 44 49 52 45 43 54 4f 52 59 5f 53 54 52 CE_DIRECTORY_STR
1e980 49 4e 47 20 49 4d 41 47 45 5f 52 45 53 4f 55 52 ING IMAGE_RESOUR
1e990 43 45 5f 44 49 52 45 43 54 4f 52 59 5f 53 54 52 CE_DIRECTORY_STR
1e9a0 49 4e 47 3b 0d 0a 61 6c 69 61 73 20 5f 49 4d 41 ING;..alias _IMA
1e9b0 47 45 5f 52 45 53 4f 55 52 43 45 5f 44 49 52 45 GE_RESOURCE_DIRE
1e9c0 43 54 4f 52 59 5f 53 54 52 49 4e 47 2a 20 50 49 CTORY_STRING* PI
1e9d0 4d 41 47 45 5f 52 45 53 4f 55 52 43 45 5f 44 49 MAGE_RESOURCE_DI
1e9e0 52 45 43 54 4f 52 59 5f 53 54 52 49 4e 47 3b 0d RECTORY_STRING;.
1e9f0 0a 0d 0a 73 74 72 75 63 74 20 5f 49 4d 41 47 45 ...struct _IMAGE
1ea00 5f 52 45 53 4f 55 52 43 45 5f 44 49 52 5f 53 54 _RESOURCE_DIR_ST
1ea10 52 49 4e 47 5f 55 20 7b 0d 0a 20 20 57 4f 52 44 RING_U {.. WORD
1ea20 20 4c 65 6e 67 74 68 3b 0d 0a 20 20 57 43 48 41 Length;.. WCHA
1ea30 52 20 4e 61 6d 65 53 74 72 69 6e 67 5b 20 31 20 R NameString[ 1
1ea40 5d 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 5f 49 4d ];..}..alias _IM
1ea50 41 47 45 5f 52 45 53 4f 55 52 43 45 5f 44 49 52 AGE_RESOURCE_DIR
1ea60 5f 53 54 52 49 4e 47 5f 55 20 49 4d 41 47 45 5f _STRING_U IMAGE_
1ea70 52 45 53 4f 55 52 43 45 5f 44 49 52 5f 53 54 52 RESOURCE_DIR_STR
1ea80 49 4e 47 5f 55 3b 0d 0a 61 6c 69 61 73 20 5f 49 ING_U;..alias _I
1ea90 4d 41 47 45 5f 52 45 53 4f 55 52 43 45 5f 44 49 MAGE_RESOURCE_DI
1eaa0 52 5f 53 54 52 49 4e 47 5f 55 2a 20 50 49 4d 41 R_STRING_U* PIMA
1eab0 47 45 5f 52 45 53 4f 55 52 43 45 5f 44 49 52 5f GE_RESOURCE_DIR_
1eac0 53 54 52 49 4e 47 5f 55 3b 0d 0a 0d 0a 73 74 72 STRING_U;....str
1ead0 75 63 74 20 5f 49 4d 41 47 45 5f 52 45 53 4f 55 uct _IMAGE_RESOU
1eae0 52 43 45 5f 44 41 54 41 5f 45 4e 54 52 59 20 7b RCE_DATA_ENTRY {
1eaf0 0d 0a 20 20 44 57 4f 52 44 20 4f 66 66 73 65 74 .. DWORD Offset
1eb00 54 6f 44 61 74 61 3b 0d 0a 20 20 44 57 4f 52 44 ToData;.. DWORD
1eb10 20 53 69 7a 65 3b 0d 0a 20 20 44 57 4f 52 44 20 Size;.. DWORD
1eb20 43 6f 64 65 50 61 67 65 3b 0d 0a 20 20 44 57 4f CodePage;.. DWO
1eb30 52 44 20 52 65 73 65 72 76 65 64 3b 0d 0a 7d 0d RD Reserved;..}.
1eb40 0a 61 6c 69 61 73 20 5f 49 4d 41 47 45 5f 52 45 .alias _IMAGE_RE
1eb50 53 4f 55 52 43 45 5f 44 41 54 41 5f 45 4e 54 52 SOURCE_DATA_ENTR
1eb60 59 20 49 4d 41 47 45 5f 52 45 53 4f 55 52 43 45 Y IMAGE_RESOURCE
1eb70 5f 44 41 54 41 5f 45 4e 54 52 59 3b 0d 0a 61 6c _DATA_ENTRY;..al
1eb80 69 61 73 20 5f 49 4d 41 47 45 5f 52 45 53 4f 55 ias _IMAGE_RESOU
1eb90 52 43 45 5f 44 41 54 41 5f 45 4e 54 52 59 2a 20 RCE_DATA_ENTRY*
1eba0 50 49 4d 41 47 45 5f 52 45 53 4f 55 52 43 45 5f PIMAGE_RESOURCE_
1ebb0 44 41 54 41 5f 45 4e 54 52 59 3b 0d 0a 0d 0a 73 DATA_ENTRY;....s
1ebc0 74 72 75 63 74 20 5f 31 32 20 7b 0d 0a 20 20 44 truct _12 {.. D
1ebd0 57 4f 52 44 20 43 68 61 72 61 63 74 65 72 69 73 WORD Characteris
1ebe0 74 69 63 73 3b 0d 0a 20 20 44 57 4f 52 44 20 54 tics;.. DWORD T
1ebf0 69 6d 65 44 61 74 65 53 74 61 6d 70 3b 0d 0a 20 imeDateStamp;..
1ec00 20 57 4f 52 44 20 4d 61 6a 6f 72 56 65 72 73 69 WORD MajorVersi
1ec10 6f 6e 3b 0d 0a 20 20 57 4f 52 44 20 4d 69 6e 6f on;.. WORD Mino
1ec20 72 56 65 72 73 69 6f 6e 3b 0d 0a 20 20 44 57 4f rVersion;.. DWO
1ec30 52 44 20 47 6c 6f 62 61 6c 46 6c 61 67 73 43 6c RD GlobalFlagsCl
1ec40 65 61 72 3b 0d 0a 20 20 44 57 4f 52 44 20 47 6c ear;.. DWORD Gl
1ec50 6f 62 61 6c 46 6c 61 67 73 53 65 74 3b 0d 0a 20 obalFlagsSet;..
1ec60 20 44 57 4f 52 44 20 43 72 69 74 69 63 61 6c 53 DWORD CriticalS
1ec70 65 63 74 69 6f 6e 44 65 66 61 75 6c 74 54 69 6d ectionDefaultTim
1ec80 65 6f 75 74 3b 0d 0a 20 20 44 57 4f 52 44 20 44 eout;.. DWORD D
1ec90 65 43 6f 6d 6d 69 74 46 72 65 65 42 6c 6f 63 6b eCommitFreeBlock
1eca0 54 68 72 65 73 68 6f 6c 64 3b 0d 0a 20 20 44 57 Threshold;.. DW
1ecb0 4f 52 44 20 44 65 43 6f 6d 6d 69 74 54 6f 74 61 ORD DeCommitTota
1ecc0 6c 46 72 65 65 54 68 72 65 73 68 6f 6c 64 3b 0d lFreeThreshold;.
1ecd0 0a 20 20 44 57 4f 52 44 20 4c 6f 63 6b 50 72 65 . DWORD LockPre
1ece0 66 69 78 54 61 62 6c 65 3b 0d 0a 20 20 44 57 4f fixTable;.. DWO
1ecf0 52 44 20 4d 61 78 69 6d 75 6d 41 6c 6c 6f 63 61 RD MaximumAlloca
1ed00 74 69 6f 6e 53 69 7a 65 3b 0d 0a 20 20 44 57 4f tionSize;.. DWO
1ed10 52 44 20 56 69 72 74 75 61 6c 4d 65 6d 6f 72 79 RD VirtualMemory
1ed20 54 68 72 65 73 68 6f 6c 64 3b 0d 0a 20 20 44 57 Threshold;.. DW
1ed30 4f 52 44 20 50 72 6f 63 65 73 73 48 65 61 70 46 ORD ProcessHeapF
1ed40 6c 61 67 73 3b 0d 0a 20 20 44 57 4f 52 44 20 50 lags;.. DWORD P
1ed50 72 6f 63 65 73 73 41 66 66 69 6e 69 74 79 4d 61 rocessAffinityMa
1ed60 73 6b 3b 0d 0a 20 20 57 4f 52 44 20 43 53 44 56 sk;.. WORD CSDV
1ed70 65 72 73 69 6f 6e 3b 0d 0a 20 20 57 4f 52 44 20 ersion;.. WORD
1ed80 52 65 73 65 72 76 65 64 31 3b 0d 0a 20 20 44 57 Reserved1;.. DW
1ed90 4f 52 44 20 45 64 69 74 4c 69 73 74 3b 0d 0a 20 ORD EditList;..
1eda0 20 44 57 4f 52 44 20 52 65 73 65 72 76 65 64 5b DWORD Reserved[
1edb0 20 31 20 5d 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 1 ];..}..alias
1edc0 5f 31 32 20 49 4d 41 47 45 5f 4c 4f 41 44 5f 43 _12 IMAGE_LOAD_C
1edd0 4f 4e 46 49 47 5f 44 49 52 45 43 54 4f 52 59 33 ONFIG_DIRECTORY3
1ede0 32 3b 0d 0a 61 6c 69 61 73 20 5f 31 32 2a 20 50 2;..alias _12* P
1edf0 49 4d 41 47 45 5f 4c 4f 41 44 5f 43 4f 4e 46 49 IMAGE_LOAD_CONFI
1ee00 47 5f 44 49 52 45 43 54 4f 52 59 33 32 3b 0d 0a G_DIRECTORY32;..
1ee10 0d 0a 73 74 72 75 63 74 20 5f 31 33 20 7b 0d 0a ..struct _13 {..
1ee20 20 20 44 57 4f 52 44 20 43 68 61 72 61 63 74 65 DWORD Characte
1ee30 72 69 73 74 69 63 73 3b 0d 0a 20 20 44 57 4f 52 ristics;.. DWOR
1ee40 44 20 54 69 6d 65 44 61 74 65 53 74 61 6d 70 3b D TimeDateStamp;
1ee50 0d 0a 20 20 57 4f 52 44 20 4d 61 6a 6f 72 56 65 .. WORD MajorVe
1ee60 72 73 69 6f 6e 3b 0d 0a 20 20 57 4f 52 44 20 4d rsion;.. WORD M
1ee70 69 6e 6f 72 56 65 72 73 69 6f 6e 3b 0d 0a 20 20 inorVersion;..
1ee80 44 57 4f 52 44 20 47 6c 6f 62 61 6c 46 6c 61 67 DWORD GlobalFlag
1ee90 73 43 6c 65 61 72 3b 0d 0a 20 20 44 57 4f 52 44 sClear;.. DWORD
1eea0 20 47 6c 6f 62 61 6c 46 6c 61 67 73 53 65 74 3b GlobalFlagsSet;
1eeb0 0d 0a 20 20 44 57 4f 52 44 20 43 72 69 74 69 63 .. DWORD Critic
1eec0 61 6c 53 65 63 74 69 6f 6e 44 65 66 61 75 6c 74 alSectionDefault
1eed0 54 69 6d 65 6f 75 74 3b 0d 0a 20 20 55 4c 4f 4e Timeout;.. ULON
1eee0 47 4c 4f 4e 47 20 44 65 43 6f 6d 6d 69 74 46 72 GLONG DeCommitFr
1eef0 65 65 42 6c 6f 63 6b 54 68 72 65 73 68 6f 6c 64 eeBlockThreshold
1ef00 3b 0d 0a 20 20 55 4c 4f 4e 47 4c 4f 4e 47 20 44 ;.. ULONGLONG D
1ef10 65 43 6f 6d 6d 69 74 54 6f 74 61 6c 46 72 65 65 eCommitTotalFree
1ef20 54 68 72 65 73 68 6f 6c 64 3b 0d 0a 20 20 55 4c Threshold;.. UL
1ef30 4f 4e 47 4c 4f 4e 47 20 4c 6f 63 6b 50 72 65 66 ONGLONG LockPref
1ef40 69 78 54 61 62 6c 65 3b 0d 0a 20 20 55 4c 4f 4e ixTable;.. ULON
1ef50 47 4c 4f 4e 47 20 4d 61 78 69 6d 75 6d 41 6c 6c GLONG MaximumAll
1ef60 6f 63 61 74 69 6f 6e 53 69 7a 65 3b 0d 0a 20 20 ocationSize;..
1ef70 55 4c 4f 4e 47 4c 4f 4e 47 20 56 69 72 74 75 61 ULONGLONG Virtua
1ef80 6c 4d 65 6d 6f 72 79 54 68 72 65 73 68 6f 6c 64 lMemoryThreshold
1ef90 3b 0d 0a 20 20 55 4c 4f 4e 47 4c 4f 4e 47 20 50 ;.. ULONGLONG P
1efa0 72 6f 63 65 73 73 41 66 66 69 6e 69 74 79 4d 61 rocessAffinityMa
1efb0 73 6b 3b 0d 0a 20 20 44 57 4f 52 44 20 50 72 6f sk;.. DWORD Pro
1efc0 63 65 73 73 48 65 61 70 46 6c 61 67 73 3b 0d 0a cessHeapFlags;..
1efd0 20 20 57 4f 52 44 20 43 53 44 56 65 72 73 69 6f WORD CSDVersio
1efe0 6e 3b 0d 0a 20 20 57 4f 52 44 20 52 65 73 65 72 n;.. WORD Reser
1eff0 76 65 64 31 3b 0d 0a 20 20 55 4c 4f 4e 47 4c 4f ved1;.. ULONGLO
1f000 4e 47 20 45 64 69 74 4c 69 73 74 3b 0d 0a 20 20 NG EditList;..
1f010 44 57 4f 52 44 20 52 65 73 65 72 76 65 64 5b 20 DWORD Reserved[
1f020 32 20 5d 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 5f 2 ];..}..alias _
1f030 31 33 20 49 4d 41 47 45 5f 4c 4f 41 44 5f 43 4f 13 IMAGE_LOAD_CO
1f040 4e 46 49 47 5f 44 49 52 45 43 54 4f 52 59 36 34 NFIG_DIRECTORY64
1f050 3b 0d 0a 61 6c 69 61 73 20 5f 31 33 2a 20 50 49 ;..alias _13* PI
1f060 4d 41 47 45 5f 4c 4f 41 44 5f 43 4f 4e 46 49 47 MAGE_LOAD_CONFIG
1f070 5f 44 49 52 45 43 54 4f 52 59 36 34 3b 0d 0a 0d _DIRECTORY64;...
1f080 0a 2f 2f 20 23 69 66 64 65 66 20 5f 57 49 4e 36 .// #ifdef _WIN6
1f090 34 0d 0a 2f 2f 20 2e 2e 2e 0d 0a 2f 2f 20 23 65 4..// .....// #e
1f0a0 6c 73 65 0d 0a 61 6c 69 61 73 20 49 4d 41 47 45 lse..alias IMAGE
1f0b0 5f 4c 4f 41 44 5f 43 4f 4e 46 49 47 5f 44 49 52 _LOAD_CONFIG_DIR
1f0c0 45 43 54 4f 52 59 33 32 20 49 4d 41 47 45 5f 4c ECTORY32 IMAGE_L
1f0d0 4f 41 44 5f 43 4f 4e 46 49 47 5f 44 49 52 45 43 OAD_CONFIG_DIREC
1f0e0 54 4f 52 59 3b 0d 0a 61 6c 69 61 73 20 50 49 4d TORY;..alias PIM
1f0f0 41 47 45 5f 4c 4f 41 44 5f 43 4f 4e 46 49 47 5f AGE_LOAD_CONFIG_
1f100 44 49 52 45 43 54 4f 52 59 33 32 20 50 49 4d 41 DIRECTORY32 PIMA
1f110 47 45 5f 4c 4f 41 44 5f 43 4f 4e 46 49 47 5f 44 GE_LOAD_CONFIG_D
1f120 49 52 45 43 54 4f 52 59 3b 0d 0a 2f 2f 20 23 65 IRECTORY;..// #e
1f130 6e 64 69 66 0d 0a 0d 0a 73 74 72 75 63 74 20 5f ndif....struct _
1f140 49 4d 41 47 45 5f 43 45 5f 52 55 4e 54 49 4d 45 IMAGE_CE_RUNTIME
1f150 5f 46 55 4e 43 54 49 4f 4e 5f 45 4e 54 52 59 20 _FUNCTION_ENTRY
1f160 7b 0d 0a 20 20 44 57 4f 52 44 20 46 75 6e 63 53 {.. DWORD FuncS
1f170 74 61 72 74 3b 0d 0a 2f 2f 20 44 57 4f 52 44 20 tart;..// DWORD
1f180 50 72 6f 6c 6f 67 4c 65 6e 20 3a 20 38 3b 0d 0a PrologLen : 8;..
1f190 2f 2f 20 44 57 4f 52 44 20 46 75 6e 63 4c 65 6e // DWORD FuncLen
1f1a0 20 3a 20 32 32 3b 0d 0a 2f 2f 20 44 57 4f 52 44 : 22;..// DWORD
1f1b0 20 54 68 69 72 74 79 54 77 6f 42 69 74 20 3a 20 ThirtyTwoBit :
1f1c0 31 3b 0d 0a 2f 2f 20 44 57 4f 52 44 20 45 78 63 1;..// DWORD Exc
1f1d0 65 70 74 69 6f 6e 46 6c 61 67 20 3a 20 31 3b 0d eptionFlag : 1;.
1f1e0 0a 7d 0d 0a 61 6c 69 61 73 20 5f 49 4d 41 47 45 .}..alias _IMAGE
1f1f0 5f 43 45 5f 52 55 4e 54 49 4d 45 5f 46 55 4e 43 _CE_RUNTIME_FUNC
1f200 54 49 4f 4e 5f 45 4e 54 52 59 20 49 4d 41 47 45 TION_ENTRY IMAGE
1f210 5f 43 45 5f 52 55 4e 54 49 4d 45 5f 46 55 4e 43 _CE_RUNTIME_FUNC
1f220 54 49 4f 4e 5f 45 4e 54 52 59 3b 0d 0a 61 6c 69 TION_ENTRY;..ali
1f230 61 73 20 5f 49 4d 41 47 45 5f 43 45 5f 52 55 4e as _IMAGE_CE_RUN
1f240 54 49 4d 45 5f 46 55 4e 43 54 49 4f 4e 5f 45 4e TIME_FUNCTION_EN
1f250 54 52 59 2a 20 50 49 4d 41 47 45 5f 43 45 5f 52 TRY* PIMAGE_CE_R
1f260 55 4e 54 49 4d 45 5f 46 55 4e 43 54 49 4f 4e 5f UNTIME_FUNCTION_
1f270 45 4e 54 52 59 3b 0d 0a 0d 0a 73 74 72 75 63 74 ENTRY;....struct
1f280 20 5f 49 4d 41 47 45 5f 41 4c 50 48 41 36 34 5f _IMAGE_ALPHA64_
1f290 52 55 4e 54 49 4d 45 5f 46 55 4e 43 54 49 4f 4e RUNTIME_FUNCTION
1f2a0 5f 45 4e 54 52 59 20 7b 0d 0a 20 20 55 4c 4f 4e _ENTRY {.. ULON
1f2b0 47 4c 4f 4e 47 20 42 65 67 69 6e 41 64 64 72 65 GLONG BeginAddre
1f2c0 73 73 3b 0d 0a 20 20 55 4c 4f 4e 47 4c 4f 4e 47 ss;.. ULONGLONG
1f2d0 20 45 6e 64 41 64 64 72 65 73 73 3b 0d 0a 20 20 EndAddress;..
1f2e0 55 4c 4f 4e 47 4c 4f 4e 47 20 45 78 63 65 70 74 ULONGLONG Except
1f2f0 69 6f 6e 48 61 6e 64 6c 65 72 3b 0d 0a 20 20 55 ionHandler;.. U
1f300 4c 4f 4e 47 4c 4f 4e 47 20 48 61 6e 64 6c 65 72 LONGLONG Handler
1f310 44 61 74 61 3b 0d 0a 20 20 55 4c 4f 4e 47 4c 4f Data;.. ULONGLO
1f320 4e 47 20 50 72 6f 6c 6f 67 45 6e 64 41 64 64 72 NG PrologEndAddr
1f330 65 73 73 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 5f ess;..}..alias _
1f340 49 4d 41 47 45 5f 41 4c 50 48 41 36 34 5f 52 55 IMAGE_ALPHA64_RU
1f350 4e 54 49 4d 45 5f 46 55 4e 43 54 49 4f 4e 5f 45 NTIME_FUNCTION_E
1f360 4e 54 52 59 20 49 4d 41 47 45 5f 41 4c 50 48 41 NTRY IMAGE_ALPHA
1f370 36 34 5f 52 55 4e 54 49 4d 45 5f 46 55 4e 43 54 64_RUNTIME_FUNCT
1f380 49 4f 4e 5f 45 4e 54 52 59 3b 0d 0a 61 6c 69 61 ION_ENTRY;..alia
1f390 73 20 5f 49 4d 41 47 45 5f 41 4c 50 48 41 36 34 s _IMAGE_ALPHA64
1f3a0 5f 52 55 4e 54 49 4d 45 5f 46 55 4e 43 54 49 4f _RUNTIME_FUNCTIO
1f3b0 4e 5f 45 4e 54 52 59 2a 20 50 49 4d 41 47 45 5f N_ENTRY* PIMAGE_
1f3c0 41 4c 50 48 41 36 34 5f 52 55 4e 54 49 4d 45 5f ALPHA64_RUNTIME_
1f3d0 46 55 4e 43 54 49 4f 4e 5f 45 4e 54 52 59 3b 0d FUNCTION_ENTRY;.
1f3e0 0a 0d 0a 73 74 72 75 63 74 20 5f 49 4d 41 47 45 ...struct _IMAGE
1f3f0 5f 41 4c 50 48 41 5f 52 55 4e 54 49 4d 45 5f 46 _ALPHA_RUNTIME_F
1f400 55 4e 43 54 49 4f 4e 5f 45 4e 54 52 59 20 7b 0d UNCTION_ENTRY {.
1f410 0a 20 20 44 57 4f 52 44 20 42 65 67 69 6e 41 64 . DWORD BeginAd
1f420 64 72 65 73 73 3b 0d 0a 20 20 44 57 4f 52 44 20 dress;.. DWORD
1f430 45 6e 64 41 64 64 72 65 73 73 3b 0d 0a 20 20 44 EndAddress;.. D
1f440 57 4f 52 44 20 45 78 63 65 70 74 69 6f 6e 48 61 WORD ExceptionHa
1f450 6e 64 6c 65 72 3b 0d 0a 20 20 44 57 4f 52 44 20 ndler;.. DWORD
1f460 48 61 6e 64 6c 65 72 44 61 74 61 3b 0d 0a 20 20 HandlerData;..
1f470 44 57 4f 52 44 20 50 72 6f 6c 6f 67 45 6e 64 41 DWORD PrologEndA
1f480 64 64 72 65 73 73 3b 0d 0a 7d 0d 0a 61 6c 69 61 ddress;..}..alia
1f490 73 20 5f 49 4d 41 47 45 5f 41 4c 50 48 41 5f 52 s _IMAGE_ALPHA_R
1f4a0 55 4e 54 49 4d 45 5f 46 55 4e 43 54 49 4f 4e 5f UNTIME_FUNCTION_
1f4b0 45 4e 54 52 59 20 49 4d 41 47 45 5f 41 4c 50 48 ENTRY IMAGE_ALPH
1f4c0 41 5f 52 55 4e 54 49 4d 45 5f 46 55 4e 43 54 49 A_RUNTIME_FUNCTI
1f4d0 4f 4e 5f 45 4e 54 52 59 3b 0d 0a 61 6c 69 61 73 ON_ENTRY;..alias
1f4e0 20 5f 49 4d 41 47 45 5f 41 4c 50 48 41 5f 52 55 _IMAGE_ALPHA_RU
1f4f0 4e 54 49 4d 45 5f 46 55 4e 43 54 49 4f 4e 5f 45 NTIME_FUNCTION_E
1f500 4e 54 52 59 2a 20 50 49 4d 41 47 45 5f 41 4c 50 NTRY* PIMAGE_ALP
1f510 48 41 5f 52 55 4e 54 49 4d 45 5f 46 55 4e 43 54 HA_RUNTIME_FUNCT
1f520 49 4f 4e 5f 45 4e 54 52 59 3b 0d 0a 0d 0a 73 74 ION_ENTRY;....st
1f530 72 75 63 74 20 5f 49 4d 41 47 45 5f 52 55 4e 54 ruct _IMAGE_RUNT
1f540 49 4d 45 5f 46 55 4e 43 54 49 4f 4e 5f 45 4e 54 IME_FUNCTION_ENT
1f550 52 59 20 7b 0d 0a 20 20 44 57 4f 52 44 20 42 65 RY {.. DWORD Be
1f560 67 69 6e 41 64 64 72 65 73 73 3b 0d 0a 20 20 44 ginAddress;.. D
1f570 57 4f 52 44 20 45 6e 64 41 64 64 72 65 73 73 3b WORD EndAddress;
1f580 0d 0a 20 20 44 57 4f 52 44 20 55 6e 77 69 6e 64 .. DWORD Unwind
1f590 49 6e 66 6f 41 64 64 72 65 73 73 3b 0d 0a 7d 0d InfoAddress;..}.
1f5a0 0a 61 6c 69 61 73 20 5f 49 4d 41 47 45 5f 52 55 .alias _IMAGE_RU
1f5b0 4e 54 49 4d 45 5f 46 55 4e 43 54 49 4f 4e 5f 45 NTIME_FUNCTION_E
1f5c0 4e 54 52 59 2a 20 5f 50 49 4d 41 47 45 5f 52 55 NTRY* _PIMAGE_RU
1f5d0 4e 54 49 4d 45 5f 46 55 4e 43 54 49 4f 4e 5f 45 NTIME_FUNCTION_E
1f5e0 4e 54 52 59 3b 0d 0a 0d 0a 61 6c 69 61 73 20 5f NTRY;....alias _
1f5f0 49 4d 41 47 45 5f 52 55 4e 54 49 4d 45 5f 46 55 IMAGE_RUNTIME_FU
1f600 4e 43 54 49 4f 4e 5f 45 4e 54 52 59 20 49 4d 41 NCTION_ENTRY IMA
1f610 47 45 5f 49 41 36 34 5f 52 55 4e 54 49 4d 45 5f GE_IA64_RUNTIME_
1f620 46 55 4e 43 54 49 4f 4e 5f 45 4e 54 52 59 3b 0d FUNCTION_ENTRY;.
1f630 0a 61 6c 69 61 73 20 5f 50 49 4d 41 47 45 5f 52 .alias _PIMAGE_R
1f640 55 4e 54 49 4d 45 5f 46 55 4e 43 54 49 4f 4e 5f UNTIME_FUNCTION_
1f650 45 4e 54 52 59 20 50 49 4d 41 47 45 5f 49 41 36 ENTRY PIMAGE_IA6
1f660 34 5f 52 55 4e 54 49 4d 45 5f 46 55 4e 43 54 49 4_RUNTIME_FUNCTI
1f670 4f 4e 5f 45 4e 54 52 59 3b 0d 0a 0d 0a 2f 2f 20 ON_ENTRY;....//
1f680 23 69 66 20 64 65 66 69 6e 65 64 28 5f 41 58 50 #if defined(_AXP
1f690 36 34 5f 29 0d 0a 0d 0a 2f 2f 20 2e 2e 2e 0d 0a 64_)....// .....
1f6a0 0d 0a 2f 2f 20 23 65 6c 69 66 20 64 65 66 69 6e ..// #elif defin
1f6b0 65 64 28 5f 41 4c 50 48 41 5f 29 0d 0a 0d 0a 2f ed(_ALPHA_)..../
1f6c0 2f 20 2e 2e 2e 0d 0a 0d 0a 2f 2f 20 23 65 6c 73 / .......// #els
1f6d0 65 0d 0a 0d 0a 61 6c 69 61 73 20 5f 49 4d 41 47 e....alias _IMAG
1f6e0 45 5f 52 55 4e 54 49 4d 45 5f 46 55 4e 43 54 49 E_RUNTIME_FUNCTI
1f6f0 4f 4e 5f 45 4e 54 52 59 20 49 4d 41 47 45 5f 52 ON_ENTRY IMAGE_R
1f700 55 4e 54 49 4d 45 5f 46 55 4e 43 54 49 4f 4e 5f UNTIME_FUNCTION_
1f710 45 4e 54 52 59 3b 0d 0a 61 6c 69 61 73 20 5f 50 ENTRY;..alias _P
1f720 49 4d 41 47 45 5f 52 55 4e 54 49 4d 45 5f 46 55 IMAGE_RUNTIME_FU
1f730 4e 43 54 49 4f 4e 5f 45 4e 54 52 59 20 50 49 4d NCTION_ENTRY PIM
1f740 41 47 45 5f 52 55 4e 54 49 4d 45 5f 46 55 4e 43 AGE_RUNTIME_FUNC
1f750 54 49 4f 4e 5f 45 4e 54 52 59 3b 0d 0a 0d 0a 2f TION_ENTRY;..../
1f760 2f 20 23 65 6e 64 69 66 0d 0a 0d 0a 73 74 72 75 / #endif....stru
1f770 63 74 20 5f 49 4d 41 47 45 5f 44 45 42 55 47 5f ct _IMAGE_DEBUG_
1f780 44 49 52 45 43 54 4f 52 59 20 7b 0d 0a 20 20 44 DIRECTORY {.. D
1f790 57 4f 52 44 20 43 68 61 72 61 63 74 65 72 69 73 WORD Characteris
1f7a0 74 69 63 73 3b 0d 0a 20 20 44 57 4f 52 44 20 54 tics;.. DWORD T
1f7b0 69 6d 65 44 61 74 65 53 74 61 6d 70 3b 0d 0a 20 imeDateStamp;..
1f7c0 20 57 4f 52 44 20 4d 61 6a 6f 72 56 65 72 73 69 WORD MajorVersi
1f7d0 6f 6e 3b 0d 0a 20 20 57 4f 52 44 20 4d 69 6e 6f on;.. WORD Mino
1f7e0 72 56 65 72 73 69 6f 6e 3b 0d 0a 20 20 44 57 4f rVersion;.. DWO
1f7f0 52 44 20 54 79 70 65 3b 0d 0a 20 20 44 57 4f 52 RD Type;.. DWOR
1f800 44 20 53 69 7a 65 4f 66 44 61 74 61 3b 0d 0a 20 D SizeOfData;..
1f810 20 44 57 4f 52 44 20 41 64 64 72 65 73 73 4f 66 DWORD AddressOf
1f820 52 61 77 44 61 74 61 3b 0d 0a 20 20 44 57 4f 52 RawData;.. DWOR
1f830 44 20 50 6f 69 6e 74 65 72 54 6f 52 61 77 44 61 D PointerToRawDa
1f840 74 61 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 5f 49 ta;..}..alias _I
1f850 4d 41 47 45 5f 44 45 42 55 47 5f 44 49 52 45 43 MAGE_DEBUG_DIREC
1f860 54 4f 52 59 20 49 4d 41 47 45 5f 44 45 42 55 47 TORY IMAGE_DEBUG
1f870 5f 44 49 52 45 43 54 4f 52 59 3b 0d 0a 61 6c 69 _DIRECTORY;..ali
1f880 61 73 20 5f 49 4d 41 47 45 5f 44 45 42 55 47 5f as _IMAGE_DEBUG_
1f890 44 49 52 45 43 54 4f 52 59 2a 20 50 49 4d 41 47 DIRECTORY* PIMAG
1f8a0 45 5f 44 45 42 55 47 5f 44 49 52 45 43 54 4f 52 E_DEBUG_DIRECTOR
1f8b0 59 3b 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e Y;....enum : uin
1f8c0 74 20 7b 20 49 4d 41 47 45 5f 44 45 42 55 47 5f t { IMAGE_DEBUG_
1f8d0 54 59 50 45 5f 55 4e 4b 4e 4f 57 4e 20 3d 20 30 TYPE_UNKNOWN = 0
1f8e0 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 }..enum : uint
1f8f0 7b 20 49 4d 41 47 45 5f 44 45 42 55 47 5f 54 59 { IMAGE_DEBUG_TY
1f900 50 45 5f 43 4f 46 46 20 3d 20 31 20 7d 0d 0a 65 PE_COFF = 1 }..e
1f910 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 4d 41 num : uint { IMA
1f920 47 45 5f 44 45 42 55 47 5f 54 59 50 45 5f 43 4f GE_DEBUG_TYPE_CO
1f930 44 45 56 49 45 57 20 3d 20 32 20 7d 0d 0a 65 6e DEVIEW = 2 }..en
1f940 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 4d 41 47 um : uint { IMAG
1f950 45 5f 44 45 42 55 47 5f 54 59 50 45 5f 46 50 4f E_DEBUG_TYPE_FPO
1f960 20 3d 20 33 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 = 3 }..enum : u
1f970 69 6e 74 20 7b 20 49 4d 41 47 45 5f 44 45 42 55 int { IMAGE_DEBU
1f980 47 5f 54 59 50 45 5f 4d 49 53 43 20 3d 20 34 20 G_TYPE_MISC = 4
1f990 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b }..enum : uint {
1f9a0 20 49 4d 41 47 45 5f 44 45 42 55 47 5f 54 59 50 IMAGE_DEBUG_TYP
1f9b0 45 5f 45 58 43 45 50 54 49 4f 4e 20 3d 20 35 20 E_EXCEPTION = 5
1f9c0 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b }..enum : uint {
1f9d0 20 49 4d 41 47 45 5f 44 45 42 55 47 5f 54 59 50 IMAGE_DEBUG_TYP
1f9e0 45 5f 46 49 58 55 50 20 3d 20 36 20 7d 0d 0a 65 E_FIXUP = 6 }..e
1f9f0 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 4d 41 num : uint { IMA
1fa00 47 45 5f 44 45 42 55 47 5f 54 59 50 45 5f 4f 4d GE_DEBUG_TYPE_OM
1fa10 41 50 5f 54 4f 5f 53 52 43 20 3d 20 37 20 7d 0d AP_TO_SRC = 7 }.
1fa20 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 .enum : uint { I
1fa30 4d 41 47 45 5f 44 45 42 55 47 5f 54 59 50 45 5f MAGE_DEBUG_TYPE_
1fa40 4f 4d 41 50 5f 46 52 4f 4d 5f 53 52 43 20 3d 20 OMAP_FROM_SRC =
1fa50 38 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 8 }..enum : uint
1fa60 20 7b 20 49 4d 41 47 45 5f 44 45 42 55 47 5f 54 { IMAGE_DEBUG_T
1fa70 59 50 45 5f 42 4f 52 4c 41 4e 44 20 3d 20 39 20 YPE_BORLAND = 9
1fa80 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b }..enum : uint {
1fa90 20 49 4d 41 47 45 5f 44 45 42 55 47 5f 54 59 50 IMAGE_DEBUG_TYP
1faa0 45 5f 52 45 53 45 52 56 45 44 31 30 20 3d 20 31 E_RESERVED10 = 1
1fab0 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 0 }..enum : uint
1fac0 20 7b 20 49 4d 41 47 45 5f 44 45 42 55 47 5f 54 { IMAGE_DEBUG_T
1fad0 59 50 45 5f 43 4c 53 49 44 20 3d 20 31 31 20 7d YPE_CLSID = 11 }
1fae0 0d 0a 0d 0a 73 74 72 75 63 74 20 5f 49 4d 41 47 ....struct _IMAG
1faf0 45 5f 43 4f 46 46 5f 53 59 4d 42 4f 4c 53 5f 48 E_COFF_SYMBOLS_H
1fb00 45 41 44 45 52 20 7b 0d 0a 20 20 44 57 4f 52 44 EADER {.. DWORD
1fb10 20 4e 75 6d 62 65 72 4f 66 53 79 6d 62 6f 6c 73 NumberOfSymbols
1fb20 3b 0d 0a 20 20 44 57 4f 52 44 20 4c 76 61 54 6f ;.. DWORD LvaTo
1fb30 46 69 72 73 74 53 79 6d 62 6f 6c 3b 0d 0a 20 20 FirstSymbol;..
1fb40 44 57 4f 52 44 20 4e 75 6d 62 65 72 4f 66 4c 69 DWORD NumberOfLi
1fb50 6e 65 6e 75 6d 62 65 72 73 3b 0d 0a 20 20 44 57 nenumbers;.. DW
1fb60 4f 52 44 20 4c 76 61 54 6f 46 69 72 73 74 4c 69 ORD LvaToFirstLi
1fb70 6e 65 6e 75 6d 62 65 72 3b 0d 0a 20 20 44 57 4f nenumber;.. DWO
1fb80 52 44 20 52 76 61 54 6f 46 69 72 73 74 42 79 74 RD RvaToFirstByt
1fb90 65 4f 66 43 6f 64 65 3b 0d 0a 20 20 44 57 4f 52 eOfCode;.. DWOR
1fba0 44 20 52 76 61 54 6f 4c 61 73 74 42 79 74 65 4f D RvaToLastByteO
1fbb0 66 43 6f 64 65 3b 0d 0a 20 20 44 57 4f 52 44 20 fCode;.. DWORD
1fbc0 52 76 61 54 6f 46 69 72 73 74 42 79 74 65 4f 66 RvaToFirstByteOf
1fbd0 44 61 74 61 3b 0d 0a 20 20 44 57 4f 52 44 20 52 Data;.. DWORD R
1fbe0 76 61 54 6f 4c 61 73 74 42 79 74 65 4f 66 44 61 vaToLastByteOfDa
1fbf0 74 61 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 5f 49 ta;..}..alias _I
1fc00 4d 41 47 45 5f 43 4f 46 46 5f 53 59 4d 42 4f 4c MAGE_COFF_SYMBOL
1fc10 53 5f 48 45 41 44 45 52 20 49 4d 41 47 45 5f 43 S_HEADER IMAGE_C
1fc20 4f 46 46 5f 53 59 4d 42 4f 4c 53 5f 48 45 41 44 OFF_SYMBOLS_HEAD
1fc30 45 52 3b 0d 0a 61 6c 69 61 73 20 5f 49 4d 41 47 ER;..alias _IMAG
1fc40 45 5f 43 4f 46 46 5f 53 59 4d 42 4f 4c 53 5f 48 E_COFF_SYMBOLS_H
1fc50 45 41 44 45 52 2a 20 50 49 4d 41 47 45 5f 43 4f EADER* PIMAGE_CO
1fc60 46 46 5f 53 59 4d 42 4f 4c 53 5f 48 45 41 44 45 FF_SYMBOLS_HEADE
1fc70 52 3b 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e R;....enum : uin
1fc80 74 20 7b 20 46 52 41 4d 45 5f 46 50 4f 20 3d 20 t { FRAME_FPO =
1fc90 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 0 }..enum : uint
1fca0 20 7b 20 46 52 41 4d 45 5f 54 52 41 50 20 3d 20 { FRAME_TRAP =
1fcb0 31 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 1 }..enum : uint
1fcc0 20 7b 20 46 52 41 4d 45 5f 54 53 53 20 3d 20 32 { FRAME_TSS = 2
1fcd0 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 }..enum : uint
1fce0 7b 20 46 52 41 4d 45 5f 4e 4f 4e 46 50 4f 20 3d { FRAME_NONFPO =
1fcf0 20 33 20 7d 0d 0a 0d 0a 73 74 72 75 63 74 20 5f 3 }....struct _
1fd00 46 50 4f 5f 44 41 54 41 20 7b 0d 0a 20 20 44 57 FPO_DATA {.. DW
1fd10 4f 52 44 20 75 6c 4f 66 66 53 74 61 72 74 3b 0d ORD ulOffStart;.
1fd20 0a 20 20 44 57 4f 52 44 20 63 62 50 72 6f 63 53 . DWORD cbProcS
1fd30 69 7a 65 3b 0d 0a 20 20 44 57 4f 52 44 20 63 64 ize;.. DWORD cd
1fd40 77 4c 6f 63 61 6c 73 3b 0d 0a 20 20 57 4f 52 44 wLocals;.. WORD
1fd50 20 63 64 77 50 61 72 61 6d 73 3b 0d 0a 2f 2f 20 cdwParams;..//
1fd60 57 4f 52 44 20 20 20 20 20 20 20 20 63 62 50 72 WORD cbPr
1fd70 6f 6c 6f 67 20 3a 20 38 3b 0d 0a 2f 2f 20 57 4f olog : 8;..// WO
1fd80 52 44 20 20 20 20 20 20 20 20 63 62 52 65 67 73 RD cbRegs
1fd90 20 20 20 3a 20 33 3b 0d 0a 2f 2f 20 57 4f 52 44 : 3;..// WORD
1fda0 20 20 20 20 20 20 20 20 66 48 61 73 53 45 48 20 fHasSEH
1fdb0 20 3a 20 31 3b 0d 0a 2f 2f 20 57 4f 52 44 20 20 : 1;..// WORD
1fdc0 20 20 20 20 20 20 66 55 73 65 42 50 20 20 20 3a fUseBP :
1fdd0 20 31 3b 0d 0a 2f 2f 20 57 4f 52 44 20 20 20 20 1;..// WORD
1fde0 20 20 20 20 72 65 73 65 72 76 65 64 20 3a 20 31 reserved : 1
1fdf0 3b 0d 0a 2f 2f 20 57 4f 52 44 20 20 20 20 20 20 ;..// WORD
1fe00 20 20 63 62 46 72 61 6d 65 20 20 3a 20 32 3b 0d cbFrame : 2;.
1fe10 0a 7d 0d 0a 61 6c 69 61 73 20 5f 46 50 4f 5f 44 .}..alias _FPO_D
1fe20 41 54 41 20 46 50 4f 5f 44 41 54 41 3b 0d 0a 61 ATA FPO_DATA;..a
1fe30 6c 69 61 73 20 5f 46 50 4f 5f 44 41 54 41 2a 20 lias _FPO_DATA*
1fe40 50 46 50 4f 5f 44 41 54 41 3b 0d 0a 0d 0a 65 6e PFPO_DATA;....en
1fe50 75 6d 20 3a 20 75 69 6e 74 20 7b 20 53 49 5a 45 um : uint { SIZE
1fe60 4f 46 5f 52 46 50 4f 5f 44 41 54 41 20 3d 20 31 OF_RFPO_DATA = 1
1fe70 36 20 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 75 69 6 }....enum : ui
1fe80 6e 74 20 7b 20 49 4d 41 47 45 5f 44 45 42 55 47 nt { IMAGE_DEBUG
1fe90 5f 4d 49 53 43 5f 45 58 45 4e 41 4d 45 20 3d 20 _MISC_EXENAME =
1fea0 31 20 7d 0d 0a 0d 0a 73 74 72 75 63 74 20 5f 49 1 }....struct _I
1feb0 4d 41 47 45 5f 44 45 42 55 47 5f 4d 49 53 43 20 MAGE_DEBUG_MISC
1fec0 7b 0d 0a 20 20 44 57 4f 52 44 20 44 61 74 61 54 {.. DWORD DataT
1fed0 79 70 65 3b 0d 0a 20 20 44 57 4f 52 44 20 4c 65 ype;.. DWORD Le
1fee0 6e 67 74 68 3b 0d 0a 0d 0a 20 20 42 4f 4f 4c 45 ngth;.... BOOLE
1fef0 41 4e 20 55 6e 69 63 6f 64 65 3b 0d 0a 20 20 42 AN Unicode;.. B
1ff00 59 54 45 20 52 65 73 65 72 76 65 64 5b 20 33 20 YTE Reserved[ 3
1ff10 5d 3b 0d 0a 20 20 42 59 54 45 20 44 61 74 61 5b ];.. BYTE Data[
1ff20 20 31 20 5d 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 1 ];..}..alias
1ff30 5f 49 4d 41 47 45 5f 44 45 42 55 47 5f 4d 49 53 _IMAGE_DEBUG_MIS
1ff40 43 20 49 4d 41 47 45 5f 44 45 42 55 47 5f 4d 49 C IMAGE_DEBUG_MI
1ff50 53 43 3b 0d 0a 61 6c 69 61 73 20 5f 49 4d 41 47 SC;..alias _IMAG
1ff60 45 5f 44 45 42 55 47 5f 4d 49 53 43 2a 20 50 49 E_DEBUG_MISC* PI
1ff70 4d 41 47 45 5f 44 45 42 55 47 5f 4d 49 53 43 3b MAGE_DEBUG_MISC;
1ff80 0d 0a 0d 0a 73 74 72 75 63 74 20 5f 49 4d 41 47 ....struct _IMAG
1ff90 45 5f 46 55 4e 43 54 49 4f 4e 5f 45 4e 54 52 59 E_FUNCTION_ENTRY
1ffa0 20 7b 0d 0a 20 20 44 57 4f 52 44 20 53 74 61 72 {.. DWORD Star
1ffb0 74 69 6e 67 41 64 64 72 65 73 73 3b 0d 0a 20 20 tingAddress;..
1ffc0 44 57 4f 52 44 20 45 6e 64 69 6e 67 41 64 64 72 DWORD EndingAddr
1ffd0 65 73 73 3b 0d 0a 20 20 44 57 4f 52 44 20 45 6e ess;.. DWORD En
1ffe0 64 4f 66 50 72 6f 6c 6f 67 75 65 3b 0d 0a 7d 0d dOfPrologue;..}.
1fff0 0a 61 6c 69 61 73 20 5f 49 4d 41 47 45 5f 46 55 .alias _IMAGE_FU
20000 4e 43 54 49 4f 4e 5f 45 4e 54 52 59 20 49 4d 41 NCTION_ENTRY IMA
20010 47 45 5f 46 55 4e 43 54 49 4f 4e 5f 45 4e 54 52 GE_FUNCTION_ENTR
20020 59 3b 0d 0a 61 6c 69 61 73 20 5f 49 4d 41 47 45 Y;..alias _IMAGE
20030 5f 46 55 4e 43 54 49 4f 4e 5f 45 4e 54 52 59 2a _FUNCTION_ENTRY*
20040 20 50 49 4d 41 47 45 5f 46 55 4e 43 54 49 4f 4e PIMAGE_FUNCTION
20050 5f 45 4e 54 52 59 3b 0d 0a 0d 0a 73 74 72 75 63 _ENTRY;....struc
20060 74 20 5f 49 4d 41 47 45 5f 46 55 4e 43 54 49 4f t _IMAGE_FUNCTIO
20070 4e 5f 45 4e 54 52 59 36 34 20 7b 0d 0a 20 20 55 N_ENTRY64 {.. U
20080 4c 4f 4e 47 4c 4f 4e 47 20 53 74 61 72 74 69 6e LONGLONG Startin
20090 67 41 64 64 72 65 73 73 3b 0d 0a 20 20 55 4c 4f gAddress;.. ULO
200a0 4e 47 4c 4f 4e 47 20 45 6e 64 69 6e 67 41 64 64 NGLONG EndingAdd
200b0 72 65 73 73 3b 0d 0a 75 6e 69 6f 6e 20 7b 0d 0a ress;..union {..
200c0 20 20 55 4c 4f 4e 47 4c 4f 4e 47 20 45 6e 64 4f ULONGLONG EndO
200d0 66 50 72 6f 6c 6f 67 75 65 3b 0d 0a 20 20 55 4c fPrologue;.. UL
200e0 4f 4e 47 4c 4f 4e 47 20 55 6e 77 69 6e 64 49 6e ONGLONG UnwindIn
200f0 66 6f 41 64 64 72 65 73 73 3b 0d 0a 7d 0d 0a 0d foAddress;..}...
20100 0a 7d 0d 0a 61 6c 69 61 73 20 5f 49 4d 41 47 45 .}..alias _IMAGE
20110 5f 46 55 4e 43 54 49 4f 4e 5f 45 4e 54 52 59 36 _FUNCTION_ENTRY6
20120 34 20 49 4d 41 47 45 5f 46 55 4e 43 54 49 4f 4e 4 IMAGE_FUNCTION
20130 5f 45 4e 54 52 59 36 34 3b 0d 0a 61 6c 69 61 73 _ENTRY64;..alias
20140 20 5f 49 4d 41 47 45 5f 46 55 4e 43 54 49 4f 4e _IMAGE_FUNCTION
20150 5f 45 4e 54 52 59 36 34 2a 20 50 49 4d 41 47 45 _ENTRY64* PIMAGE
20160 5f 46 55 4e 43 54 49 4f 4e 5f 45 4e 54 52 59 36 _FUNCTION_ENTRY6
20170 34 3b 0d 0a 0d 0a 73 74 72 75 63 74 20 5f 49 4d 4;....struct _IM
20180 41 47 45 5f 53 45 50 41 52 41 54 45 5f 44 45 42 AGE_SEPARATE_DEB
20190 55 47 5f 48 45 41 44 45 52 20 7b 0d 0a 20 20 57 UG_HEADER {.. W
201a0 4f 52 44 20 53 69 67 6e 61 74 75 72 65 3b 0d 0a ORD Signature;..
201b0 20 20 57 4f 52 44 20 46 6c 61 67 73 3b 0d 0a 20 WORD Flags;..
201c0 20 57 4f 52 44 20 4d 61 63 68 69 6e 65 3b 0d 0a WORD Machine;..
201d0 20 20 57 4f 52 44 20 43 68 61 72 61 63 74 65 72 WORD Character
201e0 69 73 74 69 63 73 3b 0d 0a 20 20 44 57 4f 52 44 istics;.. DWORD
201f0 20 54 69 6d 65 44 61 74 65 53 74 61 6d 70 3b 0d TimeDateStamp;.
20200 0a 20 20 44 57 4f 52 44 20 43 68 65 63 6b 53 75 . DWORD CheckSu
20210 6d 3b 0d 0a 20 20 44 57 4f 52 44 20 49 6d 61 67 m;.. DWORD Imag
20220 65 42 61 73 65 3b 0d 0a 20 20 44 57 4f 52 44 20 eBase;.. DWORD
20230 53 69 7a 65 4f 66 49 6d 61 67 65 3b 0d 0a 20 20 SizeOfImage;..
20240 44 57 4f 52 44 20 4e 75 6d 62 65 72 4f 66 53 65 DWORD NumberOfSe
20250 63 74 69 6f 6e 73 3b 0d 0a 20 20 44 57 4f 52 44 ctions;.. DWORD
20260 20 45 78 70 6f 72 74 65 64 4e 61 6d 65 73 53 69 ExportedNamesSi
20270 7a 65 3b 0d 0a 20 20 44 57 4f 52 44 20 44 65 62 ze;.. DWORD Deb
20280 75 67 44 69 72 65 63 74 6f 72 79 53 69 7a 65 3b ugDirectorySize;
20290 0d 0a 20 20 44 57 4f 52 44 20 53 65 63 74 69 6f .. DWORD Sectio
202a0 6e 41 6c 69 67 6e 6d 65 6e 74 3b 0d 0a 20 20 44 nAlignment;.. D
202b0 57 4f 52 44 20 52 65 73 65 72 76 65 64 5b 32 5d WORD Reserved[2]
202c0 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 5f 49 4d 41 ;..}..alias _IMA
202d0 47 45 5f 53 45 50 41 52 41 54 45 5f 44 45 42 55 GE_SEPARATE_DEBU
202e0 47 5f 48 45 41 44 45 52 20 49 4d 41 47 45 5f 53 G_HEADER IMAGE_S
202f0 45 50 41 52 41 54 45 5f 44 45 42 55 47 5f 48 45 EPARATE_DEBUG_HE
20300 41 44 45 52 3b 0d 0a 61 6c 69 61 73 20 5f 49 4d ADER;..alias _IM
20310 41 47 45 5f 53 45 50 41 52 41 54 45 5f 44 45 42 AGE_SEPARATE_DEB
20320 55 47 5f 48 45 41 44 45 52 2a 20 50 49 4d 41 47 UG_HEADER* PIMAG
20330 45 5f 53 45 50 41 52 41 54 45 5f 44 45 42 55 47 E_SEPARATE_DEBUG
20340 5f 48 45 41 44 45 52 3b 0d 0a 0d 0a 73 74 72 75 _HEADER;....stru
20350 63 74 20 5f 4e 4f 4e 5f 50 41 47 45 44 5f 44 45 ct _NON_PAGED_DE
20360 42 55 47 5f 49 4e 46 4f 20 7b 0d 0a 20 20 57 4f BUG_INFO {.. WO
20370 52 44 20 53 69 67 6e 61 74 75 72 65 3b 0d 0a 20 RD Signature;..
20380 20 57 4f 52 44 20 46 6c 61 67 73 3b 0d 0a 20 20 WORD Flags;..
20390 44 57 4f 52 44 20 53 69 7a 65 3b 0d 0a 20 20 57 DWORD Size;.. W
203a0 4f 52 44 20 4d 61 63 68 69 6e 65 3b 0d 0a 20 20 ORD Machine;..
203b0 57 4f 52 44 20 43 68 61 72 61 63 74 65 72 69 73 WORD Characteris
203c0 74 69 63 73 3b 0d 0a 20 20 44 57 4f 52 44 20 54 tics;.. DWORD T
203d0 69 6d 65 44 61 74 65 53 74 61 6d 70 3b 0d 0a 20 imeDateStamp;..
203e0 20 44 57 4f 52 44 20 43 68 65 63 6b 53 75 6d 3b DWORD CheckSum;
203f0 0d 0a 20 20 44 57 4f 52 44 20 53 69 7a 65 4f 66 .. DWORD SizeOf
20400 49 6d 61 67 65 3b 0d 0a 20 20 55 4c 4f 4e 47 4c Image;.. ULONGL
20410 4f 4e 47 20 49 6d 61 67 65 42 61 73 65 3b 0d 0a ONG ImageBase;..
20420 0d 0a 7d 0d 0a 61 6c 69 61 73 20 5f 4e 4f 4e 5f ..}..alias _NON_
20430 50 41 47 45 44 5f 44 45 42 55 47 5f 49 4e 46 4f PAGED_DEBUG_INFO
20440 20 4e 4f 4e 5f 50 41 47 45 44 5f 44 45 42 55 47 NON_PAGED_DEBUG
20450 5f 49 4e 46 4f 3b 0d 0a 61 6c 69 61 73 20 5f 4e _INFO;..alias _N
20460 4f 4e 5f 50 41 47 45 44 5f 44 45 42 55 47 5f 49 ON_PAGED_DEBUG_I
20470 4e 46 4f 2a 20 50 4e 4f 4e 5f 50 41 47 45 44 5f NFO* PNON_PAGED_
20480 44 45 42 55 47 5f 49 4e 46 4f 3b 0d 0a 0d 0a 2f DEBUG_INFO;..../
20490 2f 20 23 69 66 6e 64 65 66 20 5f 4d 41 43 0d 0a / #ifndef _MAC..
204a0 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 4d enum : uint { IM
204b0 41 47 45 5f 53 45 50 41 52 41 54 45 5f 44 45 42 AGE_SEPARATE_DEB
204c0 55 47 5f 53 49 47 4e 41 54 55 52 45 20 3d 20 30 UG_SIGNATURE = 0
204d0 78 34 39 34 34 20 7d 0d 0a 65 6e 75 6d 20 3a 20 x4944 }..enum :
204e0 75 69 6e 74 20 7b 20 4e 4f 4e 5f 50 41 47 45 44 uint { NON_PAGED
204f0 5f 44 45 42 55 47 5f 53 49 47 4e 41 54 55 52 45 _DEBUG_SIGNATURE
20500 20 3d 20 30 78 34 39 34 45 20 7d 0d 0a 2f 2f 20 = 0x494E }..//
20510 23 65 6c 73 65 0d 0a 2f 2f 20 23 2e 2e 2e 0d 0a #else..// #.....
20520 2f 2f 20 23 2e 2e 2e 0d 0a 2f 2f 20 23 65 6e 64 // #.....// #end
20530 69 66 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e if....enum : uin
20540 74 20 7b 20 49 4d 41 47 45 5f 53 45 50 41 52 41 t { IMAGE_SEPARA
20550 54 45 5f 44 45 42 55 47 5f 46 4c 41 47 53 5f 4d TE_DEBUG_FLAGS_M
20560 41 53 4b 20 3d 20 30 78 38 30 30 30 20 7d 0d 0a ASK = 0x8000 }..
20570 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 4d enum : uint { IM
20580 41 47 45 5f 53 45 50 41 52 41 54 45 5f 44 45 42 AGE_SEPARATE_DEB
20590 55 47 5f 4d 49 53 4d 41 54 43 48 20 3d 20 30 78 UG_MISMATCH = 0x
205a0 38 30 30 30 20 7d 0d 0a 0d 0a 73 74 72 75 63 74 8000 }....struct
205b0 20 5f 49 6d 61 67 65 41 72 63 68 69 74 65 63 74 _ImageArchitect
205c0 75 72 65 48 65 61 64 65 72 20 7b 0d 0a 2f 2f 20 ureHeader {..//
205d0 75 6e 73 69 67 6e 65 64 20 69 6e 74 20 41 6d 61 unsigned int Ama
205e0 73 6b 56 61 6c 75 65 3a 20 31 3b 0d 0a 0d 0a 2f skValue: 1;..../
205f0 2f 20 69 6e 74 20 3a 37 3b 0d 0a 2f 2f 20 75 6e / int :7;..// un
20600 73 69 67 6e 65 64 20 69 6e 74 20 41 6d 61 73 6b signed int Amask
20610 53 68 69 66 74 3a 20 38 3b 0d 0a 2f 2f 20 69 6e Shift: 8;..// in
20620 74 20 3a 31 36 3b 0d 0a 20 20 44 57 4f 52 44 20 t :16;.. DWORD
20630 46 69 72 73 74 45 6e 74 72 79 52 56 41 3b 0d 0a FirstEntryRVA;..
20640 7d 0d 0a 61 6c 69 61 73 20 5f 49 6d 61 67 65 41 }..alias _ImageA
20650 72 63 68 69 74 65 63 74 75 72 65 48 65 61 64 65 rchitectureHeade
20660 72 20 49 4d 41 47 45 5f 41 52 43 48 49 54 45 43 r IMAGE_ARCHITEC
20670 54 55 52 45 5f 48 45 41 44 45 52 3b 0d 0a 61 6c TURE_HEADER;..al
20680 69 61 73 20 5f 49 6d 61 67 65 41 72 63 68 69 74 ias _ImageArchit
20690 65 63 74 75 72 65 48 65 61 64 65 72 2a 20 50 49 ectureHeader* PI
206a0 4d 41 47 45 5f 41 52 43 48 49 54 45 43 54 55 52 MAGE_ARCHITECTUR
206b0 45 5f 48 45 41 44 45 52 3b 0d 0a 0d 0a 73 74 72 E_HEADER;....str
206c0 75 63 74 20 5f 49 6d 61 67 65 41 72 63 68 69 74 uct _ImageArchit
206d0 65 63 74 75 72 65 45 6e 74 72 79 20 7b 0d 0a 20 ectureEntry {..
206e0 20 44 57 4f 52 44 20 46 69 78 75 70 49 6e 73 74 DWORD FixupInst
206f0 52 56 41 3b 0d 0a 20 20 44 57 4f 52 44 20 4e 65 RVA;.. DWORD Ne
20700 77 49 6e 73 74 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 wInst;..}..alias
20710 20 5f 49 6d 61 67 65 41 72 63 68 69 74 65 63 74 _ImageArchitect
20720 75 72 65 45 6e 74 72 79 20 49 4d 41 47 45 5f 41 ureEntry IMAGE_A
20730 52 43 48 49 54 45 43 54 55 52 45 5f 45 4e 54 52 RCHITECTURE_ENTR
20740 59 3b 0d 0a 61 6c 69 61 73 20 5f 49 6d 61 67 65 Y;..alias _Image
20750 41 72 63 68 69 74 65 63 74 75 72 65 45 6e 74 72 ArchitectureEntr
20760 79 2a 20 50 49 4d 41 47 45 5f 41 52 43 48 49 54 y* PIMAGE_ARCHIT
20770 45 43 54 55 52 45 5f 45 4e 54 52 59 3b 0d 0a 0d ECTURE_ENTRY;...
20780 0a 61 6c 69 67 6e 3a 0d 0a 0d 0a 65 6e 75 6d 20 .align:....enum
20790 3a 20 75 69 6e 74 20 7b 20 49 4d 50 4f 52 54 5f : uint { IMPORT_
207a0 4f 42 4a 45 43 54 5f 48 44 52 5f 53 49 47 32 20 OBJECT_HDR_SIG2
207b0 3d 20 30 78 66 66 66 66 20 7d 0d 0a 0d 0a 73 74 = 0xffff }....st
207c0 72 75 63 74 20 49 4d 50 4f 52 54 5f 4f 42 4a 45 ruct IMPORT_OBJE
207d0 43 54 5f 48 45 41 44 45 52 20 7b 0d 0a 20 20 57 CT_HEADER {.. W
207e0 4f 52 44 20 53 69 67 31 3b 0d 0a 20 20 57 4f 52 ORD Sig1;.. WOR
207f0 44 20 53 69 67 32 3b 0d 0a 20 20 57 4f 52 44 20 D Sig2;.. WORD
20800 56 65 72 73 69 6f 6e 3b 0d 0a 20 20 57 4f 52 44 Version;.. WORD
20810 20 4d 61 63 68 69 6e 65 3b 0d 0a 20 20 44 57 4f Machine;.. DWO
20820 52 44 20 54 69 6d 65 44 61 74 65 53 74 61 6d 70 RD TimeDateStamp
20830 3b 0d 0a 20 20 44 57 4f 52 44 20 53 69 7a 65 4f ;.. DWORD SizeO
20840 66 44 61 74 61 3b 0d 0a 0d 0a 75 6e 69 6f 6e 20 fData;....union
20850 7b 0d 0a 20 20 57 4f 52 44 20 4f 72 64 69 6e 61 {.. WORD Ordina
20860 6c 3b 0d 0a 20 20 57 4f 52 44 20 48 69 6e 74 3b l;.. WORD Hint;
20870 0d 0a 7d 0d 0a 0d 0a 2f 2f 20 57 4f 52 44 20 20 ..}....// WORD
20880 20 20 54 79 70 65 20 3a 20 32 3b 0d 0a 2f 2f 20 Type : 2;..//
20890 57 4f 52 44 20 20 20 20 4e 61 6d 65 54 79 70 65 WORD NameType
208a0 20 3a 20 33 3b 0d 0a 2f 2f 20 57 4f 52 44 20 20 : 3;..// WORD
208b0 20 20 52 65 73 65 72 76 65 64 20 3a 20 31 31 3b Reserved : 11;
208c0 0d 0a 7d 0d 0a 0d 0a 61 6c 69 61 73 20 69 6e 74 ..}....alias int
208d0 20 49 4d 50 4f 52 54 5f 4f 42 4a 45 43 54 5f 54 IMPORT_OBJECT_T
208e0 59 50 45 3b 0d 0a 65 6e 75 6d 20 7b 0d 0a 20 20 YPE;..enum {..
208f0 49 4d 50 4f 52 54 5f 4f 42 4a 45 43 54 5f 43 4f IMPORT_OBJECT_CO
20900 44 45 20 3d 20 30 2c 0d 0a 20 20 49 4d 50 4f 52 DE = 0,.. IMPOR
20910 54 5f 4f 42 4a 45 43 54 5f 44 41 54 41 20 3d 20 T_OBJECT_DATA =
20920 31 2c 0d 0a 20 20 49 4d 50 4f 52 54 5f 4f 42 4a 1,.. IMPORT_OBJ
20930 45 43 54 5f 43 4f 4e 53 54 20 3d 20 32 2c 0d 0a ECT_CONST = 2,..
20940 7d 0d 0a 0d 0a 61 6c 69 61 73 20 69 6e 74 20 49 }....alias int I
20950 4d 50 4f 52 54 5f 4f 42 4a 45 43 54 5f 4e 41 4d MPORT_OBJECT_NAM
20960 45 5f 54 59 50 45 3b 0d 0a 65 6e 75 6d 20 7b 0d E_TYPE;..enum {.
20970 0a 20 20 49 4d 50 4f 52 54 5f 4f 42 4a 45 43 54 . IMPORT_OBJECT
20980 5f 4f 52 44 49 4e 41 4c 20 3d 20 30 2c 0d 0a 20 _ORDINAL = 0,..
20990 20 49 4d 50 4f 52 54 5f 4f 42 4a 45 43 54 5f 4e IMPORT_OBJECT_N
209a0 41 4d 45 20 3d 20 31 2c 0d 0a 20 20 49 4d 50 4f AME = 1,.. IMPO
209b0 52 54 5f 4f 42 4a 45 43 54 5f 4e 41 4d 45 5f 4e RT_OBJECT_NAME_N
209c0 4f 5f 50 52 45 46 49 58 20 3d 20 32 2c 0d 0a 20 O_PREFIX = 2,..
209d0 20 49 4d 50 4f 52 54 5f 4f 42 4a 45 43 54 5f 4e IMPORT_OBJECT_N
209e0 41 4d 45 5f 55 4e 44 45 43 4f 52 41 54 45 20 3d AME_UNDECORATE =
209f0 20 33 2c 0d 0a 0d 0a 7d 0d 0a 0d 0a 2f 2f 20 23 3,....}....// #
20a00 69 66 6e 64 65 66 20 5f 5f 49 4d 41 47 45 5f 43 ifndef __IMAGE_C
20a10 4f 52 32 30 5f 48 45 41 44 45 52 5f 44 45 46 49 OR20_HEADER_DEFI
20a20 4e 45 44 5f 5f 0d 0a 2f 2f 20 23 64 65 66 69 6e NED__..// #defin
20a30 65 20 5f 5f 49 4d 41 47 45 5f 43 4f 52 32 30 5f e __IMAGE_COR20_
20a40 48 45 41 44 45 52 5f 44 45 46 49 4e 45 44 5f 5f HEADER_DEFINED__
20a50 0d 0a 0d 0a 61 6c 69 61 73 20 69 6e 74 20 52 65 ....alias int Re
20a60 70 6c 61 63 65 73 43 6f 72 48 64 72 4e 75 6d 65 placesCorHdrNume
20a70 72 69 63 44 65 66 69 6e 65 73 3b 0d 0a 65 6e 75 ricDefines;..enu
20a80 6d 20 7b 0d 0a 0d 0a 20 20 43 4f 4d 49 4d 41 47 m {.... COMIMAG
20a90 45 5f 46 4c 41 47 53 5f 49 4c 4f 4e 4c 59 20 3d E_FLAGS_ILONLY =
20aa0 20 30 78 30 30 30 30 30 30 30 31 2c 0d 0a 20 20 0x00000001,..
20ab0 43 4f 4d 49 4d 41 47 45 5f 46 4c 41 47 53 5f 33 COMIMAGE_FLAGS_3
20ac0 32 42 49 54 52 45 51 55 49 52 45 44 20 3d 20 30 2BITREQUIRED = 0
20ad0 78 30 30 30 30 30 30 30 32 2c 0d 0a 20 20 43 4f x00000002,.. CO
20ae0 4d 49 4d 41 47 45 5f 46 4c 41 47 53 5f 49 4c 5f MIMAGE_FLAGS_IL_
20af0 4c 49 42 52 41 52 59 20 3d 20 30 78 30 30 30 30 LIBRARY = 0x0000
20b00 30 30 30 34 2c 0d 0a 20 20 43 4f 4d 49 4d 41 47 0004,.. COMIMAG
20b10 45 5f 46 4c 41 47 53 5f 54 52 41 43 4b 44 45 42 E_FLAGS_TRACKDEB
20b20 55 47 44 41 54 41 20 3d 20 30 78 30 30 30 31 30 UGDATA = 0x00010
20b30 30 30 30 2c 0d 0a 0d 0a 20 20 43 4f 52 5f 56 45 000,.... COR_VE
20b40 52 53 49 4f 4e 5f 4d 41 4a 4f 52 5f 56 32 20 3d RSION_MAJOR_V2 =
20b50 20 32 2c 0d 0a 20 20 43 4f 52 5f 56 45 52 53 49 2,.. COR_VERSI
20b60 4f 4e 5f 4d 41 4a 4f 52 20 3d 20 43 4f 52 5f 56 ON_MAJOR = COR_V
20b70 45 52 53 49 4f 4e 5f 4d 41 4a 4f 52 5f 56 32 2c ERSION_MAJOR_V2,
20b80 0d 0a 20 20 43 4f 52 5f 56 45 52 53 49 4f 4e 5f .. COR_VERSION_
20b90 4d 49 4e 4f 52 20 3d 20 30 2c 0d 0a 20 20 43 4f MINOR = 0,.. CO
20ba0 52 5f 44 45 4c 45 54 45 44 5f 4e 41 4d 45 5f 4c R_DELETED_NAME_L
20bb0 45 4e 47 54 48 20 3d 20 38 2c 0d 0a 20 20 43 4f ENGTH = 8,.. CO
20bc0 52 5f 56 54 41 42 4c 45 47 41 50 5f 4e 41 4d 45 R_VTABLEGAP_NAME
20bd0 5f 4c 45 4e 47 54 48 20 3d 20 38 2c 0d 0a 0d 0a _LENGTH = 8,....
20be0 20 20 4e 41 54 49 56 45 5f 54 59 50 45 5f 4d 41 NATIVE_TYPE_MA
20bf0 58 5f 43 42 20 3d 20 31 2c 0d 0a 20 20 43 4f 52 X_CB = 1,.. COR
20c00 5f 49 4c 4d 45 54 48 4f 44 5f 53 45 43 54 5f 53 _ILMETHOD_SECT_S
20c10 4d 41 4c 4c 5f 4d 41 58 5f 44 41 54 41 53 49 5a MALL_MAX_DATASIZ
20c20 45 20 3d 20 30 78 46 46 2c 0d 0a 0d 0a 20 20 49 E = 0xFF,.... I
20c30 4d 41 47 45 5f 43 4f 52 5f 4d 49 48 5f 4d 45 54 MAGE_COR_MIH_MET
20c40 48 4f 44 52 56 41 20 3d 20 30 78 30 31 2c 0d 0a HODRVA = 0x01,..
20c50 20 20 49 4d 41 47 45 5f 43 4f 52 5f 4d 49 48 5f IMAGE_COR_MIH_
20c60 45 48 52 56 41 20 3d 20 30 78 30 32 2c 0d 0a 20 EHRVA = 0x02,..
20c70 20 49 4d 41 47 45 5f 43 4f 52 5f 4d 49 48 5f 42 IMAGE_COR_MIH_B
20c80 41 53 49 43 42 4c 4f 43 4b 20 3d 20 30 78 30 38 ASICBLOCK = 0x08
20c90 2c 0d 0a 0d 0a 20 20 43 4f 52 5f 56 54 41 42 4c ,.... COR_VTABL
20ca0 45 5f 33 32 42 49 54 20 3d 20 30 78 30 31 2c 0d E_32BIT = 0x01,.
20cb0 0a 20 20 43 4f 52 5f 56 54 41 42 4c 45 5f 36 34 . COR_VTABLE_64
20cc0 42 49 54 20 3d 20 30 78 30 32 2c 0d 0a 20 20 43 BIT = 0x02,.. C
20cd0 4f 52 5f 56 54 41 42 4c 45 5f 46 52 4f 4d 5f 55 OR_VTABLE_FROM_U
20ce0 4e 4d 41 4e 41 47 45 44 20 3d 20 30 78 30 34 2c NMANAGED = 0x04,
20cf0 0d 0a 20 20 43 4f 52 5f 56 54 41 42 4c 45 5f 43 .. COR_VTABLE_C
20d00 41 4c 4c 5f 4d 4f 53 54 5f 44 45 52 49 56 45 44 ALL_MOST_DERIVED
20d10 20 3d 20 30 78 31 30 2c 0d 0a 0d 0a 20 20 49 4d = 0x10,.... IM
20d20 41 47 45 5f 43 4f 52 5f 45 41 54 4a 5f 54 48 55 AGE_COR_EATJ_THU
20d30 4e 4b 5f 53 49 5a 45 20 3d 20 33 32 2c 0d 0a 0d NK_SIZE = 32,...
20d40 0a 20 20 4d 41 58 5f 43 4c 41 53 53 5f 4e 41 4d . MAX_CLASS_NAM
20d50 45 20 3d 20 31 30 32 34 2c 0d 0a 20 20 4d 41 58 E = 1024,.. MAX
20d60 5f 50 41 43 4b 41 47 45 5f 4e 41 4d 45 20 3d 20 _PACKAGE_NAME =
20d70 31 30 32 34 2c 0d 0a 7d 0d 0a 0d 0a 73 74 72 75 1024,..}....stru
20d80 63 74 20 49 4d 41 47 45 5f 43 4f 52 32 30 5f 48 ct IMAGE_COR20_H
20d90 45 41 44 45 52 20 7b 0d 0a 0d 0a 20 20 44 57 4f EADER {.... DWO
20da0 52 44 20 63 62 3b 0d 0a 20 20 57 4f 52 44 20 4d RD cb;.. WORD M
20db0 61 6a 6f 72 52 75 6e 74 69 6d 65 56 65 72 73 69 ajorRuntimeVersi
20dc0 6f 6e 3b 0d 0a 20 20 57 4f 52 44 20 4d 69 6e 6f on;.. WORD Mino
20dd0 72 52 75 6e 74 69 6d 65 56 65 72 73 69 6f 6e 3b rRuntimeVersion;
20de0 0d 0a 20 20 49 4d 41 47 45 5f 44 41 54 41 5f 44 .. IMAGE_DATA_D
20df0 49 52 45 43 54 4f 52 59 20 4d 65 74 61 44 61 74 IRECTORY MetaDat
20e00 61 3b 0d 0a 20 20 44 57 4f 52 44 20 46 6c 61 67 a;.. DWORD Flag
20e10 73 3b 0d 0a 20 20 44 57 4f 52 44 20 45 6e 74 72 s;.. DWORD Entr
20e20 79 50 6f 69 6e 74 54 6f 6b 65 6e 3b 0d 0a 20 20 yPointToken;..
20e30 49 4d 41 47 45 5f 44 41 54 41 5f 44 49 52 45 43 IMAGE_DATA_DIREC
20e40 54 4f 52 59 20 52 65 73 6f 75 72 63 65 73 3b 0d TORY Resources;.
20e50 0a 20 20 49 4d 41 47 45 5f 44 41 54 41 5f 44 49 . IMAGE_DATA_DI
20e60 52 45 43 54 4f 52 59 20 53 74 72 6f 6e 67 4e 61 RECTORY StrongNa
20e70 6d 65 53 69 67 6e 61 74 75 72 65 3b 0d 0a 20 20 meSignature;..
20e80 49 4d 41 47 45 5f 44 41 54 41 5f 44 49 52 45 43 IMAGE_DATA_DIREC
20e90 54 4f 52 59 20 43 6f 64 65 4d 61 6e 61 67 65 72 TORY CodeManager
20ea0 54 61 62 6c 65 3b 0d 0a 20 20 49 4d 41 47 45 5f Table;.. IMAGE_
20eb0 44 41 54 41 5f 44 49 52 45 43 54 4f 52 59 20 56 DATA_DIRECTORY V
20ec0 54 61 62 6c 65 46 69 78 75 70 73 3b 0d 0a 20 20 TableFixups;..
20ed0 49 4d 41 47 45 5f 44 41 54 41 5f 44 49 52 45 43 IMAGE_DATA_DIREC
20ee0 54 4f 52 59 20 45 78 70 6f 72 74 41 64 64 72 65 TORY ExportAddre
20ef0 73 73 54 61 62 6c 65 4a 75 6d 70 73 3b 0d 0a 20 ssTableJumps;..
20f00 20 49 4d 41 47 45 5f 44 41 54 41 5f 44 49 52 45 IMAGE_DATA_DIRE
20f10 43 54 4f 52 59 20 4d 61 6e 61 67 65 64 4e 61 74 CTORY ManagedNat
20f20 69 76 65 48 65 61 64 65 72 3b 0d 0a 7d 0d 0a 61 iveHeader;..}..a
20f30 6c 69 61 73 20 49 4d 41 47 45 5f 43 4f 52 32 30 lias IMAGE_COR20
20f40 5f 48 45 41 44 45 52 2a 20 50 49 4d 41 47 45 5f _HEADER* PIMAGE_
20f50 43 4f 52 32 30 5f 48 45 41 44 45 52 3b 0d 0a 0d COR20_HEADER;...
20f60 0a 2f 2f 20 23 65 6e 64 69 66 20 2f 2f 20 5f 5f .// #endif // __
20f70 49 4d 41 47 45 5f 43 4f 52 32 30 5f 48 45 41 44 IMAGE_COR20_HEAD
20f80 45 52 5f 44 45 46 49 4e 45 44 5f 5f 0d 0a 0d 0a ER_DEFINED__....
20f90 2f 2f 20 23 69 66 64 65 66 20 5f 4d 41 43 0d 0a // #ifdef _MAC..
20fa0 2f 2f 20 23 69 66 6e 64 65 66 20 5f 49 4e 43 5f // #ifndef _INC_
20fb0 53 54 52 49 4e 47 0d 0a 2f 2f 20 23 2e 2e 2e 0d STRING..// #....
20fc0 0a 2f 2f 20 23 65 6e 64 69 66 20 2f 2a 20 5f 49 .// #endif /* _I
20fd0 4e 43 5f 53 54 52 49 4e 47 20 2a 2f 0d 0a 2f 2f NC_STRING */..//
20fe0 20 23 65 6c 73 65 0d 0a 2f 2f 20 23 69 6e 63 6c #else..// #incl
20ff0 75 64 65 20 3c 73 74 72 69 6e 67 2e 68 3e 0d 0a ude <string.h>..
21000 2f 2f 20 23 65 6e 64 69 66 20 2f 2f 20 5f 4d 41 // #endif // _MA
21010 43 0d 0a 0d 0a 2f 2f 20 23 69 66 6e 64 65 66 20 C....// #ifndef
21020 5f 53 4c 49 53 54 5f 48 45 41 44 45 52 5f 0d 0a _SLIST_HEADER_..
21030 2f 2f 20 23 64 65 66 69 6e 65 20 5f 53 4c 49 53 // #define _SLIS
21040 54 5f 48 45 41 44 45 52 5f 0d 0a 0d 0a 61 6c 69 T_HEADER_....ali
21050 61 73 20 53 49 4e 47 4c 45 5f 4c 49 53 54 5f 45 as SINGLE_LIST_E
21060 4e 54 52 59 20 53 4c 49 53 54 5f 45 4e 54 52 59 NTRY SLIST_ENTRY
21070 3b 0d 0a 61 6c 69 61 73 20 5f 53 49 4e 47 4c 45 ;..alias _SINGLE
21080 5f 4c 49 53 54 5f 45 4e 54 52 59 20 5f 53 4c 49 _LIST_ENTRY _SLI
21090 53 54 5f 45 4e 54 52 59 3b 0d 0a 61 6c 69 61 73 ST_ENTRY;..alias
210a0 20 50 53 49 4e 47 4c 45 5f 4c 49 53 54 5f 45 4e PSINGLE_LIST_EN
210b0 54 52 59 20 50 53 4c 49 53 54 5f 45 4e 54 52 59 TRY PSLIST_ENTRY
210c0 3b 0d 0a 0d 0a 2f 2f 20 23 69 66 20 64 65 66 69 ;....// #if defi
210d0 6e 65 64 28 5f 57 49 4e 36 34 29 0d 0a 0d 0a 2f ned(_WIN64)..../
210e0 2f 20 2e 2e 2e 0d 0a 0d 0a 2f 2f 20 2e 2e 2e 0d / .......// ....
210f0 0a 0d 0a 2f 2f 20 23 65 6c 73 65 0d 0a 0d 0a 75 ...// #else....u
21100 6e 69 6f 6e 20 5f 53 4c 49 53 54 5f 48 45 41 44 nion _SLIST_HEAD
21110 45 52 20 7b 0d 0a 20 20 55 4c 4f 4e 47 4c 4f 4e ER {.. ULONGLON
21120 47 20 41 6c 69 67 6e 6d 65 6e 74 3b 0d 0a 73 74 G Alignment;..st
21130 72 75 63 74 20 7b 0d 0a 20 20 53 4c 49 53 54 5f ruct {.. SLIST_
21140 45 4e 54 52 59 20 4e 65 78 74 3b 0d 0a 20 20 57 ENTRY Next;.. W
21150 4f 52 44 20 44 65 70 74 68 3b 0d 0a 20 20 57 4f ORD Depth;.. WO
21160 52 44 20 53 65 71 75 65 6e 63 65 3b 0d 0a 7d 0d RD Sequence;..}.
21170 0a 0d 0a 7d 0d 0a 61 6c 69 61 73 20 5f 53 4c 49 ...}..alias _SLI
21180 53 54 5f 48 45 41 44 45 52 20 53 4c 49 53 54 5f ST_HEADER SLIST_
21190 48 45 41 44 45 52 3b 0d 0a 61 6c 69 61 73 20 5f HEADER;..alias _
211a0 53 4c 49 53 54 5f 48 45 41 44 45 52 2a 20 50 53 SLIST_HEADER* PS
211b0 4c 49 53 54 5f 48 45 41 44 45 52 3b 0d 0a 0d 0a LIST_HEADER;....
211c0 2f 2f 20 23 65 6e 64 69 66 0d 0a 0d 0a 2f 2f 20 // #endif....//
211d0 23 65 6e 64 69 66 0d 0a 0d 0a 65 78 74 65 72 6e #endif....extern
211e0 28 57 69 6e 64 6f 77 73 29 20 65 78 70 6f 72 74 (Windows) export
211f0 20 56 4f 49 44 20 52 74 6c 49 6e 69 74 69 61 6c VOID RtlInitial
21200 69 7a 65 53 4c 69 73 74 48 65 61 64 28 0d 0a 20 izeSListHead(..
21210 20 50 53 4c 49 53 54 5f 48 45 41 44 45 52 20 4c PSLIST_HEADER L
21220 69 73 74 48 65 61 64 29 3b 0d 0a 0d 0a 65 78 74 istHead);....ext
21230 65 72 6e 28 57 69 6e 64 6f 77 73 29 20 65 78 70 ern(Windows) exp
21240 6f 72 74 20 50 53 4c 49 53 54 5f 45 4e 54 52 59 ort PSLIST_ENTRY
21250 20 52 74 6c 46 69 72 73 74 45 6e 74 72 79 53 4c RtlFirstEntrySL
21260 69 73 74 28 0d 0a 20 20 53 4c 49 53 54 5f 48 45 ist(.. SLIST_HE
21270 41 44 45 52 20 2a 4c 69 73 74 48 65 61 64 29 3b ADER *ListHead);
21280 0d 0a 0d 0a 65 78 74 65 72 6e 28 57 69 6e 64 6f ....extern(Windo
21290 77 73 29 20 65 78 70 6f 72 74 20 50 53 4c 49 53 ws) export PSLIS
212a0 54 5f 45 4e 54 52 59 20 52 74 6c 49 6e 74 65 72 T_ENTRY RtlInter
212b0 6c 6f 63 6b 65 64 50 6f 70 45 6e 74 72 79 53 4c lockedPopEntrySL
212c0 69 73 74 28 0d 0a 20 20 50 53 4c 49 53 54 5f 48 ist(.. PSLIST_H
212d0 45 41 44 45 52 20 4c 69 73 74 48 65 61 64 29 3b EADER ListHead);
212e0 0d 0a 0d 0a 65 78 74 65 72 6e 28 57 69 6e 64 6f ....extern(Windo
212f0 77 73 29 20 65 78 70 6f 72 74 20 50 53 4c 49 53 ws) export PSLIS
21300 54 5f 45 4e 54 52 59 20 52 74 6c 49 6e 74 65 72 T_ENTRY RtlInter
21310 6c 6f 63 6b 65 64 50 75 73 68 45 6e 74 72 79 53 lockedPushEntryS
21320 4c 69 73 74 28 0d 0a 20 20 50 53 4c 49 53 54 5f List(.. PSLIST_
21330 48 45 41 44 45 52 20 4c 69 73 74 48 65 61 64 2c HEADER ListHead,
21340 0d 0a 20 20 50 53 4c 49 53 54 5f 45 4e 54 52 59 .. PSLIST_ENTRY
21350 20 4c 69 73 74 45 6e 74 72 79 29 3b 0d 0a 0d 0a ListEntry);....
21360 65 78 74 65 72 6e 28 57 69 6e 64 6f 77 73 29 20 extern(Windows)
21370 65 78 70 6f 72 74 20 50 53 4c 49 53 54 5f 45 4e export PSLIST_EN
21380 54 52 59 20 52 74 6c 49 6e 74 65 72 6c 6f 63 6b TRY RtlInterlock
21390 65 64 46 6c 75 73 68 53 4c 69 73 74 28 0d 0a 20 edFlushSList(..
213a0 20 50 53 4c 49 53 54 5f 48 45 41 44 45 52 20 4c PSLIST_HEADER L
213b0 69 73 74 48 65 61 64 29 3b 0d 0a 0d 0a 65 78 74 istHead);....ext
213c0 65 72 6e 28 57 69 6e 64 6f 77 73 29 20 65 78 70 ern(Windows) exp
213d0 6f 72 74 20 57 4f 52 44 20 52 74 6c 51 75 65 72 ort WORD RtlQuer
213e0 79 44 65 70 74 68 53 4c 69 73 74 28 0d 0a 20 20 yDepthSList(..
213f0 50 53 4c 49 53 54 5f 48 45 41 44 45 52 20 4c 69 PSLIST_HEADER Li
21400 73 74 48 65 61 64 29 3b 0d 0a 0d 0a 65 6e 75 6d stHead);....enum
21410 20 3a 20 75 69 6e 74 20 7b 20 48 45 41 50 5f 4e : uint { HEAP_N
21420 4f 5f 53 45 52 49 41 4c 49 5a 45 20 3d 20 30 78 O_SERIALIZE = 0x
21430 30 30 30 30 30 30 30 31 20 7d 0d 0a 65 6e 75 6d 00000001 }..enum
21440 20 3a 20 75 69 6e 74 20 7b 20 48 45 41 50 5f 47 : uint { HEAP_G
21450 52 4f 57 41 42 4c 45 20 3d 20 30 78 30 30 30 30 ROWABLE = 0x0000
21460 30 30 30 32 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 0002 }..enum : u
21470 69 6e 74 20 7b 20 48 45 41 50 5f 47 45 4e 45 52 int { HEAP_GENER
21480 41 54 45 5f 45 58 43 45 50 54 49 4f 4e 53 20 3d ATE_EXCEPTIONS =
21490 20 30 78 30 30 30 30 30 30 30 34 20 7d 0d 0a 65 0x00000004 }..e
214a0 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 48 45 41 num : uint { HEA
214b0 50 5f 5a 45 52 4f 5f 4d 45 4d 4f 52 59 20 3d 20 P_ZERO_MEMORY =
214c0 30 78 30 30 30 30 30 30 30 38 20 7d 0d 0a 65 6e 0x00000008 }..en
214d0 75 6d 20 3a 20 75 69 6e 74 20 7b 20 48 45 41 50 um : uint { HEAP
214e0 5f 52 45 41 4c 4c 4f 43 5f 49 4e 5f 50 4c 41 43 _REALLOC_IN_PLAC
214f0 45 5f 4f 4e 4c 59 20 3d 20 30 78 30 30 30 30 30 E_ONLY = 0x00000
21500 30 31 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 010 }..enum : ui
21510 6e 74 20 7b 20 48 45 41 50 5f 54 41 49 4c 5f 43 nt { HEAP_TAIL_C
21520 48 45 43 4b 49 4e 47 5f 45 4e 41 42 4c 45 44 20 HECKING_ENABLED
21530 3d 20 30 78 30 30 30 30 30 30 32 30 20 7d 0d 0a = 0x00000020 }..
21540 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 48 45 enum : uint { HE
21550 41 50 5f 46 52 45 45 5f 43 48 45 43 4b 49 4e 47 AP_FREE_CHECKING
21560 5f 45 4e 41 42 4c 45 44 20 3d 20 30 78 30 30 30 _ENABLED = 0x000
21570 30 30 30 34 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 00040 }..enum :
21580 75 69 6e 74 20 7b 20 48 45 41 50 5f 44 49 53 41 uint { HEAP_DISA
21590 42 4c 45 5f 43 4f 41 4c 45 53 43 45 5f 4f 4e 5f BLE_COALESCE_ON_
215a0 46 52 45 45 20 3d 20 30 78 30 30 30 30 30 30 38 FREE = 0x0000008
215b0 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 0 }..enum : uint
215c0 20 7b 20 48 45 41 50 5f 43 52 45 41 54 45 5f 41 { HEAP_CREATE_A
215d0 4c 49 47 4e 5f 31 36 20 3d 20 30 78 30 30 30 31 LIGN_16 = 0x0001
215e0 30 30 30 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 0000 }..enum : u
215f0 69 6e 74 20 7b 20 48 45 41 50 5f 43 52 45 41 54 int { HEAP_CREAT
21600 45 5f 45 4e 41 42 4c 45 5f 54 52 41 43 49 4e 47 E_ENABLE_TRACING
21610 20 3d 20 30 78 30 30 30 32 30 30 30 30 20 7d 0d = 0x00020000 }.
21620 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 48 .enum : uint { H
21630 45 41 50 5f 4d 41 58 49 4d 55 4d 5f 54 41 47 20 EAP_MAXIMUM_TAG
21640 3d 20 30 78 30 46 46 46 20 7d 0d 0a 65 6e 75 6d = 0x0FFF }..enum
21650 20 3a 20 75 69 6e 74 20 7b 20 48 45 41 50 5f 50 : uint { HEAP_P
21660 53 45 55 44 4f 5f 54 41 47 5f 46 4c 41 47 20 3d SEUDO_TAG_FLAG =
21670 20 30 78 38 30 30 30 20 7d 0d 0a 65 6e 75 6d 20 0x8000 }..enum
21680 3a 20 75 69 6e 74 20 7b 20 48 45 41 50 5f 54 41 : uint { HEAP_TA
21690 47 5f 53 48 49 46 54 20 3d 20 31 38 20 7d 0d 0a G_SHIFT = 18 }..
216a0 75 69 6e 74 20 48 45 41 50 5f 4d 41 4b 45 5f 54 uint HEAP_MAKE_T
216b0 41 47 5f 46 4c 41 47 53 28 75 69 6e 74 20 62 2c AG_FLAGS(uint b,
216c0 20 75 69 6e 74 20 6f 29 7b 20 72 65 74 75 72 6e uint o){ return
216d0 20 62 20 2b 20 28 6f 20 3c 3c 20 31 38 29 3b 20 b + (o << 18);
216e0 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 }....enum : uint
216f0 20 7b 20 49 53 5f 54 45 58 54 5f 55 4e 49 43 4f { IS_TEXT_UNICO
21700 44 45 5f 41 53 43 49 49 31 36 20 3d 20 30 78 30 DE_ASCII16 = 0x0
21710 30 30 31 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 001 }..enum : ui
21720 6e 74 20 7b 20 49 53 5f 54 45 58 54 5f 55 4e 49 nt { IS_TEXT_UNI
21730 43 4f 44 45 5f 52 45 56 45 52 53 45 5f 41 53 43 CODE_REVERSE_ASC
21740 49 49 31 36 20 3d 20 30 78 30 30 31 30 20 7d 0d II16 = 0x0010 }.
21750 0a 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b ...enum : uint {
21760 20 49 53 5f 54 45 58 54 5f 55 4e 49 43 4f 44 45 IS_TEXT_UNICODE
21770 5f 53 54 41 54 49 53 54 49 43 53 20 3d 20 30 78 _STATISTICS = 0x
21780 30 30 30 32 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 0002 }..enum : u
21790 69 6e 74 20 7b 20 49 53 5f 54 45 58 54 5f 55 4e int { IS_TEXT_UN
217a0 49 43 4f 44 45 5f 52 45 56 45 52 53 45 5f 53 54 ICODE_REVERSE_ST
217b0 41 54 49 53 54 49 43 53 20 3d 20 30 78 30 30 32 ATISTICS = 0x002
217c0 30 20 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 75 69 0 }....enum : ui
217d0 6e 74 20 7b 20 49 53 5f 54 45 58 54 5f 55 4e 49 nt { IS_TEXT_UNI
217e0 43 4f 44 45 5f 43 4f 4e 54 52 4f 4c 53 20 3d 20 CODE_CONTROLS =
217f0 30 78 30 30 30 34 20 7d 0d 0a 65 6e 75 6d 20 3a 0x0004 }..enum :
21800 20 75 69 6e 74 20 7b 20 49 53 5f 54 45 58 54 5f uint { IS_TEXT_
21810 55 4e 49 43 4f 44 45 5f 52 45 56 45 52 53 45 5f UNICODE_REVERSE_
21820 43 4f 4e 54 52 4f 4c 53 20 3d 20 30 78 30 30 34 CONTROLS = 0x004
21830 30 20 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 75 69 0 }....enum : ui
21840 6e 74 20 7b 20 49 53 5f 54 45 58 54 5f 55 4e 49 nt { IS_TEXT_UNI
21850 43 4f 44 45 5f 53 49 47 4e 41 54 55 52 45 20 3d CODE_SIGNATURE =
21860 20 30 78 30 30 30 38 20 7d 0d 0a 65 6e 75 6d 20 0x0008 }..enum
21870 3a 20 75 69 6e 74 20 7b 20 49 53 5f 54 45 58 54 : uint { IS_TEXT
21880 5f 55 4e 49 43 4f 44 45 5f 52 45 56 45 52 53 45 _UNICODE_REVERSE
21890 5f 53 49 47 4e 41 54 55 52 45 20 3d 20 30 78 30 _SIGNATURE = 0x0
218a0 30 38 30 20 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 080 }....enum :
218b0 75 69 6e 74 20 7b 20 49 53 5f 54 45 58 54 5f 55 uint { IS_TEXT_U
218c0 4e 49 43 4f 44 45 5f 49 4c 4c 45 47 41 4c 5f 43 NICODE_ILLEGAL_C
218d0 48 41 52 53 20 3d 20 30 78 30 31 30 30 20 7d 0d HARS = 0x0100 }.
218e0 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 .enum : uint { I
218f0 53 5f 54 45 58 54 5f 55 4e 49 43 4f 44 45 5f 4f S_TEXT_UNICODE_O
21900 44 44 5f 4c 45 4e 47 54 48 20 3d 20 30 78 30 32 DD_LENGTH = 0x02
21910 30 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 00 }..enum : uin
21920 74 20 7b 20 49 53 5f 54 45 58 54 5f 55 4e 49 43 t { IS_TEXT_UNIC
21930 4f 44 45 5f 44 42 43 53 5f 4c 45 41 44 42 59 54 ODE_DBCS_LEADBYT
21940 45 20 3d 20 30 78 30 34 30 30 20 7d 0d 0a 65 6e E = 0x0400 }..en
21950 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 53 5f 54 um : uint { IS_T
21960 45 58 54 5f 55 4e 49 43 4f 44 45 5f 4e 55 4c 4c EXT_UNICODE_NULL
21970 5f 42 59 54 45 53 20 3d 20 30 78 31 30 30 30 20 _BYTES = 0x1000
21980 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 }....enum : uint
21990 20 7b 20 49 53 5f 54 45 58 54 5f 55 4e 49 43 4f { IS_TEXT_UNICO
219a0 44 45 5f 55 4e 49 43 4f 44 45 5f 4d 41 53 4b 20 DE_UNICODE_MASK
219b0 3d 20 30 78 30 30 30 46 20 7d 0d 0a 65 6e 75 6d = 0x000F }..enum
219c0 20 3a 20 75 69 6e 74 20 7b 20 49 53 5f 54 45 58 : uint { IS_TEX
219d0 54 5f 55 4e 49 43 4f 44 45 5f 52 45 56 45 52 53 T_UNICODE_REVERS
219e0 45 5f 4d 41 53 4b 20 3d 20 30 78 30 30 46 30 20 E_MASK = 0x00F0
219f0 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b }..enum : uint {
21a00 20 49 53 5f 54 45 58 54 5f 55 4e 49 43 4f 44 45 IS_TEXT_UNICODE
21a10 5f 4e 4f 54 5f 55 4e 49 43 4f 44 45 5f 4d 41 53 _NOT_UNICODE_MAS
21a20 4b 20 3d 20 30 78 30 46 30 30 20 7d 0d 0a 65 6e K = 0x0F00 }..en
21a30 75 6d 20 3a 20 75 69 6e 74 20 7b 20 49 53 5f 54 um : uint { IS_T
21a40 45 58 54 5f 55 4e 49 43 4f 44 45 5f 4e 4f 54 5f EXT_UNICODE_NOT_
21a50 41 53 43 49 49 5f 4d 41 53 4b 20 3d 20 30 78 46 ASCII_MASK = 0xF
21a60 30 30 30 20 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 000 }....enum :
21a70 75 69 6e 74 20 7b 20 43 4f 4d 50 52 45 53 53 49 uint { COMPRESSI
21a80 4f 4e 5f 46 4f 52 4d 41 54 5f 4e 4f 4e 45 20 3d ON_FORMAT_NONE =
21a90 20 30 78 30 30 30 30 20 7d 0d 0a 65 6e 75 6d 20 0x0000 }..enum
21aa0 3a 20 75 69 6e 74 20 7b 20 43 4f 4d 50 52 45 53 : uint { COMPRES
21ab0 53 49 4f 4e 5f 46 4f 52 4d 41 54 5f 44 45 46 41 SION_FORMAT_DEFA
21ac0 55 4c 54 20 3d 20 30 78 30 30 30 31 20 7d 0d 0a ULT = 0x0001 }..
21ad0 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 43 4f enum : uint { CO
21ae0 4d 50 52 45 53 53 49 4f 4e 5f 46 4f 52 4d 41 54 MPRESSION_FORMAT
21af0 5f 4c 5a 4e 54 31 20 3d 20 30 78 30 30 30 32 20 _LZNT1 = 0x0002
21b00 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b }..enum : uint {
21b10 20 43 4f 4d 50 52 45 53 53 49 4f 4e 5f 45 4e 47 COMPRESSION_ENG
21b20 49 4e 45 5f 53 54 41 4e 44 41 52 44 20 3d 20 30 INE_STANDARD = 0
21b30 78 30 30 30 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 x0000 }..enum :
21b40 75 69 6e 74 20 7b 20 43 4f 4d 50 52 45 53 53 49 uint { COMPRESSI
21b50 4f 4e 5f 45 4e 47 49 4e 45 5f 4d 41 58 49 4d 55 ON_ENGINE_MAXIMU
21b60 4d 20 3d 20 30 78 30 31 30 30 20 7d 0d 0a 65 6e M = 0x0100 }..en
21b70 75 6d 20 3a 20 75 69 6e 74 20 7b 20 43 4f 4d 50 um : uint { COMP
21b80 52 45 53 53 49 4f 4e 5f 45 4e 47 49 4e 45 5f 48 RESSION_ENGINE_H
21b90 49 42 45 52 20 3d 20 30 78 30 32 30 30 20 7d 0d IBER = 0x0200 }.
21ba0 0a 0d 0a 65 78 74 65 72 6e 28 57 69 6e 64 6f 77 ...extern(Window
21bb0 73 29 20 65 78 70 6f 72 74 20 53 49 5a 45 5f 54 s) export SIZE_T
21bc0 20 52 74 6c 43 6f 6d 70 61 72 65 4d 65 6d 6f 72 RtlCompareMemor
21bd0 79 28 0d 0a 20 20 56 4f 49 44 20 2a 53 6f 75 72 y(.. VOID *Sour
21be0 63 65 31 2c 0d 0a 20 20 56 4f 49 44 20 2a 53 6f ce1,.. VOID *So
21bf0 75 72 63 65 32 2c 0d 0a 20 20 53 49 5a 45 5f 54 urce2,.. SIZE_T
21c00 20 4c 65 6e 67 74 68 29 3b 0d 0a 0d 0a 2f 2f 20 Length);....//
21c10 23 69 66 20 64 65 66 69 6e 65 64 28 5f 4d 5f 41 #if defined(_M_A
21c20 4d 44 36 34 29 20 7c 7c 20 64 65 66 69 6e 65 64 MD64) || defined
21c30 28 5f 4d 5f 49 41 36 34 29 0d 0a 0d 0a 2f 2f 20 (_M_IA64)....//
21c40 23 2e 2e 2e 0d 0a 2f 2f 20 2e 2e 2e 0d 0a 0d 0a #.....// .......
21c50 2f 2f 20 2e 2e 2e 0d 0a 0d 0a 2f 2f 20 23 69 66 // .......// #if
21c60 20 21 64 65 66 69 6e 65 64 28 5f 4d 5f 41 4d 44 !defined(_M_AMD
21c70 36 34 29 0d 0a 0d 0a 2f 2f 20 2e 2e 2e 0d 0a 0d 64)....// ......
21c80 0a 2f 2f 20 23 65 6e 64 69 66 0d 0a 0d 0a 2f 2f .// #endif....//
21c90 20 2e 2e 2e 0d 0a 0d 0a 2f 2f 20 2e 2e 2e 0d 0a .......// .....
21ca0 0d 0a 2f 2f 20 2e 2e 2e 0d 0a 0d 0a 2f 2f 20 23 ..// .......// #
21cb0 65 6c 73 65 0d 0a 0d 0a 62 69 74 20 52 74 6c 45 else....bit RtlE
21cc0 71 75 61 6c 4d 65 6d 6f 72 79 28 76 6f 69 64 2a qualMemory(void*
21cd0 20 78 2c 20 76 6f 69 64 2a 20 79 2c 20 75 69 6e x, void* y, uin
21ce0 74 20 6c 65 6e 29 7b 20 72 65 74 75 72 6e 20 6d t len){ return m
21cf0 65 6d 63 6d 70 28 78 2c 20 79 2c 20 6c 65 6e 29 emcmp(x, y, len)
21d00 20 3d 3d 20 30 3b 20 7d 0d 0a 76 6f 69 64 20 52 == 0; }..void R
21d10 74 6c 4d 6f 76 65 4d 65 6d 6f 72 79 28 76 6f 69 tlMoveMemory(voi
21d20 64 2a 20 64 2c 20 76 6f 69 64 2a 20 73 2c 20 75 d* d, void* s, u
21d30 69 6e 74 20 6c 65 6e 29 7b 20 6d 65 6d 6d 6f 76 int len){ memmov
21d40 65 28 64 2c 20 73 2c 20 6c 65 6e 29 3b 20 7d 0d e(d, s, len); }.
21d50 0a 76 6f 69 64 20 52 74 6c 43 6f 70 79 4d 65 6d .void RtlCopyMem
21d60 6f 72 79 28 76 6f 69 64 2a 20 64 2c 20 76 6f 69 ory(void* d, voi
21d70 64 2a 20 73 2c 20 75 69 6e 74 20 6c 65 6e 29 7b d* s, uint len){
21d80 20 6d 65 6d 63 70 79 28 64 2c 20 73 2c 20 6c 65 memcpy(d, s, le
21d90 6e 29 3b 20 7d 0d 0a 76 6f 69 64 20 52 74 6c 46 n); }..void RtlF
21da0 69 6c 6c 4d 65 6d 6f 72 79 28 76 6f 69 64 2a 20 illMemory(void*
21db0 64 2c 20 75 69 6e 74 20 6c 65 6e 2c 20 75 62 79 d, uint len, uby
21dc0 74 65 20 66 29 7b 20 6d 65 6d 73 65 74 28 64 2c te f){ memset(d,
21dd0 20 66 2c 20 6c 65 6e 29 3b 20 7d 0d 0a 76 6f 69 f, len); }..voi
21de0 64 20 52 74 6c 5a 65 72 6f 4d 65 6d 6f 72 79 28 d RtlZeroMemory(
21df0 76 6f 69 64 2a 20 64 2c 20 75 69 6e 74 20 6c 65 void* d, uint le
21e00 6e 29 7b 20 6d 65 6d 73 65 74 28 64 2c 20 30 2c n){ memset(d, 0,
21e10 20 6c 65 6e 29 3b 20 7d 0d 0a 0d 0a 2f 2f 20 23 len); }....// #
21e20 65 6e 64 69 66 0d 0a 0d 0a 73 74 72 75 63 74 20 endif....struct
21e30 5f 4d 45 53 53 41 47 45 5f 52 45 53 4f 55 52 43 _MESSAGE_RESOURC
21e40 45 5f 45 4e 54 52 59 20 7b 0d 0a 20 20 57 4f 52 E_ENTRY {.. WOR
21e50 44 20 4c 65 6e 67 74 68 3b 0d 0a 20 20 57 4f 52 D Length;.. WOR
21e60 44 20 46 6c 61 67 73 3b 0d 0a 20 20 42 59 54 45 D Flags;.. BYTE
21e70 20 54 65 78 74 5b 20 31 20 5d 3b 0d 0a 7d 0d 0a Text[ 1 ];..}..
21e80 61 6c 69 61 73 20 5f 4d 45 53 53 41 47 45 5f 52 alias _MESSAGE_R
21e90 45 53 4f 55 52 43 45 5f 45 4e 54 52 59 20 4d 45 ESOURCE_ENTRY ME
21ea0 53 53 41 47 45 5f 52 45 53 4f 55 52 43 45 5f 45 SSAGE_RESOURCE_E
21eb0 4e 54 52 59 3b 0d 0a 61 6c 69 61 73 20 5f 4d 45 NTRY;..alias _ME
21ec0 53 53 41 47 45 5f 52 45 53 4f 55 52 43 45 5f 45 SSAGE_RESOURCE_E
21ed0 4e 54 52 59 2a 20 50 4d 45 53 53 41 47 45 5f 52 NTRY* PMESSAGE_R
21ee0 45 53 4f 55 52 43 45 5f 45 4e 54 52 59 3b 0d 0a ESOURCE_ENTRY;..
21ef0 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
21f00 4d 45 53 53 41 47 45 5f 52 45 53 4f 55 52 43 45 MESSAGE_RESOURCE
21f10 5f 55 4e 49 43 4f 44 45 20 3d 20 30 78 30 30 30 _UNICODE = 0x000
21f20 31 20 7d 0d 0a 0d 0a 73 74 72 75 63 74 20 5f 4d 1 }....struct _M
21f30 45 53 53 41 47 45 5f 52 45 53 4f 55 52 43 45 5f ESSAGE_RESOURCE_
21f40 42 4c 4f 43 4b 20 7b 0d 0a 20 20 44 57 4f 52 44 BLOCK {.. DWORD
21f50 20 4c 6f 77 49 64 3b 0d 0a 20 20 44 57 4f 52 44 LowId;.. DWORD
21f60 20 48 69 67 68 49 64 3b 0d 0a 20 20 44 57 4f 52 HighId;.. DWOR
21f70 44 20 4f 66 66 73 65 74 54 6f 45 6e 74 72 69 65 D OffsetToEntrie
21f80 73 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 5f 4d 45 s;..}..alias _ME
21f90 53 53 41 47 45 5f 52 45 53 4f 55 52 43 45 5f 42 SSAGE_RESOURCE_B
21fa0 4c 4f 43 4b 20 4d 45 53 53 41 47 45 5f 52 45 53 LOCK MESSAGE_RES
21fb0 4f 55 52 43 45 5f 42 4c 4f 43 4b 3b 0d 0a 61 6c OURCE_BLOCK;..al
21fc0 69 61 73 20 5f 4d 45 53 53 41 47 45 5f 52 45 53 ias _MESSAGE_RES
21fd0 4f 55 52 43 45 5f 42 4c 4f 43 4b 2a 20 50 4d 45 OURCE_BLOCK* PME
21fe0 53 53 41 47 45 5f 52 45 53 4f 55 52 43 45 5f 42 SSAGE_RESOURCE_B
21ff0 4c 4f 43 4b 3b 0d 0a 0d 0a 73 74 72 75 63 74 20 LOCK;....struct
22000 5f 4d 45 53 53 41 47 45 5f 52 45 53 4f 55 52 43 _MESSAGE_RESOURC
22010 45 5f 44 41 54 41 20 7b 0d 0a 20 20 44 57 4f 52 E_DATA {.. DWOR
22020 44 20 4e 75 6d 62 65 72 4f 66 42 6c 6f 63 6b 73 D NumberOfBlocks
22030 3b 0d 0a 20 20 4d 45 53 53 41 47 45 5f 52 45 53 ;.. MESSAGE_RES
22040 4f 55 52 43 45 5f 42 4c 4f 43 4b 20 42 6c 6f 63 OURCE_BLOCK Bloc
22050 6b 73 5b 20 31 20 5d 3b 0d 0a 7d 0d 0a 61 6c 69 ks[ 1 ];..}..ali
22060 61 73 20 5f 4d 45 53 53 41 47 45 5f 52 45 53 4f as _MESSAGE_RESO
22070 55 52 43 45 5f 44 41 54 41 20 4d 45 53 53 41 47 URCE_DATA MESSAG
22080 45 5f 52 45 53 4f 55 52 43 45 5f 44 41 54 41 3b E_RESOURCE_DATA;
22090 0d 0a 61 6c 69 61 73 20 5f 4d 45 53 53 41 47 45 ..alias _MESSAGE
220a0 5f 52 45 53 4f 55 52 43 45 5f 44 41 54 41 2a 20 _RESOURCE_DATA*
220b0 50 4d 45 53 53 41 47 45 5f 52 45 53 4f 55 52 43 PMESSAGE_RESOURC
220c0 45 5f 44 41 54 41 3b 0d 0a 0d 0a 73 74 72 75 63 E_DATA;....struc
220d0 74 20 5f 4f 53 56 45 52 53 49 4f 4e 49 4e 46 4f t _OSVERSIONINFO
220e0 41 20 7b 0d 0a 20 20 44 57 4f 52 44 20 64 77 4f A {.. DWORD dwO
220f0 53 56 65 72 73 69 6f 6e 49 6e 66 6f 53 69 7a 65 SVersionInfoSize
22100 3b 0d 0a 20 20 44 57 4f 52 44 20 64 77 4d 61 6a ;.. DWORD dwMaj
22110 6f 72 56 65 72 73 69 6f 6e 3b 0d 0a 20 20 44 57 orVersion;.. DW
22120 4f 52 44 20 64 77 4d 69 6e 6f 72 56 65 72 73 69 ORD dwMinorVersi
22130 6f 6e 3b 0d 0a 20 20 44 57 4f 52 44 20 64 77 42 on;.. DWORD dwB
22140 75 69 6c 64 4e 75 6d 62 65 72 3b 0d 0a 20 20 44 uildNumber;.. D
22150 57 4f 52 44 20 64 77 50 6c 61 74 66 6f 72 6d 49 WORD dwPlatformI
22160 64 3b 0d 0a 20 20 43 48 41 52 20 73 7a 43 53 44 d;.. CHAR szCSD
22170 56 65 72 73 69 6f 6e 5b 20 31 32 38 20 5d 3b 0d Version[ 128 ];.
22180 0a 7d 0d 0a 61 6c 69 61 73 20 5f 4f 53 56 45 52 .}..alias _OSVER
22190 53 49 4f 4e 49 4e 46 4f 41 20 4f 53 56 45 52 53 SIONINFOA OSVERS
221a0 49 4f 4e 49 4e 46 4f 41 3b 0d 0a 61 6c 69 61 73 IONINFOA;..alias
221b0 20 5f 4f 53 56 45 52 53 49 4f 4e 49 4e 46 4f 41 _OSVERSIONINFOA
221c0 2a 20 50 4f 53 56 45 52 53 49 4f 4e 49 4e 46 4f * POSVERSIONINFO
221d0 41 3b 0d 0a 61 6c 69 61 73 20 5f 4f 53 56 45 52 A;..alias _OSVER
221e0 53 49 4f 4e 49 4e 46 4f 41 2a 20 4c 50 4f 53 56 SIONINFOA* LPOSV
221f0 45 52 53 49 4f 4e 49 4e 46 4f 41 3b 0d 0a 0d 0a ERSIONINFOA;....
22200 73 74 72 75 63 74 20 5f 4f 53 56 45 52 53 49 4f struct _OSVERSIO
22210 4e 49 4e 46 4f 57 20 7b 0d 0a 20 20 44 57 4f 52 NINFOW {.. DWOR
22220 44 20 64 77 4f 53 56 65 72 73 69 6f 6e 49 6e 66 D dwOSVersionInf
22230 6f 53 69 7a 65 3b 0d 0a 20 20 44 57 4f 52 44 20 oSize;.. DWORD
22240 64 77 4d 61 6a 6f 72 56 65 72 73 69 6f 6e 3b 0d dwMajorVersion;.
22250 0a 20 20 44 57 4f 52 44 20 64 77 4d 69 6e 6f 72 . DWORD dwMinor
22260 56 65 72 73 69 6f 6e 3b 0d 0a 20 20 44 57 4f 52 Version;.. DWOR
22270 44 20 64 77 42 75 69 6c 64 4e 75 6d 62 65 72 3b D dwBuildNumber;
22280 0d 0a 20 20 44 57 4f 52 44 20 64 77 50 6c 61 74 .. DWORD dwPlat
22290 66 6f 72 6d 49 64 3b 0d 0a 20 20 57 43 48 41 52 formId;.. WCHAR
222a0 20 73 7a 43 53 44 56 65 72 73 69 6f 6e 5b 20 31 szCSDVersion[ 1
222b0 32 38 20 5d 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 28 ];..}..alias
222c0 5f 4f 53 56 45 52 53 49 4f 4e 49 4e 46 4f 57 20 _OSVERSIONINFOW
222d0 4f 53 56 45 52 53 49 4f 4e 49 4e 46 4f 57 3b 0d OSVERSIONINFOW;.
222e0 0a 61 6c 69 61 73 20 5f 4f 53 56 45 52 53 49 4f .alias _OSVERSIO
222f0 4e 49 4e 46 4f 57 2a 20 50 4f 53 56 45 52 53 49 NINFOW* POSVERSI
22300 4f 4e 49 4e 46 4f 57 3b 0d 0a 61 6c 69 61 73 20 ONINFOW;..alias
22310 5f 4f 53 56 45 52 53 49 4f 4e 49 4e 46 4f 57 2a _OSVERSIONINFOW*
22320 20 4c 50 4f 53 56 45 52 53 49 4f 4e 49 4e 46 4f LPOSVERSIONINFO
22330 57 3b 0d 0a 61 6c 69 61 73 20 5f 4f 53 56 45 52 W;..alias _OSVER
22340 53 49 4f 4e 49 4e 46 4f 57 20 52 54 4c 5f 4f 53 SIONINFOW RTL_OS
22350 56 45 52 53 49 4f 4e 49 4e 46 4f 57 3b 0d 0a 61 VERSIONINFOW;..a
22360 6c 69 61 73 20 5f 4f 53 56 45 52 53 49 4f 4e 49 lias _OSVERSIONI
22370 4e 46 4f 57 2a 20 50 52 54 4c 5f 4f 53 56 45 52 NFOW* PRTL_OSVER
22380 53 49 4f 4e 49 4e 46 4f 57 3b 0d 0a 0d 0a 2f 2f SIONINFOW;....//
22390 20 23 69 66 64 65 66 20 55 4e 49 43 4f 44 45 0d #ifdef UNICODE.
223a0 0a 61 6c 69 61 73 20 4f 53 56 45 52 53 49 4f 4e .alias OSVERSION
223b0 49 4e 46 4f 57 20 4f 53 56 45 52 53 49 4f 4e 49 INFOW OSVERSIONI
223c0 4e 46 4f 3b 0d 0a 61 6c 69 61 73 20 50 4f 53 56 NFO;..alias POSV
223d0 45 52 53 49 4f 4e 49 4e 46 4f 57 20 50 4f 53 56 ERSIONINFOW POSV
223e0 45 52 53 49 4f 4e 49 4e 46 4f 3b 0d 0a 61 6c 69 ERSIONINFO;..ali
223f0 61 73 20 4c 50 4f 53 56 45 52 53 49 4f 4e 49 4e as LPOSVERSIONIN
22400 46 4f 57 20 4c 50 4f 53 56 45 52 53 49 4f 4e 49 FOW LPOSVERSIONI
22410 4e 46 4f 3b 0d 0a 2f 2f 20 23 65 6c 73 65 0d 0a NFO;..// #else..
22420 2f 2f 20 2e 2e 2e 0d 0a 2f 2f 20 23 65 6e 64 69 // .....// #endi
22430 66 20 2f 2f 20 55 4e 49 43 4f 44 45 0d 0a 0d 0a f // UNICODE....
22440 73 74 72 75 63 74 20 5f 4f 53 56 45 52 53 49 4f struct _OSVERSIO
22450 4e 49 4e 46 4f 45 58 41 20 7b 0d 0a 20 20 44 57 NINFOEXA {.. DW
22460 4f 52 44 20 64 77 4f 53 56 65 72 73 69 6f 6e 49 ORD dwOSVersionI
22470 6e 66 6f 53 69 7a 65 3b 0d 0a 20 20 44 57 4f 52 nfoSize;.. DWOR
22480 44 20 64 77 4d 61 6a 6f 72 56 65 72 73 69 6f 6e D dwMajorVersion
22490 3b 0d 0a 20 20 44 57 4f 52 44 20 64 77 4d 69 6e ;.. DWORD dwMin
224a0 6f 72 56 65 72 73 69 6f 6e 3b 0d 0a 20 20 44 57 orVersion;.. DW
224b0 4f 52 44 20 64 77 42 75 69 6c 64 4e 75 6d 62 65 ORD dwBuildNumbe
224c0 72 3b 0d 0a 20 20 44 57 4f 52 44 20 64 77 50 6c r;.. DWORD dwPl
224d0 61 74 66 6f 72 6d 49 64 3b 0d 0a 20 20 43 48 41 atformId;.. CHA
224e0 52 20 73 7a 43 53 44 56 65 72 73 69 6f 6e 5b 20 R szCSDVersion[
224f0 31 32 38 20 5d 3b 0d 0a 20 20 57 4f 52 44 20 77 128 ];.. WORD w
22500 53 65 72 76 69 63 65 50 61 63 6b 4d 61 6a 6f 72 ServicePackMajor
22510 3b 0d 0a 20 20 57 4f 52 44 20 77 53 65 72 76 69 ;.. WORD wServi
22520 63 65 50 61 63 6b 4d 69 6e 6f 72 3b 0d 0a 20 20 cePackMinor;..
22530 57 4f 52 44 20 77 53 75 69 74 65 4d 61 73 6b 3b WORD wSuiteMask;
22540 0d 0a 20 20 42 59 54 45 20 77 50 72 6f 64 75 63 .. BYTE wProduc
22550 74 54 79 70 65 3b 0d 0a 20 20 42 59 54 45 20 77 tType;.. BYTE w
22560 52 65 73 65 72 76 65 64 3b 0d 0a 7d 0d 0a 61 6c Reserved;..}..al
22570 69 61 73 20 5f 4f 53 56 45 52 53 49 4f 4e 49 4e ias _OSVERSIONIN
22580 46 4f 45 58 41 20 4f 53 56 45 52 53 49 4f 4e 49 FOEXA OSVERSIONI
22590 4e 46 4f 45 58 41 3b 0d 0a 61 6c 69 61 73 20 5f NFOEXA;..alias _
225a0 4f 53 56 45 52 53 49 4f 4e 49 4e 46 4f 45 58 41 OSVERSIONINFOEXA
225b0 2a 20 50 4f 53 56 45 52 53 49 4f 4e 49 4e 46 4f * POSVERSIONINFO
225c0 45 58 41 3b 0d 0a 61 6c 69 61 73 20 5f 4f 53 56 EXA;..alias _OSV
225d0 45 52 53 49 4f 4e 49 4e 46 4f 45 58 41 2a 20 4c ERSIONINFOEXA* L
225e0 50 4f 53 56 45 52 53 49 4f 4e 49 4e 46 4f 45 58 POSVERSIONINFOEX
225f0 41 3b 0d 0a 0d 0a 73 74 72 75 63 74 20 5f 4f 53 A;....struct _OS
22600 56 45 52 53 49 4f 4e 49 4e 46 4f 45 58 57 20 7b VERSIONINFOEXW {
22610 0d 0a 20 20 44 57 4f 52 44 20 64 77 4f 53 56 65 .. DWORD dwOSVe
22620 72 73 69 6f 6e 49 6e 66 6f 53 69 7a 65 3b 0d 0a rsionInfoSize;..
22630 20 20 44 57 4f 52 44 20 64 77 4d 61 6a 6f 72 56 DWORD dwMajorV
22640 65 72 73 69 6f 6e 3b 0d 0a 20 20 44 57 4f 52 44 ersion;.. DWORD
22650 20 64 77 4d 69 6e 6f 72 56 65 72 73 69 6f 6e 3b dwMinorVersion;
22660 0d 0a 20 20 44 57 4f 52 44 20 64 77 42 75 69 6c .. DWORD dwBuil
22670 64 4e 75 6d 62 65 72 3b 0d 0a 20 20 44 57 4f 52 dNumber;.. DWOR
22680 44 20 64 77 50 6c 61 74 66 6f 72 6d 49 64 3b 0d D dwPlatformId;.
22690 0a 20 20 57 43 48 41 52 20 73 7a 43 53 44 56 65 . WCHAR szCSDVe
226a0 72 73 69 6f 6e 5b 20 31 32 38 20 5d 3b 0d 0a 20 rsion[ 128 ];..
226b0 20 57 4f 52 44 20 77 53 65 72 76 69 63 65 50 61 WORD wServicePa
226c0 63 6b 4d 61 6a 6f 72 3b 0d 0a 20 20 57 4f 52 44 ckMajor;.. WORD
226d0 20 77 53 65 72 76 69 63 65 50 61 63 6b 4d 69 6e wServicePackMin
226e0 6f 72 3b 0d 0a 20 20 57 4f 52 44 20 77 53 75 69 or;.. WORD wSui
226f0 74 65 4d 61 73 6b 3b 0d 0a 20 20 42 59 54 45 20 teMask;.. BYTE
22700 77 50 72 6f 64 75 63 74 54 79 70 65 3b 0d 0a 20 wProductType;..
22710 20 42 59 54 45 20 77 52 65 73 65 72 76 65 64 3b BYTE wReserved;
22720 0d 0a 7d 0d 0a 61 6c 69 61 73 20 5f 4f 53 56 45 ..}..alias _OSVE
22730 52 53 49 4f 4e 49 4e 46 4f 45 58 57 20 4f 53 56 RSIONINFOEXW OSV
22740 45 52 53 49 4f 4e 49 4e 46 4f 45 58 57 3b 0d 0a ERSIONINFOEXW;..
22750 61 6c 69 61 73 20 5f 4f 53 56 45 52 53 49 4f 4e alias _OSVERSION
22760 49 4e 46 4f 45 58 57 2a 20 50 4f 53 56 45 52 53 INFOEXW* POSVERS
22770 49 4f 4e 49 4e 46 4f 45 58 57 3b 0d 0a 61 6c 69 IONINFOEXW;..ali
22780 61 73 20 5f 4f 53 56 45 52 53 49 4f 4e 49 4e 46 as _OSVERSIONINF
22790 4f 45 58 57 2a 20 4c 50 4f 53 56 45 52 53 49 4f OEXW* LPOSVERSIO
227a0 4e 49 4e 46 4f 45 58 57 3b 0d 0a 61 6c 69 61 73 NINFOEXW;..alias
227b0 20 5f 4f 53 56 45 52 53 49 4f 4e 49 4e 46 4f 45 _OSVERSIONINFOE
227c0 58 57 20 52 54 4c 5f 4f 53 56 45 52 53 49 4f 4e XW RTL_OSVERSION
227d0 49 4e 46 4f 45 58 57 3b 0d 0a 61 6c 69 61 73 20 INFOEXW;..alias
227e0 5f 4f 53 56 45 52 53 49 4f 4e 49 4e 46 4f 45 58 _OSVERSIONINFOEX
227f0 57 2a 20 50 52 54 4c 5f 4f 53 56 45 52 53 49 4f W* PRTL_OSVERSIO
22800 4e 49 4e 46 4f 45 58 57 3b 0d 0a 0d 0a 2f 2f 20 NINFOEXW;....//
22810 23 69 66 64 65 66 20 55 4e 49 43 4f 44 45 0d 0a #ifdef UNICODE..
22820 61 6c 69 61 73 20 4f 53 56 45 52 53 49 4f 4e 49 alias OSVERSIONI
22830 4e 46 4f 45 58 57 20 4f 53 56 45 52 53 49 4f 4e NFOEXW OSVERSION
22840 49 4e 46 4f 45 58 3b 0d 0a 61 6c 69 61 73 20 50 INFOEX;..alias P
22850 4f 53 56 45 52 53 49 4f 4e 49 4e 46 4f 45 58 57 OSVERSIONINFOEXW
22860 20 50 4f 53 56 45 52 53 49 4f 4e 49 4e 46 4f 45 POSVERSIONINFOE
22870 58 3b 0d 0a 61 6c 69 61 73 20 4c 50 4f 53 56 45 X;..alias LPOSVE
22880 52 53 49 4f 4e 49 4e 46 4f 45 58 57 20 4c 50 4f RSIONINFOEXW LPO
22890 53 56 45 52 53 49 4f 4e 49 4e 46 4f 45 58 3b 0d SVERSIONINFOEX;.
228a0 0a 2f 2f 20 23 65 6c 73 65 0d 0a 2f 2f 20 2e 2e .// #else..// ..
228b0 2e 0d 0a 2f 2f 20 23 65 6e 64 69 66 20 2f 2f 20 ...// #endif //
228c0 55 4e 49 43 4f 44 45 0d 0a 0d 0a 65 6e 75 6d 20 UNICODE....enum
228d0 3a 20 75 69 6e 74 20 7b 20 56 45 52 5f 45 51 55 : uint { VER_EQU
228e0 41 4c 20 3d 20 31 20 7d 0d 0a 65 6e 75 6d 20 3a AL = 1 }..enum :
228f0 20 75 69 6e 74 20 7b 20 56 45 52 5f 47 52 45 41 uint { VER_GREA
22900 54 45 52 20 3d 20 32 20 7d 0d 0a 65 6e 75 6d 20 TER = 2 }..enum
22910 3a 20 75 69 6e 74 20 7b 20 56 45 52 5f 47 52 45 : uint { VER_GRE
22920 41 54 45 52 5f 45 51 55 41 4c 20 3d 20 33 20 7d ATER_EQUAL = 3 }
22930 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
22940 56 45 52 5f 4c 45 53 53 20 3d 20 34 20 7d 0d 0a VER_LESS = 4 }..
22950 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 56 45 enum : uint { VE
22960 52 5f 4c 45 53 53 5f 45 51 55 41 4c 20 3d 20 35 R_LESS_EQUAL = 5
22970 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 }..enum : uint
22980 7b 20 56 45 52 5f 41 4e 44 20 3d 20 36 20 7d 0d { VER_AND = 6 }.
22990 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 56 .enum : uint { V
229a0 45 52 5f 4f 52 20 3d 20 37 20 7d 0d 0a 0d 0a 65 ER_OR = 7 }....e
229b0 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 56 45 52 num : uint { VER
229c0 5f 43 4f 4e 44 49 54 49 4f 4e 5f 4d 41 53 4b 20 _CONDITION_MASK
229d0 3d 20 37 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 = 7 }..enum : ui
229e0 6e 74 20 7b 20 56 45 52 5f 4e 55 4d 5f 42 49 54 nt { VER_NUM_BIT
229f0 53 5f 50 45 52 5f 43 4f 4e 44 49 54 49 4f 4e 5f S_PER_CONDITION_
22a00 4d 41 53 4b 20 3d 20 33 20 7d 0d 0a 0d 0a 65 6e MASK = 3 }....en
22a10 75 6d 20 3a 20 75 69 6e 74 20 7b 20 56 45 52 5f um : uint { VER_
22a20 4d 49 4e 4f 52 56 45 52 53 49 4f 4e 20 3d 20 30 MINORVERSION = 0
22a30 78 30 30 30 30 30 30 31 20 7d 0d 0a 65 6e 75 6d x0000001 }..enum
22a40 20 3a 20 75 69 6e 74 20 7b 20 56 45 52 5f 4d 41 : uint { VER_MA
22a50 4a 4f 52 56 45 52 53 49 4f 4e 20 3d 20 30 78 30 JORVERSION = 0x0
22a60 30 30 30 30 30 32 20 7d 0d 0a 65 6e 75 6d 20 3a 000002 }..enum :
22a70 20 75 69 6e 74 20 7b 20 56 45 52 5f 42 55 49 4c uint { VER_BUIL
22a80 44 4e 55 4d 42 45 52 20 3d 20 30 78 30 30 30 30 DNUMBER = 0x0000
22a90 30 30 34 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 004 }..enum : ui
22aa0 6e 74 20 7b 20 56 45 52 5f 50 4c 41 54 46 4f 52 nt { VER_PLATFOR
22ab0 4d 49 44 20 3d 20 30 78 30 30 30 30 30 30 38 20 MID = 0x0000008
22ac0 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b }..enum : uint {
22ad0 20 56 45 52 5f 53 45 52 56 49 43 45 50 41 43 4b VER_SERVICEPACK
22ae0 4d 49 4e 4f 52 20 3d 20 30 78 30 30 30 30 30 31 MINOR = 0x000001
22af0 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 0 }..enum : uint
22b00 20 7b 20 56 45 52 5f 53 45 52 56 49 43 45 50 41 { VER_SERVICEPA
22b10 43 4b 4d 41 4a 4f 52 20 3d 20 30 78 30 30 30 30 CKMAJOR = 0x0000
22b20 30 32 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 020 }..enum : ui
22b30 6e 74 20 7b 20 56 45 52 5f 53 55 49 54 45 4e 41 nt { VER_SUITENA
22b40 4d 45 20 3d 20 30 78 30 30 30 30 30 34 30 20 7d ME = 0x0000040 }
22b50 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
22b60 56 45 52 5f 50 52 4f 44 55 43 54 5f 54 59 50 45 VER_PRODUCT_TYPE
22b70 20 3d 20 30 78 30 30 30 30 30 38 30 20 7d 0d 0a = 0x0000080 }..
22b80 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
22b90 56 45 52 5f 4e 54 5f 57 4f 52 4b 53 54 41 54 49 VER_NT_WORKSTATI
22ba0 4f 4e 20 3d 20 30 78 30 30 30 30 30 30 31 20 7d ON = 0x0000001 }
22bb0 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
22bc0 56 45 52 5f 4e 54 5f 44 4f 4d 41 49 4e 5f 43 4f VER_NT_DOMAIN_CO
22bd0 4e 54 52 4f 4c 4c 45 52 20 3d 20 30 78 30 30 30 NTROLLER = 0x000
22be0 30 30 30 32 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 0002 }..enum : u
22bf0 69 6e 74 20 7b 20 56 45 52 5f 4e 54 5f 53 45 52 int { VER_NT_SER
22c00 56 45 52 20 3d 20 30 78 30 30 30 30 30 30 33 20 VER = 0x0000003
22c10 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 }....enum : uint
22c20 20 7b 20 56 45 52 5f 50 4c 41 54 46 4f 52 4d 5f { VER_PLATFORM_
22c30 57 49 4e 33 32 73 20 3d 20 30 20 7d 0d 0a 65 6e WIN32s = 0 }..en
22c40 75 6d 20 3a 20 75 69 6e 74 20 7b 20 56 45 52 5f um : uint { VER_
22c50 50 4c 41 54 46 4f 52 4d 5f 57 49 4e 33 32 5f 57 PLATFORM_WIN32_W
22c60 49 4e 44 4f 57 53 20 3d 20 31 20 7d 0d 0a 65 6e INDOWS = 1 }..en
22c70 75 6d 20 3a 20 75 69 6e 74 20 7b 20 56 45 52 5f um : uint { VER_
22c80 50 4c 41 54 46 4f 52 4d 5f 57 49 4e 33 32 5f 4e PLATFORM_WIN32_N
22c90 54 20 3d 20 32 20 7d 0d 0a 0d 0a 2f 2f 20 23 64 T = 2 }....// #d
22ca0 65 66 69 6e 65 20 56 45 52 5f 53 45 54 5f 43 4f efine VER_SET_CO
22cb0 4e 44 49 54 49 4f 4e 28 5f 6d 5f 2c 5f 74 5f 2c NDITION(_m_,_t_,
22cc0 5f 63 5f 29 20 28 28 5f 6d 5f 29 3d 56 65 72 53 _c_) ((_m_)=VerS
22cd0 65 74 43 6f 6e 64 69 74 69 6f 6e 4d 61 73 6b 28 etConditionMask(
22ce0 28 5f 6d 5f 29 2c 28 5f 74 5f 29 2c 28 5f 63 5f (_m_),(_t_),(_c_
22cf0 29 29 29 0d 0a 0d 0a 65 78 74 65 72 6e 28 57 69 )))....extern(Wi
22d00 6e 64 6f 77 73 29 20 65 78 70 6f 72 74 20 55 4c ndows) export UL
22d10 4f 4e 47 4c 4f 4e 47 20 56 65 72 53 65 74 43 6f ONGLONG VerSetCo
22d20 6e 64 69 74 69 6f 6e 4d 61 73 6b 28 0d 0a 20 20 nditionMask(..
22d30 55 4c 4f 4e 47 4c 4f 4e 47 20 43 6f 6e 64 69 74 ULONGLONG Condit
22d40 69 6f 6e 4d 61 73 6b 2c 0d 0a 20 20 44 57 4f 52 ionMask,.. DWOR
22d50 44 20 54 79 70 65 4d 61 73 6b 2c 0d 0a 20 20 42 D TypeMask,.. B
22d60 59 54 45 20 43 6f 6e 64 69 74 69 6f 6e 29 3b 0d YTE Condition);.
22d70 0a 0d 0a 73 74 72 75 63 74 20 5f 52 54 4c 5f 43 ...struct _RTL_C
22d80 52 49 54 49 43 41 4c 5f 53 45 43 54 49 4f 4e 5f RITICAL_SECTION_
22d90 44 45 42 55 47 20 7b 0d 0a 20 20 57 4f 52 44 20 DEBUG {.. WORD
22da0 54 79 70 65 3b 0d 0a 20 20 57 4f 52 44 20 43 72 Type;.. WORD Cr
22db0 65 61 74 6f 72 42 61 63 6b 54 72 61 63 65 49 6e eatorBackTraceIn
22dc0 64 65 78 3b 0d 0a 20 20 5f 52 54 4c 5f 43 52 49 dex;.. _RTL_CRI
22dd0 54 49 43 41 4c 5f 53 45 43 54 49 4f 4e 20 2a 43 TICAL_SECTION *C
22de0 72 69 74 69 63 61 6c 53 65 63 74 69 6f 6e 3b 0d riticalSection;.
22df0 0a 20 20 4c 49 53 54 5f 45 4e 54 52 59 20 50 72 . LIST_ENTRY Pr
22e00 6f 63 65 73 73 4c 6f 63 6b 73 4c 69 73 74 3b 0d ocessLocksList;.
22e10 0a 20 20 44 57 4f 52 44 20 45 6e 74 72 79 43 6f . DWORD EntryCo
22e20 75 6e 74 3b 0d 0a 20 20 44 57 4f 52 44 20 43 6f unt;.. DWORD Co
22e30 6e 74 65 6e 74 69 6f 6e 43 6f 75 6e 74 3b 0d 0a ntentionCount;..
22e40 20 20 44 57 4f 52 44 20 53 70 61 72 65 5b 20 32 DWORD Spare[ 2
22e50 20 5d 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 5f 52 ];..}..alias _R
22e60 54 4c 5f 43 52 49 54 49 43 41 4c 5f 53 45 43 54 TL_CRITICAL_SECT
22e70 49 4f 4e 5f 44 45 42 55 47 20 52 54 4c 5f 43 52 ION_DEBUG RTL_CR
22e80 49 54 49 43 41 4c 5f 53 45 43 54 49 4f 4e 5f 44 ITICAL_SECTION_D
22e90 45 42 55 47 3b 0d 0a 61 6c 69 61 73 20 5f 52 54 EBUG;..alias _RT
22ea0 4c 5f 43 52 49 54 49 43 41 4c 5f 53 45 43 54 49 L_CRITICAL_SECTI
22eb0 4f 4e 5f 44 45 42 55 47 2a 20 50 52 54 4c 5f 43 ON_DEBUG* PRTL_C
22ec0 52 49 54 49 43 41 4c 5f 53 45 43 54 49 4f 4e 5f RITICAL_SECTION_
22ed0 44 45 42 55 47 3b 0d 0a 61 6c 69 61 73 20 5f 52 DEBUG;..alias _R
22ee0 54 4c 5f 43 52 49 54 49 43 41 4c 5f 53 45 43 54 TL_CRITICAL_SECT
22ef0 49 4f 4e 5f 44 45 42 55 47 20 52 54 4c 5f 52 45 ION_DEBUG RTL_RE
22f00 53 4f 55 52 43 45 5f 44 45 42 55 47 3b 0d 0a 61 SOURCE_DEBUG;..a
22f10 6c 69 61 73 20 5f 52 54 4c 5f 43 52 49 54 49 43 lias _RTL_CRITIC
22f20 41 4c 5f 53 45 43 54 49 4f 4e 5f 44 45 42 55 47 AL_SECTION_DEBUG
22f30 2a 20 50 52 54 4c 5f 52 45 53 4f 55 52 43 45 5f * PRTL_RESOURCE_
22f40 44 45 42 55 47 3b 0d 0a 0d 0a 65 6e 75 6d 20 3a DEBUG;....enum :
22f50 20 75 69 6e 74 20 7b 20 52 54 4c 5f 43 52 49 54 uint { RTL_CRIT
22f60 53 45 43 54 5f 54 59 50 45 20 3d 20 30 20 7d 0d SECT_TYPE = 0 }.
22f70 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 52 .enum : uint { R
22f80 54 4c 5f 52 45 53 4f 55 52 43 45 5f 54 59 50 45 TL_RESOURCE_TYPE
22f90 20 3d 20 31 20 7d 0d 0a 0d 0a 73 74 72 75 63 74 = 1 }....struct
22fa0 20 5f 52 54 4c 5f 43 52 49 54 49 43 41 4c 5f 53 _RTL_CRITICAL_S
22fb0 45 43 54 49 4f 4e 20 7b 0d 0a 20 20 50 52 54 4c ECTION {.. PRTL
22fc0 5f 43 52 49 54 49 43 41 4c 5f 53 45 43 54 49 4f _CRITICAL_SECTIO
22fd0 4e 5f 44 45 42 55 47 20 44 65 62 75 67 49 6e 66 N_DEBUG DebugInf
22fe0 6f 3b 0d 0a 0d 0a 20 20 4c 4f 4e 47 20 4c 6f 63 o;.... LONG Loc
22ff0 6b 43 6f 75 6e 74 3b 0d 0a 20 20 4c 4f 4e 47 20 kCount;.. LONG
23000 52 65 63 75 72 73 69 6f 6e 43 6f 75 6e 74 3b 0d RecursionCount;.
23010 0a 20 20 48 41 4e 44 4c 45 20 4f 77 6e 69 6e 67 . HANDLE Owning
23020 54 68 72 65 61 64 3b 0d 0a 20 20 48 41 4e 44 4c Thread;.. HANDL
23030 45 20 4c 6f 63 6b 53 65 6d 61 70 68 6f 72 65 3b E LockSemaphore;
23040 0d 0a 20 20 55 4c 4f 4e 47 5f 50 54 52 20 53 70 .. ULONG_PTR Sp
23050 69 6e 43 6f 75 6e 74 3b 0d 0a 7d 0d 0a 61 6c 69 inCount;..}..ali
23060 61 73 20 5f 52 54 4c 5f 43 52 49 54 49 43 41 4c as _RTL_CRITICAL
23070 5f 53 45 43 54 49 4f 4e 20 52 54 4c 5f 43 52 49 _SECTION RTL_CRI
23080 54 49 43 41 4c 5f 53 45 43 54 49 4f 4e 3b 0d 0a TICAL_SECTION;..
23090 61 6c 69 61 73 20 5f 52 54 4c 5f 43 52 49 54 49 alias _RTL_CRITI
230a0 43 41 4c 5f 53 45 43 54 49 4f 4e 2a 20 50 52 54 CAL_SECTION* PRT
230b0 4c 5f 43 52 49 54 49 43 41 4c 5f 53 45 43 54 49 L_CRITICAL_SECTI
230c0 4f 4e 3b 0d 0a 0d 0a 65 78 74 65 72 6e 28 57 69 ON;....extern(Wi
230d0 6e 64 6f 77 73 29 20 61 6c 69 61 73 20 56 4f 49 ndows) alias VOI
230e0 44 20 66 75 6e 63 74 69 6f 6e 28 20 50 57 53 54 D function( PWST
230f0 52 20 44 6c 6c 4e 61 6d 65 2c 20 50 56 4f 49 44 R DllName, PVOID
23100 20 44 6c 6c 42 61 73 65 2c 20 53 49 5a 45 5f 54 DllBase, SIZE_T
23110 20 44 6c 6c 53 69 7a 65 2c 20 50 56 4f 49 44 20 DllSize, PVOID
23120 52 65 73 65 72 76 65 64 20 29 20 52 54 4c 5f 56 Reserved ) RTL_V
23130 45 52 49 46 49 45 52 5f 44 4c 4c 5f 4c 4f 41 44 ERIFIER_DLL_LOAD
23140 5f 43 41 4c 4c 42 41 43 4b 3b 0d 0a 0d 0a 65 78 _CALLBACK;....ex
23150 74 65 72 6e 28 57 69 6e 64 6f 77 73 29 20 61 6c tern(Windows) al
23160 69 61 73 20 56 4f 49 44 20 66 75 6e 63 74 69 6f ias VOID functio
23170 6e 28 20 50 57 53 54 52 20 44 6c 6c 4e 61 6d 65 n( PWSTR DllName
23180 2c 20 50 56 4f 49 44 20 44 6c 6c 42 61 73 65 2c , PVOID DllBase,
23190 20 53 49 5a 45 5f 54 20 44 6c 6c 53 69 7a 65 2c SIZE_T DllSize,
231a0 20 50 56 4f 49 44 20 52 65 73 65 72 76 65 64 20 PVOID Reserved
231b0 29 20 52 54 4c 5f 56 45 52 49 46 49 45 52 5f 44 ) RTL_VERIFIER_D
231c0 4c 4c 5f 55 4e 4c 4f 41 44 5f 43 41 4c 4c 42 41 LL_UNLOAD_CALLBA
231d0 43 4b 3b 0d 0a 0d 0a 73 74 72 75 63 74 20 5f 52 CK;....struct _R
231e0 54 4c 5f 56 45 52 49 46 49 45 52 5f 54 48 55 4e TL_VERIFIER_THUN
231f0 4b 5f 44 45 53 43 52 49 50 54 4f 52 20 7b 0d 0a K_DESCRIPTOR {..
23200 0d 0a 20 20 50 43 48 41 52 20 54 68 75 6e 6b 4e .. PCHAR ThunkN
23210 61 6d 65 3b 0d 0a 20 20 50 56 4f 49 44 20 54 68 ame;.. PVOID Th
23220 75 6e 6b 4f 6c 64 41 64 64 72 65 73 73 3b 0d 0a unkOldAddress;..
23230 20 20 50 56 4f 49 44 20 54 68 75 6e 6b 4e 65 77 PVOID ThunkNew
23240 41 64 64 72 65 73 73 3b 0d 0a 7d 0d 0a 61 6c 69 Address;..}..ali
23250 61 73 20 5f 52 54 4c 5f 56 45 52 49 46 49 45 52 as _RTL_VERIFIER
23260 5f 54 48 55 4e 4b 5f 44 45 53 43 52 49 50 54 4f _THUNK_DESCRIPTO
23270 52 20 52 54 4c 5f 56 45 52 49 46 49 45 52 5f 54 R RTL_VERIFIER_T
23280 48 55 4e 4b 5f 44 45 53 43 52 49 50 54 4f 52 3b HUNK_DESCRIPTOR;
23290 0d 0a 61 6c 69 61 73 20 5f 52 54 4c 5f 56 45 52 ..alias _RTL_VER
232a0 49 46 49 45 52 5f 54 48 55 4e 4b 5f 44 45 53 43 IFIER_THUNK_DESC
232b0 52 49 50 54 4f 52 2a 20 50 52 54 4c 5f 56 45 52 RIPTOR* PRTL_VER
232c0 49 46 49 45 52 5f 54 48 55 4e 4b 5f 44 45 53 43 IFIER_THUNK_DESC
232d0 52 49 50 54 4f 52 3b 0d 0a 0d 0a 73 74 72 75 63 RIPTOR;....struc
232e0 74 20 5f 52 54 4c 5f 56 45 52 49 46 49 45 52 5f t _RTL_VERIFIER_
232f0 44 4c 4c 5f 44 45 53 43 52 49 50 54 4f 52 20 7b DLL_DESCRIPTOR {
23300 0d 0a 0d 0a 20 20 50 57 43 48 41 52 20 44 6c 6c .... PWCHAR Dll
23310 4e 61 6d 65 3b 0d 0a 20 20 44 57 4f 52 44 20 44 Name;.. DWORD D
23320 6c 6c 46 6c 61 67 73 3b 0d 0a 20 20 50 56 4f 49 llFlags;.. PVOI
23330 44 20 44 6c 6c 41 64 64 72 65 73 73 3b 0d 0a 20 D DllAddress;..
23340 20 50 52 54 4c 5f 56 45 52 49 46 49 45 52 5f 54 PRTL_VERIFIER_T
23350 48 55 4e 4b 5f 44 45 53 43 52 49 50 54 4f 52 20 HUNK_DESCRIPTOR
23360 44 6c 6c 54 68 75 6e 6b 73 3b 0d 0a 7d 0d 0a 61 DllThunks;..}..a
23370 6c 69 61 73 20 5f 52 54 4c 5f 56 45 52 49 46 49 lias _RTL_VERIFI
23380 45 52 5f 44 4c 4c 5f 44 45 53 43 52 49 50 54 4f ER_DLL_DESCRIPTO
23390 52 20 52 54 4c 5f 56 45 52 49 46 49 45 52 5f 44 R RTL_VERIFIER_D
233a0 4c 4c 5f 44 45 53 43 52 49 50 54 4f 52 3b 0d 0a LL_DESCRIPTOR;..
233b0 61 6c 69 61 73 20 5f 52 54 4c 5f 56 45 52 49 46 alias _RTL_VERIF
233c0 49 45 52 5f 44 4c 4c 5f 44 45 53 43 52 49 50 54 IER_DLL_DESCRIPT
233d0 4f 52 2a 20 50 52 54 4c 5f 56 45 52 49 46 49 45 OR* PRTL_VERIFIE
233e0 52 5f 44 4c 4c 5f 44 45 53 43 52 49 50 54 4f 52 R_DLL_DESCRIPTOR
233f0 3b 0d 0a 0d 0a 73 74 72 75 63 74 20 5f 52 54 4c ;....struct _RTL
23400 5f 56 45 52 49 46 49 45 52 5f 50 52 4f 56 49 44 _VERIFIER_PROVID
23410 45 52 5f 44 45 53 43 52 49 50 54 4f 52 20 7b 0d ER_DESCRIPTOR {.
23420 0a 0d 0a 20 20 44 57 4f 52 44 20 4c 65 6e 67 74 ... DWORD Lengt
23430 68 3b 0d 0a 20 20 50 52 54 4c 5f 56 45 52 49 46 h;.. PRTL_VERIF
23440 49 45 52 5f 44 4c 4c 5f 44 45 53 43 52 49 50 54 IER_DLL_DESCRIPT
23450 4f 52 20 50 72 6f 76 69 64 65 72 44 6c 6c 73 3b OR ProviderDlls;
23460 0d 0a 20 20 52 54 4c 5f 56 45 52 49 46 49 45 52 .. RTL_VERIFIER
23470 5f 44 4c 4c 5f 4c 4f 41 44 5f 43 41 4c 4c 42 41 _DLL_LOAD_CALLBA
23480 43 4b 20 50 72 6f 76 69 64 65 72 44 6c 6c 4c 6f CK ProviderDllLo
23490 61 64 43 61 6c 6c 62 61 63 6b 3b 0d 0a 20 20 52 adCallback;.. R
234a0 54 4c 5f 56 45 52 49 46 49 45 52 5f 44 4c 4c 5f TL_VERIFIER_DLL_
234b0 55 4e 4c 4f 41 44 5f 43 41 4c 4c 42 41 43 4b 20 UNLOAD_CALLBACK
234c0 50 72 6f 76 69 64 65 72 44 6c 6c 55 6e 6c 6f 61 ProviderDllUnloa
234d0 64 43 61 6c 6c 62 61 63 6b 3b 0d 0a 0d 0a 20 20 dCallback;....
234e0 50 57 53 54 52 20 56 65 72 69 66 69 65 72 49 6d PWSTR VerifierIm
234f0 61 67 65 3b 0d 0a 20 20 44 57 4f 52 44 20 56 65 age;.. DWORD Ve
23500 72 69 66 69 65 72 46 6c 61 67 73 3b 0d 0a 20 20 rifierFlags;..
23510 44 57 4f 52 44 20 56 65 72 69 66 69 65 72 44 65 DWORD VerifierDe
23520 62 75 67 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 5f bug;..}..alias _
23530 52 54 4c 5f 56 45 52 49 46 49 45 52 5f 50 52 4f RTL_VERIFIER_PRO
23540 56 49 44 45 52 5f 44 45 53 43 52 49 50 54 4f 52 VIDER_DESCRIPTOR
23550 20 52 54 4c 5f 56 45 52 49 46 49 45 52 5f 50 52 RTL_VERIFIER_PR
23560 4f 56 49 44 45 52 5f 44 45 53 43 52 49 50 54 4f OVIDER_DESCRIPTO
23570 52 3b 0d 0a 61 6c 69 61 73 20 5f 52 54 4c 5f 56 R;..alias _RTL_V
23580 45 52 49 46 49 45 52 5f 50 52 4f 56 49 44 45 52 ERIFIER_PROVIDER
23590 5f 44 45 53 43 52 49 50 54 4f 52 2a 20 50 52 54 _DESCRIPTOR* PRT
235a0 4c 5f 56 45 52 49 46 49 45 52 5f 50 52 4f 56 49 L_VERIFIER_PROVI
235b0 44 45 52 5f 44 45 53 43 52 49 50 54 4f 52 3b 0d DER_DESCRIPTOR;.
235c0 0a 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b ...enum : uint {
235d0 20 52 54 4c 5f 56 52 46 5f 46 4c 47 5f 46 55 4c RTL_VRF_FLG_FUL
235e0 4c 5f 50 41 47 45 5f 48 45 41 50 20 3d 20 30 78 L_PAGE_HEAP = 0x
235f0 30 30 30 31 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 0001 }..enum : u
23600 69 6e 74 20 7b 20 52 54 4c 5f 56 52 46 5f 46 4c int { RTL_VRF_FL
23610 47 5f 4c 4f 43 4b 5f 43 48 45 43 4b 53 20 3d 20 G_LOCK_CHECKS =
23620 30 78 30 30 30 32 20 7d 0d 0a 65 6e 75 6d 20 3a 0x0002 }..enum :
23630 20 75 69 6e 74 20 7b 20 52 54 4c 5f 56 52 46 5f uint { RTL_VRF_
23640 46 4c 47 5f 48 41 4e 44 4c 45 5f 43 48 45 43 4b FLG_HANDLE_CHECK
23650 53 20 3d 20 30 78 30 30 30 34 20 7d 0d 0a 65 6e S = 0x0004 }..en
23660 75 6d 20 3a 20 75 69 6e 74 20 7b 20 52 54 4c 5f um : uint { RTL_
23670 56 52 46 5f 46 4c 47 5f 53 54 41 43 4b 5f 43 48 VRF_FLG_STACK_CH
23680 45 43 4b 53 20 3d 20 30 78 30 30 30 38 20 7d 0d ECKS = 0x0008 }.
23690 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 52 .enum : uint { R
236a0 54 4c 5f 56 52 46 5f 46 4c 47 5f 41 50 50 43 4f TL_VRF_FLG_APPCO
236b0 4d 50 41 54 5f 43 48 45 43 4b 53 20 3d 20 30 78 MPAT_CHECKS = 0x
236c0 30 30 31 30 20 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 0010 }....enum :
236d0 20 75 69 6e 74 20 7b 20 41 50 50 4c 49 43 41 54 uint { APPLICAT
236e0 49 4f 4e 5f 56 45 52 49 46 49 45 52 5f 49 4e 54 ION_VERIFIER_INT
236f0 45 52 4e 41 4c 5f 45 52 52 4f 52 20 3d 20 30 78 ERNAL_ERROR = 0x
23700 38 30 30 30 30 30 30 30 20 7d 0d 0a 65 6e 75 6d 80000000 }..enum
23710 20 3a 20 75 69 6e 74 20 7b 20 41 50 50 4c 49 43 : uint { APPLIC
23720 41 54 49 4f 4e 5f 56 45 52 49 46 49 45 52 5f 49 ATION_VERIFIER_I
23730 4e 54 45 52 4e 41 4c 5f 57 41 52 4e 49 4e 47 20 NTERNAL_WARNING
23740 3d 20 30 78 34 30 30 30 30 30 30 30 20 7d 0d 0a = 0x40000000 }..
23750 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 41 50 enum : uint { AP
23760 50 4c 49 43 41 54 49 4f 4e 5f 56 45 52 49 46 49 PLICATION_VERIFI
23770 45 52 5f 4e 4f 5f 42 52 45 41 4b 20 3d 20 30 78 ER_NO_BREAK = 0x
23780 32 30 30 30 30 30 30 30 20 7d 0d 0a 65 6e 75 6d 20000000 }..enum
23790 20 3a 20 75 69 6e 74 20 7b 20 41 50 50 4c 49 43 : uint { APPLIC
237a0 41 54 49 4f 4e 5f 56 45 52 49 46 49 45 52 5f 52 ATION_VERIFIER_R
237b0 45 53 45 52 56 45 44 5f 42 49 54 5f 32 38 20 3d ESERVED_BIT_28 =
237c0 20 30 78 31 30 30 30 30 30 30 30 20 7d 0d 0a 0d 0x10000000 }...
237d0 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 41 .enum : uint { A
237e0 50 50 4c 49 43 41 54 49 4f 4e 5f 56 45 52 49 46 PPLICATION_VERIF
237f0 49 45 52 5f 55 4e 4b 4e 4f 57 4e 5f 45 52 52 4f IER_UNKNOWN_ERRO
23800 52 20 3d 20 30 78 30 30 30 31 20 7d 0d 0a 65 6e R = 0x0001 }..en
23810 75 6d 20 3a 20 75 69 6e 74 20 7b 20 41 50 50 4c um : uint { APPL
23820 49 43 41 54 49 4f 4e 5f 56 45 52 49 46 49 45 52 ICATION_VERIFIER
23830 5f 41 43 43 45 53 53 5f 56 49 4f 4c 41 54 49 4f _ACCESS_VIOLATIO
23840 4e 20 3d 20 30 78 30 30 30 32 20 7d 0d 0a 65 6e N = 0x0002 }..en
23850 75 6d 20 3a 20 75 69 6e 74 20 7b 20 41 50 50 4c um : uint { APPL
23860 49 43 41 54 49 4f 4e 5f 56 45 52 49 46 49 45 52 ICATION_VERIFIER
23870 5f 55 4e 53 59 4e 43 48 52 4f 4e 49 5a 45 44 5f _UNSYNCHRONIZED_
23880 41 43 43 45 53 53 20 3d 20 30 78 30 30 30 33 20 ACCESS = 0x0003
23890 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b }..enum : uint {
238a0 20 41 50 50 4c 49 43 41 54 49 4f 4e 5f 56 45 52 APPLICATION_VER
238b0 49 46 49 45 52 5f 45 58 54 52 45 4d 45 5f 53 49 IFIER_EXTREME_SI
238c0 5a 45 5f 52 45 51 55 45 53 54 20 3d 20 30 78 30 ZE_REQUEST = 0x0
238d0 30 30 34 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 004 }..enum : ui
238e0 6e 74 20 7b 20 41 50 50 4c 49 43 41 54 49 4f 4e nt { APPLICATION
238f0 5f 56 45 52 49 46 49 45 52 5f 42 41 44 5f 48 45 _VERIFIER_BAD_HE
23900 41 50 5f 48 41 4e 44 4c 45 20 3d 20 30 78 30 30 AP_HANDLE = 0x00
23910 30 35 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 05 }..enum : uin
23920 74 20 7b 20 41 50 50 4c 49 43 41 54 49 4f 4e 5f t { APPLICATION_
23930 56 45 52 49 46 49 45 52 5f 53 57 49 54 43 48 45 VERIFIER_SWITCHE
23940 44 5f 48 45 41 50 5f 48 41 4e 44 4c 45 20 3d 20 D_HEAP_HANDLE =
23950 30 78 30 30 30 36 20 7d 0d 0a 65 6e 75 6d 20 3a 0x0006 }..enum :
23960 20 75 69 6e 74 20 7b 20 41 50 50 4c 49 43 41 54 uint { APPLICAT
23970 49 4f 4e 5f 56 45 52 49 46 49 45 52 5f 44 4f 55 ION_VERIFIER_DOU
23980 42 4c 45 5f 46 52 45 45 20 3d 20 30 78 30 30 30 BLE_FREE = 0x000
23990 37 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 7 }..enum : uint
239a0 20 7b 20 41 50 50 4c 49 43 41 54 49 4f 4e 5f 56 { APPLICATION_V
239b0 45 52 49 46 49 45 52 5f 43 4f 52 52 55 50 54 45 ERIFIER_CORRUPTE
239c0 44 5f 48 45 41 50 5f 42 4c 4f 43 4b 20 3d 20 30 D_HEAP_BLOCK = 0
239d0 78 30 30 30 38 20 7d 0d 0a 65 6e 75 6d 20 3a 20 x0008 }..enum :
239e0 75 69 6e 74 20 7b 20 41 50 50 4c 49 43 41 54 49 uint { APPLICATI
239f0 4f 4e 5f 56 45 52 49 46 49 45 52 5f 44 45 53 54 ON_VERIFIER_DEST
23a00 52 4f 59 5f 50 52 4f 43 45 53 53 5f 48 45 41 50 ROY_PROCESS_HEAP
23a10 20 3d 20 30 78 30 30 30 39 20 7d 0d 0a 65 6e 75 = 0x0009 }..enu
23a20 6d 20 3a 20 75 69 6e 74 20 7b 20 41 50 50 4c 49 m : uint { APPLI
23a30 43 41 54 49 4f 4e 5f 56 45 52 49 46 49 45 52 5f CATION_VERIFIER_
23a40 55 4e 45 58 50 45 43 54 45 44 5f 45 58 43 45 50 UNEXPECTED_EXCEP
23a50 54 49 4f 4e 20 3d 20 30 78 30 30 30 41 20 7d 0d TION = 0x000A }.
23a60 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 41 .enum : uint { A
23a70 50 50 4c 49 43 41 54 49 4f 4e 5f 56 45 52 49 46 PPLICATION_VERIF
23a80 49 45 52 5f 53 54 41 43 4b 5f 4f 56 45 52 46 4c IER_STACK_OVERFL
23a90 4f 57 20 3d 20 30 78 30 30 30 42 20 7d 0d 0a 0d OW = 0x000B }...
23aa0 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 41 .enum : uint { A
23ab0 50 50 4c 49 43 41 54 49 4f 4e 5f 56 45 52 49 46 PPLICATION_VERIF
23ac0 49 45 52 5f 54 45 52 4d 49 4e 41 54 45 5f 54 48 IER_TERMINATE_TH
23ad0 52 45 41 44 5f 43 41 4c 4c 20 3d 20 30 78 30 31 READ_CALL = 0x01
23ae0 30 30 20 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 75 00 }....enum : u
23af0 69 6e 74 20 7b 20 41 50 50 4c 49 43 41 54 49 4f int { APPLICATIO
23b00 4e 5f 56 45 52 49 46 49 45 52 5f 45 58 49 54 5f N_VERIFIER_EXIT_
23b10 54 48 52 45 41 44 5f 4f 57 4e 53 5f 4c 4f 43 4b THREAD_OWNS_LOCK
23b20 20 3d 20 30 78 30 32 30 30 20 7d 0d 0a 65 6e 75 = 0x0200 }..enu
23b30 6d 20 3a 20 75 69 6e 74 20 7b 20 41 50 50 4c 49 m : uint { APPLI
23b40 43 41 54 49 4f 4e 5f 56 45 52 49 46 49 45 52 5f CATION_VERIFIER_
23b50 4c 4f 43 4b 5f 49 4e 5f 55 4e 4c 4f 41 44 45 44 LOCK_IN_UNLOADED
23b60 5f 44 4c 4c 20 3d 20 30 78 30 32 30 31 20 7d 0d _DLL = 0x0201 }.
23b70 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 41 .enum : uint { A
23b80 50 50 4c 49 43 41 54 49 4f 4e 5f 56 45 52 49 46 PPLICATION_VERIF
23b90 49 45 52 5f 4c 4f 43 4b 5f 49 4e 5f 46 52 45 45 IER_LOCK_IN_FREE
23ba0 44 5f 48 45 41 50 20 3d 20 30 78 30 32 30 32 20 D_HEAP = 0x0202
23bb0 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b }..enum : uint {
23bc0 20 41 50 50 4c 49 43 41 54 49 4f 4e 5f 56 45 52 APPLICATION_VER
23bd0 49 46 49 45 52 5f 4c 4f 43 4b 5f 44 4f 55 42 4c IFIER_LOCK_DOUBL
23be0 45 5f 49 4e 49 54 49 41 4c 49 5a 45 20 3d 20 30 E_INITIALIZE = 0
23bf0 78 30 32 30 33 20 7d 0d 0a 65 6e 75 6d 20 3a 20 x0203 }..enum :
23c00 75 69 6e 74 20 7b 20 41 50 50 4c 49 43 41 54 49 uint { APPLICATI
23c10 4f 4e 5f 56 45 52 49 46 49 45 52 5f 4c 4f 43 4b ON_VERIFIER_LOCK
23c20 5f 49 4e 5f 46 52 45 45 44 5f 4d 45 4d 4f 52 59 _IN_FREED_MEMORY
23c30 20 3d 20 30 78 30 32 30 34 20 7d 0d 0a 65 6e 75 = 0x0204 }..enu
23c40 6d 20 3a 20 75 69 6e 74 20 7b 20 41 50 50 4c 49 m : uint { APPLI
23c50 43 41 54 49 4f 4e 5f 56 45 52 49 46 49 45 52 5f CATION_VERIFIER_
23c60 4c 4f 43 4b 5f 43 4f 52 52 55 50 54 45 44 20 3d LOCK_CORRUPTED =
23c70 20 30 78 30 32 30 35 20 7d 0d 0a 65 6e 75 6d 20 0x0205 }..enum
23c80 3a 20 75 69 6e 74 20 7b 20 41 50 50 4c 49 43 41 : uint { APPLICA
23c90 54 49 4f 4e 5f 56 45 52 49 46 49 45 52 5f 4c 4f TION_VERIFIER_LO
23ca0 43 4b 5f 49 4e 56 41 4c 49 44 5f 4f 57 4e 45 52 CK_INVALID_OWNER
23cb0 20 3d 20 30 78 30 32 30 36 20 7d 0d 0a 65 6e 75 = 0x0206 }..enu
23cc0 6d 20 3a 20 75 69 6e 74 20 7b 20 41 50 50 4c 49 m : uint { APPLI
23cd0 43 41 54 49 4f 4e 5f 56 45 52 49 46 49 45 52 5f CATION_VERIFIER_
23ce0 4c 4f 43 4b 5f 49 4e 56 41 4c 49 44 5f 52 45 43 LOCK_INVALID_REC
23cf0 55 52 53 49 4f 4e 5f 43 4f 55 4e 54 20 3d 20 30 URSION_COUNT = 0
23d00 78 30 32 30 37 20 7d 0d 0a 65 6e 75 6d 20 3a 20 x0207 }..enum :
23d10 75 69 6e 74 20 7b 20 41 50 50 4c 49 43 41 54 49 uint { APPLICATI
23d20 4f 4e 5f 56 45 52 49 46 49 45 52 5f 4c 4f 43 4b ON_VERIFIER_LOCK
23d30 5f 49 4e 56 41 4c 49 44 5f 4c 4f 43 4b 5f 43 4f _INVALID_LOCK_CO
23d40 55 4e 54 20 3d 20 30 78 30 32 30 38 20 7d 0d 0a UNT = 0x0208 }..
23d50 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 41 50 enum : uint { AP
23d60 50 4c 49 43 41 54 49 4f 4e 5f 56 45 52 49 46 49 PLICATION_VERIFI
23d70 45 52 5f 4c 4f 43 4b 5f 4f 56 45 52 5f 52 45 4c ER_LOCK_OVER_REL
23d80 45 41 53 45 44 20 3d 20 30 78 30 32 30 39 20 7d EASED = 0x0209 }
23d90 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
23da0 41 50 50 4c 49 43 41 54 49 4f 4e 5f 56 45 52 49 APPLICATION_VERI
23db0 46 49 45 52 5f 4c 4f 43 4b 5f 4e 4f 54 5f 49 4e FIER_LOCK_NOT_IN
23dc0 49 54 49 41 4c 49 5a 45 44 20 3d 20 30 78 30 32 ITIALIZED = 0x02
23dd0 31 30 20 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 75 10 }....enum : u
23de0 69 6e 74 20 7b 20 41 50 50 4c 49 43 41 54 49 4f int { APPLICATIO
23df0 4e 5f 56 45 52 49 46 49 45 52 5f 49 4e 56 41 4c N_VERIFIER_INVAL
23e00 49 44 5f 48 41 4e 44 4c 45 20 3d 20 30 78 30 33 ID_HANDLE = 0x03
23e10 30 30 20 7d 0d 0a 0d 0a 2f 2f 20 23 64 65 66 69 00 }....// #defi
23e20 6e 65 20 56 45 52 49 46 49 45 52 5f 53 54 4f 50 ne VERIFIER_STOP
23e30 28 43 6f 64 65 2c 20 4d 73 67 2c 20 50 31 2c 20 (Code, Msg, P1,
23e40 53 31 2c 20 50 32 2c 20 53 32 2c 20 50 33 2c 20 S1, P2, S2, P3,
23e50 53 33 2c 20 50 34 2c 20 53 34 29 20 7b 20 52 74 S3, P4, S4) { Rt
23e60 6c 41 70 70 6c 69 63 61 74 69 6f 6e 56 65 72 69 lApplicationVeri
23e70 66 69 65 72 53 74 6f 70 20 28 28 43 6f 64 65 29 fierStop ((Code)
23e80 2c 20 28 4d 73 67 29 2c 20 28 55 4c 4f 4e 47 5f , (Msg), (ULONG_
23e90 50 54 52 29 28 50 31 29 2c 28 53 31 29 2c 20 28 PTR)(P1),(S1), (
23ea0 55 4c 4f 4e 47 5f 50 54 52 29 28 50 32 29 2c 28 ULONG_PTR)(P2),(
23eb0 53 32 29 2c 20 28 55 4c 4f 4e 47 5f 50 54 52 29 S2), (ULONG_PTR)
23ec0 28 50 33 29 2c 28 53 33 29 2c 20 28 55 4c 4f 4e (P3),(S3), (ULON
23ed0 47 5f 50 54 52 29 28 50 34 29 2c 28 53 34 29 29 G_PTR)(P4),(S4))
23ee0 3b 20 7d 0d 0a 0d 0a 65 78 74 65 72 6e 28 57 69 ; }....extern(Wi
23ef0 6e 64 6f 77 73 29 20 65 78 70 6f 72 74 20 56 4f ndows) export VO
23f00 49 44 20 52 74 6c 41 70 70 6c 69 63 61 74 69 6f ID RtlApplicatio
23f10 6e 56 65 72 69 66 69 65 72 53 74 6f 70 28 0d 0a nVerifierStop(..
23f20 20 20 55 4c 4f 4e 47 5f 50 54 52 20 43 6f 64 65 ULONG_PTR Code
23f30 2c 0d 0a 20 20 50 43 48 41 52 20 4d 65 73 73 61 ,.. PCHAR Messa
23f40 67 65 2c 0d 0a 20 20 55 4c 4f 4e 47 5f 50 54 52 ge,.. ULONG_PTR
23f50 20 50 61 72 61 6d 31 2c 20 50 43 48 41 52 20 44 Param1, PCHAR D
23f60 65 73 63 72 69 70 74 69 6f 6e 31 2c 0d 0a 20 20 escription1,..
23f70 55 4c 4f 4e 47 5f 50 54 52 20 50 61 72 61 6d 32 ULONG_PTR Param2
23f80 2c 20 50 43 48 41 52 20 44 65 73 63 72 69 70 74 , PCHAR Descript
23f90 69 6f 6e 32 2c 0d 0a 20 20 55 4c 4f 4e 47 5f 50 ion2,.. ULONG_P
23fa0 54 52 20 50 61 72 61 6d 33 2c 20 50 43 48 41 52 TR Param3, PCHAR
23fb0 20 44 65 73 63 72 69 70 74 69 6f 6e 33 2c 0d 0a Description3,..
23fc0 20 20 55 4c 4f 4e 47 5f 50 54 52 20 50 61 72 61 ULONG_PTR Para
23fd0 6d 34 2c 20 50 43 48 41 52 20 44 65 73 63 72 69 m4, PCHAR Descri
23fe0 70 74 69 6f 6e 34 29 3b 0d 0a 0d 0a 65 78 74 65 ption4);....exte
23ff0 72 6e 28 57 69 6e 64 6f 77 73 29 20 61 6c 69 61 rn(Windows) alia
24000 73 20 4c 4f 4e 47 20 66 75 6e 63 74 69 6f 6e 28 s LONG function(
24010 20 20 5f 45 58 43 45 50 54 49 4f 4e 5f 50 4f 49 _EXCEPTION_POI
24020 4e 54 45 52 53 20 2a 45 78 63 65 70 74 69 6f 6e NTERS *Exception
24030 49 6e 66 6f 20 29 20 50 56 45 43 54 4f 52 45 44 Info ) PVECTORED
24040 5f 45 58 43 45 50 54 49 4f 4e 5f 48 41 4e 44 4c _EXCEPTION_HANDL
24050 45 52 3b 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 ER;..enum : uint
24060 20 7b 20 53 45 46 5f 44 41 43 4c 5f 41 55 54 4f { SEF_DACL_AUTO
24070 5f 49 4e 48 45 52 49 54 20 3d 20 30 78 30 31 20 _INHERIT = 0x01
24080 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b }..enum : uint {
24090 20 53 45 46 5f 53 41 43 4c 5f 41 55 54 4f 5f 49 SEF_SACL_AUTO_I
240a0 4e 48 45 52 49 54 20 3d 20 30 78 30 32 20 7d 0d NHERIT = 0x02 }.
240b0 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 53 .enum : uint { S
240c0 45 46 5f 44 45 46 41 55 4c 54 5f 44 45 53 43 52 EF_DEFAULT_DESCR
240d0 49 50 54 4f 52 5f 46 4f 52 5f 4f 42 4a 45 43 54 IPTOR_FOR_OBJECT
240e0 20 3d 20 30 78 30 34 20 7d 0d 0a 65 6e 75 6d 20 = 0x04 }..enum
240f0 3a 20 75 69 6e 74 20 7b 20 53 45 46 5f 41 56 4f : uint { SEF_AVO
24100 49 44 5f 50 52 49 56 49 4c 45 47 45 5f 43 48 45 ID_PRIVILEGE_CHE
24110 43 4b 20 3d 20 30 78 30 38 20 7d 0d 0a 65 6e 75 CK = 0x08 }..enu
24120 6d 20 3a 20 75 69 6e 74 20 7b 20 53 45 46 5f 41 m : uint { SEF_A
24130 56 4f 49 44 5f 4f 57 4e 45 52 5f 43 48 45 43 4b VOID_OWNER_CHECK
24140 20 3d 20 30 78 31 30 20 7d 0d 0a 65 6e 75 6d 20 = 0x10 }..enum
24150 3a 20 75 69 6e 74 20 7b 20 53 45 46 5f 44 45 46 : uint { SEF_DEF
24160 41 55 4c 54 5f 4f 57 4e 45 52 5f 46 52 4f 4d 5f AULT_OWNER_FROM_
24170 50 41 52 45 4e 54 20 3d 20 30 78 32 30 20 7d 0d PARENT = 0x20 }.
24180 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 53 .enum : uint { S
24190 45 46 5f 44 45 46 41 55 4c 54 5f 47 52 4f 55 50 EF_DEFAULT_GROUP
241a0 5f 46 52 4f 4d 5f 50 41 52 45 4e 54 20 3d 20 30 _FROM_PARENT = 0
241b0 78 34 30 20 7d 0d 0a 0d 0a 61 6c 69 61 73 20 69 x40 }....alias i
241c0 6e 74 20 5f 48 45 41 50 5f 49 4e 46 4f 52 4d 41 nt _HEAP_INFORMA
241d0 54 49 4f 4e 5f 43 4c 41 53 53 3b 0d 0a 65 6e 75 TION_CLASS;..enu
241e0 6d 20 7b 0d 0a 0d 0a 20 20 48 65 61 70 43 6f 6d m {.... HeapCom
241f0 70 61 74 69 62 69 6c 69 74 79 49 6e 66 6f 72 6d patibilityInform
24200 61 74 69 6f 6e 2c 0d 0a 0d 0a 7d 0d 0a 61 6c 69 ation,....}..ali
24210 61 73 20 5f 48 45 41 50 5f 49 4e 46 4f 52 4d 41 as _HEAP_INFORMA
24220 54 49 4f 4e 5f 43 4c 41 53 53 20 48 45 41 50 5f TION_CLASS HEAP_
24230 49 4e 46 4f 52 4d 41 54 49 4f 4e 5f 43 4c 41 53 INFORMATION_CLAS
24240 53 3b 0d 0a 0d 0a 65 78 74 65 72 6e 28 57 69 6e S;....extern(Win
24250 64 6f 77 73 29 20 65 78 70 6f 72 74 20 44 57 4f dows) export DWO
24260 52 44 20 52 74 6c 53 65 74 48 65 61 70 49 6e 66 RD RtlSetHeapInf
24270 6f 72 6d 61 74 69 6f 6e 28 0d 0a 20 20 50 56 4f ormation(.. PVO
24280 49 44 20 48 65 61 70 48 61 6e 64 6c 65 2c 0d 0a ID HeapHandle,..
24290 20 20 48 45 41 50 5f 49 4e 46 4f 52 4d 41 54 49 HEAP_INFORMATI
242a0 4f 4e 5f 43 4c 41 53 53 20 48 65 61 70 49 6e 66 ON_CLASS HeapInf
242b0 6f 72 6d 61 74 69 6f 6e 43 6c 61 73 73 2c 0d 0a ormationClass,..
242c0 20 20 50 56 4f 49 44 20 48 65 61 70 49 6e 66 6f PVOID HeapInfo
242d0 72 6d 61 74 69 6f 6e 20 2c 0d 0a 20 20 53 49 5a rmation ,.. SIZ
242e0 45 5f 54 20 48 65 61 70 49 6e 66 6f 72 6d 61 74 E_T HeapInformat
242f0 69 6f 6e 4c 65 6e 67 74 68 20 29 3b 0d 0a 0d 0a ionLength );....
24300 65 78 74 65 72 6e 28 57 69 6e 64 6f 77 73 29 20 extern(Windows)
24310 65 78 70 6f 72 74 20 44 57 4f 52 44 20 52 74 6c export DWORD Rtl
24320 51 75 65 72 79 48 65 61 70 49 6e 66 6f 72 6d 61 QueryHeapInforma
24330 74 69 6f 6e 28 0d 0a 20 20 50 56 4f 49 44 20 48 tion(.. PVOID H
24340 65 61 70 48 61 6e 64 6c 65 2c 0d 0a 20 20 48 45 eapHandle,.. HE
24350 41 50 5f 49 4e 46 4f 52 4d 41 54 49 4f 4e 5f 43 AP_INFORMATION_C
24360 4c 41 53 53 20 48 65 61 70 49 6e 66 6f 72 6d 61 LASS HeapInforma
24370 74 69 6f 6e 43 6c 61 73 73 2c 0d 0a 20 20 50 56 tionClass,.. PV
24380 4f 49 44 20 48 65 61 70 49 6e 66 6f 72 6d 61 74 OID HeapInformat
24390 69 6f 6e 20 2c 0d 0a 20 20 53 49 5a 45 5f 54 20 ion ,.. SIZE_T
243a0 48 65 61 70 49 6e 66 6f 72 6d 61 74 69 6f 6e 4c HeapInformationL
243b0 65 6e 67 74 68 20 2c 0d 0a 20 20 50 53 49 5a 45 ength ,.. PSIZE
243c0 5f 54 20 52 65 74 75 72 6e 4c 65 6e 67 74 68 20 _T ReturnLength
243d0 29 3b 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e );....enum : uin
243e0 74 20 7b 20 57 54 5f 45 58 45 43 55 54 45 44 45 t { WT_EXECUTEDE
243f0 46 41 55 4c 54 20 3d 20 30 78 30 30 30 30 30 30 FAULT = 0x000000
24400 30 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 00 }..enum : uin
24410 74 20 7b 20 57 54 5f 45 58 45 43 55 54 45 49 4e t { WT_EXECUTEIN
24420 49 4f 54 48 52 45 41 44 20 3d 20 30 78 30 30 30 IOTHREAD = 0x000
24430 30 30 30 30 31 20 7d 0d 0a 65 6e 75 6d 20 3a 20 00001 }..enum :
24440 75 69 6e 74 20 7b 20 57 54 5f 45 58 45 43 55 54 uint { WT_EXECUT
24450 45 49 4e 55 49 54 48 52 45 41 44 20 3d 20 30 78 EINUITHREAD = 0x
24460 30 30 30 30 30 30 30 32 20 7d 0d 0a 65 6e 75 6d 00000002 }..enum
24470 20 3a 20 75 69 6e 74 20 7b 20 57 54 5f 45 58 45 : uint { WT_EXE
24480 43 55 54 45 49 4e 57 41 49 54 54 48 52 45 41 44 CUTEINWAITTHREAD
24490 20 3d 20 30 78 30 30 30 30 30 30 30 34 20 7d 0d = 0x00000004 }.
244a0 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 57 .enum : uint { W
244b0 54 5f 45 58 45 43 55 54 45 4f 4e 4c 59 4f 4e 43 T_EXECUTEONLYONC
244c0 45 20 3d 20 30 78 30 30 30 30 30 30 30 38 20 7d E = 0x00000008 }
244d0 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
244e0 57 54 5f 45 58 45 43 55 54 45 49 4e 54 49 4d 45 WT_EXECUTEINTIME
244f0 52 54 48 52 45 41 44 20 3d 20 30 78 30 30 30 30 RTHREAD = 0x0000
24500 30 30 32 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 0020 }..enum : u
24510 69 6e 74 20 7b 20 57 54 5f 45 58 45 43 55 54 45 int { WT_EXECUTE
24520 4c 4f 4e 47 46 55 4e 43 54 49 4f 4e 20 3d 20 30 LONGFUNCTION = 0
24530 78 30 30 30 30 30 30 31 30 20 7d 0d 0a 65 6e 75 x00000010 }..enu
24540 6d 20 3a 20 75 69 6e 74 20 7b 20 57 54 5f 45 58 m : uint { WT_EX
24550 45 43 55 54 45 49 4e 50 45 52 53 49 53 54 45 4e ECUTEINPERSISTEN
24560 54 49 4f 54 48 52 45 41 44 20 3d 20 30 78 30 30 TIOTHREAD = 0x00
24570 30 30 30 30 34 30 20 7d 0d 0a 65 6e 75 6d 20 3a 000040 }..enum :
24580 20 75 69 6e 74 20 7b 20 57 54 5f 45 58 45 43 55 uint { WT_EXECU
24590 54 45 49 4e 50 45 52 53 49 53 54 45 4e 54 54 48 TEINPERSISTENTTH
245a0 52 45 41 44 20 3d 20 30 78 30 30 30 30 30 30 38 READ = 0x0000008
245b0 30 20 7d 0d 0a 2f 2f 20 23 64 65 66 69 6e 65 20 0 }..// #define
245c0 57 54 5f 53 45 54 5f 4d 41 58 5f 54 48 52 45 41 WT_SET_MAX_THREA
245d0 44 50 4f 4f 4c 5f 54 48 52 45 41 44 53 28 46 6c DPOOL_THREADS(Fl
245e0 61 67 73 2c 20 4c 69 6d 69 74 29 20 28 28 46 6c ags, Limit) ((Fl
245f0 61 67 73 29 20 7c 3d 20 28 4c 69 6d 69 74 29 3c ags) |= (Limit)<
24600 3c 31 36 29 0d 0a 65 78 74 65 72 6e 28 57 69 6e <16)..extern(Win
24610 64 6f 77 73 29 20 61 6c 69 61 73 20 56 4f 49 44 dows) alias VOID
24620 20 66 75 6e 63 74 69 6f 6e 28 50 56 4f 49 44 2c function(PVOID,
24630 20 42 4f 4f 4c 45 41 4e 20 29 20 57 41 49 54 4f BOOLEAN ) WAITO
24640 52 54 49 4d 45 52 43 41 4c 4c 42 41 43 4b 46 55 RTIMERCALLBACKFU
24650 4e 43 3b 0d 0a 65 78 74 65 72 6e 28 57 69 6e 64 NC;..extern(Wind
24660 6f 77 73 29 20 61 6c 69 61 73 20 56 4f 49 44 20 ows) alias VOID
24670 66 75 6e 63 74 69 6f 6e 28 50 56 4f 49 44 20 29 function(PVOID )
24680 20 57 4f 52 4b 45 52 43 41 4c 4c 42 41 43 4b 46 WORKERCALLBACKF
24690 55 4e 43 3b 0d 0a 65 78 74 65 72 6e 28 57 69 6e UNC;..extern(Win
246a0 64 6f 77 73 29 20 61 6c 69 61 73 20 56 4f 49 44 dows) alias VOID
246b0 20 66 75 6e 63 74 69 6f 6e 28 44 57 4f 52 44 20 function(DWORD
246c0 2c 20 50 56 4f 49 44 2c 20 50 56 4f 49 44 29 20 , PVOID, PVOID)
246d0 41 50 43 5f 43 41 4c 4c 42 41 43 4b 5f 46 55 4e APC_CALLBACK_FUN
246e0 43 54 49 4f 4e 3b 0d 0a 65 6e 75 6d 20 3a 20 75 CTION;..enum : u
246f0 69 6e 74 20 7b 20 57 54 5f 45 58 45 43 55 54 45 int { WT_EXECUTE
24700 49 4e 4c 4f 4e 47 54 48 52 45 41 44 20 3d 20 30 INLONGTHREAD = 0
24710 78 30 30 30 30 30 30 31 30 20 7d 0d 0a 65 6e 75 x00000010 }..enu
24720 6d 20 3a 20 75 69 6e 74 20 7b 20 57 54 5f 45 58 m : uint { WT_EX
24730 45 43 55 54 45 44 45 4c 45 54 45 57 41 49 54 20 ECUTEDELETEWAIT
24740 3d 20 30 78 30 30 30 30 30 30 30 38 20 7d 0d 0a = 0x00000008 }..
24750 0d 0a 61 6c 69 61 73 20 69 6e 74 20 5f 41 43 54 ..alias int _ACT
24760 49 56 41 54 49 4f 4e 5f 43 4f 4e 54 45 58 54 5f IVATION_CONTEXT_
24770 49 4e 46 4f 5f 43 4c 41 53 53 3b 0d 0a 65 6e 75 INFO_CLASS;..enu
24780 6d 20 7b 0d 0a 20 20 41 63 74 69 76 61 74 69 6f m {.. Activatio
24790 6e 43 6f 6e 74 65 78 74 42 61 73 69 63 49 6e 66 nContextBasicInf
247a0 6f 72 6d 61 74 69 6f 6e 20 3d 20 31 2c 0d 0a 20 ormation = 1,..
247b0 20 41 63 74 69 76 61 74 69 6f 6e 43 6f 6e 74 65 ActivationConte
247c0 78 74 44 65 74 61 69 6c 65 64 49 6e 66 6f 72 6d xtDetailedInform
247d0 61 74 69 6f 6e 20 3d 20 32 2c 0d 0a 20 20 41 73 ation = 2,.. As
247e0 73 65 6d 62 6c 79 44 65 74 61 69 6c 65 64 49 6e semblyDetailedIn
247f0 66 6f 72 6d 61 74 69 6f 6e 49 6e 41 63 74 69 76 formationInActiv
24800 61 74 69 6f 6e 43 6f 6e 74 65 78 74 20 3d 20 33 ationContext = 3
24810 2c 0d 0a 20 20 46 69 6c 65 49 6e 66 6f 72 6d 61 ,.. FileInforma
24820 74 69 6f 6e 49 6e 41 73 73 65 6d 62 6c 79 4f 66 tionInAssemblyOf
24830 41 73 73 65 6d 62 6c 79 49 6e 41 63 74 69 76 61 AssemblyInActiva
24840 74 69 6f 6e 43 6f 6e 74 65 78 74 20 3d 20 34 2c tionContext = 4,
24850 0d 0a 20 20 4d 61 78 41 63 74 69 76 61 74 69 6f .. MaxActivatio
24860 6e 43 6f 6e 74 65 78 74 49 6e 66 6f 43 6c 61 73 nContextInfoClas
24870 73 2c 0d 0a 0d 0a 20 20 41 73 73 65 6d 62 6c 79 s,.... Assembly
24880 44 65 74 61 69 6c 65 64 49 6e 66 6f 72 6d 61 74 DetailedInformat
24890 69 6f 6e 49 6e 41 63 74 69 76 61 74 69 6f 6e 43 ionInActivationC
248a0 6f 6e 74 78 74 20 3d 20 33 2c 0d 0a 20 20 46 69 ontxt = 3,.. Fi
248b0 6c 65 49 6e 66 6f 72 6d 61 74 69 6f 6e 49 6e 41 leInformationInA
248c0 73 73 65 6d 62 6c 79 4f 66 41 73 73 65 6d 62 6c ssemblyOfAssembl
248d0 79 49 6e 41 63 74 69 76 61 74 69 6f 6e 43 6f 6e yInActivationCon
248e0 74 78 74 20 3d 20 34 2c 0d 0a 7d 0d 0a 61 6c 69 txt = 4,..}..ali
248f0 61 73 20 5f 41 43 54 49 56 41 54 49 4f 4e 5f 43 as _ACTIVATION_C
24900 4f 4e 54 45 58 54 5f 49 4e 46 4f 5f 43 4c 41 53 ONTEXT_INFO_CLAS
24910 53 20 41 43 54 49 56 41 54 49 4f 4e 5f 43 4f 4e S ACTIVATION_CON
24920 54 45 58 54 5f 49 4e 46 4f 5f 43 4c 41 53 53 3b TEXT_INFO_CLASS;
24930 0d 0a 0d 0a 61 6c 69 61 73 20 41 43 54 49 56 41 ....alias ACTIVA
24940 54 49 4f 4e 5f 43 4f 4e 54 45 58 54 5f 49 4e 46 TION_CONTEXT_INF
24950 4f 5f 43 4c 41 53 53 20 41 43 54 49 56 41 54 49 O_CLASS ACTIVATI
24960 4f 4e 43 4f 4e 54 45 58 54 49 4e 46 4f 43 4c 41 ONCONTEXTINFOCLA
24970 53 53 3b 0d 0a 0d 0a 73 74 72 75 63 74 20 5f 41 SS;....struct _A
24980 43 54 49 56 41 54 49 4f 4e 5f 43 4f 4e 54 45 58 CTIVATION_CONTEX
24990 54 5f 51 55 45 52 59 5f 49 4e 44 45 58 20 7b 0d T_QUERY_INDEX {.
249a0 0a 20 20 44 57 4f 52 44 20 75 6c 41 73 73 65 6d . DWORD ulAssem
249b0 62 6c 79 49 6e 64 65 78 3b 0d 0a 20 20 44 57 4f blyIndex;.. DWO
249c0 52 44 20 75 6c 46 69 6c 65 49 6e 64 65 78 49 6e RD ulFileIndexIn
249d0 41 73 73 65 6d 62 6c 79 3b 0d 0a 7d 0d 0a 61 6c Assembly;..}..al
249e0 69 61 73 20 5f 41 43 54 49 56 41 54 49 4f 4e 5f ias _ACTIVATION_
249f0 43 4f 4e 54 45 58 54 5f 51 55 45 52 59 5f 49 4e CONTEXT_QUERY_IN
24a00 44 45 58 20 41 43 54 49 56 41 54 49 4f 4e 5f 43 DEX ACTIVATION_C
24a10 4f 4e 54 45 58 54 5f 51 55 45 52 59 5f 49 4e 44 ONTEXT_QUERY_IND
24a20 45 58 3b 0d 0a 61 6c 69 61 73 20 5f 41 43 54 49 EX;..alias _ACTI
24a30 56 41 54 49 4f 4e 5f 43 4f 4e 54 45 58 54 5f 51 VATION_CONTEXT_Q
24a40 55 45 52 59 5f 49 4e 44 45 58 2a 20 50 41 43 54 UERY_INDEX* PACT
24a50 49 56 41 54 49 4f 4e 5f 43 4f 4e 54 45 58 54 5f IVATION_CONTEXT_
24a60 51 55 45 52 59 5f 49 4e 44 45 58 3b 0d 0a 0d 0a QUERY_INDEX;....
24a70 61 6c 69 61 73 20 5f 41 43 54 49 56 41 54 49 4f alias _ACTIVATIO
24a80 4e 5f 43 4f 4e 54 45 58 54 5f 51 55 45 52 59 5f N_CONTEXT_QUERY_
24a90 49 4e 44 45 58 2a 20 50 43 41 43 54 49 56 41 54 INDEX* PCACTIVAT
24aa0 49 4f 4e 5f 43 4f 4e 54 45 58 54 5f 51 55 45 52 ION_CONTEXT_QUER
24ab0 59 5f 49 4e 44 45 58 3b 0d 0a 0d 0a 65 6e 75 6d Y_INDEX;....enum
24ac0 20 3a 20 75 69 6e 74 20 7b 20 41 43 54 49 56 41 : uint { ACTIVA
24ad0 54 49 4f 4e 5f 43 4f 4e 54 45 58 54 5f 50 41 54 TION_CONTEXT_PAT
24ae0 48 5f 54 59 50 45 5f 4e 4f 4e 45 20 3d 20 31 20 H_TYPE_NONE = 1
24af0 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b }..enum : uint {
24b00 20 41 43 54 49 56 41 54 49 4f 4e 5f 43 4f 4e 54 ACTIVATION_CONT
24b10 45 58 54 5f 50 41 54 48 5f 54 59 50 45 5f 57 49 EXT_PATH_TYPE_WI
24b20 4e 33 32 5f 46 49 4c 45 20 3d 20 32 20 7d 0d 0a N32_FILE = 2 }..
24b30 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 41 43 enum : uint { AC
24b40 54 49 56 41 54 49 4f 4e 5f 43 4f 4e 54 45 58 54 TIVATION_CONTEXT
24b50 5f 50 41 54 48 5f 54 59 50 45 5f 55 52 4c 20 3d _PATH_TYPE_URL =
24b60 20 33 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 3 }..enum : uin
24b70 74 20 7b 20 41 43 54 49 56 41 54 49 4f 4e 5f 43 t { ACTIVATION_C
24b80 4f 4e 54 45 58 54 5f 50 41 54 48 5f 54 59 50 45 ONTEXT_PATH_TYPE
24b90 5f 41 53 53 45 4d 42 4c 59 52 45 46 20 3d 20 34 _ASSEMBLYREF = 4
24ba0 20 7d 0d 0a 0d 0a 73 74 72 75 63 74 20 5f 41 53 }....struct _AS
24bb0 53 45 4d 42 4c 59 5f 46 49 4c 45 5f 44 45 54 41 SEMBLY_FILE_DETA
24bc0 49 4c 45 44 5f 49 4e 46 4f 52 4d 41 54 49 4f 4e ILED_INFORMATION
24bd0 20 7b 0d 0a 20 20 44 57 4f 52 44 20 75 6c 46 6c {.. DWORD ulFl
24be0 61 67 73 3b 0d 0a 20 20 44 57 4f 52 44 20 75 6c ags;.. DWORD ul
24bf0 46 69 6c 65 6e 61 6d 65 4c 65 6e 67 74 68 3b 0d FilenameLength;.
24c00 0a 20 20 44 57 4f 52 44 20 75 6c 50 61 74 68 4c . DWORD ulPathL
24c10 65 6e 67 74 68 3b 0d 0a 20 20 50 43 57 53 54 52 ength;.. PCWSTR
24c20 20 6c 70 46 69 6c 65 4e 61 6d 65 3b 0d 0a 20 20 lpFileName;..
24c30 50 43 57 53 54 52 20 6c 70 46 69 6c 65 50 61 74 PCWSTR lpFilePat
24c40 68 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 5f 41 53 h;..}..alias _AS
24c50 53 45 4d 42 4c 59 5f 46 49 4c 45 5f 44 45 54 41 SEMBLY_FILE_DETA
24c60 49 4c 45 44 5f 49 4e 46 4f 52 4d 41 54 49 4f 4e ILED_INFORMATION
24c70 20 41 53 53 45 4d 42 4c 59 5f 46 49 4c 45 5f 44 ASSEMBLY_FILE_D
24c80 45 54 41 49 4c 45 44 5f 49 4e 46 4f 52 4d 41 54 ETAILED_INFORMAT
24c90 49 4f 4e 3b 0d 0a 61 6c 69 61 73 20 5f 41 53 53 ION;..alias _ASS
24ca0 45 4d 42 4c 59 5f 46 49 4c 45 5f 44 45 54 41 49 EMBLY_FILE_DETAI
24cb0 4c 45 44 5f 49 4e 46 4f 52 4d 41 54 49 4f 4e 2a LED_INFORMATION*
24cc0 20 50 41 53 53 45 4d 42 4c 59 5f 46 49 4c 45 5f PASSEMBLY_FILE_
24cd0 44 45 54 41 49 4c 45 44 5f 49 4e 46 4f 52 4d 41 DETAILED_INFORMA
24ce0 54 49 4f 4e 3b 0d 0a 0d 0a 61 6c 69 61 73 20 41 TION;....alias A
24cf0 53 53 45 4d 42 4c 59 5f 46 49 4c 45 5f 44 45 54 SSEMBLY_FILE_DET
24d00 41 49 4c 45 44 5f 49 4e 46 4f 52 4d 41 54 49 4f AILED_INFORMATIO
24d10 4e 2a 20 50 43 41 53 53 45 4d 42 4c 59 5f 46 49 N* PCASSEMBLY_FI
24d20 4c 45 5f 44 45 54 41 49 4c 45 44 5f 49 4e 46 4f LE_DETAILED_INFO
24d30 52 4d 41 54 49 4f 4e 3b 0d 0a 0d 0a 61 6c 69 61 RMATION;....alia
24d40 73 20 5f 41 53 53 45 4d 42 4c 59 5f 46 49 4c 45 s _ASSEMBLY_FILE
24d50 5f 44 45 54 41 49 4c 45 44 5f 49 4e 46 4f 52 4d _DETAILED_INFORM
24d60 41 54 49 4f 4e 20 5f 41 53 53 45 4d 42 4c 59 5f ATION _ASSEMBLY_
24d70 44 4c 4c 5f 52 45 44 49 52 45 43 54 49 4f 4e 5f DLL_REDIRECTION_
24d80 44 45 54 41 49 4c 45 44 5f 49 4e 46 4f 52 4d 41 DETAILED_INFORMA
24d90 54 49 4f 4e 3b 0d 0a 61 6c 69 61 73 20 41 53 53 TION;..alias ASS
24da0 45 4d 42 4c 59 5f 46 49 4c 45 5f 44 45 54 41 49 EMBLY_FILE_DETAI
24db0 4c 45 44 5f 49 4e 46 4f 52 4d 41 54 49 4f 4e 20 LED_INFORMATION
24dc0 41 53 53 45 4d 42 4c 59 5f 44 4c 4c 5f 52 45 44 ASSEMBLY_DLL_RED
24dd0 49 52 45 43 54 49 4f 4e 5f 44 45 54 41 49 4c 45 IRECTION_DETAILE
24de0 44 5f 49 4e 46 4f 52 4d 41 54 49 4f 4e 3b 0d 0a D_INFORMATION;..
24df0 61 6c 69 61 73 20 50 41 53 53 45 4d 42 4c 59 5f alias PASSEMBLY_
24e00 46 49 4c 45 5f 44 45 54 41 49 4c 45 44 5f 49 4e FILE_DETAILED_IN
24e10 46 4f 52 4d 41 54 49 4f 4e 20 50 41 53 53 45 4d FORMATION PASSEM
24e20 42 4c 59 5f 44 4c 4c 5f 52 45 44 49 52 45 43 54 BLY_DLL_REDIRECT
24e30 49 4f 4e 5f 44 45 54 41 49 4c 45 44 5f 49 4e 46 ION_DETAILED_INF
24e40 4f 52 4d 41 54 49 4f 4e 3b 0d 0a 61 6c 69 61 73 ORMATION;..alias
24e50 20 50 43 41 53 53 45 4d 42 4c 59 5f 46 49 4c 45 PCASSEMBLY_FILE
24e60 5f 44 45 54 41 49 4c 45 44 5f 49 4e 46 4f 52 4d _DETAILED_INFORM
24e70 41 54 49 4f 4e 20 50 43 41 53 53 45 4d 42 4c 59 ATION PCASSEMBLY
24e80 5f 44 4c 4c 5f 52 45 44 49 52 45 43 54 49 4f 4e _DLL_REDIRECTION
24e90 5f 44 45 54 41 49 4c 45 44 5f 49 4e 46 4f 52 4d _DETAILED_INFORM
24ea0 41 54 49 4f 4e 3b 0d 0a 0d 0a 73 74 72 75 63 74 ATION;....struct
24eb0 20 5f 41 43 54 49 56 41 54 49 4f 4e 5f 43 4f 4e _ACTIVATION_CON
24ec0 54 45 58 54 5f 41 53 53 45 4d 42 4c 59 5f 44 45 TEXT_ASSEMBLY_DE
24ed0 54 41 49 4c 45 44 5f 49 4e 46 4f 52 4d 41 54 49 TAILED_INFORMATI
24ee0 4f 4e 20 7b 0d 0a 20 20 44 57 4f 52 44 20 75 6c ON {.. DWORD ul
24ef0 46 6c 61 67 73 3b 0d 0a 20 20 44 57 4f 52 44 20 Flags;.. DWORD
24f00 75 6c 45 6e 63 6f 64 65 64 41 73 73 65 6d 62 6c ulEncodedAssembl
24f10 79 49 64 65 6e 74 69 74 79 4c 65 6e 67 74 68 3b yIdentityLength;
24f20 0d 0a 20 20 44 57 4f 52 44 20 75 6c 4d 61 6e 69 .. DWORD ulMani
24f30 66 65 73 74 50 61 74 68 54 79 70 65 3b 0d 0a 20 festPathType;..
24f40 20 44 57 4f 52 44 20 75 6c 4d 61 6e 69 66 65 73 DWORD ulManifes
24f50 74 50 61 74 68 4c 65 6e 67 74 68 3b 0d 0a 20 20 tPathLength;..
24f60 4c 41 52 47 45 5f 49 4e 54 45 47 45 52 20 6c 69 LARGE_INTEGER li
24f70 4d 61 6e 69 66 65 73 74 4c 61 73 74 57 72 69 74 ManifestLastWrit
24f80 65 54 69 6d 65 3b 0d 0a 20 20 44 57 4f 52 44 20 eTime;.. DWORD
24f90 75 6c 50 6f 6c 69 63 79 50 61 74 68 54 79 70 65 ulPolicyPathType
24fa0 3b 0d 0a 20 20 44 57 4f 52 44 20 75 6c 50 6f 6c ;.. DWORD ulPol
24fb0 69 63 79 50 61 74 68 4c 65 6e 67 74 68 3b 0d 0a icyPathLength;..
24fc0 20 20 4c 41 52 47 45 5f 49 4e 54 45 47 45 52 20 LARGE_INTEGER
24fd0 6c 69 50 6f 6c 69 63 79 4c 61 73 74 57 72 69 74 liPolicyLastWrit
24fe0 65 54 69 6d 65 3b 0d 0a 20 20 44 57 4f 52 44 20 eTime;.. DWORD
24ff0 75 6c 4d 65 74 61 64 61 74 61 53 61 74 65 6c 6c ulMetadataSatell
25000 69 74 65 52 6f 73 74 65 72 49 6e 64 65 78 3b 0d iteRosterIndex;.
25010 0a 20 20 44 57 4f 52 44 20 75 6c 4d 61 6e 69 66 . DWORD ulManif
25020 65 73 74 56 65 72 73 69 6f 6e 4d 61 6a 6f 72 3b estVersionMajor;
25030 0d 0a 20 20 44 57 4f 52 44 20 75 6c 4d 61 6e 69 .. DWORD ulMani
25040 66 65 73 74 56 65 72 73 69 6f 6e 4d 69 6e 6f 72 festVersionMinor
25050 3b 0d 0a 20 20 44 57 4f 52 44 20 75 6c 50 6f 6c ;.. DWORD ulPol
25060 69 63 79 56 65 72 73 69 6f 6e 4d 61 6a 6f 72 3b icyVersionMajor;
25070 0d 0a 20 20 44 57 4f 52 44 20 75 6c 50 6f 6c 69 .. DWORD ulPoli
25080 63 79 56 65 72 73 69 6f 6e 4d 69 6e 6f 72 3b 0d cyVersionMinor;.
25090 0a 20 20 44 57 4f 52 44 20 75 6c 41 73 73 65 6d . DWORD ulAssem
250a0 62 6c 79 44 69 72 65 63 74 6f 72 79 4e 61 6d 65 blyDirectoryName
250b0 4c 65 6e 67 74 68 3b 0d 0a 0d 0a 20 20 50 43 57 Length;.... PCW
250c0 53 54 52 20 6c 70 41 73 73 65 6d 62 6c 79 45 6e STR lpAssemblyEn
250d0 63 6f 64 65 64 41 73 73 65 6d 62 6c 79 49 64 65 codedAssemblyIde
250e0 6e 74 69 74 79 3b 0d 0a 20 20 50 43 57 53 54 52 ntity;.. PCWSTR
250f0 20 6c 70 41 73 73 65 6d 62 6c 79 4d 61 6e 69 66 lpAssemblyManif
25100 65 73 74 50 61 74 68 3b 0d 0a 20 20 50 43 57 53 estPath;.. PCWS
25110 54 52 20 6c 70 41 73 73 65 6d 62 6c 79 50 6f 6c TR lpAssemblyPol
25120 69 63 79 50 61 74 68 3b 0d 0a 20 20 50 43 57 53 icyPath;.. PCWS
25130 54 52 20 6c 70 41 73 73 65 6d 62 6c 79 44 69 72 TR lpAssemblyDir
25140 65 63 74 6f 72 79 4e 61 6d 65 3b 0d 0a 20 20 44 ectoryName;.. D
25150 57 4f 52 44 20 75 6c 46 69 6c 65 43 6f 75 6e 74 WORD ulFileCount
25160 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 5f 41 43 54 ;..}..alias _ACT
25170 49 56 41 54 49 4f 4e 5f 43 4f 4e 54 45 58 54 5f IVATION_CONTEXT_
25180 41 53 53 45 4d 42 4c 59 5f 44 45 54 41 49 4c 45 ASSEMBLY_DETAILE
25190 44 5f 49 4e 46 4f 52 4d 41 54 49 4f 4e 20 41 43 D_INFORMATION AC
251a0 54 49 56 41 54 49 4f 4e 5f 43 4f 4e 54 45 58 54 TIVATION_CONTEXT
251b0 5f 41 53 53 45 4d 42 4c 59 5f 44 45 54 41 49 4c _ASSEMBLY_DETAIL
251c0 45 44 5f 49 4e 46 4f 52 4d 41 54 49 4f 4e 3b 0d ED_INFORMATION;.
251d0 0a 61 6c 69 61 73 20 5f 41 43 54 49 56 41 54 49 .alias _ACTIVATI
251e0 4f 4e 5f 43 4f 4e 54 45 58 54 5f 41 53 53 45 4d ON_CONTEXT_ASSEM
251f0 42 4c 59 5f 44 45 54 41 49 4c 45 44 5f 49 4e 46 BLY_DETAILED_INF
25200 4f 52 4d 41 54 49 4f 4e 2a 20 50 41 43 54 49 56 ORMATION* PACTIV
25210 41 54 49 4f 4e 5f 43 4f 4e 54 45 58 54 5f 41 53 ATION_CONTEXT_AS
25220 53 45 4d 42 4c 59 5f 44 45 54 41 49 4c 45 44 5f SEMBLY_DETAILED_
25230 49 4e 46 4f 52 4d 41 54 49 4f 4e 3b 0d 0a 0d 0a INFORMATION;....
25240 61 6c 69 61 73 20 5f 41 43 54 49 56 41 54 49 4f alias _ACTIVATIO
25250 4e 5f 43 4f 4e 54 45 58 54 5f 41 53 53 45 4d 42 N_CONTEXT_ASSEMB
25260 4c 59 5f 44 45 54 41 49 4c 45 44 5f 49 4e 46 4f LY_DETAILED_INFO
25270 52 4d 41 54 49 4f 4e 2a 20 50 43 41 43 54 49 56 RMATION* PCACTIV
25280 41 54 49 4f 4e 5f 43 4f 4e 54 45 58 54 5f 41 53 ATION_CONTEXT_AS
25290 53 45 4d 42 4c 59 5f 44 45 54 41 49 4c 45 44 5f SEMBLY_DETAILED_
252a0 49 4e 46 4f 52 4d 41 54 49 4f 4e 3b 0d 0a 0d 0a INFORMATION;....
252b0 73 74 72 75 63 74 20 5f 41 43 54 49 56 41 54 49 struct _ACTIVATI
252c0 4f 4e 5f 43 4f 4e 54 45 58 54 5f 44 45 54 41 49 ON_CONTEXT_DETAI
252d0 4c 45 44 5f 49 4e 46 4f 52 4d 41 54 49 4f 4e 20 LED_INFORMATION
252e0 7b 0d 0a 20 20 44 57 4f 52 44 20 64 77 46 6c 61 {.. DWORD dwFla
252f0 67 73 3b 0d 0a 20 20 44 57 4f 52 44 20 75 6c 46 gs;.. DWORD ulF
25300 6f 72 6d 61 74 56 65 72 73 69 6f 6e 3b 0d 0a 20 ormatVersion;..
25310 20 44 57 4f 52 44 20 75 6c 41 73 73 65 6d 62 6c DWORD ulAssembl
25320 79 43 6f 75 6e 74 3b 0d 0a 20 20 44 57 4f 52 44 yCount;.. DWORD
25330 20 75 6c 52 6f 6f 74 4d 61 6e 69 66 65 73 74 50 ulRootManifestP
25340 61 74 68 54 79 70 65 3b 0d 0a 20 20 44 57 4f 52 athType;.. DWOR
25350 44 20 75 6c 52 6f 6f 74 4d 61 6e 69 66 65 73 74 D ulRootManifest
25360 50 61 74 68 43 68 61 72 73 3b 0d 0a 20 20 44 57 PathChars;.. DW
25370 4f 52 44 20 75 6c 52 6f 6f 74 43 6f 6e 66 69 67 ORD ulRootConfig
25380 75 72 61 74 69 6f 6e 50 61 74 68 54 79 70 65 3b urationPathType;
25390 0d 0a 20 20 44 57 4f 52 44 20 75 6c 52 6f 6f 74 .. DWORD ulRoot
253a0 43 6f 6e 66 69 67 75 72 61 74 69 6f 6e 50 61 74 ConfigurationPat
253b0 68 43 68 61 72 73 3b 0d 0a 20 20 44 57 4f 52 44 hChars;.. DWORD
253c0 20 75 6c 41 70 70 44 69 72 50 61 74 68 54 79 70 ulAppDirPathTyp
253d0 65 3b 0d 0a 20 20 44 57 4f 52 44 20 75 6c 41 70 e;.. DWORD ulAp
253e0 70 44 69 72 50 61 74 68 43 68 61 72 73 3b 0d 0a pDirPathChars;..
253f0 20 20 50 43 57 53 54 52 20 6c 70 52 6f 6f 74 4d PCWSTR lpRootM
25400 61 6e 69 66 65 73 74 50 61 74 68 3b 0d 0a 20 20 anifestPath;..
25410 50 43 57 53 54 52 20 6c 70 52 6f 6f 74 43 6f 6e PCWSTR lpRootCon
25420 66 69 67 75 72 61 74 69 6f 6e 50 61 74 68 3b 0d figurationPath;.
25430 0a 20 20 50 43 57 53 54 52 20 6c 70 41 70 70 44 . PCWSTR lpAppD
25440 69 72 50 61 74 68 3b 0d 0a 7d 0d 0a 61 6c 69 61 irPath;..}..alia
25450 73 20 5f 41 43 54 49 56 41 54 49 4f 4e 5f 43 4f s _ACTIVATION_CO
25460 4e 54 45 58 54 5f 44 45 54 41 49 4c 45 44 5f 49 NTEXT_DETAILED_I
25470 4e 46 4f 52 4d 41 54 49 4f 4e 20 41 43 54 49 56 NFORMATION ACTIV
25480 41 54 49 4f 4e 5f 43 4f 4e 54 45 58 54 5f 44 45 ATION_CONTEXT_DE
25490 54 41 49 4c 45 44 5f 49 4e 46 4f 52 4d 41 54 49 TAILED_INFORMATI
254a0 4f 4e 3b 0d 0a 61 6c 69 61 73 20 5f 41 43 54 49 ON;..alias _ACTI
254b0 56 41 54 49 4f 4e 5f 43 4f 4e 54 45 58 54 5f 44 VATION_CONTEXT_D
254c0 45 54 41 49 4c 45 44 5f 49 4e 46 4f 52 4d 41 54 ETAILED_INFORMAT
254d0 49 4f 4e 2a 20 50 41 43 54 49 56 41 54 49 4f 4e ION* PACTIVATION
254e0 5f 43 4f 4e 54 45 58 54 5f 44 45 54 41 49 4c 45 _CONTEXT_DETAILE
254f0 44 5f 49 4e 46 4f 52 4d 41 54 49 4f 4e 3b 0d 0a D_INFORMATION;..
25500 0d 0a 61 6c 69 61 73 20 5f 41 43 54 49 56 41 54 ..alias _ACTIVAT
25510 49 4f 4e 5f 43 4f 4e 54 45 58 54 5f 44 45 54 41 ION_CONTEXT_DETA
25520 49 4c 45 44 5f 49 4e 46 4f 52 4d 41 54 49 4f 4e ILED_INFORMATION
25530 2a 20 50 43 41 43 54 49 56 41 54 49 4f 4e 5f 43 * PCACTIVATION_C
25540 4f 4e 54 45 58 54 5f 44 45 54 41 49 4c 45 44 5f ONTEXT_DETAILED_
25550 49 4e 46 4f 52 4d 41 54 49 4f 4e 3b 0d 0a 0d 0a INFORMATION;....
25560 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 44 4c enum : uint { DL
25570 4c 5f 50 52 4f 43 45 53 53 5f 41 54 54 41 43 48 L_PROCESS_ATTACH
25580 20 3d 20 31 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 = 1 }..enum : u
25590 69 6e 74 20 7b 20 44 4c 4c 5f 54 48 52 45 41 44 int { DLL_THREAD
255a0 5f 41 54 54 41 43 48 20 3d 20 32 20 7d 0d 0a 65 _ATTACH = 2 }..e
255b0 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 44 4c 4c num : uint { DLL
255c0 5f 54 48 52 45 41 44 5f 44 45 54 41 43 48 20 3d _THREAD_DETACH =
255d0 20 33 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 3 }..enum : uin
255e0 74 20 7b 20 44 4c 4c 5f 50 52 4f 43 45 53 53 5f t { DLL_PROCESS_
255f0 44 45 54 41 43 48 20 3d 20 30 20 7d 0d 0a 65 6e DETACH = 0 }..en
25600 75 6d 20 3a 20 75 69 6e 74 20 7b 20 44 4c 4c 5f um : uint { DLL_
25610 50 52 4f 43 45 53 53 5f 56 45 52 49 46 49 45 52 PROCESS_VERIFIER
25620 20 3d 20 34 20 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a = 4 }....enum :
25630 20 75 69 6e 74 20 7b 20 45 56 45 4e 54 4c 4f 47 uint { EVENTLOG
25640 5f 53 45 51 55 45 4e 54 49 41 4c 5f 52 45 41 44 _SEQUENTIAL_READ
25650 20 3d 20 30 78 30 30 30 31 20 7d 0d 0a 65 6e 75 = 0x0001 }..enu
25660 6d 20 3a 20 75 69 6e 74 20 7b 20 45 56 45 4e 54 m : uint { EVENT
25670 4c 4f 47 5f 53 45 45 4b 5f 52 45 41 44 20 3d 20 LOG_SEEK_READ =
25680 30 78 30 30 30 32 20 7d 0d 0a 65 6e 75 6d 20 3a 0x0002 }..enum :
25690 20 75 69 6e 74 20 7b 20 45 56 45 4e 54 4c 4f 47 uint { EVENTLOG
256a0 5f 46 4f 52 57 41 52 44 53 5f 52 45 41 44 20 3d _FORWARDS_READ =
256b0 20 30 78 30 30 30 34 20 7d 0d 0a 65 6e 75 6d 20 0x0004 }..enum
256c0 3a 20 75 69 6e 74 20 7b 20 45 56 45 4e 54 4c 4f : uint { EVENTLO
256d0 47 5f 42 41 43 4b 57 41 52 44 53 5f 52 45 41 44 G_BACKWARDS_READ
256e0 20 3d 20 30 78 30 30 30 38 20 7d 0d 0a 0d 0a 65 = 0x0008 }....e
256f0 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 45 56 45 num : uint { EVE
25700 4e 54 4c 4f 47 5f 53 55 43 43 45 53 53 20 3d 20 NTLOG_SUCCESS =
25710 30 78 30 30 30 30 20 7d 0d 0a 65 6e 75 6d 20 3a 0x0000 }..enum :
25720 20 75 69 6e 74 20 7b 20 45 56 45 4e 54 4c 4f 47 uint { EVENTLOG
25730 5f 45 52 52 4f 52 5f 54 59 50 45 20 3d 20 30 78 _ERROR_TYPE = 0x
25740 30 30 30 31 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 0001 }..enum : u
25750 69 6e 74 20 7b 20 45 56 45 4e 54 4c 4f 47 5f 57 int { EVENTLOG_W
25760 41 52 4e 49 4e 47 5f 54 59 50 45 20 3d 20 30 78 ARNING_TYPE = 0x
25770 30 30 30 32 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 0002 }..enum : u
25780 69 6e 74 20 7b 20 45 56 45 4e 54 4c 4f 47 5f 49 int { EVENTLOG_I
25790 4e 46 4f 52 4d 41 54 49 4f 4e 5f 54 59 50 45 20 NFORMATION_TYPE
257a0 3d 20 30 78 30 30 30 34 20 7d 0d 0a 65 6e 75 6d = 0x0004 }..enum
257b0 20 3a 20 75 69 6e 74 20 7b 20 45 56 45 4e 54 4c : uint { EVENTL
257c0 4f 47 5f 41 55 44 49 54 5f 53 55 43 43 45 53 53 OG_AUDIT_SUCCESS
257d0 20 3d 20 30 78 30 30 30 38 20 7d 0d 0a 65 6e 75 = 0x0008 }..enu
257e0 6d 20 3a 20 75 69 6e 74 20 7b 20 45 56 45 4e 54 m : uint { EVENT
257f0 4c 4f 47 5f 41 55 44 49 54 5f 46 41 49 4c 55 52 LOG_AUDIT_FAILUR
25800 45 20 3d 20 30 78 30 30 31 30 20 7d 0d 0a 0d 0a E = 0x0010 }....
25810 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 45 56 enum : uint { EV
25820 45 4e 54 4c 4f 47 5f 53 54 41 52 54 5f 50 41 49 ENTLOG_START_PAI
25830 52 45 44 5f 45 56 45 4e 54 20 3d 20 30 78 30 30 RED_EVENT = 0x00
25840 30 31 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 01 }..enum : uin
25850 74 20 7b 20 45 56 45 4e 54 4c 4f 47 5f 45 4e 44 t { EVENTLOG_END
25860 5f 50 41 49 52 45 44 5f 45 56 45 4e 54 20 3d 20 _PAIRED_EVENT =
25870 30 78 30 30 30 32 20 7d 0d 0a 65 6e 75 6d 20 3a 0x0002 }..enum :
25880 20 75 69 6e 74 20 7b 20 45 56 45 4e 54 4c 4f 47 uint { EVENTLOG
25890 5f 45 4e 44 5f 41 4c 4c 5f 50 41 49 52 45 44 5f _END_ALL_PAIRED_
258a0 45 56 45 4e 54 53 20 3d 20 30 78 30 30 30 34 20 EVENTS = 0x0004
258b0 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b }..enum : uint {
258c0 20 45 56 45 4e 54 4c 4f 47 5f 50 41 49 52 45 44 EVENTLOG_PAIRED
258d0 5f 45 56 45 4e 54 5f 41 43 54 49 56 45 20 3d 20 _EVENT_ACTIVE =
258e0 30 78 30 30 30 38 20 7d 0d 0a 65 6e 75 6d 20 3a 0x0008 }..enum :
258f0 20 75 69 6e 74 20 7b 20 45 56 45 4e 54 4c 4f 47 uint { EVENTLOG
25900 5f 50 41 49 52 45 44 5f 45 56 45 4e 54 5f 49 4e _PAIRED_EVENT_IN
25910 41 43 54 49 56 45 20 3d 20 30 78 30 30 31 30 20 ACTIVE = 0x0010
25920 7d 0d 0a 0d 0a 73 74 72 75 63 74 20 5f 45 56 45 }....struct _EVE
25930 4e 54 4c 4f 47 52 45 43 4f 52 44 20 7b 0d 0a 20 NTLOGRECORD {..
25940 20 44 57 4f 52 44 20 4c 65 6e 67 74 68 3b 0d 0a DWORD Length;..
25950 20 20 44 57 4f 52 44 20 52 65 73 65 72 76 65 64 DWORD Reserved
25960 3b 0d 0a 20 20 44 57 4f 52 44 20 52 65 63 6f 72 ;.. DWORD Recor
25970 64 4e 75 6d 62 65 72 3b 0d 0a 20 20 44 57 4f 52 dNumber;.. DWOR
25980 44 20 54 69 6d 65 47 65 6e 65 72 61 74 65 64 3b D TimeGenerated;
25990 0d 0a 20 20 44 57 4f 52 44 20 54 69 6d 65 57 72 .. DWORD TimeWr
259a0 69 74 74 65 6e 3b 0d 0a 20 20 44 57 4f 52 44 20 itten;.. DWORD
259b0 45 76 65 6e 74 49 44 3b 0d 0a 20 20 57 4f 52 44 EventID;.. WORD
259c0 20 45 76 65 6e 74 54 79 70 65 3b 0d 0a 20 20 57 EventType;.. W
259d0 4f 52 44 20 4e 75 6d 53 74 72 69 6e 67 73 3b 0d ORD NumStrings;.
259e0 0a 20 20 57 4f 52 44 20 45 76 65 6e 74 43 61 74 . WORD EventCat
259f0 65 67 6f 72 79 3b 0d 0a 20 20 57 4f 52 44 20 52 egory;.. WORD R
25a00 65 73 65 72 76 65 64 46 6c 61 67 73 3b 0d 0a 20 eservedFlags;..
25a10 20 44 57 4f 52 44 20 43 6c 6f 73 69 6e 67 52 65 DWORD ClosingRe
25a20 63 6f 72 64 4e 75 6d 62 65 72 3b 0d 0a 20 20 44 cordNumber;.. D
25a30 57 4f 52 44 20 53 74 72 69 6e 67 4f 66 66 73 65 WORD StringOffse
25a40 74 3b 0d 0a 20 20 44 57 4f 52 44 20 55 73 65 72 t;.. DWORD User
25a50 53 69 64 4c 65 6e 67 74 68 3b 0d 0a 20 20 44 57 SidLength;.. DW
25a60 4f 52 44 20 55 73 65 72 53 69 64 4f 66 66 73 65 ORD UserSidOffse
25a70 74 3b 0d 0a 20 20 44 57 4f 52 44 20 44 61 74 61 t;.. DWORD Data
25a80 4c 65 6e 67 74 68 3b 0d 0a 20 20 44 57 4f 52 44 Length;.. DWORD
25a90 20 44 61 74 61 4f 66 66 73 65 74 3b 0d 0a 0d 0a DataOffset;....
25aa0 7d 0d 0a 61 6c 69 61 73 20 5f 45 56 45 4e 54 4c }..alias _EVENTL
25ab0 4f 47 52 45 43 4f 52 44 20 45 56 45 4e 54 4c 4f OGRECORD EVENTLO
25ac0 47 52 45 43 4f 52 44 3b 0d 0a 61 6c 69 61 73 20 GRECORD;..alias
25ad0 5f 45 56 45 4e 54 4c 4f 47 52 45 43 4f 52 44 2a _EVENTLOGRECORD*
25ae0 20 50 45 56 45 4e 54 4c 4f 47 52 45 43 4f 52 44 PEVENTLOGRECORD
25af0 3b 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 ;....enum : uint
25b00 20 7b 20 4d 41 58 4c 4f 47 49 43 41 4c 4c 4f 47 { MAXLOGICALLOG
25b10 4e 41 4d 45 53 49 5a 45 20 3d 20 32 35 36 20 7d NAMESIZE = 256 }
25b20 0d 0a 0d 0a 2f 2f 20 23 69 66 20 5f 4d 53 43 5f ....// #if _MSC_
25b30 56 45 52 20 3e 3d 20 31 32 30 30 0d 0a 2f 2f 20 VER >= 1200..//
25b40 23 70 72 61 67 6d 61 20 77 61 72 6e 69 6e 67 28 #pragma warning(
25b50 70 75 73 68 29 0d 0a 2f 2f 20 23 65 6e 64 69 66 push)..// #endif
25b60 0d 0a 2f 2f 20 23 70 72 61 67 6d 61 20 77 61 72 ..// #pragma war
25b70 6e 69 6e 67 28 64 69 73 61 62 6c 65 20 3a 20 34 ning(disable : 4
25b80 32 30 30 29 0d 0a 73 74 72 75 63 74 20 5f 45 56 200)..struct _EV
25b90 45 4e 54 53 46 4f 52 4c 4f 47 46 49 4c 45 20 7b ENTSFORLOGFILE {
25ba0 0d 0a 20 20 44 57 4f 52 44 20 75 6c 53 69 7a 65 .. DWORD ulSize
25bb0 3b 0d 0a 20 20 57 43 48 41 52 20 73 7a 4c 6f 67 ;.. WCHAR szLog
25bc0 69 63 61 6c 4c 6f 67 46 69 6c 65 5b 4d 41 58 4c icalLogFile[MAXL
25bd0 4f 47 49 43 41 4c 4c 4f 47 4e 41 4d 45 53 49 5a OGICALLOGNAMESIZ
25be0 45 5d 3b 0d 0a 20 20 44 57 4f 52 44 20 75 6c 4e E];.. DWORD ulN
25bf0 75 6d 52 65 63 6f 72 64 73 3b 0d 0a 20 20 45 56 umRecords;.. EV
25c00 45 4e 54 4c 4f 47 52 45 43 4f 52 44 20 70 45 76 ENTLOGRECORD pEv
25c10 65 6e 74 4c 6f 67 52 65 63 6f 72 64 73 5b 5d 3b entLogRecords[];
25c20 0d 0a 7d 0d 0a 61 6c 69 61 73 20 5f 45 56 45 4e ..}..alias _EVEN
25c30 54 53 46 4f 52 4c 4f 47 46 49 4c 45 20 45 56 45 TSFORLOGFILE EVE
25c40 4e 54 53 46 4f 52 4c 4f 47 46 49 4c 45 3b 0d 0a NTSFORLOGFILE;..
25c50 61 6c 69 61 73 20 5f 45 56 45 4e 54 53 46 4f 52 alias _EVENTSFOR
25c60 4c 4f 47 46 49 4c 45 2a 20 50 45 56 45 4e 54 53 LOGFILE* PEVENTS
25c70 46 4f 52 4c 4f 47 46 49 4c 45 3b 0d 0a 0d 0a 73 FORLOGFILE;....s
25c80 74 72 75 63 74 20 5f 50 41 43 4b 45 44 45 56 45 truct _PACKEDEVE
25c90 4e 54 49 4e 46 4f 20 7b 0d 0a 20 20 44 57 4f 52 NTINFO {.. DWOR
25ca0 44 20 75 6c 53 69 7a 65 3b 0d 0a 20 20 44 57 4f D ulSize;.. DWO
25cb0 52 44 20 75 6c 4e 75 6d 45 76 65 6e 74 73 46 6f RD ulNumEventsFo
25cc0 72 4c 6f 67 46 69 6c 65 3b 0d 0a 20 20 44 57 4f rLogFile;.. DWO
25cd0 52 44 20 75 6c 4f 66 66 73 65 74 73 5b 5d 3b 0d RD ulOffsets[];.
25ce0 0a 7d 0d 0a 61 6c 69 61 73 20 5f 50 41 43 4b 45 .}..alias _PACKE
25cf0 44 45 56 45 4e 54 49 4e 46 4f 20 50 41 43 4b 45 DEVENTINFO PACKE
25d00 44 45 56 45 4e 54 49 4e 46 4f 3b 0d 0a 61 6c 69 DEVENTINFO;..ali
25d10 61 73 20 5f 50 41 43 4b 45 44 45 56 45 4e 54 49 as _PACKEDEVENTI
25d20 4e 46 4f 2a 20 50 50 41 43 4b 45 44 45 56 45 4e NFO* PPACKEDEVEN
25d30 54 49 4e 46 4f 3b 0d 0a 0d 0a 2f 2f 20 23 69 66 TINFO;....// #if
25d40 20 5f 4d 53 43 5f 56 45 52 20 3e 3d 20 31 32 30 _MSC_VER >= 120
25d50 30 0d 0a 2f 2f 20 23 70 72 61 67 6d 61 20 77 61 0..// #pragma wa
25d60 72 6e 69 6e 67 28 70 6f 70 29 0d 0a 2f 2f 20 23 rning(pop)..// #
25d70 65 6c 73 65 0d 0a 2f 2f 20 23 2e 2e 2e 0d 0a 2f else..// #...../
25d80 2f 20 23 65 6e 64 69 66 0d 0a 0d 0a 65 6e 75 6d / #endif....enum
25d90 20 3a 20 75 69 6e 74 20 7b 20 4b 45 59 5f 51 55 : uint { KEY_QU
25da0 45 52 59 5f 56 41 4c 55 45 20 3d 20 30 78 30 30 ERY_VALUE = 0x00
25db0 30 31 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 01 }..enum : uin
25dc0 74 20 7b 20 4b 45 59 5f 53 45 54 5f 56 41 4c 55 t { KEY_SET_VALU
25dd0 45 20 3d 20 30 78 30 30 30 32 20 7d 0d 0a 65 6e E = 0x0002 }..en
25de0 75 6d 20 3a 20 75 69 6e 74 20 7b 20 4b 45 59 5f um : uint { KEY_
25df0 43 52 45 41 54 45 5f 53 55 42 5f 4b 45 59 20 3d CREATE_SUB_KEY =
25e00 20 30 78 30 30 30 34 20 7d 0d 0a 65 6e 75 6d 20 0x0004 }..enum
25e10 3a 20 75 69 6e 74 20 7b 20 4b 45 59 5f 45 4e 55 : uint { KEY_ENU
25e20 4d 45 52 41 54 45 5f 53 55 42 5f 4b 45 59 53 20 MERATE_SUB_KEYS
25e30 3d 20 30 78 30 30 30 38 20 7d 0d 0a 65 6e 75 6d = 0x0008 }..enum
25e40 20 3a 20 75 69 6e 74 20 7b 20 4b 45 59 5f 4e 4f : uint { KEY_NO
25e50 54 49 46 59 20 3d 20 30 78 30 30 31 30 20 7d 0d TIFY = 0x0010 }.
25e60 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 4b .enum : uint { K
25e70 45 59 5f 43 52 45 41 54 45 5f 4c 49 4e 4b 20 3d EY_CREATE_LINK =
25e80 20 30 78 30 30 32 30 20 7d 0d 0a 65 6e 75 6d 20 0x0020 }..enum
25e90 3a 20 75 69 6e 74 20 7b 20 4b 45 59 5f 57 4f 57 : uint { KEY_WOW
25ea0 36 34 5f 33 32 4b 45 59 20 3d 20 30 78 30 32 30 64_32KEY = 0x020
25eb0 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 0 }..enum : uint
25ec0 20 7b 20 4b 45 59 5f 57 4f 57 36 34 5f 36 34 4b { KEY_WOW64_64K
25ed0 45 59 20 3d 20 30 78 30 31 30 30 20 7d 0d 0a 65 EY = 0x0100 }..e
25ee0 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 4b 45 59 num : uint { KEY
25ef0 5f 57 4f 57 36 34 5f 52 45 53 20 3d 20 30 78 30 _WOW64_RES = 0x0
25f00 33 30 30 20 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 300 }....enum :
25f10 75 69 6e 74 20 7b 20 4b 45 59 5f 52 45 41 44 20 uint { KEY_READ
25f20 3d 20 28 53 54 41 4e 44 41 52 44 5f 52 49 47 48 = (STANDARD_RIGH
25f30 54 53 5f 52 45 41 44 20 7c 20 4b 45 59 5f 51 55 TS_READ | KEY_QU
25f40 45 52 59 5f 56 41 4c 55 45 20 7c 20 4b 45 59 5f ERY_VALUE | KEY_
25f50 45 4e 55 4d 45 52 41 54 45 5f 53 55 42 5f 4b 45 ENUMERATE_SUB_KE
25f60 59 53 20 7c 20 4b 45 59 5f 4e 4f 54 49 46 59 29 YS | KEY_NOTIFY)
25f70 20 26 20 28 7e 53 59 4e 43 48 52 4f 4e 49 5a 45 & (~SYNCHRONIZE
25f80 29 20 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 75 69 ) }....enum : ui
25f90 6e 74 20 7b 20 4b 45 59 5f 57 52 49 54 45 20 3d nt { KEY_WRITE =
25fa0 20 28 53 54 41 4e 44 41 52 44 5f 52 49 47 48 54 (STANDARD_RIGHT
25fb0 53 5f 57 52 49 54 45 20 7c 20 4b 45 59 5f 53 45 S_WRITE | KEY_SE
25fc0 54 5f 56 41 4c 55 45 20 7c 20 4b 45 59 5f 43 52 T_VALUE | KEY_CR
25fd0 45 41 54 45 5f 53 55 42 5f 4b 45 59 29 20 26 20 EATE_SUB_KEY) &
25fe0 28 7e 53 59 4e 43 48 52 4f 4e 49 5a 45 29 20 7d (~SYNCHRONIZE) }
25ff0 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 ....enum : uint
26000 7b 20 4b 45 59 5f 45 58 45 43 55 54 45 20 3d 20 { KEY_EXECUTE =
26010 4b 45 59 5f 52 45 41 44 20 26 20 7e 53 59 4e 43 KEY_READ & ~SYNC
26020 48 52 4f 4e 49 5a 45 20 7d 0d 0a 0d 0a 65 6e 75 HRONIZE }....enu
26030 6d 20 3a 20 75 69 6e 74 20 7b 20 4b 45 59 5f 41 m : uint { KEY_A
26040 4c 4c 5f 41 43 43 45 53 53 20 3d 20 28 53 54 41 LL_ACCESS = (STA
26050 4e 44 41 52 44 5f 52 49 47 48 54 53 5f 41 4c 4c NDARD_RIGHTS_ALL
26060 20 7c 20 4b 45 59 5f 51 55 45 52 59 5f 56 41 4c | KEY_QUERY_VAL
26070 55 45 20 7c 20 4b 45 59 5f 53 45 54 5f 56 41 4c UE | KEY_SET_VAL
26080 55 45 20 7c 20 4b 45 59 5f 43 52 45 41 54 45 5f UE | KEY_CREATE_
26090 53 55 42 5f 4b 45 59 20 7c 20 4b 45 59 5f 45 4e SUB_KEY | KEY_EN
260a0 55 4d 45 52 41 54 45 5f 53 55 42 5f 4b 45 59 53 UMERATE_SUB_KEYS
260b0 20 7c 20 4b 45 59 5f 4e 4f 54 49 46 59 20 7c 20 | KEY_NOTIFY |
260c0 4b 45 59 5f 43 52 45 41 54 45 5f 4c 49 4e 4b 29 KEY_CREATE_LINK)
260d0 20 26 20 28 7e 53 59 4e 43 48 52 4f 4e 49 5a 45 & (~SYNCHRONIZE
260e0 29 20 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 75 69 ) }....enum : ui
260f0 6e 74 20 7b 20 52 45 47 5f 4f 50 54 49 4f 4e 5f nt { REG_OPTION_
26100 52 45 53 45 52 56 45 44 20 3d 20 30 78 30 30 30 RESERVED = 0x000
26110 30 30 30 30 30 20 7d 0d 0a 0d 0a 65 6e 75 6d 20 00000 }....enum
26120 3a 20 75 69 6e 74 20 7b 20 52 45 47 5f 4f 50 54 : uint { REG_OPT
26130 49 4f 4e 5f 4e 4f 4e 5f 56 4f 4c 41 54 49 4c 45 ION_NON_VOLATILE
26140 20 3d 20 30 78 30 30 30 30 30 30 30 30 20 7d 0d = 0x00000000 }.
26150 0a 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b ...enum : uint {
26160 20 52 45 47 5f 4f 50 54 49 4f 4e 5f 56 4f 4c 41 REG_OPTION_VOLA
26170 54 49 4c 45 20 3d 20 30 78 30 30 30 30 30 30 30 TILE = 0x0000000
26180 31 20 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 75 69 1 }....enum : ui
26190 6e 74 20 7b 20 52 45 47 5f 4f 50 54 49 4f 4e 5f nt { REG_OPTION_
261a0 43 52 45 41 54 45 5f 4c 49 4e 4b 20 3d 20 30 78 CREATE_LINK = 0x
261b0 30 30 30 30 30 30 30 32 20 7d 0d 0a 0d 0a 65 6e 00000002 }....en
261c0 75 6d 20 3a 20 75 69 6e 74 20 7b 20 52 45 47 5f um : uint { REG_
261d0 4f 50 54 49 4f 4e 5f 42 41 43 4b 55 50 5f 52 45 OPTION_BACKUP_RE
261e0 53 54 4f 52 45 20 3d 20 30 78 30 30 30 30 30 30 STORE = 0x000000
261f0 30 34 20 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 75 04 }....enum : u
26200 69 6e 74 20 7b 20 52 45 47 5f 4f 50 54 49 4f 4e int { REG_OPTION
26210 5f 4f 50 45 4e 5f 4c 49 4e 4b 20 3d 20 30 78 30 _OPEN_LINK = 0x0
26220 30 30 30 30 30 30 38 20 7d 0d 0a 0d 0a 65 6e 75 0000008 }....enu
26230 6d 20 3a 20 75 69 6e 74 20 7b 20 52 45 47 5f 4c m : uint { REG_L
26240 45 47 41 4c 5f 4f 50 54 49 4f 4e 20 3d 20 52 45 EGAL_OPTION = RE
26250 47 5f 4f 50 54 49 4f 4e 5f 52 45 53 45 52 56 45 G_OPTION_RESERVE
26260 44 20 7c 20 52 45 47 5f 4f 50 54 49 4f 4e 5f 4e D | REG_OPTION_N
26270 4f 4e 5f 56 4f 4c 41 54 49 4c 45 20 7c 20 52 45 ON_VOLATILE | RE
26280 47 5f 4f 50 54 49 4f 4e 5f 56 4f 4c 41 54 49 4c G_OPTION_VOLATIL
26290 45 20 7c 20 52 45 47 5f 4f 50 54 49 4f 4e 5f 43 E | REG_OPTION_C
262a0 52 45 41 54 45 5f 4c 49 4e 4b 20 7c 20 52 45 47 REATE_LINK | REG
262b0 5f 4f 50 54 49 4f 4e 5f 42 41 43 4b 55 50 5f 52 _OPTION_BACKUP_R
262c0 45 53 54 4f 52 45 20 7c 20 52 45 47 5f 4f 50 54 ESTORE | REG_OPT
262d0 49 4f 4e 5f 4f 50 45 4e 5f 4c 49 4e 4b 20 7d 0d ION_OPEN_LINK }.
262e0 0a 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b ...enum : uint {
262f0 20 52 45 47 5f 43 52 45 41 54 45 44 5f 4e 45 57 REG_CREATED_NEW
26300 5f 4b 45 59 20 3d 20 30 78 30 30 30 30 30 30 30 _KEY = 0x0000000
26310 31 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 1 }..enum : uint
26320 20 7b 20 52 45 47 5f 4f 50 45 4e 45 44 5f 45 58 { REG_OPENED_EX
26330 49 53 54 49 4e 47 5f 4b 45 59 20 3d 20 30 78 30 ISTING_KEY = 0x0
26340 30 30 30 30 30 30 32 20 7d 0d 0a 0d 0a 65 6e 75 0000002 }....enu
26350 6d 20 3a 20 75 69 6e 74 20 7b 20 52 45 47 5f 53 m : uint { REG_S
26360 54 41 4e 44 41 52 44 5f 46 4f 52 4d 41 54 20 3d TANDARD_FORMAT =
26370 20 31 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 1 }..enum : uin
26380 74 20 7b 20 52 45 47 5f 4c 41 54 45 53 54 5f 46 t { REG_LATEST_F
26390 4f 52 4d 41 54 20 3d 20 32 20 7d 0d 0a 65 6e 75 ORMAT = 2 }..enu
263a0 6d 20 3a 20 75 69 6e 74 20 7b 20 52 45 47 5f 4e m : uint { REG_N
263b0 4f 5f 43 4f 4d 50 52 45 53 53 49 4f 4e 20 3d 20 O_COMPRESSION =
263c0 34 20 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 75 69 4 }....enum : ui
263d0 6e 74 20 7b 20 52 45 47 5f 57 48 4f 4c 45 5f 48 nt { REG_WHOLE_H
263e0 49 56 45 5f 56 4f 4c 41 54 49 4c 45 20 3d 20 30 IVE_VOLATILE = 0
263f0 78 30 30 30 30 30 30 30 31 20 7d 0d 0a 65 6e 75 x00000001 }..enu
26400 6d 20 3a 20 75 69 6e 74 20 7b 20 52 45 47 5f 52 m : uint { REG_R
26410 45 46 52 45 53 48 5f 48 49 56 45 20 3d 20 30 78 EFRESH_HIVE = 0x
26420 30 30 30 30 30 30 30 32 20 7d 0d 0a 65 6e 75 6d 00000002 }..enum
26430 20 3a 20 75 69 6e 74 20 7b 20 52 45 47 5f 4e 4f : uint { REG_NO
26440 5f 4c 41 5a 59 5f 46 4c 55 53 48 20 3d 20 30 78 _LAZY_FLUSH = 0x
26450 30 30 30 30 30 30 30 34 20 7d 0d 0a 65 6e 75 6d 00000004 }..enum
26460 20 3a 20 75 69 6e 74 20 7b 20 52 45 47 5f 46 4f : uint { REG_FO
26470 52 43 45 5f 52 45 53 54 4f 52 45 20 3d 20 30 78 RCE_RESTORE = 0x
26480 30 30 30 30 30 30 30 38 20 7d 0d 0a 0d 0a 65 6e 00000008 }....en
26490 75 6d 20 3a 20 75 69 6e 74 20 7b 20 52 45 47 5f um : uint { REG_
264a0 4e 4f 54 49 46 59 5f 43 48 41 4e 47 45 5f 4e 41 NOTIFY_CHANGE_NA
264b0 4d 45 20 3d 20 30 78 30 30 30 30 30 30 30 31 20 ME = 0x00000001
264c0 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b }..enum : uint {
264d0 20 52 45 47 5f 4e 4f 54 49 46 59 5f 43 48 41 4e REG_NOTIFY_CHAN
264e0 47 45 5f 41 54 54 52 49 42 55 54 45 53 20 3d 20 GE_ATTRIBUTES =
264f0 30 78 30 30 30 30 30 30 30 32 20 7d 0d 0a 65 6e 0x00000002 }..en
26500 75 6d 20 3a 20 75 69 6e 74 20 7b 20 52 45 47 5f um : uint { REG_
26510 4e 4f 54 49 46 59 5f 43 48 41 4e 47 45 5f 4c 41 NOTIFY_CHANGE_LA
26520 53 54 5f 53 45 54 20 3d 20 30 78 30 30 30 30 30 ST_SET = 0x00000
26530 30 30 34 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 004 }..enum : ui
26540 6e 74 20 7b 20 52 45 47 5f 4e 4f 54 49 46 59 5f nt { REG_NOTIFY_
26550 43 48 41 4e 47 45 5f 53 45 43 55 52 49 54 59 20 CHANGE_SECURITY
26560 3d 20 30 78 30 30 30 30 30 30 30 38 20 7d 0d 0a = 0x00000008 }..
26570 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
26580 52 45 47 5f 4c 45 47 41 4c 5f 43 48 41 4e 47 45 REG_LEGAL_CHANGE
26590 5f 46 49 4c 54 45 52 20 3d 20 52 45 47 5f 4e 4f _FILTER = REG_NO
265a0 54 49 46 59 5f 43 48 41 4e 47 45 5f 4e 41 4d 45 TIFY_CHANGE_NAME
265b0 20 7c 20 52 45 47 5f 4e 4f 54 49 46 59 5f 43 48 | REG_NOTIFY_CH
265c0 41 4e 47 45 5f 41 54 54 52 49 42 55 54 45 53 20 ANGE_ATTRIBUTES
265d0 7c 20 52 45 47 5f 4e 4f 54 49 46 59 5f 43 48 41 | REG_NOTIFY_CHA
265e0 4e 47 45 5f 4c 41 53 54 5f 53 45 54 20 7c 20 52 NGE_LAST_SET | R
265f0 45 47 5f 4e 4f 54 49 46 59 5f 43 48 41 4e 47 45 EG_NOTIFY_CHANGE
26600 5f 53 45 43 55 52 49 54 59 20 7d 0d 0a 0d 0a 65 _SECURITY }....e
26610 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 52 45 47 num : uint { REG
26620 5f 4e 4f 4e 45 20 3d 20 30 20 7d 0d 0a 65 6e 75 _NONE = 0 }..enu
26630 6d 20 3a 20 75 69 6e 74 20 7b 20 52 45 47 5f 53 m : uint { REG_S
26640 5a 20 3d 20 31 20 7d 0d 0a 65 6e 75 6d 20 3a 20 Z = 1 }..enum :
26650 75 69 6e 74 20 7b 20 52 45 47 5f 45 58 50 41 4e uint { REG_EXPAN
26660 44 5f 53 5a 20 3d 20 32 20 7d 0d 0a 0d 0a 65 6e D_SZ = 2 }....en
26670 75 6d 20 3a 20 75 69 6e 74 20 7b 20 52 45 47 5f um : uint { REG_
26680 42 49 4e 41 52 59 20 3d 20 33 20 7d 0d 0a 65 6e BINARY = 3 }..en
26690 75 6d 20 3a 20 75 69 6e 74 20 7b 20 52 45 47 5f um : uint { REG_
266a0 44 57 4f 52 44 20 3d 20 34 20 7d 0d 0a 65 6e 75 DWORD = 4 }..enu
266b0 6d 20 3a 20 75 69 6e 74 20 7b 20 52 45 47 5f 44 m : uint { REG_D
266c0 57 4f 52 44 5f 4c 49 54 54 4c 45 5f 45 4e 44 49 WORD_LITTLE_ENDI
266d0 41 4e 20 3d 20 34 20 7d 0d 0a 65 6e 75 6d 20 3a AN = 4 }..enum :
266e0 20 75 69 6e 74 20 7b 20 52 45 47 5f 44 57 4f 52 uint { REG_DWOR
266f0 44 5f 42 49 47 5f 45 4e 44 49 41 4e 20 3d 20 35 D_BIG_ENDIAN = 5
26700 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 }..enum : uint
26710 7b 20 52 45 47 5f 4c 49 4e 4b 20 3d 20 36 20 7d { REG_LINK = 6 }
26720 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
26730 52 45 47 5f 4d 55 4c 54 49 5f 53 5a 20 3d 20 37 REG_MULTI_SZ = 7
26740 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 }..enum : uint
26750 7b 20 52 45 47 5f 52 45 53 4f 55 52 43 45 5f 4c { REG_RESOURCE_L
26760 49 53 54 20 3d 20 38 20 7d 0d 0a 65 6e 75 6d 20 IST = 8 }..enum
26770 3a 20 75 69 6e 74 20 7b 20 52 45 47 5f 46 55 4c : uint { REG_FUL
26780 4c 5f 52 45 53 4f 55 52 43 45 5f 44 45 53 43 52 L_RESOURCE_DESCR
26790 49 50 54 4f 52 20 3d 20 39 20 7d 0d 0a 65 6e 75 IPTOR = 9 }..enu
267a0 6d 20 3a 20 75 69 6e 74 20 7b 20 52 45 47 5f 52 m : uint { REG_R
267b0 45 53 4f 55 52 43 45 5f 52 45 51 55 49 52 45 4d ESOURCE_REQUIREM
267c0 45 4e 54 53 5f 4c 49 53 54 20 3d 20 31 30 20 7d ENTS_LIST = 10 }
267d0 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
267e0 52 45 47 5f 51 57 4f 52 44 20 3d 20 31 31 20 7d REG_QWORD = 11 }
267f0 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
26800 52 45 47 5f 51 57 4f 52 44 5f 4c 49 54 54 4c 45 REG_QWORD_LITTLE
26810 5f 45 4e 44 49 41 4e 20 3d 20 31 31 20 7d 0d 0a _ENDIAN = 11 }..
26820 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
26830 53 45 52 56 49 43 45 5f 4b 45 52 4e 45 4c 5f 44 SERVICE_KERNEL_D
26840 52 49 56 45 52 20 3d 20 30 78 30 30 30 30 30 30 RIVER = 0x000000
26850 30 31 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 01 }..enum : uin
26860 74 20 7b 20 53 45 52 56 49 43 45 5f 46 49 4c 45 t { SERVICE_FILE
26870 5f 53 59 53 54 45 4d 5f 44 52 49 56 45 52 20 3d _SYSTEM_DRIVER =
26880 20 30 78 30 30 30 30 30 30 30 32 20 7d 0d 0a 65 0x00000002 }..e
26890 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 53 45 52 num : uint { SER
268a0 56 49 43 45 5f 41 44 41 50 54 45 52 20 3d 20 30 VICE_ADAPTER = 0
268b0 78 30 30 30 30 30 30 30 34 20 7d 0d 0a 65 6e 75 x00000004 }..enu
268c0 6d 20 3a 20 75 69 6e 74 20 7b 20 53 45 52 56 49 m : uint { SERVI
268d0 43 45 5f 52 45 43 4f 47 4e 49 5a 45 52 5f 44 52 CE_RECOGNIZER_DR
268e0 49 56 45 52 20 3d 20 30 78 30 30 30 30 30 30 30 IVER = 0x0000000
268f0 38 20 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 75 69 8 }....enum : ui
26900 6e 74 20 7b 20 53 45 52 56 49 43 45 5f 44 52 49 nt { SERVICE_DRI
26910 56 45 52 20 3d 20 53 45 52 56 49 43 45 5f 4b 45 VER = SERVICE_KE
26920 52 4e 45 4c 5f 44 52 49 56 45 52 20 7c 20 53 45 RNEL_DRIVER | SE
26930 52 56 49 43 45 5f 46 49 4c 45 5f 53 59 53 54 45 RVICE_FILE_SYSTE
26940 4d 5f 44 52 49 56 45 52 20 7c 20 53 45 52 56 49 M_DRIVER | SERVI
26950 43 45 5f 52 45 43 4f 47 4e 49 5a 45 52 5f 44 52 CE_RECOGNIZER_DR
26960 49 56 45 52 20 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a IVER }....enum :
26970 20 75 69 6e 74 20 7b 20 53 45 52 56 49 43 45 5f uint { SERVICE_
26980 57 49 4e 33 32 5f 4f 57 4e 5f 50 52 4f 43 45 53 WIN32_OWN_PROCES
26990 53 20 3d 20 30 78 30 30 30 30 30 30 31 30 20 7d S = 0x00000010 }
269a0 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
269b0 53 45 52 56 49 43 45 5f 57 49 4e 33 32 5f 53 48 SERVICE_WIN32_SH
269c0 41 52 45 5f 50 52 4f 43 45 53 53 20 3d 20 30 78 ARE_PROCESS = 0x
269d0 30 30 30 30 30 30 32 30 20 7d 0d 0a 65 6e 75 6d 00000020 }..enum
269e0 20 3a 20 75 69 6e 74 20 7b 20 53 45 52 56 49 43 : uint { SERVIC
269f0 45 5f 57 49 4e 33 32 20 3d 20 53 45 52 56 49 43 E_WIN32 = SERVIC
26a00 45 5f 57 49 4e 33 32 5f 4f 57 4e 5f 50 52 4f 43 E_WIN32_OWN_PROC
26a10 45 53 53 20 7c 20 53 45 52 56 49 43 45 5f 57 49 ESS | SERVICE_WI
26a20 4e 33 32 5f 53 48 41 52 45 5f 50 52 4f 43 45 53 N32_SHARE_PROCES
26a30 53 20 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 75 69 S }....enum : ui
26a40 6e 74 20 7b 20 53 45 52 56 49 43 45 5f 49 4e 54 nt { SERVICE_INT
26a50 45 52 41 43 54 49 56 45 5f 50 52 4f 43 45 53 53 ERACTIVE_PROCESS
26a60 20 3d 20 30 78 30 30 30 30 30 31 30 30 20 7d 0d = 0x00000100 }.
26a70 0a 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b ...enum : uint {
26a80 20 53 45 52 56 49 43 45 5f 54 59 50 45 5f 41 4c SERVICE_TYPE_AL
26a90 4c 20 3d 20 53 45 52 56 49 43 45 5f 57 49 4e 33 L = SERVICE_WIN3
26aa0 32 20 7c 20 53 45 52 56 49 43 45 5f 41 44 41 50 2 | SERVICE_ADAP
26ab0 54 45 52 20 7c 20 53 45 52 56 49 43 45 5f 44 52 TER | SERVICE_DR
26ac0 49 56 45 52 20 7c 20 53 45 52 56 49 43 45 5f 49 IVER | SERVICE_I
26ad0 4e 54 45 52 41 43 54 49 56 45 5f 50 52 4f 43 45 NTERACTIVE_PROCE
26ae0 53 53 20 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 75 SS }....enum : u
26af0 69 6e 74 20 7b 20 53 45 52 56 49 43 45 5f 42 4f int { SERVICE_BO
26b00 4f 54 5f 53 54 41 52 54 20 3d 20 30 78 30 30 30 OT_START = 0x000
26b10 30 30 30 30 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 00000 }..enum :
26b20 75 69 6e 74 20 7b 20 53 45 52 56 49 43 45 5f 53 uint { SERVICE_S
26b30 59 53 54 45 4d 5f 53 54 41 52 54 20 3d 20 30 78 YSTEM_START = 0x
26b40 30 30 30 30 30 30 30 31 20 7d 0d 0a 65 6e 75 6d 00000001 }..enum
26b50 20 3a 20 75 69 6e 74 20 7b 20 53 45 52 56 49 43 : uint { SERVIC
26b60 45 5f 41 55 54 4f 5f 53 54 41 52 54 20 3d 20 30 E_AUTO_START = 0
26b70 78 30 30 30 30 30 30 30 32 20 7d 0d 0a 65 6e 75 x00000002 }..enu
26b80 6d 20 3a 20 75 69 6e 74 20 7b 20 53 45 52 56 49 m : uint { SERVI
26b90 43 45 5f 44 45 4d 41 4e 44 5f 53 54 41 52 54 20 CE_DEMAND_START
26ba0 3d 20 30 78 30 30 30 30 30 30 30 33 20 7d 0d 0a = 0x00000003 }..
26bb0 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 53 45 enum : uint { SE
26bc0 52 56 49 43 45 5f 44 49 53 41 42 4c 45 44 20 3d RVICE_DISABLED =
26bd0 20 30 78 30 30 30 30 30 30 30 34 20 7d 0d 0a 0d 0x00000004 }...
26be0 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 53 .enum : uint { S
26bf0 45 52 56 49 43 45 5f 45 52 52 4f 52 5f 49 47 4e ERVICE_ERROR_IGN
26c00 4f 52 45 20 3d 20 30 78 30 30 30 30 30 30 30 30 ORE = 0x00000000
26c10 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 }..enum : uint
26c20 7b 20 53 45 52 56 49 43 45 5f 45 52 52 4f 52 5f { SERVICE_ERROR_
26c30 4e 4f 52 4d 41 4c 20 3d 20 30 78 30 30 30 30 30 NORMAL = 0x00000
26c40 30 30 31 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 001 }..enum : ui
26c50 6e 74 20 7b 20 53 45 52 56 49 43 45 5f 45 52 52 nt { SERVICE_ERR
26c60 4f 52 5f 53 45 56 45 52 45 20 3d 20 30 78 30 30 OR_SEVERE = 0x00
26c70 30 30 30 30 30 32 20 7d 0d 0a 65 6e 75 6d 20 3a 000002 }..enum :
26c80 20 75 69 6e 74 20 7b 20 53 45 52 56 49 43 45 5f uint { SERVICE_
26c90 45 52 52 4f 52 5f 43 52 49 54 49 43 41 4c 20 3d ERROR_CRITICAL =
26ca0 20 30 78 30 30 30 30 30 30 30 33 20 7d 0d 0a 0d 0x00000003 }...
26cb0 0a 61 6c 69 61 73 20 69 6e 74 20 5f 43 4d 5f 53 .alias int _CM_S
26cc0 45 52 56 49 43 45 5f 4e 4f 44 45 5f 54 59 50 45 ERVICE_NODE_TYPE
26cd0 3b 0d 0a 65 6e 75 6d 20 7b 0d 0a 20 20 44 72 69 ;..enum {.. Dri
26ce0 76 65 72 54 79 70 65 20 3d 20 53 45 52 56 49 43 verType = SERVIC
26cf0 45 5f 4b 45 52 4e 45 4c 5f 44 52 49 56 45 52 2c E_KERNEL_DRIVER,
26d00 0d 0a 20 20 46 69 6c 65 53 79 73 74 65 6d 54 79 .. FileSystemTy
26d10 70 65 20 3d 20 53 45 52 56 49 43 45 5f 46 49 4c pe = SERVICE_FIL
26d20 45 5f 53 59 53 54 45 4d 5f 44 52 49 56 45 52 2c E_SYSTEM_DRIVER,
26d30 0d 0a 20 20 57 69 6e 33 32 53 65 72 76 69 63 65 .. Win32Service
26d40 4f 77 6e 50 72 6f 63 65 73 73 20 3d 20 53 45 52 OwnProcess = SER
26d50 56 49 43 45 5f 57 49 4e 33 32 5f 4f 57 4e 5f 50 VICE_WIN32_OWN_P
26d60 52 4f 43 45 53 53 2c 0d 0a 20 20 57 69 6e 33 32 ROCESS,.. Win32
26d70 53 65 72 76 69 63 65 53 68 61 72 65 50 72 6f 63 ServiceShareProc
26d80 65 73 73 20 3d 20 53 45 52 56 49 43 45 5f 57 49 ess = SERVICE_WI
26d90 4e 33 32 5f 53 48 41 52 45 5f 50 52 4f 43 45 53 N32_SHARE_PROCES
26da0 53 2c 0d 0a 20 20 41 64 61 70 74 65 72 54 79 70 S,.. AdapterTyp
26db0 65 20 3d 20 53 45 52 56 49 43 45 5f 41 44 41 50 e = SERVICE_ADAP
26dc0 54 45 52 2c 0d 0a 20 20 52 65 63 6f 67 6e 69 7a TER,.. Recogniz
26dd0 65 72 54 79 70 65 20 3d 20 53 45 52 56 49 43 45 erType = SERVICE
26de0 5f 52 45 43 4f 47 4e 49 5a 45 52 5f 44 52 49 56 _RECOGNIZER_DRIV
26df0 45 52 2c 0d 0a 7d 0d 0a 61 6c 69 61 73 20 5f 43 ER,..}..alias _C
26e00 4d 5f 53 45 52 56 49 43 45 5f 4e 4f 44 45 5f 54 M_SERVICE_NODE_T
26e10 59 50 45 20 53 45 52 56 49 43 45 5f 4e 4f 44 45 YPE SERVICE_NODE
26e20 5f 54 59 50 45 3b 0d 0a 0d 0a 61 6c 69 61 73 20 _TYPE;....alias
26e30 69 6e 74 20 5f 43 4d 5f 53 45 52 56 49 43 45 5f int _CM_SERVICE_
26e40 4c 4f 41 44 5f 54 59 50 45 3b 0d 0a 65 6e 75 6d LOAD_TYPE;..enum
26e50 20 7b 0d 0a 20 20 42 6f 6f 74 4c 6f 61 64 20 3d {.. BootLoad =
26e60 20 53 45 52 56 49 43 45 5f 42 4f 4f 54 5f 53 54 SERVICE_BOOT_ST
26e70 41 52 54 2c 0d 0a 20 20 53 79 73 74 65 6d 4c 6f ART,.. SystemLo
26e80 61 64 20 3d 20 53 45 52 56 49 43 45 5f 53 59 53 ad = SERVICE_SYS
26e90 54 45 4d 5f 53 54 41 52 54 2c 0d 0a 20 20 41 75 TEM_START,.. Au
26ea0 74 6f 4c 6f 61 64 20 3d 20 53 45 52 56 49 43 45 toLoad = SERVICE
26eb0 5f 41 55 54 4f 5f 53 54 41 52 54 2c 0d 0a 20 20 _AUTO_START,..
26ec0 44 65 6d 61 6e 64 4c 6f 61 64 20 3d 20 53 45 52 DemandLoad = SER
26ed0 56 49 43 45 5f 44 45 4d 41 4e 44 5f 53 54 41 52 VICE_DEMAND_STAR
26ee0 54 2c 0d 0a 20 20 44 69 73 61 62 6c 65 4c 6f 61 T,.. DisableLoa
26ef0 64 20 3d 20 53 45 52 56 49 43 45 5f 44 49 53 41 d = SERVICE_DISA
26f00 42 4c 45 44 2c 0d 0a 7d 0d 0a 61 6c 69 61 73 20 BLED,..}..alias
26f10 5f 43 4d 5f 53 45 52 56 49 43 45 5f 4c 4f 41 44 _CM_SERVICE_LOAD
26f20 5f 54 59 50 45 20 53 45 52 56 49 43 45 5f 4c 4f _TYPE SERVICE_LO
26f30 41 44 5f 54 59 50 45 3b 0d 0a 0d 0a 61 6c 69 61 AD_TYPE;....alia
26f40 73 20 69 6e 74 20 5f 43 4d 5f 45 52 52 4f 52 5f s int _CM_ERROR_
26f50 43 4f 4e 54 52 4f 4c 5f 54 59 50 45 3b 0d 0a 65 CONTROL_TYPE;..e
26f60 6e 75 6d 20 7b 0d 0a 20 20 49 67 6e 6f 72 65 45 num {.. IgnoreE
26f70 72 72 6f 72 20 3d 20 53 45 52 56 49 43 45 5f 45 rror = SERVICE_E
26f80 52 52 4f 52 5f 49 47 4e 4f 52 45 2c 0d 0a 20 20 RROR_IGNORE,..
26f90 4e 6f 72 6d 61 6c 45 72 72 6f 72 20 3d 20 53 45 NormalError = SE
26fa0 52 56 49 43 45 5f 45 52 52 4f 52 5f 4e 4f 52 4d RVICE_ERROR_NORM
26fb0 41 4c 2c 0d 0a 20 20 53 65 76 65 72 65 45 72 72 AL,.. SevereErr
26fc0 6f 72 20 3d 20 53 45 52 56 49 43 45 5f 45 52 52 or = SERVICE_ERR
26fd0 4f 52 5f 53 45 56 45 52 45 2c 0d 0a 20 20 43 72 OR_SEVERE,.. Cr
26fe0 69 74 69 63 61 6c 45 72 72 6f 72 20 3d 20 53 45 iticalError = SE
26ff0 52 56 49 43 45 5f 45 52 52 4f 52 5f 43 52 49 54 RVICE_ERROR_CRIT
27000 49 43 41 4c 2c 0d 0a 7d 0d 0a 61 6c 69 61 73 20 ICAL,..}..alias
27010 5f 43 4d 5f 45 52 52 4f 52 5f 43 4f 4e 54 52 4f _CM_ERROR_CONTRO
27020 4c 5f 54 59 50 45 20 53 45 52 56 49 43 45 5f 45 L_TYPE SERVICE_E
27030 52 52 4f 52 5f 54 59 50 45 3b 0d 0a 0d 0a 65 6e RROR_TYPE;....en
27040 75 6d 20 3a 20 75 69 6e 74 20 7b 20 54 41 50 45 um : uint { TAPE
27050 5f 45 52 41 53 45 5f 53 48 4f 52 54 20 3d 20 30 _ERASE_SHORT = 0
27060 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 }..enum : uint
27070 7b 20 54 41 50 45 5f 45 52 41 53 45 5f 4c 4f 4e { TAPE_ERASE_LON
27080 47 20 3d 20 31 20 7d 0d 0a 0d 0a 73 74 72 75 63 G = 1 }....struc
27090 74 20 5f 54 41 50 45 5f 45 52 41 53 45 20 7b 0d t _TAPE_ERASE {.
270a0 0a 20 20 44 57 4f 52 44 20 54 79 70 65 3b 0d 0a . DWORD Type;..
270b0 20 20 42 4f 4f 4c 45 41 4e 20 49 6d 6d 65 64 69 BOOLEAN Immedi
270c0 61 74 65 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 5f ate;..}..alias _
270d0 54 41 50 45 5f 45 52 41 53 45 20 54 41 50 45 5f TAPE_ERASE TAPE_
270e0 45 52 41 53 45 3b 0d 0a 61 6c 69 61 73 20 5f 54 ERASE;..alias _T
270f0 41 50 45 5f 45 52 41 53 45 2a 20 50 54 41 50 45 APE_ERASE* PTAPE
27100 5f 45 52 41 53 45 3b 0d 0a 0d 0a 65 6e 75 6d 20 _ERASE;....enum
27110 3a 20 75 69 6e 74 20 7b 20 54 41 50 45 5f 4c 4f : uint { TAPE_LO
27120 41 44 20 3d 20 30 20 7d 0d 0a 65 6e 75 6d 20 3a AD = 0 }..enum :
27130 20 75 69 6e 74 20 7b 20 54 41 50 45 5f 55 4e 4c uint { TAPE_UNL
27140 4f 41 44 20 3d 20 31 20 7d 0d 0a 65 6e 75 6d 20 OAD = 1 }..enum
27150 3a 20 75 69 6e 74 20 7b 20 54 41 50 45 5f 54 45 : uint { TAPE_TE
27160 4e 53 49 4f 4e 20 3d 20 32 20 7d 0d 0a 65 6e 75 NSION = 2 }..enu
27170 6d 20 3a 20 75 69 6e 74 20 7b 20 54 41 50 45 5f m : uint { TAPE_
27180 4c 4f 43 4b 20 3d 20 33 20 7d 0d 0a 65 6e 75 6d LOCK = 3 }..enum
27190 20 3a 20 75 69 6e 74 20 7b 20 54 41 50 45 5f 55 : uint { TAPE_U
271a0 4e 4c 4f 43 4b 20 3d 20 34 20 7d 0d 0a 65 6e 75 NLOCK = 4 }..enu
271b0 6d 20 3a 20 75 69 6e 74 20 7b 20 54 41 50 45 5f m : uint { TAPE_
271c0 46 4f 52 4d 41 54 20 3d 20 35 20 7d 0d 0a 0d 0a FORMAT = 5 }....
271d0 73 74 72 75 63 74 20 5f 54 41 50 45 5f 50 52 45 struct _TAPE_PRE
271e0 50 41 52 45 20 7b 0d 0a 20 20 44 57 4f 52 44 20 PARE {.. DWORD
271f0 4f 70 65 72 61 74 69 6f 6e 3b 0d 0a 20 20 42 4f Operation;.. BO
27200 4f 4c 45 41 4e 20 49 6d 6d 65 64 69 61 74 65 3b OLEAN Immediate;
27210 0d 0a 7d 0d 0a 61 6c 69 61 73 20 5f 54 41 50 45 ..}..alias _TAPE
27220 5f 50 52 45 50 41 52 45 20 54 41 50 45 5f 50 52 _PREPARE TAPE_PR
27230 45 50 41 52 45 3b 0d 0a 61 6c 69 61 73 20 5f 54 EPARE;..alias _T
27240 41 50 45 5f 50 52 45 50 41 52 45 2a 20 50 54 41 APE_PREPARE* PTA
27250 50 45 5f 50 52 45 50 41 52 45 3b 0d 0a 0d 0a 65 PE_PREPARE;....e
27260 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 54 41 50 num : uint { TAP
27270 45 5f 53 45 54 4d 41 52 4b 53 20 3d 20 30 20 7d E_SETMARKS = 0 }
27280 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
27290 54 41 50 45 5f 46 49 4c 45 4d 41 52 4b 53 20 3d TAPE_FILEMARKS =
272a0 20 31 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 1 }..enum : uin
272b0 74 20 7b 20 54 41 50 45 5f 53 48 4f 52 54 5f 46 t { TAPE_SHORT_F
272c0 49 4c 45 4d 41 52 4b 53 20 3d 20 32 20 7d 0d 0a ILEMARKS = 2 }..
272d0 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 54 41 enum : uint { TA
272e0 50 45 5f 4c 4f 4e 47 5f 46 49 4c 45 4d 41 52 4b PE_LONG_FILEMARK
272f0 53 20 3d 20 33 20 7d 0d 0a 0d 0a 73 74 72 75 63 S = 3 }....struc
27300 74 20 5f 54 41 50 45 5f 57 52 49 54 45 5f 4d 41 t _TAPE_WRITE_MA
27310 52 4b 53 20 7b 0d 0a 20 20 44 57 4f 52 44 20 54 RKS {.. DWORD T
27320 79 70 65 3b 0d 0a 20 20 44 57 4f 52 44 20 43 6f ype;.. DWORD Co
27330 75 6e 74 3b 0d 0a 20 20 42 4f 4f 4c 45 41 4e 20 unt;.. BOOLEAN
27340 49 6d 6d 65 64 69 61 74 65 3b 0d 0a 7d 0d 0a 61 Immediate;..}..a
27350 6c 69 61 73 20 5f 54 41 50 45 5f 57 52 49 54 45 lias _TAPE_WRITE
27360 5f 4d 41 52 4b 53 20 54 41 50 45 5f 57 52 49 54 _MARKS TAPE_WRIT
27370 45 5f 4d 41 52 4b 53 3b 0d 0a 61 6c 69 61 73 20 E_MARKS;..alias
27380 5f 54 41 50 45 5f 57 52 49 54 45 5f 4d 41 52 4b _TAPE_WRITE_MARK
27390 53 2a 20 50 54 41 50 45 5f 57 52 49 54 45 5f 4d S* PTAPE_WRITE_M
273a0 41 52 4b 53 3b 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 ARKS;....enum :
273b0 75 69 6e 74 20 7b 20 54 41 50 45 5f 41 42 53 4f uint { TAPE_ABSO
273c0 4c 55 54 45 5f 50 4f 53 49 54 49 4f 4e 20 3d 20 LUTE_POSITION =
273d0 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 0 }..enum : uint
273e0 20 7b 20 54 41 50 45 5f 4c 4f 47 49 43 41 4c 5f { TAPE_LOGICAL_
273f0 50 4f 53 49 54 49 4f 4e 20 3d 20 31 20 7d 0d 0a POSITION = 1 }..
27400 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 54 41 enum : uint { TA
27410 50 45 5f 50 53 45 55 44 4f 5f 4c 4f 47 49 43 41 PE_PSEUDO_LOGICA
27420 4c 5f 50 4f 53 49 54 49 4f 4e 20 3d 20 32 20 7d L_POSITION = 2 }
27430 0d 0a 0d 0a 73 74 72 75 63 74 20 5f 54 41 50 45 ....struct _TAPE
27440 5f 47 45 54 5f 50 4f 53 49 54 49 4f 4e 20 7b 0d _GET_POSITION {.
27450 0a 20 20 44 57 4f 52 44 20 54 79 70 65 3b 0d 0a . DWORD Type;..
27460 20 20 44 57 4f 52 44 20 50 61 72 74 69 74 69 6f DWORD Partitio
27470 6e 3b 0d 0a 20 20 4c 41 52 47 45 5f 49 4e 54 45 n;.. LARGE_INTE
27480 47 45 52 20 4f 66 66 73 65 74 3b 0d 0a 7d 0d 0a GER Offset;..}..
27490 61 6c 69 61 73 20 5f 54 41 50 45 5f 47 45 54 5f alias _TAPE_GET_
274a0 50 4f 53 49 54 49 4f 4e 20 54 41 50 45 5f 47 45 POSITION TAPE_GE
274b0 54 5f 50 4f 53 49 54 49 4f 4e 3b 0d 0a 61 6c 69 T_POSITION;..ali
274c0 61 73 20 5f 54 41 50 45 5f 47 45 54 5f 50 4f 53 as _TAPE_GET_POS
274d0 49 54 49 4f 4e 2a 20 50 54 41 50 45 5f 47 45 54 ITION* PTAPE_GET
274e0 5f 50 4f 53 49 54 49 4f 4e 3b 0d 0a 0d 0a 65 6e _POSITION;....en
274f0 75 6d 20 3a 20 75 69 6e 74 20 7b 20 54 41 50 45 um : uint { TAPE
27500 5f 52 45 57 49 4e 44 20 3d 20 30 20 7d 0d 0a 65 _REWIND = 0 }..e
27510 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 54 41 50 num : uint { TAP
27520 45 5f 41 42 53 4f 4c 55 54 45 5f 42 4c 4f 43 4b E_ABSOLUTE_BLOCK
27530 20 3d 20 31 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 = 1 }..enum : u
27540 69 6e 74 20 7b 20 54 41 50 45 5f 4c 4f 47 49 43 int { TAPE_LOGIC
27550 41 4c 5f 42 4c 4f 43 4b 20 3d 20 32 20 7d 0d 0a AL_BLOCK = 2 }..
27560 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 54 41 enum : uint { TA
27570 50 45 5f 50 53 45 55 44 4f 5f 4c 4f 47 49 43 41 PE_PSEUDO_LOGICA
27580 4c 5f 42 4c 4f 43 4b 20 3d 20 33 20 7d 0d 0a 65 L_BLOCK = 3 }..e
27590 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 54 41 50 num : uint { TAP
275a0 45 5f 53 50 41 43 45 5f 45 4e 44 5f 4f 46 5f 44 E_SPACE_END_OF_D
275b0 41 54 41 20 3d 20 34 20 7d 0d 0a 65 6e 75 6d 20 ATA = 4 }..enum
275c0 3a 20 75 69 6e 74 20 7b 20 54 41 50 45 5f 53 50 : uint { TAPE_SP
275d0 41 43 45 5f 52 45 4c 41 54 49 56 45 5f 42 4c 4f ACE_RELATIVE_BLO
275e0 43 4b 53 20 3d 20 35 20 7d 0d 0a 65 6e 75 6d 20 CKS = 5 }..enum
275f0 3a 20 75 69 6e 74 20 7b 20 54 41 50 45 5f 53 50 : uint { TAPE_SP
27600 41 43 45 5f 46 49 4c 45 4d 41 52 4b 53 20 3d 20 ACE_FILEMARKS =
27610 36 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 6 }..enum : uint
27620 20 7b 20 54 41 50 45 5f 53 50 41 43 45 5f 53 45 { TAPE_SPACE_SE
27630 51 55 45 4e 54 49 41 4c 5f 46 4d 4b 53 20 3d 20 QUENTIAL_FMKS =
27640 37 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 7 }..enum : uint
27650 20 7b 20 54 41 50 45 5f 53 50 41 43 45 5f 53 45 { TAPE_SPACE_SE
27660 54 4d 41 52 4b 53 20 3d 20 38 20 7d 0d 0a 65 6e TMARKS = 8 }..en
27670 75 6d 20 3a 20 75 69 6e 74 20 7b 20 54 41 50 45 um : uint { TAPE
27680 5f 53 50 41 43 45 5f 53 45 51 55 45 4e 54 49 41 _SPACE_SEQUENTIA
27690 4c 5f 53 4d 4b 53 20 3d 20 39 20 7d 0d 0a 0d 0a L_SMKS = 9 }....
276a0 73 74 72 75 63 74 20 5f 54 41 50 45 5f 53 45 54 struct _TAPE_SET
276b0 5f 50 4f 53 49 54 49 4f 4e 20 7b 0d 0a 20 20 44 _POSITION {.. D
276c0 57 4f 52 44 20 4d 65 74 68 6f 64 3b 0d 0a 20 20 WORD Method;..
276d0 44 57 4f 52 44 20 50 61 72 74 69 74 69 6f 6e 3b DWORD Partition;
276e0 0d 0a 20 20 4c 41 52 47 45 5f 49 4e 54 45 47 45 .. LARGE_INTEGE
276f0 52 20 4f 66 66 73 65 74 3b 0d 0a 20 20 42 4f 4f R Offset;.. BOO
27700 4c 45 41 4e 20 49 6d 6d 65 64 69 61 74 65 3b 0d LEAN Immediate;.
27710 0a 7d 0d 0a 61 6c 69 61 73 20 5f 54 41 50 45 5f .}..alias _TAPE_
27720 53 45 54 5f 50 4f 53 49 54 49 4f 4e 20 54 41 50 SET_POSITION TAP
27730 45 5f 53 45 54 5f 50 4f 53 49 54 49 4f 4e 3b 0d E_SET_POSITION;.
27740 0a 61 6c 69 61 73 20 5f 54 41 50 45 5f 53 45 54 .alias _TAPE_SET
27750 5f 50 4f 53 49 54 49 4f 4e 2a 20 50 54 41 50 45 _POSITION* PTAPE
27760 5f 53 45 54 5f 50 4f 53 49 54 49 4f 4e 3b 0d 0a _SET_POSITION;..
27770 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
27780 54 41 50 45 5f 44 52 49 56 45 5f 46 49 58 45 44 TAPE_DRIVE_FIXED
27790 20 3d 20 30 78 30 30 30 30 30 30 30 31 20 7d 0d = 0x00000001 }.
277a0 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 54 .enum : uint { T
277b0 41 50 45 5f 44 52 49 56 45 5f 53 45 4c 45 43 54 APE_DRIVE_SELECT
277c0 20 3d 20 30 78 30 30 30 30 30 30 30 32 20 7d 0d = 0x00000002 }.
277d0 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 54 .enum : uint { T
277e0 41 50 45 5f 44 52 49 56 45 5f 49 4e 49 54 49 41 APE_DRIVE_INITIA
277f0 54 4f 52 20 3d 20 30 78 30 30 30 30 30 30 30 34 TOR = 0x00000004
27800 20 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e }....enum : uin
27810 74 20 7b 20 54 41 50 45 5f 44 52 49 56 45 5f 45 t { TAPE_DRIVE_E
27820 52 41 53 45 5f 53 48 4f 52 54 20 3d 20 30 78 30 RASE_SHORT = 0x0
27830 30 30 30 30 30 31 30 20 7d 0d 0a 65 6e 75 6d 20 0000010 }..enum
27840 3a 20 75 69 6e 74 20 7b 20 54 41 50 45 5f 44 52 : uint { TAPE_DR
27850 49 56 45 5f 45 52 41 53 45 5f 4c 4f 4e 47 20 3d IVE_ERASE_LONG =
27860 20 30 78 30 30 30 30 30 30 32 30 20 7d 0d 0a 65 0x00000020 }..e
27870 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 54 41 50 num : uint { TAP
27880 45 5f 44 52 49 56 45 5f 45 52 41 53 45 5f 42 4f E_DRIVE_ERASE_BO
27890 50 5f 4f 4e 4c 59 20 3d 20 30 78 30 30 30 30 30 P_ONLY = 0x00000
278a0 30 34 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 040 }..enum : ui
278b0 6e 74 20 7b 20 54 41 50 45 5f 44 52 49 56 45 5f nt { TAPE_DRIVE_
278c0 45 52 41 53 45 5f 49 4d 4d 45 44 49 41 54 45 20 ERASE_IMMEDIATE
278d0 3d 20 30 78 30 30 30 30 30 30 38 30 20 7d 0d 0a = 0x00000080 }..
278e0 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
278f0 54 41 50 45 5f 44 52 49 56 45 5f 54 41 50 45 5f TAPE_DRIVE_TAPE_
27900 43 41 50 41 43 49 54 59 20 3d 20 30 78 30 30 30 CAPACITY = 0x000
27910 30 30 31 30 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 00100 }..enum :
27920 75 69 6e 74 20 7b 20 54 41 50 45 5f 44 52 49 56 uint { TAPE_DRIV
27930 45 5f 54 41 50 45 5f 52 45 4d 41 49 4e 49 4e 47 E_TAPE_REMAINING
27940 20 3d 20 30 78 30 30 30 30 30 32 30 30 20 7d 0d = 0x00000200 }.
27950 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 54 .enum : uint { T
27960 41 50 45 5f 44 52 49 56 45 5f 46 49 58 45 44 5f APE_DRIVE_FIXED_
27970 42 4c 4f 43 4b 20 3d 20 30 78 30 30 30 30 30 34 BLOCK = 0x000004
27980 30 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 00 }..enum : uin
27990 74 20 7b 20 54 41 50 45 5f 44 52 49 56 45 5f 56 t { TAPE_DRIVE_V
279a0 41 52 49 41 42 4c 45 5f 42 4c 4f 43 4b 20 3d 20 ARIABLE_BLOCK =
279b0 30 78 30 30 30 30 30 38 30 30 20 7d 0d 0a 0d 0a 0x00000800 }....
279c0 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 54 41 enum : uint { TA
279d0 50 45 5f 44 52 49 56 45 5f 57 52 49 54 45 5f 50 PE_DRIVE_WRITE_P
279e0 52 4f 54 45 43 54 20 3d 20 30 78 30 30 30 30 31 ROTECT = 0x00001
279f0 30 30 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 000 }..enum : ui
27a00 6e 74 20 7b 20 54 41 50 45 5f 44 52 49 56 45 5f nt { TAPE_DRIVE_
27a10 45 4f 54 5f 57 5a 5f 53 49 5a 45 20 3d 20 30 78 EOT_WZ_SIZE = 0x
27a20 30 30 30 30 32 30 30 30 20 7d 0d 0a 0d 0a 65 6e 00002000 }....en
27a30 75 6d 20 3a 20 75 69 6e 74 20 7b 20 54 41 50 45 um : uint { TAPE
27a40 5f 44 52 49 56 45 5f 45 43 43 20 3d 20 30 78 30 _DRIVE_ECC = 0x0
27a50 30 30 31 30 30 30 30 20 7d 0d 0a 65 6e 75 6d 20 0010000 }..enum
27a60 3a 20 75 69 6e 74 20 7b 20 54 41 50 45 5f 44 52 : uint { TAPE_DR
27a70 49 56 45 5f 43 4f 4d 50 52 45 53 53 49 4f 4e 20 IVE_COMPRESSION
27a80 3d 20 30 78 30 30 30 32 30 30 30 30 20 7d 0d 0a = 0x00020000 }..
27a90 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 54 41 enum : uint { TA
27aa0 50 45 5f 44 52 49 56 45 5f 50 41 44 44 49 4e 47 PE_DRIVE_PADDING
27ab0 20 3d 20 30 78 30 30 30 34 30 30 30 30 20 7d 0d = 0x00040000 }.
27ac0 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 54 .enum : uint { T
27ad0 41 50 45 5f 44 52 49 56 45 5f 52 45 50 4f 52 54 APE_DRIVE_REPORT
27ae0 5f 53 4d 4b 53 20 3d 20 30 78 30 30 30 38 30 30 _SMKS = 0x000800
27af0 30 30 20 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 75 00 }....enum : u
27b00 69 6e 74 20 7b 20 54 41 50 45 5f 44 52 49 56 45 int { TAPE_DRIVE
27b10 5f 47 45 54 5f 41 42 53 4f 4c 55 54 45 5f 42 4c _GET_ABSOLUTE_BL
27b20 4b 20 3d 20 30 78 30 30 31 30 30 30 30 30 20 7d K = 0x00100000 }
27b30 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
27b40 54 41 50 45 5f 44 52 49 56 45 5f 47 45 54 5f 4c TAPE_DRIVE_GET_L
27b50 4f 47 49 43 41 4c 5f 42 4c 4b 20 3d 20 30 78 30 OGICAL_BLK = 0x0
27b60 30 32 30 30 30 30 30 20 7d 0d 0a 65 6e 75 6d 20 0200000 }..enum
27b70 3a 20 75 69 6e 74 20 7b 20 54 41 50 45 5f 44 52 : uint { TAPE_DR
27b80 49 56 45 5f 53 45 54 5f 45 4f 54 5f 57 5a 5f 53 IVE_SET_EOT_WZ_S
27b90 49 5a 45 20 3d 20 30 78 30 30 34 30 30 30 30 30 IZE = 0x00400000
27ba0 20 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e }....enum : uin
27bb0 74 20 7b 20 54 41 50 45 5f 44 52 49 56 45 5f 45 t { TAPE_DRIVE_E
27bc0 4a 45 43 54 5f 4d 45 44 49 41 20 3d 20 30 78 30 JECT_MEDIA = 0x0
27bd0 31 30 30 30 30 30 30 20 7d 0d 0a 65 6e 75 6d 20 1000000 }..enum
27be0 3a 20 75 69 6e 74 20 7b 20 54 41 50 45 5f 44 52 : uint { TAPE_DR
27bf0 49 56 45 5f 43 4c 45 41 4e 5f 52 45 51 55 45 53 IVE_CLEAN_REQUES
27c00 54 53 20 3d 20 30 78 30 32 30 30 30 30 30 30 20 TS = 0x02000000
27c10 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b }..enum : uint {
27c20 20 54 41 50 45 5f 44 52 49 56 45 5f 53 45 54 5f TAPE_DRIVE_SET_
27c30 43 4d 50 5f 42 4f 50 5f 4f 4e 4c 59 20 3d 20 30 CMP_BOP_ONLY = 0
27c40 78 30 34 30 30 30 30 30 30 20 7d 0d 0a 0d 0a 65 x04000000 }....e
27c50 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 54 41 50 num : uint { TAP
27c60 45 5f 44 52 49 56 45 5f 52 45 53 45 52 56 45 44 E_DRIVE_RESERVED
27c70 5f 42 49 54 20 3d 20 30 78 38 30 30 30 30 30 30 _BIT = 0x8000000
27c80 30 20 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 75 69 0 }....enum : ui
27c90 6e 74 20 7b 20 54 41 50 45 5f 44 52 49 56 45 5f nt { TAPE_DRIVE_
27ca0 4c 4f 41 44 5f 55 4e 4c 4f 41 44 20 3d 20 30 78 LOAD_UNLOAD = 0x
27cb0 38 30 30 30 30 30 30 31 20 7d 0d 0a 65 6e 75 6d 80000001 }..enum
27cc0 20 3a 20 75 69 6e 74 20 7b 20 54 41 50 45 5f 44 : uint { TAPE_D
27cd0 52 49 56 45 5f 54 45 4e 53 49 4f 4e 20 3d 20 30 RIVE_TENSION = 0
27ce0 78 38 30 30 30 30 30 30 32 20 7d 0d 0a 65 6e 75 x80000002 }..enu
27cf0 6d 20 3a 20 75 69 6e 74 20 7b 20 54 41 50 45 5f m : uint { TAPE_
27d00 44 52 49 56 45 5f 4c 4f 43 4b 5f 55 4e 4c 4f 43 DRIVE_LOCK_UNLOC
27d10 4b 20 3d 20 30 78 38 30 30 30 30 30 30 34 20 7d K = 0x80000004 }
27d20 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
27d30 54 41 50 45 5f 44 52 49 56 45 5f 52 45 57 49 4e TAPE_DRIVE_REWIN
27d40 44 5f 49 4d 4d 45 44 49 41 54 45 20 3d 20 30 78 D_IMMEDIATE = 0x
27d50 38 30 30 30 30 30 30 38 20 7d 0d 0a 0d 0a 65 6e 80000008 }....en
27d60 75 6d 20 3a 20 75 69 6e 74 20 7b 20 54 41 50 45 um : uint { TAPE
27d70 5f 44 52 49 56 45 5f 53 45 54 5f 42 4c 4f 43 4b _DRIVE_SET_BLOCK
27d80 5f 53 49 5a 45 20 3d 20 30 78 38 30 30 30 30 30 _SIZE = 0x800000
27d90 31 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 10 }..enum : uin
27da0 74 20 7b 20 54 41 50 45 5f 44 52 49 56 45 5f 4c t { TAPE_DRIVE_L
27db0 4f 41 44 5f 55 4e 4c 44 5f 49 4d 4d 45 44 20 3d OAD_UNLD_IMMED =
27dc0 20 30 78 38 30 30 30 30 30 32 30 20 7d 0d 0a 65 0x80000020 }..e
27dd0 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 54 41 50 num : uint { TAP
27de0 45 5f 44 52 49 56 45 5f 54 45 4e 53 49 4f 4e 5f E_DRIVE_TENSION_
27df0 49 4d 4d 45 44 20 3d 20 30 78 38 30 30 30 30 30 IMMED = 0x800000
27e00 34 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 40 }..enum : uin
27e10 74 20 7b 20 54 41 50 45 5f 44 52 49 56 45 5f 4c t { TAPE_DRIVE_L
27e20 4f 43 4b 5f 55 4e 4c 4b 5f 49 4d 4d 45 44 20 3d OCK_UNLK_IMMED =
27e30 20 30 78 38 30 30 30 30 30 38 30 20 7d 0d 0a 0d 0x80000080 }...
27e40 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 54 .enum : uint { T
27e50 41 50 45 5f 44 52 49 56 45 5f 53 45 54 5f 45 43 APE_DRIVE_SET_EC
27e60 43 20 3d 20 30 78 38 30 30 30 30 31 30 30 20 7d C = 0x80000100 }
27e70 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
27e80 54 41 50 45 5f 44 52 49 56 45 5f 53 45 54 5f 43 TAPE_DRIVE_SET_C
27e90 4f 4d 50 52 45 53 53 49 4f 4e 20 3d 20 30 78 38 OMPRESSION = 0x8
27ea0 30 30 30 30 32 30 30 20 7d 0d 0a 65 6e 75 6d 20 0000200 }..enum
27eb0 3a 20 75 69 6e 74 20 7b 20 54 41 50 45 5f 44 52 : uint { TAPE_DR
27ec0 49 56 45 5f 53 45 54 5f 50 41 44 44 49 4e 47 20 IVE_SET_PADDING
27ed0 3d 20 30 78 38 30 30 30 30 34 30 30 20 7d 0d 0a = 0x80000400 }..
27ee0 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 54 41 enum : uint { TA
27ef0 50 45 5f 44 52 49 56 45 5f 53 45 54 5f 52 45 50 PE_DRIVE_SET_REP
27f00 4f 52 54 5f 53 4d 4b 53 20 3d 20 30 78 38 30 30 ORT_SMKS = 0x800
27f10 30 30 38 30 30 20 7d 0d 0a 0d 0a 65 6e 75 6d 20 00800 }....enum
27f20 3a 20 75 69 6e 74 20 7b 20 54 41 50 45 5f 44 52 : uint { TAPE_DR
27f30 49 56 45 5f 41 42 53 4f 4c 55 54 45 5f 42 4c 4b IVE_ABSOLUTE_BLK
27f40 20 3d 20 30 78 38 30 30 30 31 30 30 30 20 7d 0d = 0x80001000 }.
27f50 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 54 .enum : uint { T
27f60 41 50 45 5f 44 52 49 56 45 5f 41 42 53 5f 42 4c APE_DRIVE_ABS_BL
27f70 4b 5f 49 4d 4d 45 44 20 3d 20 30 78 38 30 30 30 K_IMMED = 0x8000
27f80 32 30 30 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 2000 }..enum : u
27f90 69 6e 74 20 7b 20 54 41 50 45 5f 44 52 49 56 45 int { TAPE_DRIVE
27fa0 5f 4c 4f 47 49 43 41 4c 5f 42 4c 4b 20 3d 20 30 _LOGICAL_BLK = 0
27fb0 78 38 30 30 30 34 30 30 30 20 7d 0d 0a 65 6e 75 x80004000 }..enu
27fc0 6d 20 3a 20 75 69 6e 74 20 7b 20 54 41 50 45 5f m : uint { TAPE_
27fd0 44 52 49 56 45 5f 4c 4f 47 5f 42 4c 4b 5f 49 4d DRIVE_LOG_BLK_IM
27fe0 4d 45 44 20 3d 20 30 78 38 30 30 30 38 30 30 30 MED = 0x80008000
27ff0 20 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e }....enum : uin
28000 74 20 7b 20 54 41 50 45 5f 44 52 49 56 45 5f 45 t { TAPE_DRIVE_E
28010 4e 44 5f 4f 46 5f 44 41 54 41 20 3d 20 30 78 38 ND_OF_DATA = 0x8
28020 30 30 31 30 30 30 30 20 7d 0d 0a 65 6e 75 6d 20 0010000 }..enum
28030 3a 20 75 69 6e 74 20 7b 20 54 41 50 45 5f 44 52 : uint { TAPE_DR
28040 49 56 45 5f 52 45 4c 41 54 49 56 45 5f 42 4c 4b IVE_RELATIVE_BLK
28050 53 20 3d 20 30 78 38 30 30 32 30 30 30 30 20 7d S = 0x80020000 }
28060 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
28070 54 41 50 45 5f 44 52 49 56 45 5f 46 49 4c 45 4d TAPE_DRIVE_FILEM
28080 41 52 4b 53 20 3d 20 30 78 38 30 30 34 30 30 30 ARKS = 0x8004000
28090 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 0 }..enum : uint
280a0 20 7b 20 54 41 50 45 5f 44 52 49 56 45 5f 53 45 { TAPE_DRIVE_SE
280b0 51 55 45 4e 54 49 41 4c 5f 46 4d 4b 53 20 3d 20 QUENTIAL_FMKS =
280c0 30 78 38 30 30 38 30 30 30 30 20 7d 0d 0a 0d 0a 0x80080000 }....
280d0 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 54 41 enum : uint { TA
280e0 50 45 5f 44 52 49 56 45 5f 53 45 54 4d 41 52 4b PE_DRIVE_SETMARK
280f0 53 20 3d 20 30 78 38 30 31 30 30 30 30 30 20 7d S = 0x80100000 }
28100 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 ..enum : uint {
28110 54 41 50 45 5f 44 52 49 56 45 5f 53 45 51 55 45 TAPE_DRIVE_SEQUE
28120 4e 54 49 41 4c 5f 53 4d 4b 53 20 3d 20 30 78 38 NTIAL_SMKS = 0x8
28130 30 32 30 30 30 30 30 20 7d 0d 0a 65 6e 75 6d 20 0200000 }..enum
28140 3a 20 75 69 6e 74 20 7b 20 54 41 50 45 5f 44 52 : uint { TAPE_DR
28150 49 56 45 5f 52 45 56 45 52 53 45 5f 50 4f 53 49 IVE_REVERSE_POSI
28160 54 49 4f 4e 20 3d 20 30 78 38 30 34 30 30 30 30 TION = 0x8040000
28170 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 0 }..enum : uint
28180 20 7b 20 54 41 50 45 5f 44 52 49 56 45 5f 53 50 { TAPE_DRIVE_SP
28190 41 43 45 5f 49 4d 4d 45 44 49 41 54 45 20 3d 20 ACE_IMMEDIATE =
281a0 30 78 38 30 38 30 30 30 30 30 20 7d 0d 0a 0d 0a 0x80800000 }....
281b0 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 54 41 enum : uint { TA
281c0 50 45 5f 44 52 49 56 45 5f 57 52 49 54 45 5f 53 PE_DRIVE_WRITE_S
281d0 45 54 4d 41 52 4b 53 20 3d 20 30 78 38 31 30 30 ETMARKS = 0x8100
281e0 30 30 30 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 0000 }..enum : u
281f0 69 6e 74 20 7b 20 54 41 50 45 5f 44 52 49 56 45 int { TAPE_DRIVE
28200 5f 57 52 49 54 45 5f 46 49 4c 45 4d 41 52 4b 53 _WRITE_FILEMARKS
28210 20 3d 20 30 78 38 32 30 30 30 30 30 30 20 7d 0d = 0x82000000 }.
28220 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 54 .enum : uint { T
28230 41 50 45 5f 44 52 49 56 45 5f 57 52 49 54 45 5f APE_DRIVE_WRITE_
28240 53 48 4f 52 54 5f 46 4d 4b 53 20 3d 20 30 78 38 SHORT_FMKS = 0x8
28250 34 30 30 30 30 30 30 20 7d 0d 0a 65 6e 75 6d 20 4000000 }..enum
28260 3a 20 75 69 6e 74 20 7b 20 54 41 50 45 5f 44 52 : uint { TAPE_DR
28270 49 56 45 5f 57 52 49 54 45 5f 4c 4f 4e 47 5f 46 IVE_WRITE_LONG_F
28280 4d 4b 53 20 3d 20 30 78 38 38 30 30 30 30 30 30 MKS = 0x88000000
28290 20 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e }....enum : uin
282a0 74 20 7b 20 54 41 50 45 5f 44 52 49 56 45 5f 57 t { TAPE_DRIVE_W
282b0 52 49 54 45 5f 4d 41 52 4b 5f 49 4d 4d 45 44 20 RITE_MARK_IMMED
282c0 3d 20 30 78 39 30 30 30 30 30 30 30 20 7d 0d 0a = 0x90000000 }..
282d0 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 54 41 enum : uint { TA
282e0 50 45 5f 44 52 49 56 45 5f 46 4f 52 4d 41 54 20 PE_DRIVE_FORMAT
282f0 3d 20 30 78 41 30 30 30 30 30 30 30 20 7d 0d 0a = 0xA0000000 }..
28300 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 54 41 enum : uint { TA
28310 50 45 5f 44 52 49 56 45 5f 46 4f 52 4d 41 54 5f PE_DRIVE_FORMAT_
28320 49 4d 4d 45 44 49 41 54 45 20 3d 20 30 78 43 30 IMMEDIATE = 0xC0
28330 30 30 30 30 30 30 20 7d 0d 0a 65 6e 75 6d 20 3a 000000 }..enum :
28340 20 75 69 6e 74 20 7b 20 54 41 50 45 5f 44 52 49 uint { TAPE_DRI
28350 56 45 5f 48 49 47 48 5f 46 45 41 54 55 52 45 53 VE_HIGH_FEATURES
28360 20 3d 20 30 78 38 30 30 30 30 30 30 30 20 7d 0d = 0x80000000 }.
28370 0a 0d 0a 73 74 72 75 63 74 20 5f 54 41 50 45 5f ...struct _TAPE_
28380 47 45 54 5f 44 52 49 56 45 5f 50 41 52 41 4d 45 GET_DRIVE_PARAME
28390 54 45 52 53 20 7b 0d 0a 20 20 42 4f 4f 4c 45 41 TERS {.. BOOLEA
283a0 4e 20 45 43 43 3b 0d 0a 20 20 42 4f 4f 4c 45 41 N ECC;.. BOOLEA
283b0 4e 20 43 6f 6d 70 72 65 73 73 69 6f 6e 3b 0d 0a N Compression;..
283c0 20 20 42 4f 4f 4c 45 41 4e 20 44 61 74 61 50 61 BOOLEAN DataPa
283d0 64 64 69 6e 67 3b 0d 0a 20 20 42 4f 4f 4c 45 41 dding;.. BOOLEA
283e0 4e 20 52 65 70 6f 72 74 53 65 74 6d 61 72 6b 73 N ReportSetmarks
283f0 3b 0d 0a 20 20 44 57 4f 52 44 20 44 65 66 61 75 ;.. DWORD Defau
28400 6c 74 42 6c 6f 63 6b 53 69 7a 65 3b 0d 0a 20 20 ltBlockSize;..
28410 44 57 4f 52 44 20 4d 61 78 69 6d 75 6d 42 6c 6f DWORD MaximumBlo
28420 63 6b 53 69 7a 65 3b 0d 0a 20 20 44 57 4f 52 44 ckSize;.. DWORD
28430 20 4d 69 6e 69 6d 75 6d 42 6c 6f 63 6b 53 69 7a MinimumBlockSiz
28440 65 3b 0d 0a 20 20 44 57 4f 52 44 20 4d 61 78 69 e;.. DWORD Maxi
28450 6d 75 6d 50 61 72 74 69 74 69 6f 6e 43 6f 75 6e mumPartitionCoun
28460 74 3b 0d 0a 20 20 44 57 4f 52 44 20 46 65 61 74 t;.. DWORD Feat
28470 75 72 65 73 4c 6f 77 3b 0d 0a 20 20 44 57 4f 52 uresLow;.. DWOR
28480 44 20 46 65 61 74 75 72 65 73 48 69 67 68 3b 0d D FeaturesHigh;.
28490 0a 20 20 44 57 4f 52 44 20 45 4f 54 57 61 72 6e . DWORD EOTWarn
284a0 69 6e 67 5a 6f 6e 65 53 69 7a 65 3b 0d 0a 7d 0d ingZoneSize;..}.
284b0 0a 61 6c 69 61 73 20 5f 54 41 50 45 5f 47 45 54 .alias _TAPE_GET
284c0 5f 44 52 49 56 45 5f 50 41 52 41 4d 45 54 45 52 _DRIVE_PARAMETER
284d0 53 20 54 41 50 45 5f 47 45 54 5f 44 52 49 56 45 S TAPE_GET_DRIVE
284e0 5f 50 41 52 41 4d 45 54 45 52 53 3b 0d 0a 61 6c _PARAMETERS;..al
284f0 69 61 73 20 5f 54 41 50 45 5f 47 45 54 5f 44 52 ias _TAPE_GET_DR
28500 49 56 45 5f 50 41 52 41 4d 45 54 45 52 53 2a 20 IVE_PARAMETERS*
28510 50 54 41 50 45 5f 47 45 54 5f 44 52 49 56 45 5f PTAPE_GET_DRIVE_
28520 50 41 52 41 4d 45 54 45 52 53 3b 0d 0a 0d 0a 73 PARAMETERS;....s
28530 74 72 75 63 74 20 5f 54 41 50 45 5f 53 45 54 5f truct _TAPE_SET_
28540 44 52 49 56 45 5f 50 41 52 41 4d 45 54 45 52 53 DRIVE_PARAMETERS
28550 20 7b 0d 0a 20 20 42 4f 4f 4c 45 41 4e 20 45 43 {.. BOOLEAN EC
28560 43 3b 0d 0a 20 20 42 4f 4f 4c 45 41 4e 20 43 6f C;.. BOOLEAN Co
28570 6d 70 72 65 73 73 69 6f 6e 3b 0d 0a 20 20 42 4f mpression;.. BO
28580 4f 4c 45 41 4e 20 44 61 74 61 50 61 64 64 69 6e OLEAN DataPaddin
28590 67 3b 0d 0a 20 20 42 4f 4f 4c 45 41 4e 20 52 65 g;.. BOOLEAN Re
285a0 70 6f 72 74 53 65 74 6d 61 72 6b 73 3b 0d 0a 20 portSetmarks;..
285b0 20 44 57 4f 52 44 20 45 4f 54 57 61 72 6e 69 6e DWORD EOTWarnin
285c0 67 5a 6f 6e 65 53 69 7a 65 3b 0d 0a 7d 0d 0a 61 gZoneSize;..}..a
285d0 6c 69 61 73 20 5f 54 41 50 45 5f 53 45 54 5f 44 lias _TAPE_SET_D
285e0 52 49 56 45 5f 50 41 52 41 4d 45 54 45 52 53 20 RIVE_PARAMETERS
285f0 54 41 50 45 5f 53 45 54 5f 44 52 49 56 45 5f 50 TAPE_SET_DRIVE_P
28600 41 52 41 4d 45 54 45 52 53 3b 0d 0a 61 6c 69 61 ARAMETERS;..alia
28610 73 20 5f 54 41 50 45 5f 53 45 54 5f 44 52 49 56 s _TAPE_SET_DRIV
28620 45 5f 50 41 52 41 4d 45 54 45 52 53 2a 20 50 54 E_PARAMETERS* PT
28630 41 50 45 5f 53 45 54 5f 44 52 49 56 45 5f 50 41 APE_SET_DRIVE_PA
28640 52 41 4d 45 54 45 52 53 3b 0d 0a 0d 0a 73 74 72 RAMETERS;....str
28650 75 63 74 20 5f 54 41 50 45 5f 47 45 54 5f 4d 45 uct _TAPE_GET_ME
28660 44 49 41 5f 50 41 52 41 4d 45 54 45 52 53 20 7b DIA_PARAMETERS {
28670 0d 0a 20 20 4c 41 52 47 45 5f 49 4e 54 45 47 45 .. LARGE_INTEGE
28680 52 20 43 61 70 61 63 69 74 79 3b 0d 0a 20 20 4c R Capacity;.. L
28690 41 52 47 45 5f 49 4e 54 45 47 45 52 20 52 65 6d ARGE_INTEGER Rem
286a0 61 69 6e 69 6e 67 3b 0d 0a 20 20 44 57 4f 52 44 aining;.. DWORD
286b0 20 42 6c 6f 63 6b 53 69 7a 65 3b 0d 0a 20 20 44 BlockSize;.. D
286c0 57 4f 52 44 20 50 61 72 74 69 74 69 6f 6e 43 6f WORD PartitionCo
286d0 75 6e 74 3b 0d 0a 20 20 42 4f 4f 4c 45 41 4e 20 unt;.. BOOLEAN
286e0 57 72 69 74 65 50 72 6f 74 65 63 74 65 64 3b 0d WriteProtected;.
286f0 0a 7d 0d 0a 61 6c 69 61 73 20 5f 54 41 50 45 5f .}..alias _TAPE_
28700 47 45 54 5f 4d 45 44 49 41 5f 50 41 52 41 4d 45 GET_MEDIA_PARAME
28710 54 45 52 53 20 54 41 50 45 5f 47 45 54 5f 4d 45 TERS TAPE_GET_ME
28720 44 49 41 5f 50 41 52 41 4d 45 54 45 52 53 3b 0d DIA_PARAMETERS;.
28730 0a 61 6c 69 61 73 20 5f 54 41 50 45 5f 47 45 54 .alias _TAPE_GET
28740 5f 4d 45 44 49 41 5f 50 41 52 41 4d 45 54 45 52 _MEDIA_PARAMETER
28750 53 2a 20 50 54 41 50 45 5f 47 45 54 5f 4d 45 44 S* PTAPE_GET_MED
28760 49 41 5f 50 41 52 41 4d 45 54 45 52 53 3b 0d 0a IA_PARAMETERS;..
28770 0d 0a 73 74 72 75 63 74 20 5f 54 41 50 45 5f 53 ..struct _TAPE_S
28780 45 54 5f 4d 45 44 49 41 5f 50 41 52 41 4d 45 54 ET_MEDIA_PARAMET
28790 45 52 53 20 7b 0d 0a 20 20 44 57 4f 52 44 20 42 ERS {.. DWORD B
287a0 6c 6f 63 6b 53 69 7a 65 3b 0d 0a 7d 0d 0a 61 6c lockSize;..}..al
287b0 69 61 73 20 5f 54 41 50 45 5f 53 45 54 5f 4d 45 ias _TAPE_SET_ME
287c0 44 49 41 5f 50 41 52 41 4d 45 54 45 52 53 20 54 DIA_PARAMETERS T
287d0 41 50 45 5f 53 45 54 5f 4d 45 44 49 41 5f 50 41 APE_SET_MEDIA_PA
287e0 52 41 4d 45 54 45 52 53 3b 0d 0a 61 6c 69 61 73 RAMETERS;..alias
287f0 20 5f 54 41 50 45 5f 53 45 54 5f 4d 45 44 49 41 _TAPE_SET_MEDIA
28800 5f 50 41 52 41 4d 45 54 45 52 53 2a 20 50 54 41 _PARAMETERS* PTA
28810 50 45 5f 53 45 54 5f 4d 45 44 49 41 5f 50 41 52 PE_SET_MEDIA_PAR
28820 41 4d 45 54 45 52 53 3b 0d 0a 0d 0a 65 6e 75 6d AMETERS;....enum
28830 20 3a 20 75 69 6e 74 20 7b 20 54 41 50 45 5f 46 : uint { TAPE_F
28840 49 58 45 44 5f 50 41 52 54 49 54 49 4f 4e 53 20 IXED_PARTITIONS
28850 3d 20 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 = 0 }..enum : ui
28860 6e 74 20 7b 20 54 41 50 45 5f 53 45 4c 45 43 54 nt { TAPE_SELECT
28870 5f 50 41 52 54 49 54 49 4f 4e 53 20 3d 20 31 20 _PARTITIONS = 1
28880 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b }..enum : uint {
28890 20 54 41 50 45 5f 49 4e 49 54 49 41 54 4f 52 5f TAPE_INITIATOR_
288a0 50 41 52 54 49 54 49 4f 4e 53 20 3d 20 32 20 7d PARTITIONS = 2 }
288b0 0d 0a 0d 0a 73 74 72 75 63 74 20 5f 54 41 50 45 ....struct _TAPE
288c0 5f 43 52 45 41 54 45 5f 50 41 52 54 49 54 49 4f _CREATE_PARTITIO
288d0 4e 20 7b 0d 0a 20 20 44 57 4f 52 44 20 4d 65 74 N {.. DWORD Met
288e0 68 6f 64 3b 0d 0a 20 20 44 57 4f 52 44 20 43 6f hod;.. DWORD Co
288f0 75 6e 74 3b 0d 0a 20 20 44 57 4f 52 44 20 53 69 unt;.. DWORD Si
28900 7a 65 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 5f 54 ze;..}..alias _T
28910 41 50 45 5f 43 52 45 41 54 45 5f 50 41 52 54 49 APE_CREATE_PARTI
28920 54 49 4f 4e 20 54 41 50 45 5f 43 52 45 41 54 45 TION TAPE_CREATE
28930 5f 50 41 52 54 49 54 49 4f 4e 3b 0d 0a 61 6c 69 _PARTITION;..ali
28940 61 73 20 5f 54 41 50 45 5f 43 52 45 41 54 45 5f as _TAPE_CREATE_
28950 50 41 52 54 49 54 49 4f 4e 2a 20 50 54 41 50 45 PARTITION* PTAPE
28960 5f 43 52 45 41 54 45 5f 50 41 52 54 49 54 49 4f _CREATE_PARTITIO
28970 4e 3b 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e N;....enum : uin
28980 74 20 7b 20 54 41 50 45 5f 51 55 45 52 59 5f 44 t { TAPE_QUERY_D
28990 52 49 56 45 5f 50 41 52 41 4d 45 54 45 52 53 20 RIVE_PARAMETERS
289a0 3d 20 30 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 = 0 }..enum : ui
289b0 6e 74 20 7b 20 54 41 50 45 5f 51 55 45 52 59 5f nt { TAPE_QUERY_
289c0 4d 45 44 49 41 5f 43 41 50 41 43 49 54 59 20 3d MEDIA_CAPACITY =
289d0 20 31 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 1 }..enum : uin
289e0 74 20 7b 20 54 41 50 45 5f 43 48 45 43 4b 5f 46 t { TAPE_CHECK_F
289f0 4f 52 5f 44 52 49 56 45 5f 50 52 4f 42 4c 45 4d OR_DRIVE_PROBLEM
28a00 20 3d 20 32 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 = 2 }..enum : u
28a10 69 6e 74 20 7b 20 54 41 50 45 5f 51 55 45 52 59 int { TAPE_QUERY
28a20 5f 49 4f 5f 45 52 52 4f 52 5f 44 41 54 41 20 3d _IO_ERROR_DATA =
28a30 20 33 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 3 }..enum : uin
28a40 74 20 7b 20 54 41 50 45 5f 51 55 45 52 59 5f 44 t { TAPE_QUERY_D
28a50 45 56 49 43 45 5f 45 52 52 4f 52 5f 44 41 54 41 EVICE_ERROR_DATA
28a60 20 3d 20 34 20 7d 0d 0a 0d 0a 73 74 72 75 63 74 = 4 }....struct
28a70 20 5f 54 41 50 45 5f 57 4d 49 5f 4f 50 45 52 41 _TAPE_WMI_OPERA
28a80 54 49 4f 4e 53 20 7b 0d 0a 20 20 44 57 4f 52 44 TIONS {.. DWORD
28a90 20 4d 65 74 68 6f 64 3b 0d 0a 20 20 44 57 4f 52 Method;.. DWOR
28aa0 44 20 44 61 74 61 42 75 66 66 65 72 53 69 7a 65 D DataBufferSize
28ab0 3b 0d 0a 20 20 50 56 4f 49 44 20 44 61 74 61 42 ;.. PVOID DataB
28ac0 75 66 66 65 72 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 uffer;..}..alias
28ad0 20 5f 54 41 50 45 5f 57 4d 49 5f 4f 50 45 52 41 _TAPE_WMI_OPERA
28ae0 54 49 4f 4e 53 20 54 41 50 45 5f 57 4d 49 5f 4f TIONS TAPE_WMI_O
28af0 50 45 52 41 54 49 4f 4e 53 3b 0d 0a 61 6c 69 61 PERATIONS;..alia
28b00 73 20 5f 54 41 50 45 5f 57 4d 49 5f 4f 50 45 52 s _TAPE_WMI_OPER
28b10 41 54 49 4f 4e 53 2a 20 50 54 41 50 45 5f 57 4d ATIONS* PTAPE_WM
28b20 49 5f 4f 50 45 52 41 54 49 4f 4e 53 3b 0d 0a 0d I_OPERATIONS;...
28b30 0a 61 6c 69 61 73 20 69 6e 74 20 5f 54 41 50 45 .alias int _TAPE
28b40 5f 44 52 49 56 45 5f 50 52 4f 42 4c 45 4d 5f 54 _DRIVE_PROBLEM_T
28b50 59 50 45 3b 0d 0a 65 6e 75 6d 20 7b 0d 0a 20 20 YPE;..enum {..
28b60 54 61 70 65 44 72 69 76 65 50 72 6f 62 6c 65 6d TapeDriveProblem
28b70 4e 6f 6e 65 2c 0d 0a 20 20 54 61 70 65 44 72 69 None,.. TapeDri
28b80 76 65 52 65 61 64 57 72 69 74 65 57 61 72 6e 69 veReadWriteWarni
28b90 6e 67 2c 0d 0a 20 20 54 61 70 65 44 72 69 76 65 ng,.. TapeDrive
28ba0 52 65 61 64 57 72 69 74 65 45 72 72 6f 72 2c 0d ReadWriteError,.
28bb0 0a 20 20 54 61 70 65 44 72 69 76 65 52 65 61 64 . TapeDriveRead
28bc0 57 61 72 6e 69 6e 67 2c 0d 0a 20 20 54 61 70 65 Warning,.. Tape
28bd0 44 72 69 76 65 57 72 69 74 65 57 61 72 6e 69 6e DriveWriteWarnin
28be0 67 2c 0d 0a 20 20 54 61 70 65 44 72 69 76 65 52 g,.. TapeDriveR
28bf0 65 61 64 45 72 72 6f 72 2c 0d 0a 20 20 54 61 70 eadError,.. Tap
28c00 65 44 72 69 76 65 57 72 69 74 65 45 72 72 6f 72 eDriveWriteError
28c10 2c 0d 0a 20 20 54 61 70 65 44 72 69 76 65 48 61 ,.. TapeDriveHa
28c20 72 64 77 61 72 65 45 72 72 6f 72 2c 0d 0a 20 20 rdwareError,..
28c30 54 61 70 65 44 72 69 76 65 55 6e 73 75 70 70 6f TapeDriveUnsuppo
28c40 72 74 65 64 4d 65 64 69 61 2c 0d 0a 20 20 54 61 rtedMedia,.. Ta
28c50 70 65 44 72 69 76 65 53 63 73 69 43 6f 6e 6e 65 peDriveScsiConne
28c60 63 74 69 6f 6e 45 72 72 6f 72 2c 0d 0a 20 20 54 ctionError,.. T
28c70 61 70 65 44 72 69 76 65 54 69 6d 65 74 6f 43 6c apeDriveTimetoCl
28c80 65 61 6e 2c 0d 0a 20 20 54 61 70 65 44 72 69 76 ean,.. TapeDriv
28c90 65 43 6c 65 61 6e 44 72 69 76 65 4e 6f 77 2c 0d eCleanDriveNow,.
28ca0 0a 20 20 54 61 70 65 44 72 69 76 65 4d 65 64 69 . TapeDriveMedi
28cb0 61 4c 69 66 65 45 78 70 69 72 65 64 2c 0d 0a 20 aLifeExpired,..
28cc0 20 54 61 70 65 44 72 69 76 65 53 6e 61 70 70 65 TapeDriveSnappe
28cd0 64 54 61 70 65 2c 0d 0a 7d 0d 0a 61 6c 69 61 73 dTape,..}..alias
28ce0 20 5f 54 41 50 45 5f 44 52 49 56 45 5f 50 52 4f _TAPE_DRIVE_PRO
28cf0 42 4c 45 4d 5f 54 59 50 45 20 54 41 50 45 5f 44 BLEM_TYPE TAPE_D
28d00 52 49 56 45 5f 50 52 4f 42 4c 45 4d 5f 54 59 50 RIVE_PROBLEM_TYP
28d10 45 3b 0d 0a 0d 0a 2f 2f 20 23 69 66 20 64 65 66 E;....// #if def
28d20 69 6e 65 64 28 5f 4d 5f 41 4d 44 36 34 29 20 26 ined(_M_AMD64) &
28d30 26 20 21 64 65 66 69 6e 65 64 28 5f 5f 6d 69 64 & !defined(__mid
28d40 6c 29 0d 0a 0d 0a 2f 2f 20 2e 2e 2e 0d 0a 0d 0a l)....// .......
28d50 2f 2f 20 2e 2e 2e 0d 0a 0d 0a 2f 2f 20 2e 2e 2e // .......// ...
28d60 0d 0a 0d 0a 2f 2f 20 2e 2e 2e 0d 0a 0d 0a 2f 2f ....// .......//
28d70 20 2e 2e 2e 0d 0a 0d 0a 2f 2f 20 2e 2e 2e 0d 0a .......// .....
28d80 0d 0a 2f 2f 20 23 65 6e 64 69 66 20 2f 2f 20 5f ..// #endif // _
28d90 4d 5f 41 4d 44 36 34 20 26 26 20 21 64 65 66 69 M_AMD64 && !defi
28da0 6e 65 64 28 5f 5f 6d 69 64 6c 29 0d 0a 0d 0a 2f ned(__midl)..../
28db0 2f 20 23 69 66 20 28 5f 57 49 4e 33 32 5f 57 49 / #if (_WIN32_WI
28dc0 4e 4e 54 20 3e 20 30 78 30 35 30 30 29 20 7c 7c NNT > 0x0500) ||
28dd0 20 28 5f 57 49 4e 33 32 5f 46 55 53 49 4f 4e 20 (_WIN32_FUSION
28de0 3e 3d 20 30 78 30 31 30 30 29 20 7c 7c 20 49 53 >= 0x0100) || IS
28df0 4f 4c 41 54 49 4f 4e 5f 41 57 41 52 45 5f 45 4e OLATION_AWARE_EN
28e00 41 42 4c 45 44 20 2f 2f 20 77 69 6e 6e 74 5f 6f ABLED // winnt_o
28e10 6e 6c 79 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 nly..enum : uint
28e20 20 7b 20 41 43 54 49 56 41 54 49 4f 4e 5f 43 4f { ACTIVATION_CO
28e30 4e 54 45 58 54 5f 53 45 43 54 49 4f 4e 5f 41 53 NTEXT_SECTION_AS
28e40 53 45 4d 42 4c 59 5f 49 4e 46 4f 52 4d 41 54 49 SEMBLY_INFORMATI
28e50 4f 4e 20 3d 20 31 20 7d 0d 0a 65 6e 75 6d 20 3a ON = 1 }..enum :
28e60 20 75 69 6e 74 20 7b 20 41 43 54 49 56 41 54 49 uint { ACTIVATI
28e70 4f 4e 5f 43 4f 4e 54 45 58 54 5f 53 45 43 54 49 ON_CONTEXT_SECTI
28e80 4f 4e 5f 44 4c 4c 5f 52 45 44 49 52 45 43 54 49 ON_DLL_REDIRECTI
28e90 4f 4e 20 3d 20 32 20 7d 0d 0a 65 6e 75 6d 20 3a ON = 2 }..enum :
28ea0 20 75 69 6e 74 20 7b 20 41 43 54 49 56 41 54 49 uint { ACTIVATI
28eb0 4f 4e 5f 43 4f 4e 54 45 58 54 5f 53 45 43 54 49 ON_CONTEXT_SECTI
28ec0 4f 4e 5f 57 49 4e 44 4f 57 5f 43 4c 41 53 53 5f ON_WINDOW_CLASS_
28ed0 52 45 44 49 52 45 43 54 49 4f 4e 20 3d 20 33 20 REDIRECTION = 3
28ee0 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b }..enum : uint {
28ef0 20 41 43 54 49 56 41 54 49 4f 4e 5f 43 4f 4e 54 ACTIVATION_CONT
28f00 45 58 54 5f 53 45 43 54 49 4f 4e 5f 43 4f 4d 5f EXT_SECTION_COM_
28f10 53 45 52 56 45 52 5f 52 45 44 49 52 45 43 54 49 SERVER_REDIRECTI
28f20 4f 4e 20 3d 20 34 20 7d 0d 0a 65 6e 75 6d 20 3a ON = 4 }..enum :
28f30 20 75 69 6e 74 20 7b 20 41 43 54 49 56 41 54 49 uint { ACTIVATI
28f40 4f 4e 5f 43 4f 4e 54 45 58 54 5f 53 45 43 54 49 ON_CONTEXT_SECTI
28f50 4f 4e 5f 43 4f 4d 5f 49 4e 54 45 52 46 41 43 45 ON_COM_INTERFACE
28f60 5f 52 45 44 49 52 45 43 54 49 4f 4e 20 3d 20 35 _REDIRECTION = 5
28f70 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 }..enum : uint
28f80 7b 20 41 43 54 49 56 41 54 49 4f 4e 5f 43 4f 4e { ACTIVATION_CON
28f90 54 45 58 54 5f 53 45 43 54 49 4f 4e 5f 43 4f 4d TEXT_SECTION_COM
28fa0 5f 54 59 50 45 5f 4c 49 42 52 41 52 59 5f 52 45 _TYPE_LIBRARY_RE
28fb0 44 49 52 45 43 54 49 4f 4e 20 3d 20 36 20 7d 0d DIRECTION = 6 }.
28fc0 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 20 7b 20 41 .enum : uint { A
28fd0 43 54 49 56 41 54 49 4f 4e 5f 43 4f 4e 54 45 58 CTIVATION_CONTEX
28fe0 54 5f 53 45 43 54 49 4f 4e 5f 43 4f 4d 5f 50 52 T_SECTION_COM_PR
28ff0 4f 47 49 44 5f 52 45 44 49 52 45 43 54 49 4f 4e OGID_REDIRECTION
29000 20 3d 20 37 20 7d 0d 0a 65 6e 75 6d 20 3a 20 75 = 7 }..enum : u
29010 69 6e 74 20 7b 20 41 43 54 49 56 41 54 49 4f 4e int { ACTIVATION
29020 5f 43 4f 4e 54 45 58 54 5f 53 45 43 54 49 4f 4e _CONTEXT_SECTION
29030 5f 47 4c 4f 42 41 4c 5f 4f 42 4a 45 43 54 5f 52 _GLOBAL_OBJECT_R
29040 45 4e 41 4d 45 5f 54 41 42 4c 45 20 3d 20 38 20 ENAME_TABLE = 8
29050 7d 0d 0a 2f 2f 20 23 65 6e 64 69 66 20 2f 2f 20 }..// #endif //
29060 77 69 6e 6e 74 5f 6f 6e 6c 79 0d 0a 0d 0a 2f 2f winnt_only....//
29070 20 23 69 66 64 65 66 20 5f 5f 63 70 6c 75 73 70 #ifdef __cplusp
29080 6c 75 73 0d 0a 2f 2f 20 7d 0d 0a 2f 2f 20 23 65 lus..// }..// #e
29090 6e 64 69 66 0d 0a 0d 0a 2f 2f 20 23 65 6e 64 69 ndif....// #endi
290a0 66 20 2f 2a 20 5f 57 49 4e 4e 54 5f 20 2a 2f 0d f /* _WINNT_ */.
290b0 0a 0d 0a ...