Hex Artifact Content

Not logged in

Artifact 0db4dca1f0f739a5022e2278c0f5292a169e8879:


0000: 2f 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  /***************
0010: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
0020: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
0030: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
0040: 2a 2a 2a 2a 2a 2a 2a 2a 5c 0d 0a 2a 20 20 20 20  ********\..*    
0050: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0060: 20 20 20 20 20 20 20 20 20 20 20 20 77 69 6e 6e              winn
0070: 74 2e 64 20 20 20 20 20 20 20 20 20 20 20 20 20  t.d             
0080: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0090: 20 20 20 2a 0d 0a 2a 20 20 20 20 20 20 20 20 20     *..*         
00a0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
00b0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
00c0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
00d0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2a 0d                *.
00e0: 0a 2a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .*              
00f0: 20 20 20 20 20 20 20 20 20 57 69 6e 64 6f 77 73           Windows
0100: 20 41 50 49 20 68 65 61 64 65 72 20 6d 6f 64 75   API header modu
0110: 6c 65 20 20 20 20 20 20 20 20 20 20 20 20 20 20  le              
0120: 20 20 20 20 20 20 20 20 20 2a 0d 0a 2a 20 20 20           *..*   
0130: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0140: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0150: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0160: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0170: 20 20 20 20 2a 0d 0a 2a 20 20 20 20 20 20 20 20      *..*        
0180: 20 20 20 20 20 54 72 61 6e 73 6c 61 74 65 64 20       Translated 
0190: 66 72 6f 6d 20 4d 69 6e 47 57 20 41 50 49 20 66  from MinGW API f
01a0: 6f 72 20 4d 53 2d 57 69 6e 64 6f 77 73 20 33 2e  or MS-Windows 3.
01b0: 31 32 20 20 20 20 20 20 20 20 20 20 20 20 20 2a  12             *
01c0: 0d 0a 2a 20 20 20 20 20 20 20 20 20 20 20 20 20  ..*             
01d0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
01e0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
01f0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0200: 20 20 20 20 20 20 20 20 20 20 2a 0d 0a 2a 20 20            *..*  
0210: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0220: 20 20 20 20 20 50 6c 61 63 65 64 20 69 6e 74 6f       Placed into
0230: 20 70 75 62 6c 69 63 20 64 6f 6d 61 69 6e 20 20   public domain  
0240: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0250: 20 20 20 20 20 2a 0d 0a 5c 2a 2a 2a 2a 2a 2a 2a       *..\*******
0260: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
0270: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
0280: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
0290: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
02a0: 2f 0d 0a 6d 6f 64 75 6c 65 20 77 69 6e 33 32 2e  /..module win32.
02b0: 77 69 6e 6e 74 3b 0d 0a 0d 0a 70 75 62 6c 69 63  winnt;....public
02c0: 20 69 6d 70 6f 72 74 20 77 69 6e 33 32 2e 62 61   import win32.ba
02d0: 73 65 74 73 64 2c 20 77 69 6e 33 32 2e 77 69 6e  setsd, win32.win
02e0: 64 65 66 2c 20 77 69 6e 33 32 2e 77 69 6e 65 72  def, win32.winer
02f0: 72 6f 72 3b 0d 0a 70 72 69 76 61 74 65 20 69 6d  ror;..private im
0300: 70 6f 72 74 20 77 69 6e 33 32 2e 77 33 32 61 70  port win32.w32ap
0310: 69 3b 0d 0a 0d 0a 2f 2a 20 54 72 61 6e 73 6c 61  i;..../* Transla
0320: 74 69 6f 6e 20 4e 6f 74 65 73 3a 0d 0a 54 68 65  tion Notes:..The
0330: 20 66 6f 6c 6c 6f 77 69 6e 67 20 6d 61 63 72 6f   following macro
0340: 73 20 61 72 65 20 75 6e 6e 65 65 64 65 64 20 66  s are unneeded f
0350: 6f 72 20 44 3a 0d 0a 46 49 45 4c 44 5f 4f 46 46  or D:..FIELD_OFF
0360: 53 45 54 28 74 2c 66 29 2c 20 43 4f 4e 54 41 49  SET(t,f), CONTAI
0370: 4e 49 4e 47 5f 52 45 43 4f 52 44 28 61 64 64 72  NING_RECORD(addr
0380: 65 73 73 2c 20 74 79 70 65 2c 20 66 69 65 6c 64  ess, type, field
0390: 29 0d 0a 2a 2f 0d 0a 0d 0a 61 6c 69 61 73 20 76  )..*/....alias v
03a0: 6f 69 64 20 20 20 56 4f 49 44 3b 0d 0a 61 6c 69  oid   VOID;..ali
03b0: 61 73 20 63 68 61 72 20 20 20 43 48 41 52 2c 20  as char   CHAR, 
03c0: 43 43 48 41 52 3b 0d 0a 61 6c 69 61 73 20 77 63  CCHAR;..alias wc
03d0: 68 61 72 20 20 57 43 48 41 52 3b 0d 0a 61 6c 69  har  WCHAR;..ali
03e0: 61 73 20 62 6f 6f 6c 20 20 20 42 4f 4f 4c 45 41  as bool   BOOLEA
03f0: 4e 3b 0d 0a 61 6c 69 61 73 20 62 79 74 65 20 20  N;..alias byte  
0400: 20 46 43 48 41 52 3b 0d 0a 61 6c 69 61 73 20 75   FCHAR;..alias u
0410: 62 79 74 65 20 20 55 43 48 41 52 3b 0d 0a 61 6c  byte  UCHAR;..al
0420: 69 61 73 20 73 68 6f 72 74 20 20 53 48 4f 52 54  ias short  SHORT
0430: 3b 0d 0a 61 6c 69 61 73 20 75 73 68 6f 72 74 20  ;..alias ushort 
0440: 4c 41 4e 47 49 44 2c 20 46 53 48 4f 52 54 3b 0d  LANGID, FSHORT;.
0450: 0a 61 6c 69 61 73 20 75 69 6e 74 20 20 20 4c 43  .alias uint   LC
0460: 49 44 2c 20 46 4c 4f 4e 47 2c 20 41 43 43 45 53  ID, FLONG, ACCES
0470: 53 5f 4d 41 53 4b 3b 0d 0a 61 6c 69 61 73 20 6c  S_MASK;..alias l
0480: 6f 6e 67 20 20 20 4c 4f 4e 47 4c 4f 4e 47 2c 20  ong   LONGLONG, 
0490: 55 53 4e 3b 0d 0a 61 6c 69 61 73 20 75 6c 6f 6e  USN;..alias ulon
04a0: 67 20 20 44 57 4f 52 44 4c 4f 4e 47 2c 20 55 4c  g  DWORDLONG, UL
04b0: 4f 4e 47 4c 4f 4e 47 3b 0d 0a 0d 0a 61 6c 69 61  ONGLONG;....alia
04c0: 73 20 76 6f 69 64 2a 20 20 50 56 4f 49 44 2c 20  s void*  PVOID, 
04d0: 4c 50 56 4f 49 44 3b 0d 0a 61 6c 69 61 73 20 63  LPVOID;..alias c
04e0: 68 61 72 2a 20 20 50 53 5a 2c 20 50 43 48 41 52  har*  PSZ, PCHAR
04f0: 2c 20 50 43 43 48 41 52 2c 20 4c 50 43 48 2c 20  , PCCHAR, LPCH, 
0500: 50 43 48 2c 20 4c 50 53 54 52 2c 20 50 53 54 52  PCH, LPSTR, PSTR
0510: 3b 0d 0a 61 6c 69 61 73 20 77 63 68 61 72 2a 20  ;..alias wchar* 
0520: 50 57 43 48 41 52 2c 20 4c 50 57 43 48 2c 20 50  PWCHAR, LPWCH, P
0530: 57 43 48 2c 20 4c 50 57 53 54 52 2c 20 50 57 53  WCH, LPWSTR, PWS
0540: 54 52 3b 0d 0a 61 6c 69 61 73 20 62 6f 6f 6c 2a  TR;..alias bool*
0550: 20 20 50 42 4f 4f 4c 45 41 4e 3b 0d 0a 61 6c 69    PBOOLEAN;..ali
0560: 61 73 20 75 62 79 74 65 2a 20 50 55 43 48 41 52  as ubyte* PUCHAR
0570: 3b 0d 0a 61 6c 69 61 73 20 73 68 6f 72 74 2a 20  ;..alias short* 
0580: 50 53 48 4f 52 54 3b 0d 0a 61 6c 69 61 73 20 69  PSHORT;..alias i
0590: 6e 74 2a 20 20 20 50 4c 4f 4e 47 3b 0d 0a 61 6c  nt*   PLONG;..al
05a0: 69 61 73 20 75 69 6e 74 2a 20 20 50 4c 43 49 44  ias uint*  PLCID
05b0: 2c 20 50 41 43 43 45 53 53 5f 4d 41 53 4b 3b 0d  , PACCESS_MASK;.
05c0: 0a 61 6c 69 61 73 20 6c 6f 6e 67 2a 20 20 50 4c  .alias long*  PL
05d0: 4f 4e 47 4c 4f 4e 47 3b 0d 0a 61 6c 69 61 73 20  ONGLONG;..alias 
05e0: 75 6c 6f 6e 67 2a 20 50 44 57 4f 52 44 4c 4f 4e  ulong* PDWORDLON
05f0: 47 2c 20 50 55 4c 4f 4e 47 4c 4f 4e 47 3b 0d 0a  G, PULONGLONG;..
0600: 0d 0a 2f 2f 20 46 49 58 4d 45 28 4d 69 6e 47 57  ..// FIXME(MinGW
0610: 29 20 66 6f 72 20 5f 5f 57 49 4e 36 34 0d 0a 61  ) for __WIN64..a
0620: 6c 69 61 73 20 76 6f 69 64 2a 20 20 50 56 4f 49  lias void*  PVOI
0630: 44 36 34 3b 0d 0a 0d 0a 2f 2f 20 63 6f 6e 73 74  D64;....// const
0640: 20 76 65 72 73 69 6f 6e 73 0d 0a 61 6c 69 61 73   versions..alias
0650: 20 63 6f 6e 73 74 28 63 68 61 72 29 2a 20 20 4c   const(char)*  L
0660: 50 43 43 48 2c 20 50 43 53 54 52 2c 20 4c 50 43  PCCH, PCSTR, LPC
0670: 53 54 52 3b 0d 0a 61 6c 69 61 73 20 63 6f 6e 73  STR;..alias cons
0680: 74 28 77 63 68 61 72 29 2a 20 4c 50 43 57 43 48  t(wchar)* LPCWCH
0690: 2c 20 50 43 57 43 48 2c 20 4c 50 43 57 53 54 52  , PCWCH, LPCWSTR
06a0: 2c 20 50 43 57 53 54 52 3b 0d 0a 0d 0a 76 65 72  , PCWSTR;....ver
06b0: 73 69 6f 6e 20 28 55 6e 69 63 6f 64 65 29 20 7b  sion (Unicode) {
06c0: 0d 0a 09 61 6c 69 61 73 20 57 43 48 41 52 20 54  ...alias WCHAR T
06d0: 43 48 41 52 2c 20 5f 54 43 48 41 52 3b 0d 0a 7d  CHAR, _TCHAR;..}
06e0: 20 65 6c 73 65 20 7b 0d 0a 09 61 6c 69 61 73 20   else {...alias 
06f0: 43 48 41 52 20 54 43 48 41 52 2c 20 5f 54 43 48  CHAR TCHAR, _TCH
0700: 41 52 3b 0d 0a 7d 0d 0a 0d 0a 61 6c 69 61 73 20  AR;..}....alias 
0710: 54 43 48 41 52 20 20 20 20 20 20 20 20 20 54 42  TCHAR         TB
0720: 59 54 45 3b 0d 0a 61 6c 69 61 73 20 54 43 48 41  YTE;..alias TCHA
0730: 52 2a 20 20 20 20 20 20 20 20 50 54 43 48 2c 20  R*        PTCH, 
0740: 50 54 42 59 54 45 2c 20 4c 50 54 43 48 2c 20 50  PTBYTE, LPTCH, P
0750: 54 53 54 52 2c 20 4c 50 54 53 54 52 2c 20 4c 50  TSTR, LPTSTR, LP
0760: 2c 20 50 54 43 48 41 52 3b 0d 0a 61 6c 69 61 73  , PTCHAR;..alias
0770: 20 63 6f 6e 73 74 28 54 43 48 41 52 29 2a 20 4c   const(TCHAR)* L
0780: 50 43 54 53 54 52 3b 0d 0a 0d 0a 63 6f 6e 73 74  PCTSTR;....const
0790: 20 63 68 61 72 20 41 4e 53 49 5f 4e 55 4c 4c 20   char ANSI_NULL 
07a0: 3d 20 27 5c 30 27 3b 0d 0a 63 6f 6e 73 74 20 77  = '\0';..const w
07b0: 63 68 61 72 20 55 4e 49 43 4f 44 45 5f 4e 55 4c  char UNICODE_NUL
07c0: 4c 20 3d 20 27 5c 30 27 3b 0d 0a 0d 0a 63 6f 6e  L = '\0';....con
07d0: 73 74 20 41 50 50 4c 49 43 41 54 49 4f 4e 5f 45  st APPLICATION_E
07e0: 52 52 4f 52 5f 4d 41 53 4b 20 20 20 20 20 20 20  RROR_MASK       
07f0: 3d 20 30 78 32 30 30 30 30 30 30 30 3b 0d 0a 63  = 0x20000000;..c
0800: 6f 6e 73 74 20 45 52 52 4f 52 5f 53 45 56 45 52  onst ERROR_SEVER
0810: 49 54 59 5f 53 55 43 43 45 53 53 20 20 20 20 20  ITY_SUCCESS     
0820: 20 20 3d 20 30 78 30 30 30 30 30 30 30 30 3b 0d    = 0x00000000;.
0830: 0a 63 6f 6e 73 74 20 45 52 52 4f 52 5f 53 45 56  .const ERROR_SEV
0840: 45 52 49 54 59 5f 49 4e 46 4f 52 4d 41 54 49 4f  ERITY_INFORMATIO
0850: 4e 41 4c 20 3d 20 30 78 34 30 30 30 30 30 30 30  NAL = 0x40000000
0860: 3b 0d 0a 63 6f 6e 73 74 20 45 52 52 4f 52 5f 53  ;..const ERROR_S
0870: 45 56 45 52 49 54 59 5f 57 41 52 4e 49 4e 47 20  EVERITY_WARNING 
0880: 20 20 20 20 20 20 3d 20 30 78 38 30 30 30 30 30        = 0x800000
0890: 30 30 3b 0d 0a 63 6f 6e 73 74 20 45 52 52 4f 52  00;..const ERROR
08a0: 5f 53 45 56 45 52 49 54 59 5f 45 52 52 4f 52 20  _SEVERITY_ERROR 
08b0: 20 20 20 20 20 20 20 20 3d 20 30 78 43 30 30 30          = 0xC000
08c0: 30 30 30 30 3b 0d 0a 0d 0a 2f 2f 20 4d 69 6e 47  0000;....// MinG
08d0: 57 3a 20 61 6c 73 6f 20 69 6e 20 64 64 6b 2f 6e  W: also in ddk/n
08e0: 74 69 66 73 2e 68 0d 0a 65 6e 75 6d 20 3a 20 55  tifs.h..enum : U
08f0: 53 48 4f 52 54 20 7b 0d 0a 09 43 4f 4d 50 52 45  SHORT {...COMPRE
0900: 53 53 49 4f 4e 5f 46 4f 52 4d 41 54 5f 4e 4f 4e  SSION_FORMAT_NON
0910: 45 20 20 20 20 20 3d 20 30 78 30 30 30 30 2c 0d  E     = 0x0000,.
0920: 0a 09 43 4f 4d 50 52 45 53 53 49 4f 4e 5f 46 4f  ..COMPRESSION_FO
0930: 52 4d 41 54 5f 44 45 46 41 55 4c 54 20 20 3d 20  RMAT_DEFAULT  = 
0940: 30 78 30 30 30 31 2c 0d 0a 09 43 4f 4d 50 52 45  0x0001,...COMPRE
0950: 53 53 49 4f 4e 5f 46 4f 52 4d 41 54 5f 4c 5a 4e  SSION_FORMAT_LZN
0960: 54 31 20 20 20 20 3d 20 30 78 30 30 30 32 2c 0d  T1    = 0x0002,.
0970: 0a 09 43 4f 4d 50 52 45 53 53 49 4f 4e 5f 45 4e  ..COMPRESSION_EN
0980: 47 49 4e 45 5f 53 54 41 4e 44 41 52 44 20 3d 20  GINE_STANDARD = 
0990: 30 78 30 30 30 30 2c 0d 0a 09 43 4f 4d 50 52 45  0x0000,...COMPRE
09a0: 53 53 49 4f 4e 5f 45 4e 47 49 4e 45 5f 4d 41 58  SSION_ENGINE_MAX
09b0: 49 4d 55 4d 20 20 3d 20 30 78 30 31 30 30 2c 0d  IMUM  = 0x0100,.
09c0: 0a 09 43 4f 4d 50 52 45 53 53 49 4f 4e 5f 45 4e  ..COMPRESSION_EN
09d0: 47 49 4e 45 5f 48 49 42 45 52 20 20 20 20 3d 20  GINE_HIBER    = 
09e0: 30 78 30 32 30 30 0d 0a 7d 0d 0a 0d 0a 2f 2f 20  0x0200..}....// 
09f0: 41 43 43 45 53 53 5f 44 45 4e 49 45 44 5f 4f 42  ACCESS_DENIED_OB
0a00: 4a 45 43 54 5f 41 43 45 2c 20 65 74 63 0d 0a 63  JECT_ACE, etc..c
0a10: 6f 6e 73 74 20 44 57 4f 52 44 0d 0a 09 41 43 45  onst DWORD...ACE
0a20: 5f 4f 42 4a 45 43 54 5f 54 59 50 45 5f 50 52 45  _OBJECT_TYPE_PRE
0a30: 53 45 4e 54 20 20 20 20 20 20 20 20 20 20 20 3d  SENT           =
0a40: 20 30 78 30 30 30 30 30 30 30 31 2c 0d 0a 09 41   0x00000001,...A
0a50: 43 45 5f 49 4e 48 45 52 49 54 45 44 5f 4f 42 4a  CE_INHERITED_OBJ
0a60: 45 43 54 5f 54 59 50 45 5f 50 52 45 53 45 4e 54  ECT_TYPE_PRESENT
0a70: 20 3d 20 30 78 30 30 30 30 30 30 30 32 3b 0d 0a   = 0x00000002;..
0a80: 0d 0a 2f 2f 20 41 43 45 5f 48 45 41 44 45 52 2e  ..// ACE_HEADER.
0a90: 41 63 65 54 79 70 65 0d 0a 2f 2f 20 61 6c 73 6f  AceType..// also
0aa0: 20 69 6e 20 64 64 6b 2f 6e 74 69 66 73 2e 68 0d   in ddk/ntifs.h.
0ab0: 0a 65 6e 75 6d 20 3a 20 42 59 54 45 20 7b 0d 0a  .enum : BYTE {..
0ac0: 09 41 43 43 45 53 53 5f 41 4c 4c 4f 57 45 44 5f  .ACCESS_ALLOWED_
0ad0: 41 43 45 5f 54 59 50 45 2c 0d 0a 09 41 43 43 45  ACE_TYPE,...ACCE
0ae0: 53 53 5f 44 45 4e 49 45 44 5f 41 43 45 5f 54 59  SS_DENIED_ACE_TY
0af0: 50 45 2c 0d 0a 09 53 59 53 54 45 4d 5f 41 55 44  PE,...SYSTEM_AUD
0b00: 49 54 5f 41 43 45 5f 54 59 50 45 2c 0d 0a 09 53  IT_ACE_TYPE,...S
0b10: 59 53 54 45 4d 5f 41 4c 41 52 4d 5f 41 43 45 5f  YSTEM_ALARM_ACE_
0b20: 54 59 50 45 0d 0a 7d 0d 0a 0d 0a 2f 2f 20 41 43  TYPE..}....// AC
0b30: 45 5f 48 45 41 44 45 52 2e 41 63 65 46 6c 61 67  E_HEADER.AceFlag
0b40: 73 0d 0a 63 6f 6e 73 74 20 42 59 54 45 0d 0a 09  s..const BYTE...
0b50: 4f 42 4a 45 43 54 5f 49 4e 48 45 52 49 54 5f 41  OBJECT_INHERIT_A
0b60: 43 45 20 20 20 20 20 20 20 20 20 3d 20 30 78 30  CE         = 0x0
0b70: 31 2c 0d 0a 09 43 4f 4e 54 41 49 4e 45 52 5f 49  1,...CONTAINER_I
0b80: 4e 48 45 52 49 54 5f 41 43 45 20 20 20 20 20 20  NHERIT_ACE      
0b90: 3d 20 30 78 30 32 2c 0d 0a 09 4e 4f 5f 50 52 4f  = 0x02,...NO_PRO
0ba0: 50 41 47 41 54 45 5f 49 4e 48 45 52 49 54 5f 41  PAGATE_INHERIT_A
0bb0: 43 45 20 20 20 3d 20 30 78 30 34 2c 0d 0a 09 49  CE   = 0x04,...I
0bc0: 4e 48 45 52 49 54 5f 4f 4e 4c 59 5f 41 43 45 20  NHERIT_ONLY_ACE 
0bd0: 20 20 20 20 20 20 20 20 20 20 3d 20 30 78 30 38            = 0x08
0be0: 2c 0d 0a 09 49 4e 48 45 52 49 54 45 44 5f 41 43  ,...INHERITED_AC
0bf0: 45 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3d  E              =
0c00: 20 30 78 31 30 2c 0d 0a 09 56 41 4c 49 44 5f 49   0x10,...VALID_I
0c10: 4e 48 45 52 49 54 5f 46 4c 41 47 53 20 20 20 20  NHERIT_FLAGS    
0c20: 20 20 20 20 3d 20 30 78 31 46 2c 0d 0a 09 53 55      = 0x1F,...SU
0c30: 43 43 45 53 53 46 55 4c 5f 41 43 43 45 53 53 5f  CCESSFUL_ACCESS_
0c40: 41 43 45 5f 46 4c 41 47 20 3d 20 30 78 34 30 2c  ACE_FLAG = 0x40,
0c50: 0d 0a 09 46 41 49 4c 45 44 5f 41 43 43 45 53 53  ...FAILED_ACCESS
0c60: 5f 41 43 45 5f 46 4c 41 47 20 20 20 20 20 3d 20  _ACE_FLAG     = 
0c70: 30 78 38 30 3b 0d 0a 0d 0a 2f 2f 20 41 63 63 65  0x80;....// Acce
0c80: 73 73 20 4d 61 73 6b 20 46 6f 72 6d 61 74 0d 0a  ss Mask Format..
0c90: 63 6f 6e 73 74 20 41 43 43 45 53 53 5f 4d 41 53  const ACCESS_MAS
0ca0: 4b 0d 0a 09 44 45 4c 45 54 45 20 20 20 20 20 20  K...DELETE      
0cb0: 20 20 20 20 20 20 20 20 20 20 20 20 20 3d 20 30               = 0
0cc0: 78 30 30 30 31 30 30 30 30 2c 0d 0a 09 52 45 41  x00010000,...REA
0cd0: 44 5f 43 4f 4e 54 52 4f 4c 20 20 20 20 20 20 20  D_CONTROL       
0ce0: 20 20 20 20 20 20 3d 20 30 78 30 30 30 32 30 30        = 0x000200
0cf0: 30 30 2c 0d 0a 09 57 52 49 54 45 5f 44 41 43 20  00,...WRITE_DAC 
0d00: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3d                 =
0d10: 20 30 78 30 30 30 34 30 30 30 30 2c 0d 0a 09 57   0x00040000,...W
0d20: 52 49 54 45 5f 4f 57 4e 45 52 20 20 20 20 20 20  RITE_OWNER      
0d30: 20 20 20 20 20 20 20 20 3d 20 30 78 30 30 30 38          = 0x0008
0d40: 30 30 30 30 2c 0d 0a 09 53 59 4e 43 48 52 4f 4e  0000,...SYNCHRON
0d50: 49 5a 45 20 20 20 20 20 20 20 20 20 20 20 20 20  IZE             
0d60: 20 3d 20 30 78 30 30 31 30 30 30 30 30 2c 0d 0a   = 0x00100000,..
0d70: 09 41 43 43 45 53 53 5f 53 59 53 54 45 4d 5f 53  .ACCESS_SYSTEM_S
0d80: 45 43 55 52 49 54 59 20 20 20 3d 20 30 78 30 31  ECURITY   = 0x01
0d90: 30 30 30 30 30 30 2c 0d 0a 09 4d 41 58 49 4d 55  000000,...MAXIMU
0da0: 4d 5f 41 4c 4c 4f 57 45 44 20 20 20 20 20 20 20  M_ALLOWED       
0db0: 20 20 20 3d 20 30 78 30 32 30 30 30 30 30 30 2c     = 0x02000000,
0dc0: 0d 0a 09 47 45 4e 45 52 49 43 5f 52 45 41 44 20  ...GENERIC_READ 
0dd0: 20 20 20 20 20 20 20 20 20 20 20 20 3d 20 30 78              = 0x
0de0: 38 30 30 30 30 30 30 30 2c 0d 0a 09 47 45 4e 45  80000000,...GENE
0df0: 52 49 43 5f 57 52 49 54 45 20 20 20 20 20 20 20  RIC_WRITE       
0e00: 20 20 20 20 20 3d 20 30 78 34 30 30 30 30 30 30       = 0x4000000
0e10: 30 2c 0d 0a 09 47 45 4e 45 52 49 43 5f 45 58 45  0,...GENERIC_EXE
0e20: 43 55 54 45 20 20 20 20 20 20 20 20 20 20 3d 20  CUTE          = 
0e30: 30 78 32 30 30 30 30 30 30 30 2c 0d 0a 09 47 45  0x20000000,...GE
0e40: 4e 45 52 49 43 5f 41 4c 4c 20 20 20 20 20 20 20  NERIC_ALL       
0e50: 20 20 20 20 20 20 20 3d 20 30 78 31 30 30 30 30         = 0x10000
0e60: 30 30 30 2c 0d 0a 09 53 54 41 4e 44 41 52 44 5f  000,...STANDARD_
0e70: 52 49 47 48 54 53 5f 52 45 51 55 49 52 45 44 20  RIGHTS_REQUIRED 
0e80: 3d 20 30 78 30 30 30 46 30 30 30 30 2c 0d 0a 09  = 0x000F0000,...
0e90: 53 54 41 4e 44 41 52 44 5f 52 49 47 48 54 53 5f  STANDARD_RIGHTS_
0ea0: 52 45 41 44 20 20 20 20 20 3d 20 30 78 30 30 30  READ     = 0x000
0eb0: 32 30 30 30 30 2c 0d 0a 09 53 54 41 4e 44 41 52  20000,...STANDAR
0ec0: 44 5f 52 49 47 48 54 53 5f 57 52 49 54 45 20 20  D_RIGHTS_WRITE  
0ed0: 20 20 3d 20 30 78 30 30 30 32 30 30 30 30 2c 0d    = 0x00020000,.
0ee0: 0a 09 53 54 41 4e 44 41 52 44 5f 52 49 47 48 54  ..STANDARD_RIGHT
0ef0: 53 5f 45 58 45 43 55 54 45 20 20 3d 20 30 78 30  S_EXECUTE  = 0x0
0f00: 30 30 32 30 30 30 30 2c 0d 0a 09 53 54 41 4e 44  0020000,...STAND
0f10: 41 52 44 5f 52 49 47 48 54 53 5f 41 4c 4c 20 20  ARD_RIGHTS_ALL  
0f20: 20 20 20 20 3d 20 30 78 30 30 31 46 30 30 30 30      = 0x001F0000
0f30: 2c 0d 0a 09 53 50 45 43 49 46 49 43 5f 52 49 47  ,...SPECIFIC_RIG
0f40: 48 54 53 5f 41 4c 4c 20 20 20 20 20 20 3d 20 30  HTS_ALL      = 0
0f50: 78 30 30 30 30 46 46 46 46 3b 0d 0a 0d 0a 0d 0a  x0000FFFF;......
0f60: 63 6f 6e 73 74 20 44 57 4f 52 44 20 49 4e 56 41  const DWORD INVA
0f70: 4c 49 44 5f 46 49 4c 45 5f 41 54 54 52 49 42 55  LID_FILE_ATTRIBU
0f80: 54 45 53 20 3d 20 2d 31 3b 0d 0a 0d 0a 2f 2f 20  TES = -1;....// 
0f90: 4d 69 6e 47 57 3a 20 41 6c 73 6f 20 69 6e 20 64  MinGW: Also in d
0fa0: 64 6b 2f 77 69 6e 64 64 6b 2e 68 0d 0a 63 6f 6e  dk/winddk.h..con
0fb0: 73 74 20 44 57 4f 52 44 0d 0a 09 46 49 4c 45 5f  st DWORD...FILE_
0fc0: 4c 49 53 54 5f 44 49 52 45 43 54 4f 52 59 20 20  LIST_DIRECTORY  
0fd0: 20 20 20 20 20 3d 20 30 78 30 30 30 30 30 30 30       = 0x0000000
0fe0: 31 2c 0d 0a 09 46 49 4c 45 5f 52 45 41 44 5f 44  1,...FILE_READ_D
0ff0: 41 54 41 20 20 20 20 20 20 20 20 20 20 20 20 3d  ATA            =
1000: 20 30 78 30 30 30 30 30 30 30 31 2c 0d 0a 09 46   0x00000001,...F
1010: 49 4c 45 5f 41 44 44 5f 46 49 4c 45 20 20 20 20  ILE_ADD_FILE    
1020: 20 20 20 20 20 20 20 20 20 3d 20 30 78 30 30 30           = 0x000
1030: 30 30 30 30 32 2c 0d 0a 09 46 49 4c 45 5f 57 52  00002,...FILE_WR
1040: 49 54 45 5f 44 41 54 41 20 20 20 20 20 20 20 20  ITE_DATA        
1050: 20 20 20 3d 20 30 78 30 30 30 30 30 30 30 32 2c     = 0x00000002,
1060: 0d 0a 09 46 49 4c 45 5f 41 44 44 5f 53 55 42 44  ...FILE_ADD_SUBD
1070: 49 52 45 43 54 4f 52 59 20 20 20 20 20 3d 20 30  IRECTORY     = 0
1080: 78 30 30 30 30 30 30 30 34 2c 0d 0a 09 46 49 4c  x00000004,...FIL
1090: 45 5f 41 50 50 45 4e 44 5f 44 41 54 41 20 20 20  E_APPEND_DATA   
10a0: 20 20 20 20 20 20 20 3d 20 30 78 30 30 30 30 30         = 0x00000
10b0: 30 30 34 2c 0d 0a 09 46 49 4c 45 5f 43 52 45 41  004,...FILE_CREA
10c0: 54 45 5f 50 49 50 45 5f 49 4e 53 54 41 4e 43 45  TE_PIPE_INSTANCE
10d0: 20 3d 20 30 78 30 30 30 30 30 30 30 34 2c 0d 0a   = 0x00000004,..
10e0: 09 46 49 4c 45 5f 52 45 41 44 5f 45 41 20 20 20  .FILE_READ_EA   
10f0: 20 20 20 20 20 20 20 20 20 20 20 3d 20 30 78 30             = 0x0
1100: 30 30 30 30 30 30 38 2c 0d 0a 09 46 49 4c 45 5f  0000008,...FILE_
1110: 52 45 41 44 5f 50 52 4f 50 45 52 54 49 45 53 20  READ_PROPERTIES 
1120: 20 20 20 20 20 3d 20 30 78 30 30 30 30 30 30 30       = 0x0000000
1130: 38 2c 0d 0a 09 46 49 4c 45 5f 57 52 49 54 45 5f  8,...FILE_WRITE_
1140: 45 41 20 20 20 20 20 20 20 20 20 20 20 20 20 3d  EA             =
1150: 20 30 78 30 30 30 30 30 30 31 30 2c 0d 0a 09 46   0x00000010,...F
1160: 49 4c 45 5f 57 52 49 54 45 5f 50 52 4f 50 45 52  ILE_WRITE_PROPER
1170: 54 49 45 53 20 20 20 20 20 3d 20 30 78 30 30 30  TIES     = 0x000
1180: 30 30 30 31 30 2c 0d 0a 09 46 49 4c 45 5f 45 58  00010,...FILE_EX
1190: 45 43 55 54 45 20 20 20 20 20 20 20 20 20 20 20  ECUTE           
11a0: 20 20 20 3d 20 30 78 30 30 30 30 30 30 32 30 2c     = 0x00000020,
11b0: 0d 0a 09 46 49 4c 45 5f 54 52 41 56 45 52 53 45  ...FILE_TRAVERSE
11c0: 20 20 20 20 20 20 20 20 20 20 20 20 20 3d 20 30               = 0
11d0: 78 30 30 30 30 30 30 32 30 2c 0d 0a 09 46 49 4c  x00000020,...FIL
11e0: 45 5f 44 45 4c 45 54 45 5f 43 48 49 4c 44 20 20  E_DELETE_CHILD  
11f0: 20 20 20 20 20 20 20 3d 20 30 78 30 30 30 30 30         = 0x00000
1200: 30 34 30 2c 0d 0a 09 46 49 4c 45 5f 52 45 41 44  040,...FILE_READ
1210: 5f 41 54 54 52 49 42 55 54 45 53 20 20 20 20 20  _ATTRIBUTES     
1220: 20 3d 20 30 78 30 30 30 30 30 30 38 30 2c 0d 0a   = 0x00000080,..
1230: 09 46 49 4c 45 5f 57 52 49 54 45 5f 41 54 54 52  .FILE_WRITE_ATTR
1240: 49 42 55 54 45 53 20 20 20 20 20 3d 20 30 78 30  IBUTES     = 0x0
1250: 30 30 30 30 31 30 30 3b 0d 0a 0d 0a 63 6f 6e 73  0000100;....cons
1260: 74 20 44 57 4f 52 44 0d 0a 09 46 49 4c 45 5f 53  t DWORD...FILE_S
1270: 48 41 52 45 5f 52 45 41 44 20 20 20 20 20 20 20  HARE_READ       
1280: 20 3d 20 30 78 30 30 30 30 30 30 30 31 2c 0d 0a   = 0x00000001,..
1290: 09 46 49 4c 45 5f 53 48 41 52 45 5f 57 52 49 54  .FILE_SHARE_WRIT
12a0: 45 20 20 20 20 20 20 20 3d 20 30 78 30 30 30 30  E       = 0x0000
12b0: 30 30 30 32 2c 0d 0a 09 46 49 4c 45 5f 53 48 41  0002,...FILE_SHA
12c0: 52 45 5f 44 45 4c 45 54 45 20 20 20 20 20 20 3d  RE_DELETE      =
12d0: 20 30 78 30 30 30 30 30 30 30 34 2c 0d 0a 09 46   0x00000004,...F
12e0: 49 4c 45 5f 53 48 41 52 45 5f 56 41 4c 49 44 5f  ILE_SHARE_VALID_
12f0: 46 4c 41 47 53 20 3d 20 30 78 30 30 30 30 30 30  FLAGS = 0x000000
1300: 30 37 3b 0d 0a 0d 0a 63 6f 6e 73 74 20 44 57 4f  07;....const DWO
1310: 52 44 0d 0a 09 46 49 4c 45 5f 41 54 54 52 49 42  RD...FILE_ATTRIB
1320: 55 54 45 5f 52 45 41 44 4f 4e 4c 59 20 20 20 20  UTE_READONLY    
1330: 20 20 20 20 20 20 20 20 3d 20 30 78 30 30 30 30          = 0x0000
1340: 30 30 30 31 2c 0d 0a 09 46 49 4c 45 5f 41 54 54  0001,...FILE_ATT
1350: 52 49 42 55 54 45 5f 48 49 44 44 45 4e 20 20 20  RIBUTE_HIDDEN   
1360: 20 20 20 20 20 20 20 20 20 20 20 3d 20 30 78 30             = 0x0
1370: 30 30 30 30 30 30 32 2c 0d 0a 09 46 49 4c 45 5f  0000002,...FILE_
1380: 41 54 54 52 49 42 55 54 45 5f 53 59 53 54 45 4d  ATTRIBUTE_SYSTEM
1390: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3d 20                = 
13a0: 30 78 30 30 30 30 30 30 30 34 2c 0d 0a 09 46 49  0x00000004,...FI
13b0: 4c 45 5f 41 54 54 52 49 42 55 54 45 5f 44 49 52  LE_ATTRIBUTE_DIR
13c0: 45 43 54 4f 52 59 20 20 20 20 20 20 20 20 20 20  ECTORY          
13d0: 20 3d 20 30 78 30 30 30 30 30 30 31 30 2c 0d 0a   = 0x00000010,..
13e0: 09 46 49 4c 45 5f 41 54 54 52 49 42 55 54 45 5f  .FILE_ATTRIBUTE_
13f0: 41 52 43 48 49 56 45 20 20 20 20 20 20 20 20 20  ARCHIVE         
1400: 20 20 20 20 3d 20 30 78 30 30 30 30 30 30 32 30      = 0x00000020
1410: 2c 0d 0a 09 46 49 4c 45 5f 41 54 54 52 49 42 55  ,...FILE_ATTRIBU
1420: 54 45 5f 44 45 56 49 43 45 20 20 20 20 20 20 20  TE_DEVICE       
1430: 20 20 20 20 20 20 20 3d 20 30 78 30 30 30 30 30         = 0x00000
1440: 30 34 30 2c 0d 0a 09 46 49 4c 45 5f 41 54 54 52  040,...FILE_ATTR
1450: 49 42 55 54 45 5f 4e 4f 52 4d 41 4c 20 20 20 20  IBUTE_NORMAL    
1460: 20 20 20 20 20 20 20 20 20 20 3d 20 30 78 30 30            = 0x00
1470: 30 30 30 30 38 30 2c 0d 0a 09 46 49 4c 45 5f 41  000080,...FILE_A
1480: 54 54 52 49 42 55 54 45 5f 54 45 4d 50 4f 52 41  TTRIBUTE_TEMPORA
1490: 52 59 20 20 20 20 20 20 20 20 20 20 20 3d 20 30  RY           = 0
14a0: 78 30 30 30 30 30 31 30 30 2c 0d 0a 09 46 49 4c  x00000100,...FIL
14b0: 45 5f 41 54 54 52 49 42 55 54 45 5f 53 50 41 52  E_ATTRIBUTE_SPAR
14c0: 53 45 5f 46 49 4c 45 20 20 20 20 20 20 20 20 20  SE_FILE         
14d0: 3d 20 30 78 30 30 30 30 30 32 30 30 2c 0d 0a 09  = 0x00000200,...
14e0: 46 49 4c 45 5f 41 54 54 52 49 42 55 54 45 5f 52  FILE_ATTRIBUTE_R
14f0: 45 50 41 52 53 45 5f 50 4f 49 4e 54 20 20 20 20  EPARSE_POINT    
1500: 20 20 20 3d 20 30 78 30 30 30 30 30 34 30 30 2c     = 0x00000400,
1510: 0d 0a 09 46 49 4c 45 5f 41 54 54 52 49 42 55 54  ...FILE_ATTRIBUT
1520: 45 5f 43 4f 4d 50 52 45 53 53 45 44 20 20 20 20  E_COMPRESSED    
1530: 20 20 20 20 20 20 3d 20 30 78 30 30 30 30 30 38        = 0x000008
1540: 30 30 2c 0d 0a 09 46 49 4c 45 5f 41 54 54 52 49  00,...FILE_ATTRI
1550: 42 55 54 45 5f 4f 46 46 4c 49 4e 45 20 20 20 20  BUTE_OFFLINE    
1560: 20 20 20 20 20 20 20 20 20 3d 20 30 78 30 30 30           = 0x000
1570: 30 31 30 30 30 2c 0d 0a 09 46 49 4c 45 5f 41 54  01000,...FILE_AT
1580: 54 52 49 42 55 54 45 5f 4e 4f 54 5f 43 4f 4e 54  TRIBUTE_NOT_CONT
1590: 45 4e 54 5f 49 4e 44 45 58 45 44 20 3d 20 30 78  ENT_INDEXED = 0x
15a0: 30 30 30 30 32 30 30 30 2c 0d 0a 09 46 49 4c 45  00002000,...FILE
15b0: 5f 41 54 54 52 49 42 55 54 45 5f 45 4e 43 52 59  _ATTRIBUTE_ENCRY
15c0: 50 54 45 44 20 20 20 20 20 20 20 20 20 20 20 3d  PTED           =
15d0: 20 30 78 30 30 30 30 34 30 30 30 2c 0d 0a 09 46   0x00004000,...F
15e0: 49 4c 45 5f 41 54 54 52 49 42 55 54 45 5f 56 41  ILE_ATTRIBUTE_VA
15f0: 4c 49 44 5f 46 4c 41 47 53 20 20 20 20 20 20 20  LID_FLAGS       
1600: 20 20 3d 20 30 78 30 30 30 30 37 66 62 37 2c 0d    = 0x00007fb7,.
1610: 0a 09 46 49 4c 45 5f 41 54 54 52 49 42 55 54 45  ..FILE_ATTRIBUTE
1620: 5f 56 41 4c 49 44 5f 53 45 54 5f 46 4c 41 47 53  _VALID_SET_FLAGS
1630: 20 20 20 20 20 3d 20 30 78 30 30 30 30 33 31 61       = 0x000031a
1640: 37 3b 0d 0a 0d 0a 2f 2f 20 54 68 65 73 65 20 61  7;....// These a
1650: 72 65 20 6e 6f 74 20 64 6f 63 75 6d 65 6e 74 65  re not documente
1660: 64 20 6f 6e 20 4d 53 44 4e 0d 0a 63 6f 6e 73 74  d on MSDN..const
1670: 20 46 49 4c 45 5f 43 4f 50 59 5f 53 54 52 55 43   FILE_COPY_STRUC
1680: 54 55 52 45 44 5f 53 54 4f 52 41 47 45 20 3d 20  TURED_STORAGE = 
1690: 30 78 30 30 30 30 30 30 34 31 3b 0d 0a 63 6f 6e  0x00000041;..con
16a0: 73 74 20 46 49 4c 45 5f 53 54 52 55 43 54 55 52  st FILE_STRUCTUR
16b0: 45 44 5f 53 54 4f 52 41 47 45 20 20 20 20 20 20  ED_STORAGE      
16c0: 3d 20 30 78 30 30 30 30 30 34 34 31 3b 0d 0a 0d  = 0x00000441;...
16d0: 0a 2f 2f 20 4e 6f 72 20 61 72 65 20 74 68 65 73  .// Nor are thes
16e0: 65 0d 0a 63 6f 6e 73 74 20 46 49 4c 45 5f 56 41  e..const FILE_VA
16f0: 4c 49 44 5f 4f 50 54 49 4f 4e 5f 46 4c 41 47 53  LID_OPTION_FLAGS
1700: 20 20 20 20 20 20 20 20 20 20 3d 20 30 78 30 30            = 0x00
1710: 66 66 66 66 66 66 3b 0d 0a 63 6f 6e 73 74 20 46  ffffff;..const F
1720: 49 4c 45 5f 56 41 4c 49 44 5f 50 49 50 45 5f 4f  ILE_VALID_PIPE_O
1730: 50 54 49 4f 4e 5f 46 4c 41 47 53 20 20 20 20 20  PTION_FLAGS     
1740: 3d 20 30 78 30 30 30 30 30 30 33 32 3b 0d 0a 63  = 0x00000032;..c
1750: 6f 6e 73 74 20 46 49 4c 45 5f 56 41 4c 49 44 5f  onst FILE_VALID_
1760: 4d 41 49 4c 53 4c 4f 54 5f 4f 50 54 49 4f 4e 5f  MAILSLOT_OPTION_
1770: 46 4c 41 47 53 20 3d 20 30 78 30 30 30 30 30 30  FLAGS = 0x000000
1780: 33 32 3b 0d 0a 63 6f 6e 73 74 20 46 49 4c 45 5f  32;..const FILE_
1790: 56 41 4c 49 44 5f 53 45 54 5f 46 4c 41 47 53 20  VALID_SET_FLAGS 
17a0: 20 20 20 20 20 20 20 20 20 20 20 20 3d 20 30 78              = 0x
17b0: 30 30 30 30 30 30 33 36 3b 0d 0a 0d 0a 63 6f 6e  00000036;....con
17c0: 73 74 20 55 4c 4f 4e 47 0d 0a 09 46 49 4c 45 5f  st ULONG...FILE_
17d0: 53 55 50 45 52 53 45 44 45 20 20 20 20 20 20 20  SUPERSEDE       
17e0: 20 20 20 20 3d 20 30 78 30 30 30 30 30 30 30 30      = 0x00000000
17f0: 2c 0d 0a 09 46 49 4c 45 5f 4f 50 45 4e 20 20 20  ,...FILE_OPEN   
1800: 20 20 20 20 20 20 20 20 20 20 20 20 20 3d 20 30               = 0
1810: 78 30 30 30 30 30 30 30 31 2c 0d 0a 09 46 49 4c  x00000001,...FIL
1820: 45 5f 43 52 45 41 54 45 20 20 20 20 20 20 20 20  E_CREATE        
1830: 20 20 20 20 20 20 3d 20 30 78 30 30 30 30 30 30        = 0x000000
1840: 30 32 2c 0d 0a 09 46 49 4c 45 5f 4f 50 45 4e 5f  02,...FILE_OPEN_
1850: 49 46 20 20 20 20 20 20 20 20 20 20 20 20 20 3d  IF             =
1860: 20 30 78 30 30 30 30 30 30 30 33 2c 0d 0a 09 46   0x00000003,...F
1870: 49 4c 45 5f 4f 56 45 52 57 52 49 54 45 20 20 20  ILE_OVERWRITE   
1880: 20 20 20 20 20 20 20 20 3d 20 30 78 30 30 30 30          = 0x0000
1890: 30 30 30 34 2c 0d 0a 09 46 49 4c 45 5f 4f 56 45  0004,...FILE_OVE
18a0: 52 57 52 49 54 45 5f 49 46 20 20 20 20 20 20 20  RWRITE_IF       
18b0: 20 3d 20 30 78 30 30 30 30 30 30 30 35 2c 0d 0a   = 0x00000005,..
18c0: 09 46 49 4c 45 5f 4d 41 58 49 4d 55 4d 5f 44 49  .FILE_MAXIMUM_DI
18d0: 53 50 4f 53 49 54 49 4f 4e 20 3d 20 30 78 30 30  SPOSITION = 0x00
18e0: 30 30 30 30 30 35 3b 0d 0a 0d 0a 63 6f 6e 73 74  000005;....const
18f0: 20 55 4c 4f 4e 47 0d 0a 09 46 49 4c 45 5f 44 49   ULONG...FILE_DI
1900: 52 45 43 54 4f 52 59 5f 46 49 4c 45 20 20 20 20  RECTORY_FILE    
1910: 20 20 20 20 20 20 20 20 3d 20 30 78 30 30 30 30          = 0x0000
1920: 30 30 30 31 2c 0d 0a 09 46 49 4c 45 5f 57 52 49  0001,...FILE_WRI
1930: 54 45 5f 54 48 52 4f 55 47 48 20 20 20 20 20 20  TE_THROUGH      
1940: 20 20 20 20 20 20 20 3d 20 30 78 30 30 30 30 30         = 0x00000
1950: 30 30 32 2c 0d 0a 09 46 49 4c 45 5f 53 45 51 55  002,...FILE_SEQU
1960: 45 4e 54 49 41 4c 5f 4f 4e 4c 59 20 20 20 20 20  ENTIAL_ONLY     
1970: 20 20 20 20 20 20 3d 20 30 78 30 30 30 30 30 30        = 0x000000
1980: 30 34 2c 0d 0a 09 46 49 4c 45 5f 4e 4f 5f 49 4e  04,...FILE_NO_IN
1990: 54 45 52 4d 45 44 49 41 54 45 5f 42 55 46 46 45  TERMEDIATE_BUFFE
19a0: 52 49 4e 47 20 3d 20 30 78 30 30 30 30 30 30 30  RING = 0x0000000
19b0: 38 2c 0d 0a 09 46 49 4c 45 5f 53 59 4e 43 48 52  8,...FILE_SYNCHR
19c0: 4f 4e 4f 55 53 5f 49 4f 5f 41 4c 45 52 54 20 20  ONOUS_IO_ALERT  
19d0: 20 20 20 20 3d 20 30 78 30 30 30 30 30 30 31 30      = 0x00000010
19e0: 2c 0d 0a 09 46 49 4c 45 5f 53 59 4e 43 48 52 4f  ,...FILE_SYNCHRO
19f0: 4e 4f 55 53 5f 49 4f 5f 4e 4f 4e 41 4c 45 52 54  NOUS_IO_NONALERT
1a00: 20 20 20 3d 20 30 78 30 30 30 30 30 30 32 30 2c     = 0x00000020,
1a10: 0d 0a 09 46 49 4c 45 5f 4e 4f 4e 5f 44 49 52 45  ...FILE_NON_DIRE
1a20: 43 54 4f 52 59 5f 46 49 4c 45 20 20 20 20 20 20  CTORY_FILE      
1a30: 20 20 3d 20 30 78 30 30 30 30 30 30 34 30 2c 0d    = 0x00000040,.
1a40: 0a 09 46 49 4c 45 5f 43 52 45 41 54 45 5f 54 52  ..FILE_CREATE_TR
1a50: 45 45 5f 43 4f 4e 4e 45 43 54 49 4f 4e 20 20 20  EE_CONNECTION   
1a60: 20 3d 20 30 78 30 30 30 30 30 30 38 30 2c 0d 0a   = 0x00000080,..
1a70: 09 46 49 4c 45 5f 43 4f 4d 50 4c 45 54 45 5f 49  .FILE_COMPLETE_I
1a80: 46 5f 4f 50 4c 4f 43 4b 45 44 20 20 20 20 20 20  F_OPLOCKED      
1a90: 3d 20 30 78 30 30 30 30 30 31 30 30 2c 0d 0a 09  = 0x00000100,...
1aa0: 46 49 4c 45 5f 4e 4f 5f 45 41 5f 4b 4e 4f 57 4c  FILE_NO_EA_KNOWL
1ab0: 45 44 47 45 20 20 20 20 20 20 20 20 20 20 20 3d  EDGE           =
1ac0: 20 30 78 30 30 30 30 30 32 30 30 2c 0d 0a 09 46   0x00000200,...F
1ad0: 49 4c 45 5f 4f 50 45 4e 5f 46 4f 52 5f 52 45 43  ILE_OPEN_FOR_REC
1ae0: 4f 56 45 52 59 20 20 20 20 20 20 20 20 20 3d 20  OVERY         = 
1af0: 30 78 30 30 30 30 30 34 30 30 2c 0d 0a 09 46 49  0x00000400,...FI
1b00: 4c 45 5f 52 41 4e 44 4f 4d 5f 41 43 43 45 53 53  LE_RANDOM_ACCESS
1b10: 20 20 20 20 20 20 20 20 20 20 20 20 20 3d 20 30               = 0
1b20: 78 30 30 30 30 30 38 30 30 2c 0d 0a 09 46 49 4c  x00000800,...FIL
1b30: 45 5f 44 45 4c 45 54 45 5f 4f 4e 5f 43 4c 4f 53  E_DELETE_ON_CLOS
1b40: 45 20 20 20 20 20 20 20 20 20 20 20 3d 20 30 78  E           = 0x
1b50: 30 30 30 30 31 30 30 30 2c 0d 0a 09 46 49 4c 45  00001000,...FILE
1b60: 5f 4f 50 45 4e 5f 42 59 5f 46 49 4c 45 5f 49 44  _OPEN_BY_FILE_ID
1b70: 20 20 20 20 20 20 20 20 20 20 20 3d 20 30 78 30             = 0x0
1b80: 30 30 30 32 30 30 30 2c 0d 0a 09 46 49 4c 45 5f  0002000,...FILE_
1b90: 4f 50 45 4e 5f 46 4f 52 5f 42 41 43 4b 55 50 5f  OPEN_FOR_BACKUP_
1ba0: 49 4e 54 45 4e 54 20 20 20 20 3d 20 30 78 30 30  INTENT    = 0x00
1bb0: 30 30 34 30 30 30 2c 0d 0a 09 46 49 4c 45 5f 4e  004000,...FILE_N
1bc0: 4f 5f 43 4f 4d 50 52 45 53 53 49 4f 4e 20 20 20  O_COMPRESSION   
1bd0: 20 20 20 20 20 20 20 20 20 3d 20 30 78 30 30 30           = 0x000
1be0: 30 38 30 30 30 2c 0d 0a 09 46 49 4c 45 5f 52 45  08000,...FILE_RE
1bf0: 53 45 52 56 45 5f 4f 50 46 49 4c 54 45 52 20 20  SERVE_OPFILTER  
1c00: 20 20 20 20 20 20 20 20 3d 20 30 78 30 30 31 30          = 0x0010
1c10: 30 30 30 30 2c 0d 0a 09 46 49 4c 45 5f 4f 50 45  0000,...FILE_OPE
1c20: 4e 5f 52 45 50 41 52 53 45 5f 50 4f 49 4e 54 20  N_REPARSE_POINT 
1c30: 20 20 20 20 20 20 20 3d 20 30 78 30 30 32 30 30         = 0x00200
1c40: 30 30 30 2c 0d 0a 09 46 49 4c 45 5f 4f 50 45 4e  000,...FILE_OPEN
1c50: 5f 4e 4f 5f 52 45 43 41 4c 4c 20 20 20 20 20 20  _NO_RECALL      
1c60: 20 20 20 20 20 20 3d 20 30 78 30 30 34 30 30 30        = 0x004000
1c70: 30 30 2c 0d 0a 09 46 49 4c 45 5f 4f 50 45 4e 5f  00,...FILE_OPEN_
1c80: 46 4f 52 5f 46 52 45 45 5f 53 50 41 43 45 5f 51  FOR_FREE_SPACE_Q
1c90: 55 45 52 59 20 3d 20 30 78 30 30 38 30 30 30 30  UERY = 0x0080000
1ca0: 30 3b 0d 0a 0d 0a 0d 0a 63 6f 6e 73 74 20 41 43  0;......const AC
1cb0: 43 45 53 53 5f 4d 41 53 4b 0d 0a 09 46 49 4c 45  CESS_MASK...FILE
1cc0: 5f 41 4c 4c 5f 41 43 43 45 53 53 20 20 20 20 20  _ALL_ACCESS     
1cd0: 20 3d 20 53 54 41 4e 44 41 52 44 5f 52 49 47 48   = STANDARD_RIGH
1ce0: 54 53 5f 52 45 51 55 49 52 45 44 20 7c 20 53 59  TS_REQUIRED | SY
1cf0: 4e 43 48 52 4f 4e 49 5a 45 20 7c 20 30 78 30 31  NCHRONIZE | 0x01
1d00: 46 46 2c 0d 0a 09 46 49 4c 45 5f 47 45 4e 45 52  FF,...FILE_GENER
1d10: 49 43 5f 45 58 45 43 55 54 45 20 3d 20 53 54 41  IC_EXECUTE = STA
1d20: 4e 44 41 52 44 5f 52 49 47 48 54 53 5f 45 58 45  NDARD_RIGHTS_EXE
1d30: 43 55 54 45 20 7c 20 46 49 4c 45 5f 52 45 41 44  CUTE | FILE_READ
1d40: 5f 41 54 54 52 49 42 55 54 45 53 0d 0a 09 20 20  _ATTRIBUTES...  
1d50: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
1d60: 20 20 20 20 20 7c 20 46 49 4c 45 5f 45 58 45 43       | FILE_EXEC
1d70: 55 54 45 20 7c 20 53 59 4e 43 48 52 4f 4e 49 5a  UTE | SYNCHRONIZ
1d80: 45 2c 0d 0a 09 46 49 4c 45 5f 47 45 4e 45 52 49  E,...FILE_GENERI
1d90: 43 5f 52 45 41 44 20 20 20 20 3d 20 53 54 41 4e  C_READ    = STAN
1da0: 44 41 52 44 5f 52 49 47 48 54 53 5f 52 45 41 44  DARD_RIGHTS_READ
1db0: 20 7c 20 46 49 4c 45 5f 52 45 41 44 5f 44 41 54   | FILE_READ_DAT
1dc0: 41 0d 0a 09 20 20 20 20 20 20 20 20 20 20 20 20  A...            
1dd0: 20 20 20 20 20 20 20 20 20 20 20 7c 20 46 49 4c             | FIL
1de0: 45 5f 52 45 41 44 5f 41 54 54 52 49 42 55 54 45  E_READ_ATTRIBUTE
1df0: 53 20 7c 20 46 49 4c 45 5f 52 45 41 44 5f 45 41  S | FILE_READ_EA
1e00: 20 7c 20 53 59 4e 43 48 52 4f 4e 49 5a 45 2c 0d   | SYNCHRONIZE,.
1e10: 0a 09 46 49 4c 45 5f 47 45 4e 45 52 49 43 5f 57  ..FILE_GENERIC_W
1e20: 52 49 54 45 20 20 20 3d 20 53 54 41 4e 44 41 52  RITE   = STANDAR
1e30: 44 5f 52 49 47 48 54 53 5f 57 52 49 54 45 20 7c  D_RIGHTS_WRITE |
1e40: 20 46 49 4c 45 5f 57 52 49 54 45 5f 44 41 54 41   FILE_WRITE_DATA
1e50: 0d 0a 09 20 20 20 20 20 20 20 20 20 20 20 20 20  ...             
1e60: 20 20 20 20 20 20 20 20 20 20 7c 20 46 49 4c 45            | FILE
1e70: 5f 57 52 49 54 45 5f 41 54 54 52 49 42 55 54 45  _WRITE_ATTRIBUTE
1e80: 53 20 7c 20 46 49 4c 45 5f 57 52 49 54 45 5f 45  S | FILE_WRITE_E
1e90: 41 20 7c 20 46 49 4c 45 5f 41 50 50 45 4e 44 5f  A | FILE_APPEND_
1ea0: 44 41 54 41 0d 0a 09 20 20 20 20 20 20 20 20 20  DATA...         
1eb0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 20                | 
1ec0: 53 59 4e 43 48 52 4f 4e 49 5a 45 3b 0d 0a 0d 0a  SYNCHRONIZE;....
1ed0: 2f 2f 20 4d 69 6e 47 57 3a 20 65 6e 64 20 77 69  // MinGW: end wi
1ee0: 6e 64 64 6b 2e 68 0d 0a 2f 2f 20 4d 69 6e 47 57  nddk.h..// MinGW
1ef0: 3a 20 61 6c 73 6f 20 69 6e 20 64 64 6b 2f 6e 74  : also in ddk/nt
1f00: 69 66 73 2e 68 0d 0a 63 6f 6e 73 74 20 44 57 4f  ifs.h..const DWO
1f10: 52 44 0d 0a 09 46 49 4c 45 5f 4e 4f 54 49 46 59  RD...FILE_NOTIFY
1f20: 5f 43 48 41 4e 47 45 5f 46 49 4c 45 5f 4e 41 4d  _CHANGE_FILE_NAM
1f30: 45 20 20 20 20 3d 20 30 78 30 30 30 30 30 30 30  E    = 0x0000000
1f40: 31 2c 0d 0a 09 46 49 4c 45 5f 4e 4f 54 49 46 59  1,...FILE_NOTIFY
1f50: 5f 43 48 41 4e 47 45 5f 44 49 52 5f 4e 41 4d 45  _CHANGE_DIR_NAME
1f60: 20 20 20 20 20 3d 20 30 78 30 30 30 30 30 30 30       = 0x0000000
1f70: 32 2c 0d 0a 09 46 49 4c 45 5f 4e 4f 54 49 46 59  2,...FILE_NOTIFY
1f80: 5f 43 48 41 4e 47 45 5f 4e 41 4d 45 20 20 20 20  _CHANGE_NAME    
1f90: 20 20 20 20 20 3d 20 30 78 30 30 30 30 30 30 30       = 0x0000000
1fa0: 33 2c 0d 0a 09 46 49 4c 45 5f 4e 4f 54 49 46 59  3,...FILE_NOTIFY
1fb0: 5f 43 48 41 4e 47 45 5f 41 54 54 52 49 42 55 54  _CHANGE_ATTRIBUT
1fc0: 45 53 20 20 20 3d 20 30 78 30 30 30 30 30 30 30  ES   = 0x0000000
1fd0: 34 2c 0d 0a 09 46 49 4c 45 5f 4e 4f 54 49 46 59  4,...FILE_NOTIFY
1fe0: 5f 43 48 41 4e 47 45 5f 53 49 5a 45 20 20 20 20  _CHANGE_SIZE    
1ff0: 20 20 20 20 20 3d 20 30 78 30 30 30 30 30 30 30       = 0x0000000
2000: 38 2c 0d 0a 09 46 49 4c 45 5f 4e 4f 54 49 46 59  8,...FILE_NOTIFY
2010: 5f 43 48 41 4e 47 45 5f 4c 41 53 54 5f 57 52 49  _CHANGE_LAST_WRI
2020: 54 45 20 20 20 3d 20 30 78 30 30 30 30 30 30 31  TE   = 0x0000001
2030: 30 2c 0d 0a 09 46 49 4c 45 5f 4e 4f 54 49 46 59  0,...FILE_NOTIFY
2040: 5f 43 48 41 4e 47 45 5f 4c 41 53 54 5f 41 43 43  _CHANGE_LAST_ACC
2050: 45 53 53 20 20 3d 20 30 78 30 30 30 30 30 30 32  ESS  = 0x0000002
2060: 30 2c 0d 0a 09 46 49 4c 45 5f 4e 4f 54 49 46 59  0,...FILE_NOTIFY
2070: 5f 43 48 41 4e 47 45 5f 43 52 45 41 54 49 4f 4e  _CHANGE_CREATION
2080: 20 20 20 20 20 3d 20 30 78 30 30 30 30 30 30 34       = 0x0000004
2090: 30 2c 0d 0a 09 46 49 4c 45 5f 4e 4f 54 49 46 59  0,...FILE_NOTIFY
20a0: 5f 43 48 41 4e 47 45 5f 45 41 20 20 20 20 20 20  _CHANGE_EA      
20b0: 20 20 20 20 20 3d 20 30 78 30 30 30 30 30 30 38       = 0x0000008
20c0: 30 2c 0d 0a 09 46 49 4c 45 5f 4e 4f 54 49 46 59  0,...FILE_NOTIFY
20d0: 5f 43 48 41 4e 47 45 5f 53 45 43 55 52 49 54 59  _CHANGE_SECURITY
20e0: 20 20 20 20 20 3d 20 30 78 30 30 30 30 30 31 30       = 0x0000010
20f0: 30 2c 0d 0a 09 46 49 4c 45 5f 4e 4f 54 49 46 59  0,...FILE_NOTIFY
2100: 5f 43 48 41 4e 47 45 5f 53 54 52 45 41 4d 5f 4e  _CHANGE_STREAM_N
2110: 41 4d 45 20 20 3d 20 30 78 30 30 30 30 30 32 30  AME  = 0x0000020
2120: 30 2c 0d 0a 09 46 49 4c 45 5f 4e 4f 54 49 46 59  0,...FILE_NOTIFY
2130: 5f 43 48 41 4e 47 45 5f 53 54 52 45 41 4d 5f 53  _CHANGE_STREAM_S
2140: 49 5a 45 20 20 3d 20 30 78 30 30 30 30 30 34 30  IZE  = 0x0000040
2150: 30 2c 0d 0a 09 46 49 4c 45 5f 4e 4f 54 49 46 59  0,...FILE_NOTIFY
2160: 5f 43 48 41 4e 47 45 5f 53 54 52 45 41 4d 5f 57  _CHANGE_STREAM_W
2170: 52 49 54 45 20 3d 20 30 78 30 30 30 30 30 38 30  RITE = 0x0000080
2180: 30 2c 0d 0a 09 46 49 4c 45 5f 4e 4f 54 49 46 59  0,...FILE_NOTIFY
2190: 5f 56 41 4c 49 44 5f 4d 41 53 4b 20 20 20 20 20  _VALID_MASK     
21a0: 20 20 20 20 20 3d 20 30 78 30 30 30 30 30 66 66       = 0x00000ff
21b0: 66 3b 0d 0a 0d 0a 63 6f 6e 73 74 20 44 57 4f 52  f;....const DWOR
21c0: 44 0d 0a 09 46 49 4c 45 5f 43 41 53 45 5f 53 45  D...FILE_CASE_SE
21d0: 4e 53 49 54 49 56 45 5f 53 45 41 52 43 48 20 20  NSITIVE_SEARCH  
21e0: 20 20 20 20 3d 20 30 78 30 30 30 30 30 30 30 31      = 0x00000001
21f0: 2c 0d 0a 09 46 49 4c 45 5f 43 41 53 45 5f 50 52  ,...FILE_CASE_PR
2200: 45 53 45 52 56 45 44 5f 4e 41 4d 45 53 20 20 20  ESERVED_NAMES   
2210: 20 20 20 20 3d 20 30 78 30 30 30 30 30 30 30 32      = 0x00000002
2220: 2c 0d 0a 09 46 49 4c 45 5f 55 4e 49 43 4f 44 45  ,...FILE_UNICODE
2230: 5f 4f 4e 5f 44 49 53 4b 20 20 20 20 20 20 20 20  _ON_DISK        
2240: 20 20 20 20 3d 20 30 78 30 30 30 30 30 30 30 34      = 0x00000004
2250: 2c 0d 0a 09 46 49 4c 45 5f 50 45 52 53 49 53 54  ,...FILE_PERSIST
2260: 45 4e 54 5f 41 43 4c 53 20 20 20 20 20 20 20 20  ENT_ACLS        
2270: 20 20 20 20 3d 20 30 78 30 30 30 30 30 30 30 38      = 0x00000008
2280: 2c 0d 0a 09 46 49 4c 45 5f 46 49 4c 45 5f 43 4f  ,...FILE_FILE_CO
2290: 4d 50 52 45 53 53 49 4f 4e 20 20 20 20 20 20 20  MPRESSION       
22a0: 20 20 20 20 3d 20 30 78 30 30 30 30 30 30 31 30      = 0x00000010
22b0: 2c 0d 0a 09 46 49 4c 45 5f 56 4f 4c 55 4d 45 5f  ,...FILE_VOLUME_
22c0: 51 55 4f 54 41 53 20 20 20 20 20 20 20 20 20 20  QUOTAS          
22d0: 20 20 20 20 3d 20 30 78 30 30 30 30 30 30 32 30      = 0x00000020
22e0: 2c 0d 0a 09 46 49 4c 45 5f 53 55 50 50 4f 52 54  ,...FILE_SUPPORT
22f0: 53 5f 53 50 41 52 53 45 5f 46 49 4c 45 53 20 20  S_SPARSE_FILES  
2300: 20 20 20 20 3d 20 30 78 30 30 30 30 30 30 34 30      = 0x00000040
2310: 2c 0d 0a 09 46 49 4c 45 5f 53 55 50 50 4f 52 54  ,...FILE_SUPPORT
2320: 53 5f 52 45 50 41 52 53 45 5f 50 4f 49 4e 54 53  S_REPARSE_POINTS
2330: 20 20 20 20 3d 20 30 78 30 30 30 30 30 30 38 30      = 0x00000080
2340: 2c 0d 0a 09 46 49 4c 45 5f 53 55 50 50 4f 52 54  ,...FILE_SUPPORT
2350: 53 5f 52 45 4d 4f 54 45 5f 53 54 4f 52 41 47 45  S_REMOTE_STORAGE
2360: 20 20 20 20 3d 20 30 78 30 30 30 30 30 31 30 30      = 0x00000100
2370: 2c 0d 0a 09 46 53 5f 4c 46 4e 5f 41 50 49 53 20  ,...FS_LFN_APIS 
2380: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
2390: 20 20 20 20 3d 20 30 78 30 30 30 30 34 30 30 30      = 0x00004000
23a0: 2c 0d 0a 09 46 49 4c 45 5f 56 4f 4c 55 4d 45 5f  ,...FILE_VOLUME_
23b0: 49 53 5f 43 4f 4d 50 52 45 53 53 45 44 20 20 20  IS_COMPRESSED   
23c0: 20 20 20 20 3d 20 30 78 30 30 30 30 38 30 30 30      = 0x00008000
23d0: 2c 0d 0a 09 46 49 4c 45 5f 53 55 50 50 4f 52 54  ,...FILE_SUPPORT
23e0: 53 5f 4f 42 4a 45 43 54 5f 49 44 53 20 20 20 20  S_OBJECT_IDS    
23f0: 20 20 20 20 3d 20 30 78 30 30 30 31 30 30 30 30      = 0x00010000
2400: 2c 0d 0a 09 46 49 4c 45 5f 53 55 50 50 4f 52 54  ,...FILE_SUPPORT
2410: 53 5f 45 4e 43 52 59 50 54 49 4f 4e 20 20 20 20  S_ENCRYPTION    
2420: 20 20 20 20 3d 20 30 78 30 30 30 32 30 30 30 30      = 0x00020000
2430: 2c 0d 0a 09 46 49 4c 45 5f 4e 41 4d 45 44 5f 53  ,...FILE_NAMED_S
2440: 54 52 45 41 4d 53 20 20 20 20 20 20 20 20 20 20  TREAMS          
2450: 20 20 20 20 3d 20 30 78 30 30 30 34 30 30 30 30      = 0x00040000
2460: 2c 0d 0a 09 46 49 4c 45 5f 52 45 41 44 5f 4f 4e  ,...FILE_READ_ON
2470: 4c 59 5f 56 4f 4c 55 4d 45 20 20 20 20 20 20 20  LY_VOLUME       
2480: 20 20 20 20 3d 20 30 78 30 30 30 38 30 30 30 30      = 0x00080000
2490: 2c 0d 0a 09 46 49 4c 45 5f 53 45 51 55 45 4e 54  ,...FILE_SEQUENT
24a0: 49 41 4c 5f 57 52 49 54 45 5f 4f 4e 43 45 20 20  IAL_WRITE_ONCE  
24b0: 20 20 20 20 3d 20 30 78 30 30 31 30 30 30 30 30      = 0x00100000
24c0: 2c 0d 0a 09 46 49 4c 45 5f 53 55 50 50 4f 52 54  ,...FILE_SUPPORT
24d0: 53 5f 54 52 41 4e 53 41 43 54 49 4f 4e 53 20 20  S_TRANSACTIONS  
24e0: 20 20 20 20 3d 20 30 78 30 30 32 30 30 30 30 30      = 0x00200000
24f0: 3b 0d 0a 0d 0a 2f 2f 20 54 68 65 73 65 20 61 72  ;....// These ar
2500: 65 20 6e 6f 74 20 64 6f 63 75 6d 65 6e 74 65 64  e not documented
2510: 20 6f 6e 20 4d 53 44 4e 0d 0a 63 6f 6e 73 74 20   on MSDN..const 
2520: 41 43 43 45 53 53 5f 4d 41 53 4b 0d 0a 09 49 4f  ACCESS_MASK...IO
2530: 5f 43 4f 4d 50 4c 45 54 49 4f 4e 5f 51 55 45 52  _COMPLETION_QUER
2540: 59 5f 53 54 41 54 45 20 20 3d 20 31 2c 0d 0a 09  Y_STATE  = 1,...
2550: 49 4f 5f 43 4f 4d 50 4c 45 54 49 4f 4e 5f 4d 4f  IO_COMPLETION_MO
2560: 44 49 46 59 5f 53 54 41 54 45 20 3d 20 32 2c 0d  DIFY_STATE = 2,.
2570: 0a 09 49 4f 5f 43 4f 4d 50 4c 45 54 49 4f 4e 5f  ..IO_COMPLETION_
2580: 41 4c 4c 5f 41 43 43 45 53 53 20 20 20 3d 20 53  ALL_ACCESS   = S
2590: 54 41 4e 44 41 52 44 5f 52 49 47 48 54 53 5f 52  TANDARD_RIGHTS_R
25a0: 45 51 55 49 52 45 44 20 7c 20 53 59 4e 43 48 52  EQUIRED | SYNCHR
25b0: 4f 4e 49 5a 45 20 7c 20 33 3b 0d 0a 2f 2f 20 4d  ONIZE | 3;..// M
25c0: 69 6e 47 57 3a 20 65 6e 64 20 6e 74 69 66 73 2e  inGW: end ntifs.
25d0: 68 0d 0a 0d 0a 2f 2f 20 4d 69 6e 47 57 3a 20 61  h....// MinGW: a
25e0: 6c 73 6f 20 69 6e 20 64 64 6b 2f 77 69 6e 64 64  lso in ddk/windd
25f0: 6b 2e 68 0d 0a 63 6f 6e 73 74 20 44 57 4f 52 44  k.h..const DWORD
2600: 0d 0a 09 44 55 50 4c 49 43 41 54 45 5f 43 4c 4f  ...DUPLICATE_CLO
2610: 53 45 5f 53 4f 55 52 43 45 20 20 20 20 3d 20 31  SE_SOURCE    = 1
2620: 2c 0d 0a 09 44 55 50 4c 49 43 41 54 45 5f 53 41  ,...DUPLICATE_SA
2630: 4d 45 5f 41 43 43 45 53 53 20 20 20 20 20 3d 20  ME_ACCESS     = 
2640: 32 2c 0d 0a 09 44 55 50 4c 49 43 41 54 45 5f 53  2,...DUPLICATE_S
2650: 41 4d 45 5f 41 54 54 52 49 42 55 54 45 53 20 3d  AME_ATTRIBUTES =
2660: 20 34 3b 0d 0a 2f 2f 20 4d 69 6e 47 57 3a 20 65   4;..// MinGW: e
2670: 6e 64 20 77 69 6e 64 64 6b 2e 6b 0d 0a 0d 0a 63  nd winddk.k....c
2680: 6f 6e 73 74 20 44 57 4f 52 44 0d 0a 09 4d 41 49  onst DWORD...MAI
2690: 4c 53 4c 4f 54 5f 4e 4f 5f 4d 45 53 53 41 47 45  LSLOT_NO_MESSAGE
26a0: 20 20 20 3d 20 2d 31 2c 0d 0a 09 4d 41 49 4c 53     = -1,...MAILS
26b0: 4c 4f 54 5f 57 41 49 54 5f 46 4f 52 45 56 45 52  LOT_WAIT_FOREVER
26c0: 20 3d 20 2d 31 3b 0d 0a 0d 0a 63 6f 6e 73 74 20   = -1;....const 
26d0: 41 43 43 45 53 53 5f 4d 41 53 4b 0d 0a 09 50 52  ACCESS_MASK...PR
26e0: 4f 43 45 53 53 5f 54 45 52 4d 49 4e 41 54 45 20  OCESS_TERMINATE 
26f0: 20 20 20 20 20 20 20 20 3d 20 30 78 30 30 30 31          = 0x0001
2700: 2c 0d 0a 09 50 52 4f 43 45 53 53 5f 43 52 45 41  ,...PROCESS_CREA
2710: 54 45 5f 54 48 52 45 41 44 20 20 20 20 20 3d 20  TE_THREAD     = 
2720: 30 78 30 30 30 32 2c 0d 0a 09 50 52 4f 43 45 53  0x0002,...PROCES
2730: 53 5f 53 45 54 5f 53 45 53 53 49 4f 4e 49 44 20  S_SET_SESSIONID 
2740: 20 20 20 20 3d 20 30 78 30 30 30 34 2c 0d 0a 09      = 0x0004,...
2750: 50 52 4f 43 45 53 53 5f 56 4d 5f 4f 50 45 52 41  PROCESS_VM_OPERA
2760: 54 49 4f 4e 20 20 20 20 20 20 3d 20 30 78 30 30  TION      = 0x00
2770: 30 38 2c 0d 0a 09 50 52 4f 43 45 53 53 5f 56 4d  08,...PROCESS_VM
2780: 5f 52 45 41 44 20 20 20 20 20 20 20 20 20 20 20  _READ           
2790: 3d 20 30 78 30 30 31 30 2c 0d 0a 09 50 52 4f 43  = 0x0010,...PROC
27a0: 45 53 53 5f 56 4d 5f 57 52 49 54 45 20 20 20 20  ESS_VM_WRITE    
27b0: 20 20 20 20 20 20 3d 20 30 78 30 30 32 30 2c 0d        = 0x0020,.
27c0: 0a 09 50 52 4f 43 45 53 53 5f 44 55 50 5f 48 41  ..PROCESS_DUP_HA
27d0: 4e 44 4c 45 20 20 20 20 20 20 20 20 3d 20 30 78  NDLE        = 0x
27e0: 30 30 34 30 2c 0d 0a 09 50 52 4f 43 45 53 53 5f  0040,...PROCESS_
27f0: 43 52 45 41 54 45 5f 50 52 4f 43 45 53 53 20 20  CREATE_PROCESS  
2800: 20 20 3d 20 30 78 30 30 38 30 2c 0d 0a 09 50 52    = 0x0080,...PR
2810: 4f 43 45 53 53 5f 53 45 54 5f 51 55 4f 54 41 20  OCESS_SET_QUOTA 
2820: 20 20 20 20 20 20 20 20 3d 20 30 78 30 31 30 30          = 0x0100
2830: 2c 0d 0a 09 50 52 4f 43 45 53 53 5f 53 45 54 5f  ,...PROCESS_SET_
2840: 49 4e 46 4f 52 4d 41 54 49 4f 4e 20 20 20 3d 20  INFORMATION   = 
2850: 30 78 30 32 30 30 2c 0d 0a 09 50 52 4f 43 45 53  0x0200,...PROCES
2860: 53 5f 51 55 45 52 59 5f 49 4e 46 4f 52 4d 41 54  S_QUERY_INFORMAT
2870: 49 4f 4e 20 3d 20 30 78 30 34 30 30 2c 0d 0a 09  ION = 0x0400,...
2880: 50 52 4f 43 45 53 53 5f 41 4c 4c 5f 41 43 43 45  PROCESS_ALL_ACCE
2890: 53 53 20 20 20 20 20 20 20 20 3d 20 53 54 41 4e  SS        = STAN
28a0: 44 41 52 44 5f 52 49 47 48 54 53 5f 52 45 51 55  DARD_RIGHTS_REQU
28b0: 49 52 45 44 20 7c 20 53 59 4e 43 48 52 4f 4e 49  IRED | SYNCHRONI
28c0: 5a 45 20 7c 20 30 78 30 46 46 46 3b 0d 0a 0d 0a  ZE | 0x0FFF;....
28d0: 63 6f 6e 73 74 20 41 43 43 45 53 53 5f 4d 41 53  const ACCESS_MAS
28e0: 4b 0d 0a 09 54 48 52 45 41 44 5f 54 45 52 4d 49  K...THREAD_TERMI
28f0: 4e 41 54 45 20 20 20 20 20 20 20 20 20 20 20 20  NATE            
2900: 3d 20 30 78 30 30 30 31 2c 0d 0a 09 54 48 52 45  = 0x0001,...THRE
2910: 41 44 5f 53 55 53 50 45 4e 44 5f 52 45 53 55 4d  AD_SUSPEND_RESUM
2920: 45 20 20 20 20 20 20 20 3d 20 30 78 30 30 30 32  E       = 0x0002
2930: 2c 0d 0a 09 54 48 52 45 41 44 5f 47 45 54 5f 43  ,...THREAD_GET_C
2940: 4f 4e 54 45 58 54 20 20 20 20 20 20 20 20 20 20  ONTEXT          
2950: 3d 20 30 78 30 30 30 38 2c 0d 0a 09 54 48 52 45  = 0x0008,...THRE
2960: 41 44 5f 53 45 54 5f 43 4f 4e 54 45 58 54 20 20  AD_SET_CONTEXT  
2970: 20 20 20 20 20 20 20 20 3d 20 30 78 30 30 31 30          = 0x0010
2980: 2c 0d 0a 09 54 48 52 45 41 44 5f 53 45 54 5f 49  ,...THREAD_SET_I
2990: 4e 46 4f 52 4d 41 54 49 4f 4e 20 20 20 20 20 20  NFORMATION      
29a0: 3d 20 30 78 30 30 32 30 2c 0d 0a 09 54 48 52 45  = 0x0020,...THRE
29b0: 41 44 5f 51 55 45 52 59 5f 49 4e 46 4f 52 4d 41  AD_QUERY_INFORMA
29c0: 54 49 4f 4e 20 20 20 20 3d 20 30 78 30 30 34 30  TION    = 0x0040
29d0: 2c 0d 0a 09 54 48 52 45 41 44 5f 53 45 54 5f 54  ,...THREAD_SET_T
29e0: 48 52 45 41 44 5f 54 4f 4b 45 4e 20 20 20 20 20  HREAD_TOKEN     
29f0: 3d 20 30 78 30 30 38 30 2c 0d 0a 09 54 48 52 45  = 0x0080,...THRE
2a00: 41 44 5f 49 4d 50 45 52 53 4f 4e 41 54 45 20 20  AD_IMPERSONATE  
2a10: 20 20 20 20 20 20 20 20 3d 20 30 78 30 31 30 30          = 0x0100
2a20: 2c 0d 0a 09 54 48 52 45 41 44 5f 44 49 52 45 43  ,...THREAD_DIREC
2a30: 54 5f 49 4d 50 45 52 53 4f 4e 41 54 49 4f 4e 20  T_IMPERSONATION 
2a40: 3d 20 30 78 30 32 30 30 2c 0d 0a 09 54 48 52 45  = 0x0200,...THRE
2a50: 41 44 5f 41 4c 4c 5f 41 43 43 45 53 53 20 20 20  AD_ALL_ACCESS   
2a60: 20 20 20 20 20 20 20 20 3d 20 53 54 41 4e 44 41          = STANDA
2a70: 52 44 5f 52 49 47 48 54 53 5f 52 45 51 55 49 52  RD_RIGHTS_REQUIR
2a80: 45 44 7c 53 59 4e 43 48 52 4f 4e 49 5a 45 7c 30  ED|SYNCHRONIZE|0
2a90: 78 33 46 46 3b 0d 0a 0d 0a 2f 2f 20 54 68 65 73  x3FF;....// Thes
2aa0: 65 20 61 72 65 20 6e 6f 74 20 64 6f 63 75 6d 65  e are not docume
2ab0: 6e 74 65 64 20 6f 6e 20 4d 53 44 4e 0d 0a 63 6f  nted on MSDN..co
2ac0: 6e 73 74 20 54 48 52 45 41 44 5f 42 41 53 45 5f  nst THREAD_BASE_
2ad0: 50 52 49 4f 52 49 54 59 5f 4c 4f 57 52 54 20 3d  PRIORITY_LOWRT =
2ae0: 20 20 31 35 3b 0d 0a 63 6f 6e 73 74 20 54 48 52    15;..const THR
2af0: 45 41 44 5f 42 41 53 45 5f 50 52 49 4f 52 49 54  EAD_BASE_PRIORIT
2b00: 59 5f 4d 41 58 20 20 20 3d 20 20 20 32 3b 0d 0a  Y_MAX   =   2;..
2b10: 63 6f 6e 73 74 20 54 48 52 45 41 44 5f 42 41 53  const THREAD_BAS
2b20: 45 5f 50 52 49 4f 52 49 54 59 5f 4d 49 4e 20 20  E_PRIORITY_MIN  
2b30: 20 3d 20 20 2d 32 3b 0d 0a 63 6f 6e 73 74 20 54   =  -2;..const T
2b40: 48 52 45 41 44 5f 42 41 53 45 5f 50 52 49 4f 52  HREAD_BASE_PRIOR
2b50: 49 54 59 5f 49 44 4c 45 20 20 3d 20 2d 31 35 3b  ITY_IDLE  = -15;
2b60: 0d 0a 0d 0a 63 6f 6e 73 74 20 44 57 4f 52 44 20  ....const DWORD 
2b70: 45 58 43 45 50 54 49 4f 4e 5f 4e 4f 4e 43 4f 4e  EXCEPTION_NONCON
2b80: 54 49 4e 55 41 42 4c 45 20 20 20 20 20 20 3d 20  TINUABLE      = 
2b90: 20 31 3b 0d 0a 63 6f 6e 73 74 20 73 69 7a 65 5f   1;..const size_
2ba0: 74 20 45 58 43 45 50 54 49 4f 4e 5f 4d 41 58 49  t EXCEPTION_MAXI
2bb0: 4d 55 4d 5f 50 41 52 41 4d 45 54 45 52 53 20 3d  MUM_PARAMETERS =
2bc0: 20 31 35 3b 0d 0a 0d 0a 2f 2f 20 54 68 65 73 65   15;....// These
2bd0: 20 61 72 65 20 6e 6f 74 20 64 6f 63 75 6d 65 6e   are not documen
2be0: 74 65 64 20 6f 6e 20 4d 53 44 4e 0d 0a 63 6f 6e  ted on MSDN..con
2bf0: 73 74 20 41 43 43 45 53 53 5f 4d 41 53 4b 0d 0a  st ACCESS_MASK..
2c00: 09 4d 55 54 41 4e 54 5f 51 55 45 52 59 5f 53 54  .MUTANT_QUERY_ST
2c10: 41 54 45 20 3d 20 31 2c 0d 0a 09 4d 55 54 41 4e  ATE = 1,...MUTAN
2c20: 54 5f 41 4c 4c 5f 41 43 43 45 53 53 20 3d 20 20  T_ALL_ACCESS =  
2c30: 53 54 41 4e 44 41 52 44 5f 52 49 47 48 54 53 5f  STANDARD_RIGHTS_
2c40: 52 45 51 55 49 52 45 44 20 7c 20 53 59 4e 43 48  REQUIRED | SYNCH
2c50: 52 4f 4e 49 5a 45 20 7c 20 4d 55 54 41 4e 54 5f  RONIZE | MUTANT_
2c60: 51 55 45 52 59 5f 53 54 41 54 45 3b 0d 0a 0d 0a  QUERY_STATE;....
2c70: 63 6f 6e 73 74 20 41 43 43 45 53 53 5f 4d 41 53  const ACCESS_MAS
2c80: 4b 0d 0a 09 54 49 4d 45 52 5f 51 55 45 52 59 5f  K...TIMER_QUERY_
2c90: 53 54 41 54 45 20 20 3d 20 31 2c 0d 0a 09 54 49  STATE  = 1,...TI
2ca0: 4d 45 52 5f 4d 4f 44 49 46 59 5f 53 54 41 54 45  MER_MODIFY_STATE
2cb0: 20 3d 20 32 2c 0d 0a 09 54 49 4d 45 52 5f 41 4c   = 2,...TIMER_AL
2cc0: 4c 5f 41 43 43 45 53 53 20 20 20 3d 20 53 54 41  L_ACCESS   = STA
2cd0: 4e 44 41 52 44 5f 52 49 47 48 54 53 5f 52 45 51  NDARD_RIGHTS_REQ
2ce0: 55 49 52 45 44 20 7c 20 53 59 4e 43 48 52 4f 4e  UIRED | SYNCHRON
2cf0: 49 5a 45 20 7c 20 54 49 4d 45 52 5f 51 55 45 52  IZE | TIMER_QUER
2d00: 59 5f 53 54 41 54 45 0d 0a 09 20 20 20 20 20 20  Y_STATE...      
2d10: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c                 |
2d20: 20 54 49 4d 45 52 5f 4d 4f 44 49 46 59 5f 53 54   TIMER_MODIFY_ST
2d30: 41 54 45 3b 0d 0a 0d 0a 63 6f 6e 73 74 20 53 49  ATE;....const SI
2d40: 44 5f 49 44 45 4e 54 49 46 49 45 52 5f 41 55 54  D_IDENTIFIER_AUT
2d50: 48 4f 52 49 54 59 0d 0a 09 53 45 43 55 52 49 54  HORITY...SECURIT
2d60: 59 5f 4e 55 4c 4c 5f 53 49 44 5f 41 55 54 48 4f  Y_NULL_SID_AUTHO
2d70: 52 49 54 59 20 20 20 20 20 20 20 20 3d 20 7b 5b  RITY        = {[
2d80: 35 3a 20 30 5d 7d 2c 0d 0a 09 53 45 43 55 52 49  5: 0]},...SECURI
2d90: 54 59 5f 57 4f 52 4c 44 5f 53 49 44 5f 41 55 54  TY_WORLD_SID_AUT
2da0: 48 4f 52 49 54 59 20 20 20 20 20 20 20 3d 20 7b  HORITY       = {
2db0: 5b 35 3a 20 31 5d 7d 2c 0d 0a 09 53 45 43 55 52  [5: 1]},...SECUR
2dc0: 49 54 59 5f 4c 4f 43 41 4c 5f 53 49 44 5f 41 55  ITY_LOCAL_SID_AU
2dd0: 54 48 4f 52 49 54 59 20 20 20 20 20 20 20 3d 20  THORITY       = 
2de0: 7b 5b 35 3a 20 32 5d 7d 2c 0d 0a 09 53 45 43 55  {[5: 2]},...SECU
2df0: 52 49 54 59 5f 43 52 45 41 54 4f 52 5f 53 49 44  RITY_CREATOR_SID
2e00: 5f 41 55 54 48 4f 52 49 54 59 20 20 20 20 20 3d  _AUTHORITY     =
2e10: 20 7b 5b 35 3a 20 33 5d 7d 2c 0d 0a 09 53 45 43   {[5: 3]},...SEC
2e20: 55 52 49 54 59 5f 4e 4f 4e 5f 55 4e 49 51 55 45  URITY_NON_UNIQUE
2e30: 5f 41 55 54 48 4f 52 49 54 59 20 20 20 20 20 20  _AUTHORITY      
2e40: 3d 20 7b 5b 35 3a 20 34 5d 7d 2c 0d 0a 09 53 45  = {[5: 4]},...SE
2e50: 43 55 52 49 54 59 5f 4e 54 5f 41 55 54 48 4f 52  CURITY_NT_AUTHOR
2e60: 49 54 59 20 20 20 20 20 20 20 20 20 20 20 20 20  ITY             
2e70: 20 3d 20 7b 5b 35 3a 20 35 5d 7d 2c 0d 0a 09 53   = {[5: 5]},...S
2e80: 45 43 55 52 49 54 59 5f 4d 41 4e 44 41 54 4f 52  ECURITY_MANDATOR
2e90: 59 5f 4c 41 42 45 4c 5f 41 55 54 48 4f 52 49 54  Y_LABEL_AUTHORIT
2ea0: 59 20 3d 20 7b 5b 35 3a 20 36 5d 7d 3b 0d 0a 0d  Y = {[5: 6]};...
2eb0: 0a 63 6f 6e 73 74 20 44 57 4f 52 44 0d 0a 09 53  .const DWORD...S
2ec0: 45 43 55 52 49 54 59 5f 4e 55 4c 4c 5f 52 49 44  ECURITY_NULL_RID
2ed0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
2ee0: 20 20 20 3d 20 20 30 2c 0d 0a 09 53 45 43 55 52     =  0,...SECUR
2ef0: 49 54 59 5f 57 4f 52 4c 44 5f 52 49 44 20 20 20  ITY_WORLD_RID   
2f00: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3d                 =
2f10: 20 20 30 2c 0d 0a 09 53 45 43 55 52 49 54 59 5f    0,...SECURITY_
2f20: 4c 4f 43 41 4c 5f 52 49 44 20 20 20 20 20 20 20  LOCAL_RID       
2f30: 20 20 20 20 20 20 20 20 20 20 20 3d 20 20 30 2c             =  0,
2f40: 0d 0a 09 53 45 43 55 52 49 54 59 5f 43 52 45 41  ...SECURITY_CREA
2f50: 54 4f 52 5f 4f 57 4e 45 52 5f 52 49 44 20 20 20  TOR_OWNER_RID   
2f60: 20 20 20 20 20 20 20 3d 20 20 30 2c 0d 0a 09 53         =  0,...S
2f70: 45 43 55 52 49 54 59 5f 43 52 45 41 54 4f 52 5f  ECURITY_CREATOR_
2f80: 47 52 4f 55 50 5f 52 49 44 20 20 20 20 20 20 20  GROUP_RID       
2f90: 20 20 20 3d 20 20 31 2c 0d 0a 09 53 45 43 55 52     =  1,...SECUR
2fa0: 49 54 59 5f 44 49 41 4c 55 50 5f 52 49 44 20 20  ITY_DIALUP_RID  
2fb0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3d                 =
2fc0: 20 20 31 2c 0d 0a 09 53 45 43 55 52 49 54 59 5f    1,...SECURITY_
2fd0: 4e 45 54 57 4f 52 4b 5f 52 49 44 20 20 20 20 20  NETWORK_RID     
2fe0: 20 20 20 20 20 20 20 20 20 20 20 3d 20 20 32 2c             =  2,
2ff0: 0d 0a 09 53 45 43 55 52 49 54 59 5f 42 41 54 43  ...SECURITY_BATC
3000: 48 5f 52 49 44 20 20 20 20 20 20 20 20 20 20 20  H_RID           
3010: 20 20 20 20 20 20 20 3d 20 20 33 2c 0d 0a 09 53         =  3,...S
3020: 45 43 55 52 49 54 59 5f 49 4e 54 45 52 41 43 54  ECURITY_INTERACT
3030: 49 56 45 5f 52 49 44 20 20 20 20 20 20 20 20 20  IVE_RID         
3040: 20 20 20 3d 20 20 34 2c 0d 0a 09 53 45 43 55 52     =  4,...SECUR
3050: 49 54 59 5f 4c 4f 47 4f 4e 5f 49 44 53 5f 52 49  ITY_LOGON_IDS_RI
3060: 44 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3d  D              =
3070: 20 20 35 2c 0d 0a 09 53 45 43 55 52 49 54 59 5f    5,...SECURITY_
3080: 53 45 52 56 49 43 45 5f 52 49 44 20 20 20 20 20  SERVICE_RID     
3090: 20 20 20 20 20 20 20 20 20 20 20 3d 20 20 36 2c             =  6,
30a0: 0d 0a 09 53 45 43 55 52 49 54 59 5f 4c 4f 43 41  ...SECURITY_LOCA
30b0: 4c 5f 53 59 53 54 45 4d 5f 52 49 44 20 20 20 20  L_SYSTEM_RID    
30c0: 20 20 20 20 20 20 20 3d 20 31 38 2c 0d 0a 09 53         = 18,...S
30d0: 45 43 55 52 49 54 59 5f 42 55 49 4c 54 49 4e 5f  ECURITY_BUILTIN_
30e0: 44 4f 4d 41 49 4e 5f 52 49 44 20 20 20 20 20 20  DOMAIN_RID      
30f0: 20 20 20 3d 20 33 32 2c 0d 0a 09 53 45 43 55 52     = 32,...SECUR
3100: 49 54 59 5f 50 52 49 4e 43 49 50 41 4c 5f 53 45  ITY_PRINCIPAL_SE
3110: 4c 46 5f 52 49 44 20 20 20 20 20 20 20 20 20 3d  LF_RID         =
3120: 20 31 30 2c 0d 0a 09 53 45 43 55 52 49 54 59 5f   10,...SECURITY_
3130: 43 52 45 41 54 4f 52 5f 4f 57 4e 45 52 5f 53 45  CREATOR_OWNER_SE
3140: 52 56 45 52 5f 52 49 44 20 20 20 3d 20 20 32 2c  RVER_RID   =  2,
3150: 0d 0a 09 53 45 43 55 52 49 54 59 5f 43 52 45 41  ...SECURITY_CREA
3160: 54 4f 52 5f 47 52 4f 55 50 5f 53 45 52 56 45 52  TOR_GROUP_SERVER
3170: 5f 52 49 44 20 20 20 3d 20 20 33 2c 0d 0a 09 53  _RID   =  3,...S
3180: 45 43 55 52 49 54 59 5f 4c 4f 47 4f 4e 5f 49 44  ECURITY_LOGON_ID
3190: 53 5f 52 49 44 5f 43 4f 55 4e 54 20 20 20 20 20  S_RID_COUNT     
31a0: 20 20 20 3d 20 20 33 2c 0d 0a 09 53 45 43 55 52     =  3,...SECUR
31b0: 49 54 59 5f 41 4e 4f 4e 59 4d 4f 55 53 5f 4c 4f  ITY_ANONYMOUS_LO
31c0: 47 4f 4e 5f 52 49 44 20 20 20 20 20 20 20 20 3d  GON_RID        =
31d0: 20 20 37 2c 0d 0a 09 53 45 43 55 52 49 54 59 5f    7,...SECURITY_
31e0: 50 52 4f 58 59 5f 52 49 44 20 20 20 20 20 20 20  PROXY_RID       
31f0: 20 20 20 20 20 20 20 20 20 20 20 3d 20 20 38 2c             =  8,
3200: 0d 0a 09 53 45 43 55 52 49 54 59 5f 45 4e 54 45  ...SECURITY_ENTE
3210: 52 50 52 49 53 45 5f 43 4f 4e 54 52 4f 4c 4c 45  RPRISE_CONTROLLE
3220: 52 53 5f 52 49 44 20 3d 20 20 39 2c 0d 0a 09 53  RS_RID =  9,...S
3230: 45 43 55 52 49 54 59 5f 53 45 52 56 45 52 5f 4c  ECURITY_SERVER_L
3240: 4f 47 4f 4e 5f 52 49 44 20 20 20 20 20 20 20 20  OGON_RID        
3250: 20 20 20 3d 20 53 45 43 55 52 49 54 59 5f 45 4e     = SECURITY_EN
3260: 54 45 52 50 52 49 53 45 5f 43 4f 4e 54 52 4f 4c  TERPRISE_CONTROL
3270: 4c 45 52 53 5f 52 49 44 2c 0d 0a 09 53 45 43 55  LERS_RID,...SECU
3280: 52 49 54 59 5f 41 55 54 48 45 4e 54 49 43 41 54  RITY_AUTHENTICAT
3290: 45 44 5f 55 53 45 52 5f 52 49 44 20 20 20 20 20  ED_USER_RID     
32a0: 3d 20 31 31 2c 0d 0a 09 53 45 43 55 52 49 54 59  = 11,...SECURITY
32b0: 5f 52 45 53 54 52 49 43 54 45 44 5f 43 4f 44 45  _RESTRICTED_CODE
32c0: 5f 52 49 44 20 20 20 20 20 20 20 20 3d 20 31 32  _RID        = 12
32d0: 2c 0d 0a 09 53 45 43 55 52 49 54 59 5f 4e 54 5f  ,...SECURITY_NT_
32e0: 4e 4f 4e 5f 55 4e 49 51 55 45 5f 52 49 44 20 20  NON_UNIQUE_RID  
32f0: 20 20 20 20 20 20 20 20 3d 20 32 31 2c 0d 0a 09          = 21,...
3300: 53 49 44 5f 52 45 56 49 53 49 4f 4e 20 20 20 20  SID_REVISION    
3310: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
3320: 20 20 20 20 3d 20 20 31 3b 0d 0a 0d 0a 65 6e 75      =  1;....enu
3330: 6d 20 3a 20 44 57 4f 52 44 20 7b 0d 0a 09 44 4f  m : DWORD {...DO
3340: 4d 41 49 4e 5f 55 53 45 52 5f 52 49 44 5f 41 44  MAIN_USER_RID_AD
3350: 4d 49 4e 20 20 20 20 20 20 20 20 3d 20 30 78 30  MIN        = 0x0
3360: 31 46 34 2c 0d 0a 09 44 4f 4d 41 49 4e 5f 55 53  1F4,...DOMAIN_US
3370: 45 52 5f 52 49 44 5f 47 55 45 53 54 20 20 20 20  ER_RID_GUEST    
3380: 20 20 20 20 3d 20 30 78 30 31 46 35 2c 0d 0a 09      = 0x01F5,...
3390: 44 4f 4d 41 49 4e 5f 47 52 4f 55 50 5f 52 49 44  DOMAIN_GROUP_RID
33a0: 5f 41 44 4d 49 4e 53 20 20 20 20 20 20 3d 20 30  _ADMINS      = 0
33b0: 78 30 32 30 30 2c 0d 0a 09 44 4f 4d 41 49 4e 5f  x0200,...DOMAIN_
33c0: 47 52 4f 55 50 5f 52 49 44 5f 55 53 45 52 53 20  GROUP_RID_USERS 
33d0: 20 20 20 20 20 20 3d 20 30 78 30 32 30 31 2c 0d        = 0x0201,.
33e0: 0a 09 44 4f 4d 41 49 4e 5f 41 4c 49 41 53 5f 52  ..DOMAIN_ALIAS_R
33f0: 49 44 5f 41 44 4d 49 4e 53 20 20 20 20 20 20 3d  ID_ADMINS      =
3400: 20 30 78 30 32 32 30 2c 0d 0a 09 44 4f 4d 41 49   0x0220,...DOMAI
3410: 4e 5f 41 4c 49 41 53 5f 52 49 44 5f 55 53 45 52  N_ALIAS_RID_USER
3420: 53 20 20 20 20 20 20 20 3d 20 30 78 30 32 32 31  S       = 0x0221
3430: 2c 0d 0a 09 44 4f 4d 41 49 4e 5f 41 4c 49 41 53  ,...DOMAIN_ALIAS
3440: 5f 52 49 44 5f 47 55 45 53 54 53 20 20 20 20 20  _RID_GUESTS     
3450: 20 3d 20 30 78 30 32 32 32 2c 0d 0a 09 44 4f 4d   = 0x0222,...DOM
3460: 41 49 4e 5f 41 4c 49 41 53 5f 52 49 44 5f 50 4f  AIN_ALIAS_RID_PO
3470: 57 45 52 5f 55 53 45 52 53 20 3d 20 30 78 30 32  WER_USERS = 0x02
3480: 32 33 2c 0d 0a 09 44 4f 4d 41 49 4e 5f 41 4c 49  23,...DOMAIN_ALI
3490: 41 53 5f 52 49 44 5f 41 43 43 4f 55 4e 54 5f 4f  AS_RID_ACCOUNT_O
34a0: 50 53 20 3d 20 30 78 30 32 32 34 2c 0d 0a 09 44  PS = 0x0224,...D
34b0: 4f 4d 41 49 4e 5f 41 4c 49 41 53 5f 52 49 44 5f  OMAIN_ALIAS_RID_
34c0: 53 59 53 54 45 4d 5f 4f 50 53 20 20 3d 20 30 78  SYSTEM_OPS  = 0x
34d0: 30 32 32 35 2c 0d 0a 09 44 4f 4d 41 49 4e 5f 41  0225,...DOMAIN_A
34e0: 4c 49 41 53 5f 52 49 44 5f 50 52 49 4e 54 5f 4f  LIAS_RID_PRINT_O
34f0: 50 53 20 20 20 3d 20 30 78 30 32 32 36 2c 0d 0a  PS   = 0x0226,..
3500: 09 44 4f 4d 41 49 4e 5f 41 4c 49 41 53 5f 52 49  .DOMAIN_ALIAS_RI
3510: 44 5f 42 41 43 4b 55 50 5f 4f 50 53 20 20 3d 20  D_BACKUP_OPS  = 
3520: 30 78 30 32 32 37 2c 0d 0a 09 44 4f 4d 41 49 4e  0x0227,...DOMAIN
3530: 5f 41 4c 49 41 53 5f 52 49 44 5f 52 45 50 4c 49  _ALIAS_RID_REPLI
3540: 43 41 54 4f 52 20 20 3d 20 30 78 30 32 32 38 0d  CATOR  = 0x0228.
3550: 0a 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 57 4f 52  .}....enum : WOR
3560: 44 20 7b 0d 0a 09 53 45 43 55 52 49 54 59 5f 4d  D {...SECURITY_M
3570: 41 4e 44 41 54 4f 52 59 5f 55 4e 54 52 55 53 54  ANDATORY_UNTRUST
3580: 45 44 5f 52 49 44 20 20 20 20 20 20 20 20 20 3d  ED_RID         =
3590: 20 30 2c 0d 0a 09 53 45 43 55 52 49 54 59 5f 4d   0,...SECURITY_M
35a0: 41 4e 44 41 54 4f 52 59 5f 4c 4f 57 5f 52 49 44  ANDATORY_LOW_RID
35b0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3d                 =
35c0: 20 30 78 31 30 30 30 2c 0d 0a 09 53 45 43 55 52   0x1000,...SECUR
35d0: 49 54 59 5f 4d 41 4e 44 41 54 4f 52 59 5f 4d 45  ITY_MANDATORY_ME
35e0: 44 49 55 4d 5f 52 49 44 20 20 20 20 20 20 20 20  DIUM_RID        
35f0: 20 20 20 20 3d 20 30 78 32 30 30 30 2c 0d 0a 09      = 0x2000,...
3600: 53 45 43 55 52 49 54 59 5f 4d 41 4e 44 41 54 4f  SECURITY_MANDATO
3610: 52 59 5f 48 49 47 48 5f 52 49 44 20 20 20 20 20  RY_HIGH_RID     
3620: 20 20 20 20 20 20 20 20 20 3d 20 30 78 33 30 30           = 0x300
3630: 30 2c 0d 0a 09 53 45 43 55 52 49 54 59 5f 4d 41  0,...SECURITY_MA
3640: 4e 44 41 54 4f 52 59 5f 53 59 53 54 45 4d 5f 52  NDATORY_SYSTEM_R
3650: 49 44 20 20 20 20 20 20 20 20 20 20 20 20 3d 20  ID            = 
3660: 30 78 34 30 30 30 2c 0d 0a 09 53 45 43 55 52 49  0x4000,...SECURI
3670: 54 59 5f 4d 41 4e 44 41 54 4f 52 59 5f 50 52 4f  TY_MANDATORY_PRO
3680: 54 45 43 54 45 44 5f 50 52 4f 43 45 53 53 5f 52  TECTED_PROCESS_R
3690: 49 44 20 3d 20 30 78 35 30 30 30 2c 0d 0a 09 53  ID = 0x5000,...S
36a0: 45 43 55 52 49 54 59 5f 4d 41 4e 44 41 54 4f 52  ECURITY_MANDATOR
36b0: 59 5f 4d 41 58 49 4d 55 4d 5f 55 53 45 52 5f 52  Y_MAXIMUM_USER_R
36c0: 49 44 20 20 20 20 20 20 3d 20 53 45 43 55 52 49  ID      = SECURI
36d0: 54 59 5f 4d 41 4e 44 41 54 4f 52 59 5f 53 59 53  TY_MANDATORY_SYS
36e0: 54 45 4d 5f 52 49 44 0d 0a 7d 0d 0a 0d 0a 63 6f  TEM_RID..}....co
36f0: 6e 73 74 20 54 43 48 41 52 5b 5d 0d 0a 09 53 45  nst TCHAR[]...SE
3700: 5f 43 52 45 41 54 45 5f 54 4f 4b 45 4e 5f 4e 41  _CREATE_TOKEN_NA
3710: 4d 45 20 20 20 20 20 20 20 20 20 20 20 3d 20 22  ME           = "
3720: 53 65 43 72 65 61 74 65 54 6f 6b 65 6e 50 72 69  SeCreateTokenPri
3730: 76 69 6c 65 67 65 22 2c 0d 0a 09 53 45 5f 41 53  vilege",...SE_AS
3740: 53 49 47 4e 50 52 49 4d 41 52 59 54 4f 4b 45 4e  SIGNPRIMARYTOKEN
3750: 5f 4e 41 4d 45 20 20 20 20 20 3d 20 22 53 65 41  _NAME     = "SeA
3760: 73 73 69 67 6e 50 72 69 6d 61 72 79 54 6f 6b 65  ssignPrimaryToke
3770: 6e 50 72 69 76 69 6c 65 67 65 22 2c 0d 0a 09 53  nPrivilege",...S
3780: 45 5f 4c 4f 43 4b 5f 4d 45 4d 4f 52 59 5f 4e 41  E_LOCK_MEMORY_NA
3790: 4d 45 20 20 20 20 20 20 20 20 20 20 20 20 3d 20  ME            = 
37a0: 22 53 65 4c 6f 63 6b 4d 65 6d 6f 72 79 50 72 69  "SeLockMemoryPri
37b0: 76 69 6c 65 67 65 22 2c 0d 0a 09 53 45 5f 49 4e  vilege",...SE_IN
37c0: 43 52 45 41 53 45 5f 51 55 4f 54 41 5f 4e 41 4d  CREASE_QUOTA_NAM
37d0: 45 20 20 20 20 20 20 20 20 20 3d 20 22 53 65 49  E         = "SeI
37e0: 6e 63 72 65 61 73 65 51 75 6f 74 61 50 72 69 76  ncreaseQuotaPriv
37f0: 69 6c 65 67 65 22 2c 0d 0a 09 53 45 5f 55 4e 53  ilege",...SE_UNS
3800: 4f 4c 49 43 49 54 45 44 5f 49 4e 50 55 54 5f 4e  OLICITED_INPUT_N
3810: 41 4d 45 20 20 20 20 20 20 3d 20 22 53 65 55 6e  AME      = "SeUn
3820: 73 6f 6c 69 63 69 74 65 64 49 6e 70 75 74 50 72  solicitedInputPr
3830: 69 76 69 6c 65 67 65 22 2c 0d 0a 09 53 45 5f 4d  ivilege",...SE_M
3840: 41 43 48 49 4e 45 5f 41 43 43 4f 55 4e 54 5f 4e  ACHINE_ACCOUNT_N
3850: 41 4d 45 20 20 20 20 20 20 20 20 3d 20 22 53 65  AME        = "Se
3860: 4d 61 63 68 69 6e 65 41 63 63 6f 75 6e 74 50 72  MachineAccountPr
3870: 69 76 69 6c 65 67 65 22 2c 0d 0a 09 53 45 5f 54  ivilege",...SE_T
3880: 43 42 5f 4e 41 4d 45 20 20 20 20 20 20 20 20 20  CB_NAME         
3890: 20 20 20 20 20 20 20 20 20 20 20 3d 20 22 53 65             = "Se
38a0: 54 63 62 50 72 69 76 69 6c 65 67 65 22 2c 0d 0a  TcbPrivilege",..
38b0: 09 53 45 5f 53 45 43 55 52 49 54 59 5f 4e 41 4d  .SE_SECURITY_NAM
38c0: 45 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  E               
38d0: 3d 20 22 53 65 53 65 63 75 72 69 74 79 50 72 69  = "SeSecurityPri
38e0: 76 69 6c 65 67 65 22 2c 0d 0a 09 53 45 5f 54 41  vilege",...SE_TA
38f0: 4b 45 5f 4f 57 4e 45 52 53 48 49 50 5f 4e 41 4d  KE_OWNERSHIP_NAM
3900: 45 20 20 20 20 20 20 20 20 20 3d 20 22 53 65 54  E         = "SeT
3910: 61 6b 65 4f 77 6e 65 72 73 68 69 70 50 72 69 76  akeOwnershipPriv
3920: 69 6c 65 67 65 22 2c 0d 0a 09 53 45 5f 4c 4f 41  ilege",...SE_LOA
3930: 44 5f 44 52 49 56 45 52 5f 4e 41 4d 45 20 20 20  D_DRIVER_NAME   
3940: 20 20 20 20 20 20 20 20 20 3d 20 22 53 65 4c 6f           = "SeLo
3950: 61 64 44 72 69 76 65 72 50 72 69 76 69 6c 65 67  adDriverPrivileg
3960: 65 22 2c 0d 0a 09 53 45 5f 53 59 53 54 45 4d 5f  e",...SE_SYSTEM_
3970: 50 52 4f 46 49 4c 45 5f 4e 41 4d 45 20 20 20 20  PROFILE_NAME    
3980: 20 20 20 20 20 3d 20 22 53 65 53 79 73 74 65 6d       = "SeSystem
3990: 50 72 6f 66 69 6c 65 50 72 69 76 69 6c 65 67 65  ProfilePrivilege
39a0: 22 2c 0d 0a 09 53 45 5f 53 59 53 54 45 4d 54 49  ",...SE_SYSTEMTI
39b0: 4d 45 5f 4e 41 4d 45 20 20 20 20 20 20 20 20 20  ME_NAME         
39c0: 20 20 20 20 3d 20 22 53 65 53 79 73 74 65 6d 74      = "SeSystemt
39d0: 69 6d 65 50 72 69 76 69 6c 65 67 65 22 2c 0d 0a  imePrivilege",..
39e0: 09 53 45 5f 50 52 4f 46 5f 53 49 4e 47 4c 45 5f  .SE_PROF_SINGLE_
39f0: 50 52 4f 43 45 53 53 5f 4e 41 4d 45 20 20 20 20  PROCESS_NAME    
3a00: 3d 20 22 53 65 50 72 6f 66 69 6c 65 53 69 6e 67  = "SeProfileSing
3a10: 6c 65 50 72 6f 63 65 73 73 50 72 69 76 69 6c 65  leProcessPrivile
3a20: 67 65 22 2c 0d 0a 09 53 45 5f 49 4e 43 5f 42 41  ge",...SE_INC_BA
3a30: 53 45 5f 50 52 49 4f 52 49 54 59 5f 4e 41 4d 45  SE_PRIORITY_NAME
3a40: 20 20 20 20 20 20 3d 20 22 53 65 49 6e 63 72 65        = "SeIncre
3a50: 61 73 65 42 61 73 65 50 72 69 6f 72 69 74 79 50  aseBasePriorityP
3a60: 72 69 76 69 6c 65 67 65 22 2c 0d 0a 09 53 45 5f  rivilege",...SE_
3a70: 43 52 45 41 54 45 5f 50 41 47 45 46 49 4c 45 5f  CREATE_PAGEFILE_
3a80: 4e 41 4d 45 20 20 20 20 20 20 20 20 3d 20 22 53  NAME        = "S
3a90: 65 43 72 65 61 74 65 50 61 67 65 66 69 6c 65 50  eCreatePagefileP
3aa0: 72 69 76 69 6c 65 67 65 22 2c 0d 0a 09 53 45 5f  rivilege",...SE_
3ab0: 43 52 45 41 54 45 5f 50 45 52 4d 41 4e 45 4e 54  CREATE_PERMANENT
3ac0: 5f 4e 41 4d 45 20 20 20 20 20 20 20 3d 20 22 53  _NAME       = "S
3ad0: 65 43 72 65 61 74 65 50 65 72 6d 61 6e 65 6e 74  eCreatePermanent
3ae0: 50 72 69 76 69 6c 65 67 65 22 2c 0d 0a 09 53 45  Privilege",...SE
3af0: 5f 42 41 43 4b 55 50 5f 4e 41 4d 45 20 20 20 20  _BACKUP_NAME    
3b00: 20 20 20 20 20 20 20 20 20 20 20 20 20 3d 20 22               = "
3b10: 53 65 42 61 63 6b 75 70 50 72 69 76 69 6c 65 67  SeBackupPrivileg
3b20: 65 22 2c 0d 0a 09 53 45 5f 52 45 53 54 4f 52 45  e",...SE_RESTORE
3b30: 5f 4e 41 4d 45 20 20 20 20 20 20 20 20 20 20 20  _NAME           
3b40: 20 20 20 20 20 3d 20 22 53 65 52 65 73 74 6f 72       = "SeRestor
3b50: 65 50 72 69 76 69 6c 65 67 65 22 2c 0d 0a 09 53  ePrivilege",...S
3b60: 45 5f 53 48 55 54 44 4f 57 4e 5f 4e 41 4d 45 20  E_SHUTDOWN_NAME 
3b70: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3d 20                = 
3b80: 22 53 65 53 68 75 74 64 6f 77 6e 50 72 69 76 69  "SeShutdownPrivi
3b90: 6c 65 67 65 22 2c 0d 0a 09 53 45 5f 44 45 42 55  lege",...SE_DEBU
3ba0: 47 5f 4e 41 4d 45 20 20 20 20 20 20 20 20 20 20  G_NAME          
3bb0: 20 20 20 20 20 20 20 20 3d 20 22 53 65 44 65 62          = "SeDeb
3bc0: 75 67 50 72 69 76 69 6c 65 67 65 22 2c 0d 0a 09  ugPrivilege",...
3bd0: 53 45 5f 41 55 44 49 54 5f 4e 41 4d 45 20 20 20  SE_AUDIT_NAME   
3be0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3d                 =
3bf0: 20 22 53 65 41 75 64 69 74 50 72 69 76 69 6c 65   "SeAuditPrivile
3c00: 67 65 22 2c 0d 0a 09 53 45 5f 53 59 53 54 45 4d  ge",...SE_SYSTEM
3c10: 5f 45 4e 56 49 52 4f 4e 4d 45 4e 54 5f 4e 41 4d  _ENVIRONMENT_NAM
3c20: 45 20 20 20 20 20 3d 20 22 53 65 53 79 73 74 65  E     = "SeSyste
3c30: 6d 45 6e 76 69 72 6f 6e 6d 65 6e 74 50 72 69 76  mEnvironmentPriv
3c40: 69 6c 65 67 65 22 2c 0d 0a 09 53 45 5f 43 48 41  ilege",...SE_CHA
3c50: 4e 47 45 5f 4e 4f 54 49 46 59 5f 4e 41 4d 45 20  NGE_NOTIFY_NAME 
3c60: 20 20 20 20 20 20 20 20 20 3d 20 22 53 65 43 68           = "SeCh
3c70: 61 6e 67 65 4e 6f 74 69 66 79 50 72 69 76 69 6c  angeNotifyPrivil
3c80: 65 67 65 22 2c 0d 0a 09 53 45 5f 52 45 4d 4f 54  ege",...SE_REMOT
3c90: 45 5f 53 48 55 54 44 4f 57 4e 5f 4e 41 4d 45 20  E_SHUTDOWN_NAME 
3ca0: 20 20 20 20 20 20 20 3d 20 22 53 65 52 65 6d 6f         = "SeRemo
3cb0: 74 65 53 68 75 74 64 6f 77 6e 50 72 69 76 69 6c  teShutdownPrivil
3cc0: 65 67 65 22 2c 0d 0a 09 53 45 5f 43 52 45 41 54  ege",...SE_CREAT
3cd0: 45 5f 47 4c 4f 42 41 4c 5f 4e 41 4d 45 20 20 20  E_GLOBAL_NAME   
3ce0: 20 20 20 20 20 20 20 3d 20 22 53 65 43 72 65 61         = "SeCrea
3cf0: 74 65 47 6c 6f 62 61 6c 50 72 69 76 69 6c 65 67  teGlobalPrivileg
3d00: 65 22 2c 0d 0a 09 53 45 5f 55 4e 44 4f 43 4b 5f  e",...SE_UNDOCK_
3d10: 4e 41 4d 45 20 20 20 20 20 20 20 20 20 20 20 20  NAME            
3d20: 20 20 20 20 20 3d 20 22 53 65 55 6e 64 6f 63 6b       = "SeUndock
3d30: 50 72 69 76 69 6c 65 67 65 22 2c 0d 0a 09 53 45  Privilege",...SE
3d40: 5f 4d 41 4e 41 47 45 5f 56 4f 4c 55 4d 45 5f 4e  _MANAGE_VOLUME_N
3d50: 41 4d 45 20 20 20 20 20 20 20 20 20 20 3d 20 22  AME          = "
3d60: 53 65 4d 61 6e 61 67 65 56 6f 6c 75 6d 65 50 72  SeManageVolumePr
3d70: 69 76 69 6c 65 67 65 22 2c 0d 0a 09 53 45 5f 49  ivilege",...SE_I
3d80: 4d 50 45 52 53 4f 4e 41 54 45 5f 4e 41 4d 45 20  MPERSONATE_NAME 
3d90: 20 20 20 20 20 20 20 20 20 20 20 3d 20 22 53 65             = "Se
3da0: 49 6d 70 65 72 73 6f 6e 61 74 65 50 72 69 76 69  ImpersonatePrivi
3db0: 6c 65 67 65 22 2c 0d 0a 09 53 45 5f 45 4e 41 42  lege",...SE_ENAB
3dc0: 4c 45 5f 44 45 4c 45 47 41 54 49 4f 4e 5f 4e 41  LE_DELEGATION_NA
3dd0: 4d 45 20 20 20 20 20 20 3d 20 22 53 65 45 6e 61  ME      = "SeEna
3de0: 62 6c 65 44 65 6c 65 67 61 74 69 6f 6e 50 72 69  bleDelegationPri
3df0: 76 69 6c 65 67 65 22 2c 0d 0a 09 53 45 5f 53 59  vilege",...SE_SY
3e00: 4e 43 5f 41 47 45 4e 54 5f 4e 41 4d 45 20 20 20  NC_AGENT_NAME   
3e10: 20 20 20 20 20 20 20 20 20 20 3d 20 22 53 65 53            = "SeS
3e20: 79 6e 63 41 67 65 6e 74 50 72 69 76 69 6c 65 67  yncAgentPrivileg
3e30: 65 22 2c 0d 0a 09 53 45 5f 54 52 55 53 54 45 44  e",...SE_TRUSTED
3e40: 5f 43 52 45 44 4d 41 4e 5f 41 43 43 45 53 53 5f  _CREDMAN_ACCESS_
3e50: 4e 41 4d 45 20 3d 20 22 53 65 54 72 75 73 74 65  NAME = "SeTruste
3e60: 64 43 72 65 64 4d 61 6e 41 63 63 65 73 73 50 72  dCredManAccessPr
3e70: 69 76 69 6c 65 67 65 22 2c 0d 0a 09 53 45 5f 52  ivilege",...SE_R
3e80: 45 4c 41 42 45 4c 5f 4e 41 4d 45 20 20 20 20 20  ELABEL_NAME     
3e90: 20 20 20 20 20 20 20 20 20 20 20 3d 20 22 53 65             = "Se
3ea0: 52 65 6c 61 62 65 6c 50 72 69 76 69 6c 65 67 65  RelabelPrivilege
3eb0: 22 2c 0d 0a 09 53 45 5f 49 4e 43 52 45 41 53 45  ",...SE_INCREASE
3ec0: 5f 57 4f 52 4b 49 4e 47 5f 53 45 54 5f 4e 41 4d  _WORKING_SET_NAM
3ed0: 45 20 20 20 3d 20 22 53 65 49 6e 63 72 65 61 73  E   = "SeIncreas
3ee0: 65 57 6f 72 6b 69 6e 67 53 65 74 50 72 69 76 69  eWorkingSetPrivi
3ef0: 6c 65 67 65 22 2c 0d 0a 09 53 45 5f 54 49 4d 45  lege",...SE_TIME
3f00: 5f 5a 4f 4e 45 5f 4e 41 4d 45 20 20 20 20 20 20  _ZONE_NAME      
3f10: 20 20 20 20 20 20 20 20 3d 20 22 53 65 54 69 6d          = "SeTim
3f20: 65 5a 6f 6e 65 50 72 69 76 69 6c 65 67 65 22 2c  eZonePrivilege",
3f30: 0d 0a 09 53 45 5f 43 52 45 41 54 45 5f 53 59 4d  ...SE_CREATE_SYM
3f40: 42 4f 4c 49 43 5f 4c 49 4e 4b 5f 4e 41 4d 45 20  BOLIC_LINK_NAME 
3f50: 20 20 3d 20 22 53 65 43 72 65 61 74 65 53 79 6d    = "SeCreateSym
3f60: 62 6f 6c 69 63 4c 69 6e 6b 50 72 69 76 69 6c 65  bolicLinkPrivile
3f70: 67 65 22 3b 0d 0a 0d 0a 63 6f 6e 73 74 20 44 57  ge";....const DW
3f80: 4f 52 44 0d 0a 09 53 45 5f 47 52 4f 55 50 5f 4d  ORD...SE_GROUP_M
3f90: 41 4e 44 41 54 4f 52 59 20 20 20 20 20 20 20 20  ANDATORY        
3fa0: 20 20 3d 20 30 78 30 30 30 30 30 30 30 31 2c 0d    = 0x00000001,.
3fb0: 0a 09 53 45 5f 47 52 4f 55 50 5f 45 4e 41 42 4c  ..SE_GROUP_ENABL
3fc0: 45 44 5f 42 59 5f 44 45 46 41 55 4c 54 20 3d 20  ED_BY_DEFAULT = 
3fd0: 30 78 30 30 30 30 30 30 30 32 2c 0d 0a 09 53 45  0x00000002,...SE
3fe0: 5f 47 52 4f 55 50 5f 45 4e 41 42 4c 45 44 20 20  _GROUP_ENABLED  
3ff0: 20 20 20 20 20 20 20 20 20 20 3d 20 30 78 30 30            = 0x00
4000: 30 30 30 30 30 34 2c 0d 0a 09 53 45 5f 47 52 4f  000004,...SE_GRO
4010: 55 50 5f 4f 57 4e 45 52 20 20 20 20 20 20 20 20  UP_OWNER        
4020: 20 20 20 20 20 20 3d 20 30 78 30 30 30 30 30 30        = 0x000000
4030: 30 38 2c 0d 0a 09 53 45 5f 47 52 4f 55 50 5f 55  08,...SE_GROUP_U
4040: 53 45 5f 46 4f 52 5f 44 45 4e 59 5f 4f 4e 4c 59  SE_FOR_DENY_ONLY
4050: 20 20 3d 20 30 78 30 30 30 30 30 30 31 30 2c 0d    = 0x00000010,.
4060: 0a 09 53 45 5f 47 52 4f 55 50 5f 49 4e 54 45 47  ..SE_GROUP_INTEG
4070: 52 49 54 59 20 20 20 20 20 20 20 20 20 20 3d 20  RITY          = 
4080: 30 78 30 30 30 30 30 30 32 30 2c 0d 0a 09 53 45  0x00000020,...SE
4090: 5f 47 52 4f 55 50 5f 49 4e 54 45 47 52 49 54 59  _GROUP_INTEGRITY
40a0: 5f 45 4e 41 42 4c 45 44 20 20 3d 20 30 78 30 30  _ENABLED  = 0x00
40b0: 30 30 30 30 34 30 2c 0d 0a 09 53 45 5f 47 52 4f  000040,...SE_GRO
40c0: 55 50 5f 52 45 53 4f 55 52 43 45 20 20 20 20 20  UP_RESOURCE     
40d0: 20 20 20 20 20 20 3d 20 30 78 32 30 30 30 30 30        = 0x200000
40e0: 30 30 2c 0d 0a 09 53 45 5f 47 52 4f 55 50 5f 4c  00,...SE_GROUP_L
40f0: 4f 47 4f 4e 5f 49 44 20 20 20 20 20 20 20 20 20  OGON_ID         
4100: 20 20 3d 20 30 78 43 30 30 30 30 30 30 30 3b 0d    = 0xC0000000;.
4110: 0a 0d 0a 2f 2f 20 50 72 69 6d 61 72 79 20 6c 61  ...// Primary la
4120: 6e 67 75 61 67 65 20 69 64 65 6e 74 69 66 69 65  nguage identifie
4130: 72 73 0d 0a 65 6e 75 6d 20 3a 20 55 53 48 4f 52  rs..enum : USHOR
4140: 54 20 7b 0d 0a 09 4c 41 4e 47 5f 4e 45 55 54 52  T {...LANG_NEUTR
4150: 41 4c 2c 0d 0a 09 4c 41 4e 47 5f 41 52 41 42 49  AL,...LANG_ARABI
4160: 43 2c 0d 0a 09 4c 41 4e 47 5f 42 55 4c 47 41 52  C,...LANG_BULGAR
4170: 49 41 4e 2c 0d 0a 09 4c 41 4e 47 5f 43 41 54 41  IAN,...LANG_CATA
4180: 4c 41 4e 2c 0d 0a 09 4c 41 4e 47 5f 43 48 49 4e  LAN,...LANG_CHIN
4190: 45 53 45 2c 0d 0a 09 4c 41 4e 47 5f 43 5a 45 43  ESE,...LANG_CZEC
41a0: 48 2c 0d 0a 09 4c 41 4e 47 5f 44 41 4e 49 53 48  H,...LANG_DANISH
41b0: 2c 0d 0a 09 4c 41 4e 47 5f 47 45 52 4d 41 4e 2c  ,...LANG_GERMAN,
41c0: 0d 0a 09 4c 41 4e 47 5f 47 52 45 45 4b 2c 0d 0a  ...LANG_GREEK,..
41d0: 09 4c 41 4e 47 5f 45 4e 47 4c 49 53 48 2c 0d 0a  .LANG_ENGLISH,..
41e0: 09 4c 41 4e 47 5f 53 50 41 4e 49 53 48 2c 0d 0a  .LANG_SPANISH,..
41f0: 09 4c 41 4e 47 5f 46 49 4e 4e 49 53 48 2c 0d 0a  .LANG_FINNISH,..
4200: 09 4c 41 4e 47 5f 46 52 45 4e 43 48 2c 0d 0a 09  .LANG_FRENCH,...
4210: 4c 41 4e 47 5f 48 45 42 52 45 57 2c 0d 0a 09 4c  LANG_HEBREW,...L
4220: 41 4e 47 5f 48 55 4e 47 41 52 49 41 4e 2c 0d 0a  ANG_HUNGARIAN,..
4230: 09 4c 41 4e 47 5f 49 43 45 4c 41 4e 44 49 43 2c  .LANG_ICELANDIC,
4240: 0d 0a 09 4c 41 4e 47 5f 49 54 41 4c 49 41 4e 2c  ...LANG_ITALIAN,
4250: 0d 0a 09 4c 41 4e 47 5f 4a 41 50 41 4e 45 53 45  ...LANG_JAPANESE
4260: 2c 0d 0a 09 4c 41 4e 47 5f 4b 4f 52 45 41 4e 2c  ,...LANG_KOREAN,
4270: 0d 0a 09 4c 41 4e 47 5f 44 55 54 43 48 2c 0d 0a  ...LANG_DUTCH,..
4280: 09 4c 41 4e 47 5f 4e 4f 52 57 45 47 49 41 4e 2c  .LANG_NORWEGIAN,
4290: 0d 0a 09 4c 41 4e 47 5f 50 4f 4c 49 53 48 2c 0d  ...LANG_POLISH,.
42a0: 0a 09 4c 41 4e 47 5f 50 4f 52 54 55 47 55 45 53  ..LANG_PORTUGUES
42b0: 45 2c 20 20 20 20 2f 2f 20 3d 20 30 78 31 36 0d  E,    // = 0x16.
42c0: 0a 09 4c 41 4e 47 5f 52 4f 4d 41 4e 49 41 4e 20  ..LANG_ROMANIAN 
42d0: 20 20 20 20 20 20 20 20 20 3d 20 30 78 31 38 2c           = 0x18,
42e0: 0d 0a 09 4c 41 4e 47 5f 52 55 53 53 49 41 4e 2c  ...LANG_RUSSIAN,
42f0: 0d 0a 09 4c 41 4e 47 5f 43 52 4f 41 54 49 41 4e  ...LANG_CROATIAN
4300: 2c 20 20 20 20 20 20 2f 2f 20 3d 20 30 78 31 41  ,      // = 0x1A
4310: 0d 0a 09 4c 41 4e 47 5f 53 45 52 42 49 41 4e 20  ...LANG_SERBIAN 
4320: 20 20 20 20 20 20 20 20 20 20 3d 20 30 78 31 41            = 0x1A
4330: 2c 0d 0a 09 4c 41 4e 47 5f 42 4f 53 4e 49 41 4e  ,...LANG_BOSNIAN
4340: 20 20 20 20 20 20 20 20 20 20 20 3d 20 30 78 31             = 0x1
4350: 41 2c 0d 0a 09 4c 41 4e 47 5f 53 4c 4f 56 41 4b  A,...LANG_SLOVAK
4360: 2c 0d 0a 09 4c 41 4e 47 5f 41 4c 42 41 4e 49 41  ,...LANG_ALBANIA
4370: 4e 2c 0d 0a 09 4c 41 4e 47 5f 53 57 45 44 49 53  N,...LANG_SWEDIS
4380: 48 2c 0d 0a 09 4c 41 4e 47 5f 54 48 41 49 2c 0d  H,...LANG_THAI,.
4390: 0a 09 4c 41 4e 47 5f 54 55 52 4b 49 53 48 2c 0d  ..LANG_TURKISH,.
43a0: 0a 09 4c 41 4e 47 5f 55 52 44 55 2c 0d 0a 09 4c  ..LANG_URDU,...L
43b0: 41 4e 47 5f 49 4e 44 4f 4e 45 53 49 41 4e 2c 0d  ANG_INDONESIAN,.
43c0: 0a 09 4c 41 4e 47 5f 55 4b 52 41 49 4e 49 41 4e  ..LANG_UKRAINIAN
43d0: 2c 0d 0a 09 4c 41 4e 47 5f 42 45 4c 41 52 55 53  ,...LANG_BELARUS
43e0: 49 41 4e 2c 0d 0a 09 4c 41 4e 47 5f 53 4c 4f 56  IAN,...LANG_SLOV
43f0: 45 4e 49 41 4e 2c 0d 0a 09 4c 41 4e 47 5f 45 53  ENIAN,...LANG_ES
4400: 54 4f 4e 49 41 4e 2c 0d 0a 09 4c 41 4e 47 5f 4c  TONIAN,...LANG_L
4410: 41 54 56 49 41 4e 2c 0d 0a 09 4c 41 4e 47 5f 4c  ATVIAN,...LANG_L
4420: 49 54 48 55 41 4e 49 41 4e 2c 20 20 20 20 2f 2f  ITHUANIAN,    //
4430: 20 3d 20 30 78 32 37 0d 0a 09 4c 41 4e 47 5f 46   = 0x27...LANG_F
4440: 41 52 53 49 20 20 20 20 20 20 20 20 20 20 20 20  ARSI            
4450: 20 3d 20 30 78 32 39 2c 0d 0a 09 4c 41 4e 47 5f   = 0x29,...LANG_
4460: 50 45 52 53 49 41 4e 20 20 20 20 20 20 20 20 20  PERSIAN         
4470: 20 20 3d 20 30 78 32 39 2c 0d 0a 09 4c 41 4e 47    = 0x29,...LANG
4480: 5f 56 49 45 54 4e 41 4d 45 53 45 2c 0d 0a 09 4c  _VIETNAMESE,...L
4490: 41 4e 47 5f 41 52 4d 45 4e 49 41 4e 2c 0d 0a 09  ANG_ARMENIAN,...
44a0: 4c 41 4e 47 5f 41 5a 45 52 49 2c 0d 0a 09 4c 41  LANG_AZERI,...LA
44b0: 4e 47 5f 42 41 53 51 55 45 2c 0d 0a 09 4c 41 4e  NG_BASQUE,...LAN
44c0: 47 5f 4c 4f 57 45 52 5f 53 4f 52 42 49 41 4e 2c  G_LOWER_SORBIAN,
44d0: 20 2f 2f 20 3d 20 30 78 32 45 0d 0a 09 4c 41 4e   // = 0x2E...LAN
44e0: 47 5f 55 50 50 45 52 5f 53 4f 52 42 49 41 4e 20  G_UPPER_SORBIAN 
44f0: 20 20 20 20 3d 20 30 78 32 45 2c 0d 0a 09 4c 41      = 0x2E,...LA
4500: 4e 47 5f 4d 41 43 45 44 4f 4e 49 41 4e 2c 20 20  NG_MACEDONIAN,  
4510: 20 20 2f 2f 20 3d 20 30 78 32 46 0d 0a 09 4c 41    // = 0x2F...LA
4520: 4e 47 5f 54 53 57 41 4e 41 20 20 20 20 20 20 20  NG_TSWANA       
4530: 20 20 20 20 20 3d 20 30 78 33 32 2c 0d 0a 09 4c       = 0x32,...L
4540: 41 4e 47 5f 58 48 4f 53 41 20 20 20 20 20 20 20  ANG_XHOSA       
4550: 20 20 20 20 20 20 3d 20 30 78 33 34 2c 0d 0a 09        = 0x34,...
4560: 4c 41 4e 47 5f 5a 55 4c 55 2c 0d 0a 09 4c 41 4e  LANG_ZULU,...LAN
4570: 47 5f 41 46 52 49 4b 41 41 4e 53 2c 0d 0a 09 4c  G_AFRIKAANS,...L
4580: 41 4e 47 5f 47 45 4f 52 47 49 41 4e 2c 0d 0a 09  ANG_GEORGIAN,...
4590: 4c 41 4e 47 5f 46 41 45 52 4f 45 53 45 2c 0d 0a  LANG_FAEROESE,..
45a0: 09 4c 41 4e 47 5f 48 49 4e 44 49 2c 0d 0a 09 4c  .LANG_HINDI,...L
45b0: 41 4e 47 5f 4d 41 4c 54 45 53 45 2c 0d 0a 09 4c  ANG_MALTESE,...L
45c0: 41 4e 47 5f 53 41 4d 49 2c 0d 0a 09 4c 41 4e 47  ANG_SAMI,...LANG
45d0: 5f 49 52 49 53 48 2c 20 20 20 20 20 20 20 20 20  _IRISH,         
45e0: 2f 2f 20 3d 20 30 78 33 43 0d 0a 09 4c 41 4e 47  // = 0x3C...LANG
45f0: 5f 4d 41 4c 41 59 20 20 20 20 20 20 20 20 20 20  _MALAY          
4600: 20 20 20 3d 20 30 78 33 45 2c 0d 0a 09 4c 41 4e     = 0x3E,...LAN
4610: 47 5f 4b 41 5a 41 4b 2c 0d 0a 09 4c 41 4e 47 5f  G_KAZAK,...LANG_
4620: 4b 59 52 47 59 5a 2c 0d 0a 09 4c 41 4e 47 5f 53  KYRGYZ,...LANG_S
4630: 57 41 48 49 4c 49 2c 20 20 20 20 20 20 20 2f 2f  WAHILI,       //
4640: 20 3d 20 30 78 34 31 0d 0a 09 4c 41 4e 47 5f 55   = 0x41...LANG_U
4650: 5a 42 45 4b 20 20 20 20 20 20 20 20 20 20 20 20  ZBEK            
4660: 20 3d 20 30 78 34 33 2c 0d 0a 09 4c 41 4e 47 5f   = 0x43,...LANG_
4670: 54 41 54 41 52 2c 0d 0a 09 4c 41 4e 47 5f 42 45  TATAR,...LANG_BE
4680: 4e 47 41 4c 49 2c 0d 0a 09 4c 41 4e 47 5f 50 55  NGALI,...LANG_PU
4690: 4e 4a 41 42 49 2c 0d 0a 09 4c 41 4e 47 5f 47 55  NJABI,...LANG_GU
46a0: 4a 41 52 41 54 49 2c 0d 0a 09 4c 41 4e 47 5f 4f  JARATI,...LANG_O
46b0: 52 49 59 41 2c 0d 0a 09 4c 41 4e 47 5f 54 41 4d  RIYA,...LANG_TAM
46c0: 49 4c 2c 0d 0a 09 4c 41 4e 47 5f 54 45 4c 55 47  IL,...LANG_TELUG
46d0: 55 2c 0d 0a 09 4c 41 4e 47 5f 4b 41 4e 4e 41 44  U,...LANG_KANNAD
46e0: 41 2c 0d 0a 09 4c 41 4e 47 5f 4d 41 4c 41 59 41  A,...LANG_MALAYA
46f0: 4c 41 4d 2c 0d 0a 09 4c 41 4e 47 5f 41 53 53 41  LAM,...LANG_ASSA
4700: 4d 45 53 45 2c 0d 0a 09 4c 41 4e 47 5f 4d 41 52  MESE,...LANG_MAR
4710: 41 54 48 49 2c 0d 0a 09 4c 41 4e 47 5f 53 41 4e  ATHI,...LANG_SAN
4720: 53 4b 52 49 54 2c 0d 0a 09 4c 41 4e 47 5f 4d 4f  SKRIT,...LANG_MO
4730: 4e 47 4f 4c 49 41 4e 2c 0d 0a 09 4c 41 4e 47 5f  NGOLIAN,...LANG_
4740: 54 49 42 45 54 41 4e 2c 0d 0a 09 4c 41 4e 47 5f  TIBETAN,...LANG_
4750: 57 45 4c 53 48 2c 0d 0a 09 4c 41 4e 47 5f 4b 48  WELSH,...LANG_KH
4760: 4d 45 52 2c 0d 0a 09 4c 41 4e 47 5f 4c 41 4f 2c  MER,...LANG_LAO,
4770: 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 3d 20             // = 
4780: 30 78 35 34 0d 0a 09 4c 41 4e 47 5f 47 41 4c 49  0x54...LANG_GALI
4790: 43 49 41 4e 20 20 20 20 20 20 20 20 20 20 3d 20  CIAN          = 
47a0: 30 78 35 36 2c 0d 0a 09 4c 41 4e 47 5f 4b 4f 4e  0x56,...LANG_KON
47b0: 4b 41 4e 49 2c 0d 0a 09 4c 41 4e 47 5f 4d 41 4e  KANI,...LANG_MAN
47c0: 49 50 55 52 49 2c 0d 0a 09 4c 41 4e 47 5f 53 49  IPURI,...LANG_SI
47d0: 4e 44 48 49 2c 0d 0a 09 4c 41 4e 47 5f 53 59 52  NDHI,...LANG_SYR
47e0: 49 41 43 2c 0d 0a 09 4c 41 4e 47 5f 53 49 4e 48  IAC,...LANG_SINH
47f0: 41 4c 45 53 45 2c 20 20 20 20 20 2f 2f 20 3d 20  ALESE,     // = 
4800: 30 78 35 42 0d 0a 09 4c 41 4e 47 5f 49 4e 55 4b  0x5B...LANG_INUK
4810: 54 49 54 55 54 20 20 20 20 20 20 20 20 20 3d 20  TITUT         = 
4820: 30 78 35 44 2c 0d 0a 09 4c 41 4e 47 5f 41 4d 48  0x5D,...LANG_AMH
4830: 41 52 49 43 2c 0d 0a 09 4c 41 4e 47 5f 54 41 4d  ARIC,...LANG_TAM
4840: 41 5a 49 47 48 54 2c 0d 0a 09 4c 41 4e 47 5f 4b  AZIGHT,...LANG_K
4850: 41 53 48 4d 49 52 49 2c 0d 0a 09 4c 41 4e 47 5f  ASHMIRI,...LANG_
4860: 4e 45 50 41 4c 49 2c 0d 0a 09 4c 41 4e 47 5f 46  NEPALI,...LANG_F
4870: 52 49 53 49 41 4e 2c 0d 0a 09 4c 41 4e 47 5f 50  RISIAN,...LANG_P
4880: 41 53 48 54 4f 2c 0d 0a 09 4c 41 4e 47 5f 46 49  ASHTO,...LANG_FI
4890: 4c 49 50 49 4e 4f 2c 0d 0a 09 4c 41 4e 47 5f 44  LIPINO,...LANG_D
48a0: 49 56 45 48 49 2c 20 20 20 20 20 20 20 20 2f 2f  IVEHI,        //
48b0: 20 3d 20 30 78 36 35 0d 0a 09 4c 41 4e 47 5f 48   = 0x65...LANG_H
48c0: 41 55 53 41 20 20 20 20 20 20 20 20 20 20 20 20  AUSA            
48d0: 20 3d 20 30 78 36 38 2c 0d 0a 09 4c 41 4e 47 5f   = 0x68,...LANG_
48e0: 59 4f 52 55 42 41 20 20 20 20 20 20 20 20 20 20  YORUBA          
48f0: 20 20 3d 20 30 78 36 41 2c 0d 0a 09 4c 41 4e 47    = 0x6A,...LANG
4900: 5f 51 55 45 43 48 55 41 2c 0d 0a 09 4c 41 4e 47  _QUECHUA,...LANG
4910: 5f 53 4f 54 48 4f 2c 0d 0a 09 4c 41 4e 47 5f 42  _SOTHO,...LANG_B
4920: 41 53 48 4b 49 52 2c 0d 0a 09 4c 41 4e 47 5f 4c  ASHKIR,...LANG_L
4930: 55 58 45 4d 42 4f 55 52 47 49 53 48 2c 0d 0a 09  UXEMBOURGISH,...
4940: 4c 41 4e 47 5f 47 52 45 45 4e 4c 41 4e 44 49 43  LANG_GREENLANDIC
4950: 2c 0d 0a 09 4c 41 4e 47 5f 49 47 42 4f 2c 20 20  ,...LANG_IGBO,  
4960: 20 20 20 20 20 20 20 20 2f 2f 20 3d 20 30 78 37          // = 0x7
4970: 30 0d 0a 09 4c 41 4e 47 5f 54 49 47 52 49 47 4e  0...LANG_TIGRIGN
4980: 41 20 20 20 20 20 20 20 20 20 20 3d 20 30 78 37  A          = 0x7
4990: 33 2c 0d 0a 09 4c 41 4e 47 5f 59 49 20 20 20 20  3,...LANG_YI    
49a0: 20 20 20 20 20 20 20 20 20 20 20 20 3d 20 30 78              = 0x
49b0: 37 38 2c 0d 0a 09 4c 41 4e 47 5f 4d 41 50 55 44  78,...LANG_MAPUD
49c0: 55 4e 47 55 4e 20 20 20 20 20 20 20 20 3d 20 30  UNGUN        = 0
49d0: 78 37 41 2c 0d 0a 09 4c 41 4e 47 5f 4d 4f 48 41  x7A,...LANG_MOHA
49e0: 57 4b 20 20 20 20 20 20 20 20 20 20 20 20 3d 20  WK            = 
49f0: 30 78 37 43 2c 0d 0a 09 4c 41 4e 47 5f 42 52 45  0x7C,...LANG_BRE
4a00: 54 4f 4e 20 20 20 20 20 20 20 20 20 20 20 20 3d  TON            =
4a10: 20 30 78 37 45 2c 0d 0a 09 4c 41 4e 47 5f 55 49   0x7E,...LANG_UI
4a20: 47 48 55 52 20 20 20 20 20 20 20 20 20 20 20 20  GHUR            
4a30: 3d 20 30 78 38 30 2c 0d 0a 09 4c 41 4e 47 5f 4d  = 0x80,...LANG_M
4a40: 41 4f 52 49 2c 0d 0a 09 4c 41 4e 47 5f 4f 43 43  AORI,...LANG_OCC
4a50: 49 54 41 4e 2c 0d 0a 09 4c 41 4e 47 5f 43 4f 52  ITAN,...LANG_COR
4a60: 53 49 43 41 4e 2c 0d 0a 09 4c 41 4e 47 5f 41 4c  SICAN,...LANG_AL
4a70: 53 41 54 49 41 4e 2c 0d 0a 09 4c 41 4e 47 5f 59  SATIAN,...LANG_Y
4a80: 41 4b 55 54 2c 0d 0a 09 4c 41 4e 47 5f 4b 49 43  AKUT,...LANG_KIC
4a90: 48 45 2c 0d 0a 09 4c 41 4e 47 5f 4b 49 4e 59 41  HE,...LANG_KINYA
4aa0: 52 57 41 4e 44 41 2c 0d 0a 09 4c 41 4e 47 5f 57  RWANDA,...LANG_W
4ab0: 4f 4c 4f 46 2c 20 20 20 20 20 20 20 20 20 2f 2f  OLOF,         //
4ac0: 20 3d 20 30 78 38 38 0d 0a 09 4c 41 4e 47 5f 44   = 0x88...LANG_D
4ad0: 41 52 49 20 20 20 20 20 20 20 20 20 20 20 20 20  ARI             
4ae0: 20 3d 20 30 78 38 43 2c 0d 0a 09 4c 41 4e 47 5f   = 0x8C,...LANG_
4af0: 4d 41 4c 41 47 41 53 59 2c 20 20 20 20 20 20 2f  MALAGASY,      /
4b00: 2f 20 3d 20 30 78 38 44 0d 0a 0d 0a 09 4c 41 4e  / = 0x8D.....LAN
4b10: 47 5f 53 45 52 42 49 41 4e 5f 4e 45 55 54 52 41  G_SERBIAN_NEUTRA
4b20: 4c 20 20 20 3d 20 30 78 37 43 31 41 2c 0d 0a 09  L   = 0x7C1A,...
4b30: 4c 41 4e 47 5f 42 4f 53 4e 49 41 4e 5f 4e 45 55  LANG_BOSNIAN_NEU
4b40: 54 52 41 4c 20 20 20 3d 20 30 78 37 38 31 41 2c  TRAL   = 0x781A,
4b50: 0d 0a 0d 0a 09 4c 41 4e 47 5f 49 4e 56 41 52 49  .....LANG_INVARI
4b60: 41 4e 54 20 20 20 20 20 20 20 20 20 3d 20 30 78  ANT         = 0x
4b70: 37 46 0d 0a 7d 0d 0a 0d 0a 0d 0a 2f 2f 20 53 75  7F..}......// Su
4b80: 62 6c 61 6e 67 75 61 67 65 20 69 64 65 6e 74 69  blanguage identi
4b90: 66 69 65 72 73 0d 0a 65 6e 75 6d 20 3a 20 55 53  fiers..enum : US
4ba0: 48 4f 52 54 20 7b 0d 0a 09 53 55 42 4c 41 4e 47  HORT {...SUBLANG
4bb0: 5f 4e 45 55 54 52 41 4c 2c 0d 0a 09 53 55 42 4c  _NEUTRAL,...SUBL
4bc0: 41 4e 47 5f 44 45 46 41 55 4c 54 2c 0d 0a 09 53  ANG_DEFAULT,...S
4bd0: 55 42 4c 41 4e 47 5f 53 59 53 5f 44 45 46 41 55  UBLANG_SYS_DEFAU
4be0: 4c 54 2c 0d 0a 09 53 55 42 4c 41 4e 47 5f 43 55  LT,...SUBLANG_CU
4bf0: 53 54 4f 4d 5f 44 45 46 41 55 4c 54 2c 20 20 20  STOM_DEFAULT,   
4c00: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f                 /
4c10: 2f 20 3d 20 20 33 0d 0a 09 53 55 42 4c 41 4e 47  / =  3...SUBLANG
4c20: 5f 55 49 5f 43 55 53 54 4f 4d 5f 44 45 46 41 55  _UI_CUSTOM_DEFAU
4c30: 4c 54 20 20 20 20 20 20 20 20 20 20 20 20 20 20  LT              
4c40: 20 20 20 20 20 3d 20 20 33 2c 0d 0a 09 53 55 42       =  3,...SUB
4c50: 4c 41 4e 47 5f 43 55 53 54 4f 4d 5f 55 4e 53 50  LANG_CUSTOM_UNSP
4c60: 45 43 49 46 49 45 44 2c 20 20 20 20 20 20 20 20  ECIFIED,        
4c70: 20 20 20 20 20 20 2f 2f 20 3d 20 20 34 0d 0a 0d        // =  4...
4c80: 0a 09 53 55 42 4c 41 4e 47 5f 41 46 52 49 4b 41  ..SUBLANG_AFRIKA
4c90: 41 4e 53 5f 53 4f 55 54 48 5f 41 46 52 49 43 41  ANS_SOUTH_AFRICA
4ca0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3d 20                = 
4cb0: 20 31 2c 0d 0a 09 53 55 42 4c 41 4e 47 5f 41 4c   1,...SUBLANG_AL
4cc0: 42 41 4e 49 41 4e 5f 41 4c 42 41 4e 49 41 20 20  BANIAN_ALBANIA  
4cd0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
4ce0: 20 20 3d 20 20 31 2c 0d 0a 09 53 55 42 4c 41 4e    =  1,...SUBLAN
4cf0: 47 5f 41 4c 53 41 54 49 41 4e 5f 46 52 41 4e 43  G_ALSATIAN_FRANC
4d00: 45 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  E               
4d10: 20 20 20 20 20 20 3d 20 20 31 2c 0d 0a 09 53 55        =  1,...SU
4d20: 42 4c 41 4e 47 5f 41 4d 48 41 52 49 43 5f 45 54  BLANG_AMHARIC_ET
4d30: 48 49 4f 50 49 41 20 20 20 20 20 20 20 20 20 20  HIOPIA          
4d40: 20 20 20 20 20 20 20 20 20 20 3d 20 20 31 2c 0d            =  1,.
4d50: 0a 0d 0a 09 53 55 42 4c 41 4e 47 5f 41 52 41 42  ....SUBLANG_ARAB
4d60: 49 43 5f 53 41 55 44 49 5f 41 52 41 42 49 41 20  IC_SAUDI_ARABIA 
4d70: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
4d80: 3d 20 20 31 2c 0d 0a 09 53 55 42 4c 41 4e 47 5f  =  1,...SUBLANG_
4d90: 41 52 41 42 49 43 5f 49 52 41 51 2c 0d 0a 09 53  ARABIC_IRAQ,...S
4da0: 55 42 4c 41 4e 47 5f 41 52 41 42 49 43 5f 45 47  UBLANG_ARABIC_EG
4db0: 59 50 54 2c 0d 0a 09 53 55 42 4c 41 4e 47 5f 41  YPT,...SUBLANG_A
4dc0: 52 41 42 49 43 5f 4c 49 42 59 41 2c 0d 0a 09 53  RABIC_LIBYA,...S
4dd0: 55 42 4c 41 4e 47 5f 41 52 41 42 49 43 5f 41 4c  UBLANG_ARABIC_AL
4de0: 47 45 52 49 41 2c 0d 0a 09 53 55 42 4c 41 4e 47  GERIA,...SUBLANG
4df0: 5f 41 52 41 42 49 43 5f 4d 4f 52 4f 43 43 4f 2c  _ARABIC_MOROCCO,
4e00: 0d 0a 09 53 55 42 4c 41 4e 47 5f 41 52 41 42 49  ...SUBLANG_ARABI
4e10: 43 5f 54 55 4e 49 53 49 41 2c 0d 0a 09 53 55 42  C_TUNISIA,...SUB
4e20: 4c 41 4e 47 5f 41 52 41 42 49 43 5f 4f 4d 41 4e  LANG_ARABIC_OMAN
4e30: 2c 0d 0a 09 53 55 42 4c 41 4e 47 5f 41 52 41 42  ,...SUBLANG_ARAB
4e40: 49 43 5f 59 45 4d 45 4e 2c 0d 0a 09 53 55 42 4c  IC_YEMEN,...SUBL
4e50: 41 4e 47 5f 41 52 41 42 49 43 5f 53 59 52 49 41  ANG_ARABIC_SYRIA
4e60: 2c 0d 0a 09 53 55 42 4c 41 4e 47 5f 41 52 41 42  ,...SUBLANG_ARAB
4e70: 49 43 5f 4a 4f 52 44 41 4e 2c 0d 0a 09 53 55 42  IC_JORDAN,...SUB
4e80: 4c 41 4e 47 5f 41 52 41 42 49 43 5f 4c 45 42 41  LANG_ARABIC_LEBA
4e90: 4e 4f 4e 2c 0d 0a 09 53 55 42 4c 41 4e 47 5f 41  NON,...SUBLANG_A
4ea0: 52 41 42 49 43 5f 4b 55 57 41 49 54 2c 0d 0a 09  RABIC_KUWAIT,...
4eb0: 53 55 42 4c 41 4e 47 5f 41 52 41 42 49 43 5f 55  SUBLANG_ARABIC_U
4ec0: 41 45 2c 0d 0a 09 53 55 42 4c 41 4e 47 5f 41 52  AE,...SUBLANG_AR
4ed0: 41 42 49 43 5f 42 41 48 52 41 49 4e 2c 0d 0a 09  ABIC_BAHRAIN,...
4ee0: 53 55 42 4c 41 4e 47 5f 41 52 41 42 49 43 5f 51  SUBLANG_ARABIC_Q
4ef0: 41 54 41 52 2c 20 20 20 20 20 20 20 20 20 20 20  ATAR,           
4f00: 20 20 20 20 20 20 20 20 20 2f 2f 20 3d 20 31 36           // = 16
4f10: 0d 0a 0d 0a 09 53 55 42 4c 41 4e 47 5f 41 52 4d  .....SUBLANG_ARM
4f20: 45 4e 49 41 4e 5f 41 52 4d 45 4e 49 41 20 20 20  ENIAN_ARMENIA   
4f30: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
4f40: 20 3d 20 20 31 2c 0d 0a 09 53 55 42 4c 41 4e 47   =  1,...SUBLANG
4f50: 5f 41 53 53 41 4d 45 53 45 5f 49 4e 44 49 41 20  _ASSAMESE_INDIA 
4f60: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
4f70: 20 20 20 20 20 3d 20 20 31 2c 0d 0a 0d 0a 09 53       =  1,.....S
4f80: 55 42 4c 41 4e 47 5f 41 5a 45 52 49 5f 4c 41 54  UBLANG_AZERI_LAT
4f90: 49 4e 20 20 20 20 20 20 20 20 20 20 20 20 20 20  IN              
4fa0: 20 20 20 20 20 20 20 20 20 20 20 3d 20 20 31 2c             =  1,
4fb0: 0d 0a 09 53 55 42 4c 41 4e 47 5f 41 5a 45 52 49  ...SUBLANG_AZERI
4fc0: 5f 43 59 52 49 4c 4c 49 43 2c 20 20 20 20 20 20  _CYRILLIC,      
4fd0: 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 3d              // =
4fe0: 20 20 32 0d 0a 0d 0a 09 53 55 42 4c 41 4e 47 5f    2.....SUBLANG_
4ff0: 42 41 53 48 4b 49 52 5f 52 55 53 53 49 41 20 20  BASHKIR_RUSSIA  
5000: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
5010: 20 20 20 20 3d 20 20 31 2c 0d 0a 09 53 55 42 4c      =  1,...SUBL
5020: 41 4e 47 5f 42 41 53 51 55 45 5f 42 41 53 51 55  ANG_BASQUE_BASQU
5030: 45 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  E               
5040: 20 20 20 20 20 20 20 20 3d 20 20 31 2c 0d 0a 09          =  1,...
5050: 53 55 42 4c 41 4e 47 5f 42 45 4c 41 52 55 53 49  SUBLANG_BELARUSI
5060: 41 4e 5f 42 45 4c 41 52 55 53 20 20 20 20 20 20  AN_BELARUS      
5070: 20 20 20 20 20 20 20 20 20 20 20 20 3d 20 20 31              =  1
5080: 2c 0d 0a 09 53 55 42 4c 41 4e 47 5f 42 45 4e 47  ,...SUBLANG_BENG
5090: 41 4c 49 5f 49 4e 44 49 41 20 20 20 20 20 20 20  ALI_INDIA       
50a0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
50b0: 3d 20 20 31 2c 0d 0a 0d 0a 09 53 55 42 4c 41 4e  =  1,.....SUBLAN
50c0: 47 5f 42 4f 53 4e 49 41 4e 5f 42 4f 53 4e 49 41  G_BOSNIAN_BOSNIA
50d0: 5f 48 45 52 5a 45 47 4f 56 49 4e 41 5f 4c 41 54  _HERZEGOVINA_LAT
50e0: 49 4e 20 20 20 20 3d 20 20 35 2c 0d 0a 09 53 55  IN    =  5,...SU
50f0: 42 4c 41 4e 47 5f 42 4f 53 4e 49 41 4e 5f 42 4f  BLANG_BOSNIAN_BO
5100: 53 4e 49 41 5f 48 45 52 5a 45 47 4f 56 49 4e 41  SNIA_HERZEGOVINA
5110: 5f 43 59 52 49 4c 4c 49 43 20 3d 20 20 38 2c 0d  _CYRILLIC =  8,.
5120: 0a 0d 0a 09 53 55 42 4c 41 4e 47 5f 42 52 45 54  ....SUBLANG_BRET
5130: 4f 4e 5f 46 52 41 4e 43 45 20 20 20 20 20 20 20  ON_FRANCE       
5140: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
5150: 3d 20 20 31 2c 0d 0a 09 53 55 42 4c 41 4e 47 5f  =  1,...SUBLANG_
5160: 42 55 4c 47 41 52 49 41 4e 5f 42 55 4c 47 41 52  BULGARIAN_BULGAR
5170: 49 41 20 20 20 20 20 20 20 20 20 20 20 20 20 20  IA              
5180: 20 20 20 20 3d 20 20 31 2c 0d 0a 09 53 55 42 4c      =  1,...SUBL
5190: 41 4e 47 5f 43 41 54 41 4c 41 4e 5f 43 41 54 41  ANG_CATALAN_CATA
51a0: 4c 41 4e 20 20 20 20 20 20 20 20 20 20 20 20 20  LAN             
51b0: 20 20 20 20 20 20 20 20 3d 20 20 31 2c 0d 0a 0d          =  1,...
51c0: 0a 09 53 55 42 4c 41 4e 47 5f 43 48 49 4e 45 53  ..SUBLANG_CHINES
51d0: 45 5f 54 52 41 44 49 54 49 4f 4e 41 4c 20 20 20  E_TRADITIONAL   
51e0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3d 20                = 
51f0: 20 31 2c 0d 0a 09 53 55 42 4c 41 4e 47 5f 43 48   1,...SUBLANG_CH
5200: 49 4e 45 53 45 5f 53 49 4d 50 4c 49 46 49 45 44  INESE_SIMPLIFIED
5210: 2c 0d 0a 09 53 55 42 4c 41 4e 47 5f 43 48 49 4e  ,...SUBLANG_CHIN
5220: 45 53 45 5f 48 4f 4e 47 4b 4f 4e 47 2c 0d 0a 09  ESE_HONGKONG,...
5230: 53 55 42 4c 41 4e 47 5f 43 48 49 4e 45 53 45 5f  SUBLANG_CHINESE_
5240: 53 49 4e 47 41 50 4f 52 45 2c 0d 0a 09 53 55 42  SINGAPORE,...SUB
5250: 4c 41 4e 47 5f 43 48 49 4e 45 53 45 5f 4d 41 43  LANG_CHINESE_MAC
5260: 41 55 2c 20 20 20 20 20 20 20 20 20 20 20 20 20  AU,             
5270: 20 20 20 20 20 20 2f 2f 20 3d 20 20 35 0d 0a 0d        // =  5...
5280: 0a 09 53 55 42 4c 41 4e 47 5f 43 4f 52 53 49 43  ..SUBLANG_CORSIC
5290: 41 4e 5f 46 52 41 4e 43 45 20 20 20 20 20 20 20  AN_FRANCE       
52a0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3d 20                = 
52b0: 20 31 2c 0d 0a 0d 0a 09 53 55 42 4c 41 4e 47 5f   1,.....SUBLANG_
52c0: 43 52 4f 41 54 49 41 4e 5f 43 52 4f 41 54 49 41  CROATIAN_CROATIA
52d0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
52e0: 20 20 20 20 3d 20 20 31 2c 0d 0a 09 53 55 42 4c      =  1,...SUBL
52f0: 41 4e 47 5f 43 52 4f 41 54 49 41 4e 5f 42 4f 53  ANG_CROATIAN_BOS
5300: 4e 49 41 5f 48 45 52 5a 45 47 4f 56 49 4e 41 5f  NIA_HERZEGOVINA_
5310: 4c 41 54 49 4e 20 20 20 3d 20 20 34 2c 0d 0a 0d  LATIN   =  4,...
5320: 0a 09 53 55 42 4c 41 4e 47 5f 43 5a 45 43 48 5f  ..SUBLANG_CZECH_
5330: 43 5a 45 43 48 5f 52 45 50 55 42 4c 49 43 20 20  CZECH_REPUBLIC  
5340: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3d 20                = 
5350: 20 31 2c 0d 0a 09 53 55 42 4c 41 4e 47 5f 44 41   1,...SUBLANG_DA
5360: 4e 49 53 48 5f 44 45 4e 4d 41 52 4b 20 20 20 20  NISH_DENMARK    
5370: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
5380: 20 20 3d 20 20 31 2c 0d 0a 09 53 55 42 4c 41 4e    =  1,...SUBLAN
5390: 47 5f 44 49 56 45 48 49 5f 4d 41 4c 44 49 56 45  G_DIVEHI_MALDIVE
53a0: 53 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  S               
53b0: 20 20 20 20 20 20 3d 20 20 31 2c 0d 0a 0d 0a 09        =  1,.....
53c0: 53 55 42 4c 41 4e 47 5f 44 55 54 43 48 20 20 20  SUBLANG_DUTCH   
53d0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
53e0: 20 20 20 20 20 20 20 20 20 20 20 20 3d 20 20 31              =  1
53f0: 2c 0d 0a 09 53 55 42 4c 41 4e 47 5f 44 55 54 43  ,...SUBLANG_DUTC
5400: 48 5f 42 45 4c 47 49 41 4e 2c 20 20 20 20 20 20  H_BELGIAN,      
5410: 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20               // 
5420: 3d 20 20 32 0d 0a 0d 0a 09 53 55 42 4c 41 4e 47  =  2.....SUBLANG
5430: 5f 45 4e 47 4c 49 53 48 5f 55 53 20 20 20 20 20  _ENGLISH_US     
5440: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
5450: 20 20 20 20 20 3d 20 20 31 2c 0d 0a 09 53 55 42       =  1,...SUB
5460: 4c 41 4e 47 5f 45 4e 47 4c 49 53 48 5f 55 4b 2c  LANG_ENGLISH_UK,
5470: 0d 0a 09 53 55 42 4c 41 4e 47 5f 45 4e 47 4c 49  ...SUBLANG_ENGLI
5480: 53 48 5f 41 55 53 2c 0d 0a 09 53 55 42 4c 41 4e  SH_AUS,...SUBLAN
5490: 47 5f 45 4e 47 4c 49 53 48 5f 43 41 4e 2c 0d 0a  G_ENGLISH_CAN,..
54a0: 09 53 55 42 4c 41 4e 47 5f 45 4e 47 4c 49 53 48  .SUBLANG_ENGLISH
54b0: 5f 4e 5a 2c 0d 0a 09 53 55 42 4c 41 4e 47 5f 45  _NZ,...SUBLANG_E
54c0: 4e 47 4c 49 53 48 5f 45 49 52 45 2c 20 20 20 20  NGLISH_EIRE,    
54d0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
54e0: 2f 2f 20 3d 20 20 36 0d 0a 09 53 55 42 4c 41 4e  // =  6...SUBLAN
54f0: 47 5f 45 4e 47 4c 49 53 48 5f 49 52 45 4c 41 4e  G_ENGLISH_IRELAN
5500: 44 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  D               
5510: 20 20 20 20 20 20 3d 20 20 36 2c 0d 0a 09 53 55        =  6,...SU
5520: 42 4c 41 4e 47 5f 45 4e 47 4c 49 53 48 5f 53 4f  BLANG_ENGLISH_SO
5530: 55 54 48 5f 41 46 52 49 43 41 2c 0d 0a 09 53 55  UTH_AFRICA,...SU
5540: 42 4c 41 4e 47 5f 45 4e 47 4c 49 53 48 5f 4a 41  BLANG_ENGLISH_JA
5550: 4d 41 49 43 41 2c 0d 0a 09 53 55 42 4c 41 4e 47  MAICA,...SUBLANG
5560: 5f 45 4e 47 4c 49 53 48 5f 43 41 52 49 42 42 45  _ENGLISH_CARIBBE
5570: 41 4e 2c 0d 0a 09 53 55 42 4c 41 4e 47 5f 45 4e  AN,...SUBLANG_EN
5580: 47 4c 49 53 48 5f 42 45 4c 49 5a 45 2c 0d 0a 09  GLISH_BELIZE,...
5590: 53 55 42 4c 41 4e 47 5f 45 4e 47 4c 49 53 48 5f  SUBLANG_ENGLISH_
55a0: 54 52 49 4e 49 44 41 44 2c 0d 0a 09 53 55 42 4c  TRINIDAD,...SUBL
55b0: 41 4e 47 5f 45 4e 47 4c 49 53 48 5f 5a 49 4d 42  ANG_ENGLISH_ZIMB
55c0: 41 42 57 45 2c 0d 0a 09 53 55 42 4c 41 4e 47 5f  ABWE,...SUBLANG_
55d0: 45 4e 47 4c 49 53 48 5f 50 48 49 4c 49 50 50 49  ENGLISH_PHILIPPI
55e0: 4e 45 53 2c 20 20 20 20 20 20 20 20 20 20 20 20  NES,            
55f0: 20 2f 2f 20 3d 20 31 33 0d 0a 09 53 55 42 4c 41   // = 13...SUBLA
5600: 4e 47 5f 45 4e 47 4c 49 53 48 5f 49 4e 44 49 41  NG_ENGLISH_INDIA
5610: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
5620: 20 20 20 20 20 20 20 3d 20 31 36 2c 0d 0a 09 53         = 16,...S
5630: 55 42 4c 41 4e 47 5f 45 4e 47 4c 49 53 48 5f 4d  UBLANG_ENGLISH_M
5640: 41 4c 41 59 53 49 41 2c 0d 0a 09 53 55 42 4c 41  ALAYSIA,...SUBLA
5650: 4e 47 5f 45 4e 47 4c 49 53 48 5f 53 49 4e 47 41  NG_ENGLISH_SINGA
5660: 50 4f 52 45 2c 20 20 20 20 20 20 20 20 20 20 20  PORE,           
5670: 20 20 20 20 2f 2f 20 3d 20 31 38 0d 0a 0d 0a 09      // = 18.....
5680: 53 55 42 4c 41 4e 47 5f 45 53 54 4f 4e 49 41 4e  SUBLANG_ESTONIAN
5690: 5f 45 53 54 4f 4e 49 41 20 20 20 20 20 20 20 20  _ESTONIA        
56a0: 20 20 20 20 20 20 20 20 20 20 20 20 3d 20 20 31              =  1
56b0: 2c 0d 0a 09 53 55 42 4c 41 4e 47 5f 46 41 45 52  ,...SUBLANG_FAER
56c0: 4f 45 53 45 5f 46 41 52 4f 45 5f 49 53 4c 41 4e  OESE_FAROE_ISLAN
56d0: 44 53 20 20 20 20 20 20 20 20 20 20 20 20 20 20  DS              
56e0: 3d 20 20 31 2c 0d 0a 09 53 55 42 4c 41 4e 47 5f  =  1,...SUBLANG_
56f0: 46 49 4c 49 50 49 4e 4f 5f 50 48 49 4c 49 50 50  FILIPINO_PHILIPP
5700: 49 4e 45 53 20 20 20 20 20 20 20 20 20 20 20 20  INES            
5710: 20 20 20 20 3d 20 20 31 2c 0d 0a 09 53 55 42 4c      =  1,...SUBL
5720: 41 4e 47 5f 46 49 4e 4e 49 53 48 5f 46 49 4e 4c  ANG_FINNISH_FINL
5730: 41 4e 44 20 20 20 20 20 20 20 20 20 20 20 20 20  AND             
5740: 20 20 20 20 20 20 20 20 3d 20 20 31 2c 0d 0a 0d          =  1,...
5750: 0a 09 53 55 42 4c 41 4e 47 5f 46 52 45 4e 43 48  ..SUBLANG_FRENCH
5760: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
5770: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3d 20                = 
5780: 20 31 2c 0d 0a 09 53 55 42 4c 41 4e 47 5f 46 52   1,...SUBLANG_FR
5790: 45 4e 43 48 5f 42 45 4c 47 49 41 4e 2c 0d 0a 09  ENCH_BELGIAN,...
57a0: 53 55 42 4c 41 4e 47 5f 46 52 45 4e 43 48 5f 43  SUBLANG_FRENCH_C
57b0: 41 4e 41 44 49 41 4e 2c 0d 0a 09 53 55 42 4c 41  ANADIAN,...SUBLA
57c0: 4e 47 5f 46 52 45 4e 43 48 5f 53 57 49 53 53 2c  NG_FRENCH_SWISS,
57d0: 0d 0a 09 53 55 42 4c 41 4e 47 5f 46 52 45 4e 43  ...SUBLANG_FRENC
57e0: 48 5f 4c 55 58 45 4d 42 4f 55 52 47 2c 0d 0a 09  H_LUXEMBOURG,...
57f0: 53 55 42 4c 41 4e 47 5f 46 52 45 4e 43 48 5f 4d  SUBLANG_FRENCH_M
5800: 4f 4e 41 43 4f 2c 20 20 20 20 20 20 20 20 20 20  ONACO,          
5810: 20 20 20 20 20 20 20 20 20 2f 2f 20 3d 20 20 36           // =  6
5820: 0d 0a 0d 0a 09 53 55 42 4c 41 4e 47 5f 46 52 49  .....SUBLANG_FRI
5830: 53 49 41 4e 5f 4e 45 54 48 45 52 4c 41 4e 44 53  SIAN_NETHERLANDS
5840: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
5850: 20 3d 20 20 31 2c 0d 0a 09 53 55 42 4c 41 4e 47   =  1,...SUBLANG
5860: 5f 47 41 4c 49 43 49 41 4e 5f 47 41 4c 49 43 49  _GALICIAN_GALICI
5870: 41 4e 20 20 20 20 20 20 20 20 20 20 20 20 20 20  AN              
5880: 20 20 20 20 20 3d 20 20 31 2c 0d 0a 09 53 55 42       =  1,...SUB
5890: 4c 41 4e 47 5f 47 45 4f 52 47 49 41 4e 5f 47 45  LANG_GEORGIAN_GE
58a0: 4f 52 47 49 41 20 20 20 20 20 20 20 20 20 20 20  ORGIA           
58b0: 20 20 20 20 20 20 20 20 20 3d 20 20 31 2c 0d 0a           =  1,..
58c0: 0d 0a 09 53 55 42 4c 41 4e 47 5f 47 45 52 4d 41  ...SUBLANG_GERMA
58d0: 4e 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  N               
58e0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3d                 =
58f0: 20 20 31 2c 0d 0a 09 53 55 42 4c 41 4e 47 5f 47    1,...SUBLANG_G
5900: 45 52 4d 41 4e 5f 53 57 49 53 53 2c 0d 0a 09 53  ERMAN_SWISS,...S
5910: 55 42 4c 41 4e 47 5f 47 45 52 4d 41 4e 5f 41 55  UBLANG_GERMAN_AU
5920: 53 54 52 49 41 4e 2c 0d 0a 09 53 55 42 4c 41 4e  STRIAN,...SUBLAN
5930: 47 5f 47 45 52 4d 41 4e 5f 4c 55 58 45 4d 42 4f  G_GERMAN_LUXEMBO
5940: 55 52 47 2c 0d 0a 09 53 55 42 4c 41 4e 47 5f 47  URG,...SUBLANG_G
5950: 45 52 4d 41 4e 5f 4c 49 45 43 48 54 45 4e 53 54  ERMAN_LIECHTENST
5960: 45 49 4e 2c 20 20 20 20 20 20 20 20 20 20 20 20  EIN,            
5970: 2f 2f 20 3d 20 20 35 0d 0a 0d 0a 09 53 55 42 4c  // =  5.....SUBL
5980: 41 4e 47 5f 47 52 45 45 4b 5f 47 52 45 45 43 45  ANG_GREEK_GREECE
5990: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
59a0: 20 20 20 20 20 20 20 20 3d 20 20 31 2c 0d 0a 09          =  1,...
59b0: 53 55 42 4c 41 4e 47 5f 47 52 45 45 4e 4c 41 4e  SUBLANG_GREENLAN
59c0: 44 49 43 5f 47 52 45 45 4e 4c 41 4e 44 20 20 20  DIC_GREENLAND   
59d0: 20 20 20 20 20 20 20 20 20 20 20 20 3d 20 20 31              =  1
59e0: 2c 0d 0a 09 53 55 42 4c 41 4e 47 5f 47 55 4a 41  ,...SUBLANG_GUJA
59f0: 52 41 54 49 5f 49 4e 44 49 41 20 20 20 20 20 20  RATI_INDIA      
5a00: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
5a10: 3d 20 20 31 2c 0d 0a 09 53 55 42 4c 41 4e 47 5f  =  1,...SUBLANG_
5a20: 48 41 55 53 41 5f 4e 49 47 45 52 49 41 20 20 20  HAUSA_NIGERIA   
5a30: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
5a40: 20 20 20 20 3d 20 20 31 2c 0d 0a 09 53 55 42 4c      =  1,...SUBL
5a50: 41 4e 47 5f 48 45 42 52 45 57 5f 49 53 52 41 45  ANG_HEBREW_ISRAE
5a60: 4c 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  L               
5a70: 20 20 20 20 20 20 20 20 3d 20 20 31 2c 0d 0a 09          =  1,...
5a80: 53 55 42 4c 41 4e 47 5f 48 49 4e 44 49 5f 49 4e  SUBLANG_HINDI_IN
5a90: 44 49 41 20 20 20 20 20 20 20 20 20 20 20 20 20  DIA             
5aa0: 20 20 20 20 20 20 20 20 20 20 20 20 3d 20 20 31              =  1
5ab0: 2c 0d 0a 09 53 55 42 4c 41 4e 47 5f 48 55 4e 47  ,...SUBLANG_HUNG
5ac0: 41 52 49 41 4e 5f 48 55 4e 47 41 52 59 20 20 20  ARIAN_HUNGARY   
5ad0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
5ae0: 3d 20 20 31 2c 0d 0a 09 53 55 42 4c 41 4e 47 5f  =  1,...SUBLANG_
5af0: 49 43 45 4c 41 4e 44 49 43 5f 49 43 45 4c 41 4e  ICELANDIC_ICELAN
5b00: 44 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  D               
5b10: 20 20 20 20 3d 20 20 31 2c 0d 0a 09 53 55 42 4c      =  1,...SUBL
5b20: 41 4e 47 5f 49 47 42 4f 5f 4e 49 47 45 52 49 41  ANG_IGBO_NIGERIA
5b30: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
5b40: 20 20 20 20 20 20 20 20 3d 20 20 31 2c 0d 0a 09          =  1,...
5b50: 53 55 42 4c 41 4e 47 5f 49 4e 44 4f 4e 45 53 49  SUBLANG_INDONESI
5b60: 41 4e 5f 49 4e 44 4f 4e 45 53 49 41 20 20 20 20  AN_INDONESIA    
5b70: 20 20 20 20 20 20 20 20 20 20 20 20 3d 20 20 31              =  1
5b80: 2c 0d 0a 0d 0a 09 53 55 42 4c 41 4e 47 5f 49 4e  ,.....SUBLANG_IN
5b90: 55 4b 54 49 54 55 54 5f 43 41 4e 41 44 41 20 20  UKTITUT_CANADA  
5ba0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
5bb0: 20 20 3d 20 20 31 2c 0d 0a 09 53 55 42 4c 41 4e    =  1,...SUBLAN
5bc0: 47 5f 49 4e 55 4b 54 49 54 55 54 5f 43 41 4e 41  G_INUKTITUT_CANA
5bd0: 44 41 5f 4c 41 54 49 4e 20 20 20 20 20 20 20 20  DA_LATIN        
5be0: 20 20 20 20 20 20 3d 20 20 31 2c 0d 0a 0d 0a 09        =  1,.....
5bf0: 53 55 42 4c 41 4e 47 5f 49 52 49 53 48 5f 49 52  SUBLANG_IRISH_IR
5c00: 45 4c 41 4e 44 20 20 20 20 20 20 20 20 20 20 20  ELAND           
5c10: 20 20 20 20 20 20 20 20 20 20 20 20 3d 20 20 31              =  1
5c20: 2c 0d 0a 0d 0a 09 53 55 42 4c 41 4e 47 5f 49 54  ,.....SUBLANG_IT
5c30: 41 4c 49 41 4e 20 20 20 20 20 20 20 20 20 20 20  ALIAN           
5c40: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
5c50: 20 20 3d 20 20 31 2c 0d 0a 09 53 55 42 4c 41 4e    =  1,...SUBLAN
5c60: 47 5f 49 54 41 4c 49 41 4e 5f 53 57 49 53 53 2c  G_ITALIAN_SWISS,
5c70: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
5c80: 20 20 20 2f 2f 20 3d 20 20 32 0d 0a 0d 0a 09 53     // =  2.....S
5c90: 55 42 4c 41 4e 47 5f 4a 41 50 41 4e 45 53 45 5f  UBLANG_JAPANESE_
5ca0: 4a 41 50 41 4e 20 20 20 20 20 20 20 20 20 20 20  JAPAN           
5cb0: 20 20 20 20 20 20 20 20 20 20 20 3d 20 20 31 2c             =  1,
5cc0: 0d 0a 0d 0a 09 53 55 42 4c 41 4e 47 5f 4b 41 53  .....SUBLANG_KAS
5cd0: 48 4d 49 52 49 5f 49 4e 44 49 41 20 20 20 20 20  HMIRI_INDIA     
5ce0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
5cf0: 20 3d 20 20 32 2c 0d 0a 09 53 55 42 4c 41 4e 47   =  2,...SUBLANG
5d00: 5f 4b 41 53 48 4d 49 52 49 5f 53 41 53 49 41 20  _KASHMIRI_SASIA 
5d10: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
5d20: 20 20 20 20 20 3d 20 20 32 2c 0d 0a 0d 0a 09 53       =  2,.....S
5d30: 55 42 4c 41 4e 47 5f 4b 41 5a 41 4b 5f 4b 41 5a  UBLANG_KAZAK_KAZ
5d40: 41 4b 48 53 54 41 4e 20 20 20 20 20 20 20 20 20  AKHSTAN         
5d50: 20 20 20 20 20 20 20 20 20 20 20 3d 20 20 31 2c             =  1,
5d60: 0d 0a 09 53 55 42 4c 41 4e 47 5f 4b 48 4d 45 52  ...SUBLANG_KHMER
5d70: 5f 43 41 4d 42 4f 44 49 41 20 20 20 20 20 20 20  _CAMBODIA       
5d80: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3d                 =
5d90: 20 20 31 2c 0d 0a 09 53 55 42 4c 41 4e 47 5f 4b    1,...SUBLANG_K
5da0: 49 43 48 45 5f 47 55 41 54 45 4d 41 4c 41 20 20  ICHE_GUATEMALA  
5db0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
5dc0: 20 20 20 3d 20 20 31 2c 0d 0a 09 53 55 42 4c 41     =  1,...SUBLA
5dd0: 4e 47 5f 4b 49 4e 59 41 52 57 41 4e 44 41 5f 52  NG_KINYARWANDA_R
5de0: 57 41 4e 44 41 20 20 20 20 20 20 20 20 20 20 20  WANDA           
5df0: 20 20 20 20 20 20 20 3d 20 20 31 2c 0d 0a 09 53         =  1,...S
5e00: 55 42 4c 41 4e 47 5f 4b 4f 4e 4b 41 4e 49 5f 49  UBLANG_KONKANI_I
5e10: 4e 44 49 41 20 20 20 20 20 20 20 20 20 20 20 20  NDIA            
5e20: 20 20 20 20 20 20 20 20 20 20 20 3d 20 20 31 2c             =  1,
5e30: 0d 0a 09 53 55 42 4c 41 4e 47 5f 4b 4f 52 45 41  ...SUBLANG_KOREA
5e40: 4e 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  N               
5e50: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3d                 =
5e60: 20 20 31 2c 0d 0a 09 53 55 42 4c 41 4e 47 5f 4b    1,...SUBLANG_K
5e70: 59 52 47 59 5a 5f 4b 59 52 47 59 5a 53 54 41 4e  YRGYZ_KYRGYZSTAN
5e80: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
5e90: 20 20 20 3d 20 20 31 2c 0d 0a 09 53 55 42 4c 41     =  1,...SUBLA
5ea0: 4e 47 5f 4c 41 4f 5f 4c 41 4f 5f 50 44 52 20 20  NG_LAO_LAO_PDR  
5eb0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
5ec0: 20 20 20 20 20 20 20 3d 20 20 31 2c 0d 0a 09 53         =  1,...S
5ed0: 55 42 4c 41 4e 47 5f 4c 41 54 56 49 41 4e 5f 4c  UBLANG_LATVIAN_L
5ee0: 41 54 56 49 41 20 20 20 20 20 20 20 20 20 20 20  ATVIA           
5ef0: 20 20 20 20 20 20 20 20 20 20 20 3d 20 20 31 2c             =  1,
5f00: 0d 0a 0d 0a 09 53 55 42 4c 41 4e 47 5f 4c 49 54  .....SUBLANG_LIT
5f10: 48 55 41 4e 49 41 4e 20 20 20 20 20 20 20 20 20  HUANIAN         
5f20: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
5f30: 20 3d 20 20 31 2c 0d 0a 09 53 55 42 4c 41 4e 47   =  1,...SUBLANG
5f40: 5f 4c 49 54 48 55 41 4e 49 41 4e 5f 4c 49 54 48  _LITHUANIAN_LITH
5f50: 55 41 4e 49 41 20 20 20 20 20 20 20 20 20 20 20  UANIA           
5f60: 20 20 20 20 20 3d 20 20 31 2c 0d 0a 0d 0a 09 53       =  1,.....S
5f70: 55 42 4c 41 4e 47 5f 4c 4f 57 45 52 5f 53 4f 52  UBLANG_LOWER_SOR
5f80: 42 49 41 4e 5f 47 45 52 4d 41 4e 59 20 20 20 20  BIAN_GERMANY    
5f90: 20 20 20 20 20 20 20 20 20 20 20 3d 20 20 31 2c             =  1,
5fa0: 0d 0a 09 53 55 42 4c 41 4e 47 5f 4c 55 58 45 4d  ...SUBLANG_LUXEM
5fb0: 42 4f 55 52 47 49 53 48 5f 4c 55 58 45 4d 42 4f  BOURGISH_LUXEMBO
5fc0: 55 52 47 20 20 20 20 20 20 20 20 20 20 20 20 3d  URG            =
5fd0: 20 20 31 2c 0d 0a 09 53 55 42 4c 41 4e 47 5f 4d    1,...SUBLANG_M
5fe0: 41 43 45 44 4f 4e 49 41 4e 5f 4d 41 43 45 44 4f  ACEDONIAN_MACEDO
5ff0: 4e 49 41 20 20 20 20 20 20 20 20 20 20 20 20 20  NIA             
6000: 20 20 20 3d 20 20 31 2c 0d 0a 09 53 55 42 4c 41     =  1,...SUBLA
6010: 4e 47 5f 4d 41 4c 41 59 41 4c 41 4d 5f 49 4e 44  NG_MALAYALAM_IND
6020: 49 41 20 20 20 20 20 20 20 20 20 20 20 20 20 20  IA              
6030: 20 20 20 20 20 20 20 3d 20 20 31 2c 0d 0a 09 53         =  1,...S
6040: 55 42 4c 41 4e 47 5f 4d 41 4c 54 45 53 45 5f 4d  UBLANG_MALTESE_M
6050: 41 4c 54 41 20 20 20 20 20 20 20 20 20 20 20 20  ALTA            
6060: 20 20 20 20 20 20 20 20 20 20 20 3d 20 20 31 2c             =  1,
6070: 0d 0a 09 53 55 42 4c 41 4e 47 5f 4d 41 4f 52 49  ...SUBLANG_MAORI
6080: 5f 4e 45 57 5f 5a 45 41 4c 41 4e 44 20 20 20 20  _NEW_ZEALAND    
6090: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3d                 =
60a0: 20 20 31 2c 0d 0a 09 53 55 42 4c 41 4e 47 5f 4d    1,...SUBLANG_M
60b0: 41 50 55 44 55 4e 47 55 4e 5f 43 48 49 4c 45 20  APUDUNGUN_CHILE 
60c0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
60d0: 20 20 20 3d 20 20 31 2c 0d 0a 09 53 55 42 4c 41     =  1,...SUBLA
60e0: 4e 47 5f 4d 41 52 41 54 48 49 5f 49 4e 44 49 41  NG_MARATHI_INDIA
60f0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
6100: 20 20 20 20 20 20 20 3d 20 20 31 2c 0d 0a 09 53         =  1,...S
6110: 55 42 4c 41 4e 47 5f 4d 4f 48 41 57 4b 5f 4d 4f  UBLANG_MOHAWK_MO
6120: 48 41 57 4b 20 20 20 20 20 20 20 20 20 20 20 20  HAWK            
6130: 20 20 20 20 20 20 20 20 20 20 20 3d 20 20 31 2c             =  1,
6140: 0d 0a 0d 0a 09 53 55 42 4c 41 4e 47 5f 4d 4f 4e  .....SUBLANG_MON
6150: 47 4f 4c 49 41 4e 5f 43 59 52 49 4c 4c 49 43 5f  GOLIAN_CYRILLIC_
6160: 4d 4f 4e 47 4f 4c 49 41 20 20 20 20 20 20 20 20  MONGOLIA        
6170: 20 3d 20 20 31 2c 0d 0a 09 53 55 42 4c 41 4e 47   =  1,...SUBLANG
6180: 5f 4d 4f 4e 47 4f 4c 49 41 4e 5f 50 52 43 2c 20  _MONGOLIAN_PRC, 
6190: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
61a0: 20 20 2f 2f 20 3d 20 20 32 0d 0a 0d 0a 09 53 55    // =  2.....SU
61b0: 42 4c 41 4e 47 5f 4d 41 4c 41 59 5f 4d 41 4c 41  BLANG_MALAY_MALA
61c0: 59 53 49 41 20 20 20 20 20 20 20 20 20 20 20 20  YSIA            
61d0: 20 20 20 20 20 20 20 20 20 20 3d 20 20 31 2c 0d            =  1,.
61e0: 0a 09 53 55 42 4c 41 4e 47 5f 4d 41 4c 41 59 5f  ..SUBLANG_MALAY_
61f0: 42 52 55 4e 45 49 5f 44 41 52 55 53 53 41 4c 41  BRUNEI_DARUSSALA
6200: 4d 2c 20 20 20 20 20 20 20 20 20 2f 2f 20 3d 20  M,         // = 
6210: 20 32 0d 0a 0d 0a 09 53 55 42 4c 41 4e 47 5f 4e   2.....SUBLANG_N
6220: 45 50 41 4c 49 5f 4e 45 50 41 4c 20 20 20 20 20  EPALI_NEPAL     
6230: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
6240: 20 20 20 3d 20 20 31 2c 0d 0a 09 53 55 42 4c 41     =  1,...SUBLA
6250: 4e 47 5f 4e 45 50 41 4c 49 5f 49 4e 44 49 41 2c  NG_NEPALI_INDIA,
6260: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
6270: 20 20 20 20 2f 2f 20 3d 20 20 32 0d 0a 0d 0a 09      // =  2.....
6280: 53 55 42 4c 41 4e 47 5f 4e 4f 52 57 45 47 49 41  SUBLANG_NORWEGIA
6290: 4e 5f 42 4f 4b 4d 41 4c 20 20 20 20 20 20 20 20  N_BOKMAL        
62a0: 20 20 20 20 20 20 20 20 20 20 20 20 3d 20 20 31              =  1
62b0: 2c 0d 0a 09 53 55 42 4c 41 4e 47 5f 4e 4f 52 57  ,...SUBLANG_NORW
62c0: 45 47 49 41 4e 5f 4e 59 4e 4f 52 53 4b 2c 20 20  EGIAN_NYNORSK,  
62d0: 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20               // 
62e0: 3d 20 20 32 0d 0a 0d 0a 09 53 55 42 4c 41 4e 47  =  2.....SUBLANG
62f0: 5f 4f 43 43 49 54 41 4e 5f 46 52 41 4e 43 45 20  _OCCITAN_FRANCE 
6300: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
6310: 20 20 20 20 20 3d 20 20 31 2c 0d 0a 09 53 55 42       =  1,...SUB
6320: 4c 41 4e 47 5f 4f 52 49 59 41 5f 49 4e 44 49 41  LANG_ORIYA_INDIA
6330: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
6340: 20 20 20 20 20 20 20 20 20 3d 20 20 31 2c 0d 0a           =  1,..
6350: 09 53 55 42 4c 41 4e 47 5f 50 41 53 48 54 4f 5f  .SUBLANG_PASHTO_
6360: 41 46 47 48 41 4e 49 53 54 41 4e 20 20 20 20 20  AFGHANISTAN     
6370: 20 20 20 20 20 20 20 20 20 20 20 20 20 3d 20 20               =  
6380: 31 2c 0d 0a 09 53 55 42 4c 41 4e 47 5f 50 45 52  1,...SUBLANG_PER
6390: 53 49 41 4e 5f 49 52 41 4e 20 20 20 20 20 20 20  SIAN_IRAN       
63a0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
63b0: 20 3d 20 20 31 2c 0d 0a 09 53 55 42 4c 41 4e 47   =  1,...SUBLANG
63c0: 5f 50 4f 4c 49 53 48 5f 50 4f 4c 41 4e 44 20 20  _POLISH_POLAND  
63d0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
63e0: 20 20 20 20 20 3d 20 20 31 2c 0d 0a 0d 0a 09 53       =  1,.....S
63f0: 55 42 4c 41 4e 47 5f 50 4f 52 54 55 47 55 45 53  UBLANG_PORTUGUES
6400: 45 5f 42 52 41 5a 49 4c 49 41 4e 20 20 20 20 20  E_BRAZILIAN     
6410: 20 20 20 20 20 20 20 20 20 20 20 3d 20 20 31 2c             =  1,
6420: 0d 0a 09 53 55 42 4c 41 4e 47 5f 50 4f 52 54 55  ...SUBLANG_PORTU
6430: 47 55 45 53 45 20 20 20 20 20 20 20 20 20 20 20  GUESE           
6440: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3d                 =
6450: 20 20 32 2c 0d 0a 09 53 55 42 4c 41 4e 47 5f 50    2,...SUBLANG_P
6460: 4f 52 54 55 47 55 45 53 45 5f 50 4f 52 54 55 47  ORTUGUESE_PORTUG
6470: 41 4c 2c 20 20 20 20 20 20 20 20 20 20 20 20 20  AL,             
6480: 2f 2f 20 3d 20 20 32 0d 0a 0d 0a 09 53 55 42 4c  // =  2.....SUBL
6490: 41 4e 47 5f 50 55 4e 4a 41 42 49 5f 49 4e 44 49  ANG_PUNJABI_INDI
64a0: 41 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  A               
64b0: 20 20 20 20 20 20 20 20 3d 20 20 31 2c 0d 0a 0d          =  1,...
64c0: 0a 09 53 55 42 4c 41 4e 47 5f 51 55 45 43 48 55  ..SUBLANG_QUECHU
64d0: 41 5f 42 4f 4c 49 56 49 41 20 20 20 20 20 20 20  A_BOLIVIA       
64e0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3d 20                = 
64f0: 20 31 2c 0d 0a 09 53 55 42 4c 41 4e 47 5f 51 55   1,...SUBLANG_QU
6500: 45 43 48 55 41 5f 45 43 55 41 44 4f 52 2c 0d 0a  ECHUA_ECUADOR,..
6510: 09 53 55 42 4c 41 4e 47 5f 51 55 45 43 48 55 41  .SUBLANG_QUECHUA
6520: 5f 50 45 52 55 2c 20 20 20 20 20 20 20 20 20 20  _PERU,          
6530: 20 20 20 20 20 20 20 20 20 20 2f 2f 20 3d 20 20            // =  
6540: 33 0d 0a 0d 0a 09 53 55 42 4c 41 4e 47 5f 52 4f  3.....SUBLANG_RO
6550: 4d 41 4e 49 41 4e 5f 52 4f 4d 41 4e 49 41 20 20  MANIAN_ROMANIA  
6560: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
6570: 20 20 3d 20 20 31 2c 0d 0a 09 53 55 42 4c 41 4e    =  1,...SUBLAN
6580: 47 5f 52 4f 4d 41 4e 53 48 5f 53 57 49 54 5a 45  G_ROMANSH_SWITZE
6590: 52 4c 41 4e 44 20 20 20 20 20 20 20 20 20 20 20  RLAND           
65a0: 20 20 20 20 20 20 3d 20 20 31 2c 0d 0a 09 53 55        =  1,...SU
65b0: 42 4c 41 4e 47 5f 52 55 53 53 49 41 4e 5f 52 55  BLANG_RUSSIAN_RU
65c0: 53 53 49 41 20 20 20 20 20 20 20 20 20 20 20 20  SSIA            
65d0: 20 20 20 20 20 20 20 20 20 20 3d 20 20 31 2c 0d            =  1,.
65e0: 0a 0d 0a 09 53 55 42 4c 41 4e 47 5f 53 41 4d 49  ....SUBLANG_SAMI
65f0: 5f 4e 4f 52 54 48 45 52 4e 5f 4e 4f 52 57 41 59  _NORTHERN_NORWAY
6600: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
6610: 3d 20 20 31 2c 0d 0a 09 53 55 42 4c 41 4e 47 5f  =  1,...SUBLANG_
6620: 53 41 4d 49 5f 4e 4f 52 54 48 45 52 4e 5f 53 57  SAMI_NORTHERN_SW
6630: 45 44 45 4e 2c 0d 0a 09 53 55 42 4c 41 4e 47 5f  EDEN,...SUBLANG_
6640: 53 41 4d 49 5f 4e 4f 52 54 48 45 52 4e 5f 46 49  SAMI_NORTHERN_FI
6650: 4e 4c 41 4e 44 2c 20 20 20 20 20 20 20 20 20 20  NLAND,          
6660: 20 2f 2f 20 3d 20 20 33 0d 0a 09 53 55 42 4c 41   // =  3...SUBLA
6670: 4e 47 5f 53 41 4d 49 5f 53 4b 4f 4c 54 5f 46 49  NG_SAMI_SKOLT_FI
6680: 4e 4c 41 4e 44 20 20 20 20 20 20 20 20 20 20 20  NLAND           
6690: 20 20 20 20 20 20 20 3d 20 20 33 2c 0d 0a 09 53         =  3,...S
66a0: 55 42 4c 41 4e 47 5f 53 41 4d 49 5f 49 4e 41 52  UBLANG_SAMI_INAR
66b0: 49 5f 46 49 4e 4c 41 4e 44 20 20 20 20 20 20 20  I_FINLAND       
66c0: 20 20 20 20 20 20 20 20 20 20 20 3d 20 20 33 2c             =  3,
66d0: 0d 0a 09 53 55 42 4c 41 4e 47 5f 53 41 4d 49 5f  ...SUBLANG_SAMI_
66e0: 4c 55 4c 45 5f 4e 4f 52 57 41 59 2c 0d 0a 09 53  LULE_NORWAY,...S
66f0: 55 42 4c 41 4e 47 5f 53 41 4d 49 5f 4c 55 4c 45  UBLANG_SAMI_LULE
6700: 5f 53 57 45 44 45 4e 2c 0d 0a 09 53 55 42 4c 41  _SWEDEN,...SUBLA
6710: 4e 47 5f 53 41 4d 49 5f 53 4f 55 54 48 45 52 4e  NG_SAMI_SOUTHERN
6720: 5f 4e 4f 52 57 41 59 2c 0d 0a 09 53 55 42 4c 41  _NORWAY,...SUBLA
6730: 4e 47 5f 53 41 4d 49 5f 53 4f 55 54 48 45 52 4e  NG_SAMI_SOUTHERN
6740: 5f 53 57 45 44 45 4e 2c 20 20 20 20 20 20 20 20  _SWEDEN,        
6750: 20 20 20 20 2f 2f 20 3d 20 20 37 0d 0a 0d 0a 09      // =  7.....
6760: 53 55 42 4c 41 4e 47 5f 53 41 4e 53 4b 52 49 54  SUBLANG_SANSKRIT
6770: 5f 49 4e 44 49 41 20 20 20 20 20 20 20 20 20 20  _INDIA          
6780: 20 20 20 20 20 20 20 20 20 20 20 20 3d 20 20 31              =  1
6790: 2c 0d 0a 0d 0a 09 53 55 42 4c 41 4e 47 5f 53 45  ,.....SUBLANG_SE
67a0: 52 42 49 41 4e 5f 4c 41 54 49 4e 20 20 20 20 20  RBIAN_LATIN     
67b0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
67c0: 20 20 3d 20 20 32 2c 0d 0a 09 53 55 42 4c 41 4e    =  2,...SUBLAN
67d0: 47 5f 53 45 52 42 49 41 4e 5f 43 59 52 49 4c 4c  G_SERBIAN_CYRILL
67e0: 49 43 2c 20 20 20 20 20 20 20 20 20 20 20 20 20  IC,             
67f0: 20 20 20 2f 2f 20 3d 20 20 33 0d 0a 09 53 55 42     // =  3...SUB
6800: 4c 41 4e 47 5f 53 45 52 42 49 41 4e 5f 42 4f 53  LANG_SERBIAN_BOS
6810: 4e 49 41 5f 48 45 52 5a 45 47 4f 56 49 4e 41 5f  NIA_HERZEGOVINA_
6820: 4c 41 54 49 4e 20 20 20 20 3d 20 20 36 2c 0d 0a  LATIN    =  6,..
6830: 09 53 55 42 4c 41 4e 47 5f 53 45 52 42 49 41 4e  .SUBLANG_SERBIAN
6840: 5f 42 4f 53 4e 49 41 5f 48 45 52 5a 45 47 4f 56  _BOSNIA_HERZEGOV
6850: 49 4e 41 5f 43 59 52 49 4c 4c 49 43 20 3d 20 20  INA_CYRILLIC =  
6860: 37 2c 0d 0a 0d 0a 09 53 55 42 4c 41 4e 47 5f 53  7,.....SUBLANG_S
6870: 49 4e 44 48 49 5f 41 46 47 48 41 4e 49 53 54 41  INDHI_AFGHANISTA
6880: 4e 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  N               
6890: 20 20 20 3d 20 20 32 2c 0d 0a 09 53 55 42 4c 41     =  2,...SUBLA
68a0: 4e 47 5f 53 49 4e 48 41 4c 45 53 45 5f 53 52 49  NG_SINHALESE_SRI
68b0: 5f 4c 41 4e 4b 41 20 20 20 20 20 20 20 20 20 20  _LANKA          
68c0: 20 20 20 20 20 20 20 3d 20 20 31 2c 0d 0a 09 53         =  1,...S
68d0: 55 42 4c 41 4e 47 5f 53 4f 54 48 4f 5f 4e 4f 52  UBLANG_SOTHO_NOR
68e0: 54 48 45 52 4e 5f 53 4f 55 54 48 5f 41 46 52 49  THERN_SOUTH_AFRI
68f0: 43 41 20 20 20 20 20 20 20 20 20 3d 20 20 31 2c  CA         =  1,
6900: 0d 0a 09 53 55 42 4c 41 4e 47 5f 53 4c 4f 56 41  ...SUBLANG_SLOVA
6910: 4b 5f 53 4c 4f 56 41 4b 49 41 20 20 20 20 20 20  K_SLOVAKIA      
6920: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3d                 =
6930: 20 20 31 2c 0d 0a 09 53 55 42 4c 41 4e 47 5f 53    1,...SUBLANG_S
6940: 4c 4f 56 45 4e 49 41 4e 5f 53 4c 4f 56 45 4e 49  LOVENIAN_SLOVENI
6950: 41 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  A               
6960: 20 20 20 3d 20 20 31 2c 0d 0a 0d 0a 09 53 55 42     =  1,.....SUB
6970: 4c 41 4e 47 5f 53 50 41 4e 49 53 48 20 20 20 20  LANG_SPANISH    
6980: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
6990: 20 20 20 20 20 20 20 20 20 3d 20 20 31 2c 0d 0a           =  1,..
69a0: 09 53 55 42 4c 41 4e 47 5f 53 50 41 4e 49 53 48  .SUBLANG_SPANISH
69b0: 5f 4d 45 58 49 43 41 4e 2c 0d 0a 09 53 55 42 4c  _MEXICAN,...SUBL
69c0: 41 4e 47 5f 53 50 41 4e 49 53 48 5f 4d 4f 44 45  ANG_SPANISH_MODE
69d0: 52 4e 2c 0d 0a 09 53 55 42 4c 41 4e 47 5f 53 50  RN,...SUBLANG_SP
69e0: 41 4e 49 53 48 5f 47 55 41 54 45 4d 41 4c 41 2c  ANISH_GUATEMALA,
69f0: 0d 0a 09 53 55 42 4c 41 4e 47 5f 53 50 41 4e 49  ...SUBLANG_SPANI
6a00: 53 48 5f 43 4f 53 54 41 5f 52 49 43 41 2c 0d 0a  SH_COSTA_RICA,..
6a10: 09 53 55 42 4c 41 4e 47 5f 53 50 41 4e 49 53 48  .SUBLANG_SPANISH
6a20: 5f 50 41 4e 41 4d 41 2c 0d 0a 09 53 55 42 4c 41  _PANAMA,...SUBLA
6a30: 4e 47 5f 53 50 41 4e 49 53 48 5f 44 4f 4d 49 4e  NG_SPANISH_DOMIN
6a40: 49 43 41 4e 5f 52 45 50 55 42 4c 49 43 2c 0d 0a  ICAN_REPUBLIC,..
6a50: 09 53 55 42 4c 41 4e 47 5f 53 50 41 4e 49 53 48  .SUBLANG_SPANISH
6a60: 5f 56 45 4e 45 5a 55 45 4c 41 2c 0d 0a 09 53 55  _VENEZUELA,...SU
6a70: 42 4c 41 4e 47 5f 53 50 41 4e 49 53 48 5f 43 4f  BLANG_SPANISH_CO
6a80: 4c 4f 4d 42 49 41 2c 0d 0a 09 53 55 42 4c 41 4e  LOMBIA,...SUBLAN
6a90: 47 5f 53 50 41 4e 49 53 48 5f 50 45 52 55 2c 0d  G_SPANISH_PERU,.
6aa0: 0a 09 53 55 42 4c 41 4e 47 5f 53 50 41 4e 49 53  ..SUBLANG_SPANIS
6ab0: 48 5f 41 52 47 45 4e 54 49 4e 41 2c 0d 0a 09 53  H_ARGENTINA,...S
6ac0: 55 42 4c 41 4e 47 5f 53 50 41 4e 49 53 48 5f 45  UBLANG_SPANISH_E
6ad0: 43 55 41 44 4f 52 2c 0d 0a 09 53 55 42 4c 41 4e  CUADOR,...SUBLAN
6ae0: 47 5f 53 50 41 4e 49 53 48 5f 43 48 49 4c 45 2c  G_SPANISH_CHILE,
6af0: 0d 0a 09 53 55 42 4c 41 4e 47 5f 53 50 41 4e 49  ...SUBLANG_SPANI
6b00: 53 48 5f 55 52 55 47 55 41 59 2c 0d 0a 09 53 55  SH_URUGUAY,...SU
6b10: 42 4c 41 4e 47 5f 53 50 41 4e 49 53 48 5f 50 41  BLANG_SPANISH_PA
6b20: 52 41 47 55 41 59 2c 0d 0a 09 53 55 42 4c 41 4e  RAGUAY,...SUBLAN
6b30: 47 5f 53 50 41 4e 49 53 48 5f 42 4f 4c 49 56 49  G_SPANISH_BOLIVI
6b40: 41 2c 0d 0a 09 53 55 42 4c 41 4e 47 5f 53 50 41  A,...SUBLANG_SPA
6b50: 4e 49 53 48 5f 45 4c 5f 53 41 4c 56 41 44 4f 52  NISH_EL_SALVADOR
6b60: 2c 0d 0a 09 53 55 42 4c 41 4e 47 5f 53 50 41 4e  ,...SUBLANG_SPAN
6b70: 49 53 48 5f 48 4f 4e 44 55 52 41 53 2c 0d 0a 09  ISH_HONDURAS,...
6b80: 53 55 42 4c 41 4e 47 5f 53 50 41 4e 49 53 48 5f  SUBLANG_SPANISH_
6b90: 4e 49 43 41 52 41 47 55 41 2c 0d 0a 09 53 55 42  NICARAGUA,...SUB
6ba0: 4c 41 4e 47 5f 53 50 41 4e 49 53 48 5f 50 55 45  LANG_SPANISH_PUE
6bb0: 52 54 4f 5f 52 49 43 4f 2c 0d 0a 09 53 55 42 4c  RTO_RICO,...SUBL
6bc0: 41 4e 47 5f 53 50 41 4e 49 53 48 5f 55 53 2c 20  ANG_SPANISH_US, 
6bd0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
6be0: 20 20 20 20 20 2f 2f 20 3d 20 32 31 0d 0a 0d 0a       // = 21....
6bf0: 09 53 55 42 4c 41 4e 47 5f 53 57 45 44 49 53 48  .SUBLANG_SWEDISH
6c00: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
6c10: 20 20 20 20 20 20 20 20 20 20 20 20 20 3d 20 20               =  
6c20: 31 2c 0d 0a 09 53 55 42 4c 41 4e 47 5f 53 57 45  1,...SUBLANG_SWE
6c30: 44 49 53 48 5f 53 57 45 44 45 4e 20 20 20 20 20  DISH_SWEDEN     
6c40: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
6c50: 20 3d 20 20 31 2c 0d 0a 09 53 55 42 4c 41 4e 47   =  1,...SUBLANG
6c60: 5f 53 57 45 44 49 53 48 5f 46 49 4e 4c 41 4e 44  _SWEDISH_FINLAND
6c70: 2c 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ,               
6c80: 20 20 2f 2f 20 3d 20 20 32 0d 0a 0d 0a 09 53 55    // =  2.....SU
6c90: 42 4c 41 4e 47 5f 53 59 52 49 41 43 20 20 20 20  BLANG_SYRIAC    
6ca0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
6cb0: 20 20 20 20 20 20 20 20 20 20 3d 20 20 31 2c 0d            =  1,.
6cc0: 0a 09 53 55 42 4c 41 4e 47 5f 54 41 4a 49 4b 5f  ..SUBLANG_TAJIK_
6cd0: 54 41 4a 49 4b 49 53 54 41 4e 20 20 20 20 20 20  TAJIKISTAN      
6ce0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3d 20                = 
6cf0: 20 31 2c 0d 0a 09 53 55 42 4c 41 4e 47 5f 54 41   1,...SUBLANG_TA
6d00: 4d 41 5a 49 47 48 54 5f 41 4c 47 45 52 49 41 5f  MAZIGHT_ALGERIA_
6d10: 4c 41 54 49 4e 20 20 20 20 20 20 20 20 20 20 20  LATIN           
6d20: 20 20 3d 20 20 32 2c 0d 0a 09 53 55 42 4c 41 4e    =  2,...SUBLAN
6d30: 47 5f 54 41 4d 49 4c 5f 49 4e 44 49 41 20 20 20  G_TAMIL_INDIA   
6d40: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
6d50: 20 20 20 20 20 20 3d 20 20 31 2c 0d 0a 09 53 55        =  1,...SU
6d60: 42 4c 41 4e 47 5f 54 41 54 41 52 5f 52 55 53 53  BLANG_TATAR_RUSS
6d70: 49 41 20 20 20 20 20 20 20 20 20 20 20 20 20 20  IA              
6d80: 20 20 20 20 20 20 20 20 20 20 3d 20 20 31 2c 0d            =  1,.
6d90: 0a 09 53 55 42 4c 41 4e 47 5f 54 45 4c 55 47 55  ..SUBLANG_TELUGU
6da0: 5f 49 4e 44 49 41 20 20 20 20 20 20 20 20 20 20  _INDIA          
6db0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3d 20                = 
6dc0: 20 31 2c 0d 0a 09 53 55 42 4c 41 4e 47 5f 54 48   1,...SUBLANG_TH
6dd0: 41 49 5f 54 48 41 49 4c 41 4e 44 20 20 20 20 20  AI_THAILAND     
6de0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
6df0: 20 20 3d 20 20 31 2c 0d 0a 09 53 55 42 4c 41 4e    =  1,...SUBLAN
6e00: 47 5f 54 49 42 45 54 41 4e 5f 50 52 43 20 20 20  G_TIBETAN_PRC   
6e10: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
6e20: 20 20 20 20 20 20 3d 20 20 31 2c 0d 0a 09 53 55        =  1,...SU
6e30: 42 4c 41 4e 47 5f 54 49 42 45 54 41 4e 5f 42 48  BLANG_TIBETAN_BH
6e40: 55 54 41 4e 20 20 20 20 20 20 20 20 20 20 20 20  UTAN            
6e50: 20 20 20 20 20 20 20 20 20 20 3d 20 20 32 2c 0d            =  2,.
6e60: 0a 09 53 55 42 4c 41 4e 47 5f 54 49 47 52 49 47  ..SUBLANG_TIGRIG
6e70: 4e 41 5f 45 52 49 54 52 45 41 20 20 20 20 20 20  NA_ERITREA      
6e80: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3d 20                = 
6e90: 20 31 2c 0d 0a 09 53 55 42 4c 41 4e 47 5f 54 53   1,...SUBLANG_TS
6ea0: 57 41 4e 41 5f 53 4f 55 54 48 5f 41 46 52 49 43  WANA_SOUTH_AFRIC
6eb0: 41 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  A               
6ec0: 20 20 3d 20 20 31 2c 0d 0a 09 53 55 42 4c 41 4e    =  1,...SUBLAN
6ed0: 47 5f 54 55 52 4b 49 53 48 5f 54 55 52 4b 45 59  G_TURKISH_TURKEY
6ee0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
6ef0: 20 20 20 20 20 20 3d 20 20 31 2c 0d 0a 09 53 55        =  1,...SU
6f00: 42 4c 41 4e 47 5f 54 55 52 4b 4d 45 4e 5f 54 55  BLANG_TURKMEN_TU
6f10: 52 4b 4d 45 4e 49 53 54 41 4e 20 20 20 20 20 20  RKMENISTAN      
6f20: 20 20 20 20 20 20 20 20 20 20 3d 20 20 31 2c 0d            =  1,.
6f30: 0a 09 53 55 42 4c 41 4e 47 5f 55 49 47 48 55 52  ..SUBLANG_UIGHUR
6f40: 5f 50 52 43 20 20 20 20 20 20 20 20 20 20 20 20  _PRC            
6f50: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3d 20                = 
6f60: 20 31 2c 0d 0a 09 53 55 42 4c 41 4e 47 5f 55 4b   1,...SUBLANG_UK
6f70: 52 41 49 4e 49 41 4e 5f 55 4b 52 41 49 4e 45 20  RAINIAN_UKRAINE 
6f80: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
6f90: 20 20 3d 20 20 31 2c 0d 0a 09 53 55 42 4c 41 4e    =  1,...SUBLAN
6fa0: 47 5f 55 50 50 45 52 5f 53 4f 52 42 49 41 4e 5f  G_UPPER_SORBIAN_
6fb0: 47 45 52 4d 41 4e 59 20 20 20 20 20 20 20 20 20  GERMANY         
6fc0: 20 20 20 20 20 20 3d 20 20 31 2c 0d 0a 0d 0a 09        =  1,.....
6fd0: 53 55 42 4c 41 4e 47 5f 55 52 44 55 5f 50 41 4b  SUBLANG_URDU_PAK
6fe0: 49 53 54 41 4e 20 20 20 20 20 20 20 20 20 20 20  ISTAN           
6ff0: 20 20 20 20 20 20 20 20 20 20 20 20 3d 20 20 31              =  1
7000: 2c 0d 0a 09 53 55 42 4c 41 4e 47 5f 55 52 44 55  ,...SUBLANG_URDU
7010: 5f 49 4e 44 49 41 2c 20 20 20 20 20 20 20 20 20  _INDIA,         
7020: 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20               // 
7030: 3d 20 20 32 0d 0a 0d 0a 09 53 55 42 4c 41 4e 47  =  2.....SUBLANG
7040: 5f 55 5a 42 45 4b 5f 4c 41 54 49 4e 20 20 20 20  _UZBEK_LATIN    
7050: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
7060: 20 20 20 20 20 3d 20 20 31 2c 0d 0a 09 53 55 42       =  1,...SUB
7070: 4c 41 4e 47 5f 55 5a 42 45 4b 5f 43 59 52 49 4c  LANG_UZBEK_CYRIL
7080: 4c 49 43 2c 20 20 20 20 20 20 20 20 20 20 20 20  LIC,            
7090: 20 20 20 20 20 20 2f 2f 20 3d 20 20 32 0d 0a 0d        // =  2...
70a0: 0a 09 53 55 42 4c 41 4e 47 5f 56 49 45 54 4e 41  ..SUBLANG_VIETNA
70b0: 4d 45 53 45 5f 56 49 45 54 4e 41 4d 20 20 20 20  MESE_VIETNAM    
70c0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3d 20                = 
70d0: 20 31 2c 0d 0a 09 53 55 42 4c 41 4e 47 5f 57 45   1,...SUBLANG_WE
70e0: 4c 53 48 5f 55 4e 49 54 45 44 5f 4b 49 4e 47 44  LSH_UNITED_KINGD
70f0: 4f 4d 20 20 20 20 20 20 20 20 20 20 20 20 20 20  OM              
7100: 20 20 3d 20 20 31 2c 0d 0a 09 53 55 42 4c 41 4e    =  1,...SUBLAN
7110: 47 5f 57 4f 4c 4f 46 5f 53 45 4e 45 47 41 4c 20  G_WOLOF_SENEGAL 
7120: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
7130: 20 20 20 20 20 20 3d 20 20 31 2c 0d 0a 09 53 55        =  1,...SU
7140: 42 4c 41 4e 47 5f 59 4f 52 55 42 41 5f 4e 49 47  BLANG_YORUBA_NIG
7150: 45 52 49 41 20 20 20 20 20 20 20 20 20 20 20 20  ERIA            
7160: 20 20 20 20 20 20 20 20 20 20 3d 20 20 31 2c 0d            =  1,.
7170: 0a 09 53 55 42 4c 41 4e 47 5f 58 48 4f 53 41 5f  ..SUBLANG_XHOSA_
7180: 53 4f 55 54 48 5f 41 46 52 49 43 41 20 20 20 20  SOUTH_AFRICA    
7190: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3d 20                = 
71a0: 20 31 2c 0d 0a 09 53 55 42 4c 41 4e 47 5f 59 41   1,...SUBLANG_YA
71b0: 4b 55 54 5f 52 55 53 53 49 41 20 20 20 20 20 20  KUT_RUSSIA      
71c0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
71d0: 20 20 3d 20 20 31 2c 0d 0a 09 53 55 42 4c 41 4e    =  1,...SUBLAN
71e0: 47 5f 59 49 5f 50 52 43 20 20 20 20 20 20 20 20  G_YI_PRC        
71f0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
7200: 20 20 20 20 20 20 3d 20 20 31 2c 0d 0a 09 53 55        =  1,...SU
7210: 42 4c 41 4e 47 5f 5a 55 4c 55 5f 53 4f 55 54 48  BLANG_ZULU_SOUTH
7220: 5f 41 46 52 49 43 41 20 20 20 20 20 20 20 20 20  _AFRICA         
7230: 20 20 20 20 20 20 20 20 20 20 3d 20 20 31 0d 0a            =  1..
7240: 7d 0d 0a 0d 0a 2f 2f 20 54 68 69 73 20 69 73 20  }....// This is 
7250: 6e 6f 74 20 64 6f 63 75 6d 65 6e 74 65 64 20 6f  not documented o
7260: 6e 20 4d 53 44 4e 0d 0a 63 6f 6e 73 74 20 4e 4c  n MSDN..const NL
7270: 53 5f 56 41 4c 49 44 5f 4c 4f 43 41 4c 45 5f 4d  S_VALID_LOCALE_M
7280: 41 53 4b 20 3d 20 31 30 34 38 35 37 35 3b 0d 0a  ASK = 1048575;..
7290: 0d 0a 2f 2f 20 53 6f 72 74 69 6e 67 20 69 64 65  ..// Sorting ide
72a0: 6e 74 69 66 69 65 72 73 0d 0a 65 6e 75 6d 20 3a  ntifiers..enum :
72b0: 20 57 4f 52 44 20 7b 0d 0a 09 53 4f 52 54 5f 44   WORD {...SORT_D
72c0: 45 46 41 55 4c 54 20 20 20 20 20 20 20 20 20 20  EFAULT          
72d0: 20 20 20 20 3d 20 30 2c 0d 0a 09 53 4f 52 54 5f      = 0,...SORT_
72e0: 4a 41 50 41 4e 45 53 45 5f 58 4a 49 53 20 20 20  JAPANESE_XJIS   
72f0: 20 20 20 20 20 3d 20 30 2c 0d 0a 09 53 4f 52 54       = 0,...SORT
7300: 5f 4a 41 50 41 4e 45 53 45 5f 55 4e 49 43 4f 44  _JAPANESE_UNICOD
7310: 45 20 20 20 20 20 3d 20 31 2c 0d 0a 09 53 4f 52  E     = 1,...SOR
7320: 54 5f 43 48 49 4e 45 53 45 5f 42 49 47 35 20 20  T_CHINESE_BIG5  
7330: 20 20 20 20 20 20 20 3d 20 30 2c 0d 0a 09 53 4f         = 0,...SO
7340: 52 54 5f 43 48 49 4e 45 53 45 5f 50 52 43 50 20  RT_CHINESE_PRCP 
7350: 20 20 20 20 20 20 20 20 3d 20 30 2c 0d 0a 09 53          = 0,...S
7360: 4f 52 54 5f 43 48 49 4e 45 53 45 5f 55 4e 49 43  ORT_CHINESE_UNIC
7370: 4f 44 45 20 20 20 20 20 20 3d 20 31 2c 0d 0a 09  ODE      = 1,...
7380: 53 4f 52 54 5f 43 48 49 4e 45 53 45 5f 50 52 43  SORT_CHINESE_PRC
7390: 20 20 20 20 20 20 20 20 20 20 3d 20 32 2c 0d 0a            = 2,..
73a0: 09 53 4f 52 54 5f 43 48 49 4e 45 53 45 5f 42 4f  .SORT_CHINESE_BO
73b0: 50 4f 4d 4f 46 4f 20 20 20 20 20 3d 20 33 2c 0d  POMOFO     = 3,.
73c0: 0a 09 53 4f 52 54 5f 4b 4f 52 45 41 4e 5f 4b 53  ..SORT_KOREAN_KS
73d0: 43 20 20 20 20 20 20 20 20 20 20 20 3d 20 30 2c  C           = 0,
73e0: 0d 0a 09 53 4f 52 54 5f 4b 4f 52 45 41 4e 5f 55  ...SORT_KOREAN_U
73f0: 4e 49 43 4f 44 45 20 20 20 20 20 20 20 3d 20 31  NICODE       = 1
7400: 2c 0d 0a 09 53 4f 52 54 5f 47 45 52 4d 41 4e 5f  ,...SORT_GERMAN_
7410: 50 48 4f 4e 45 5f 42 4f 4f 4b 20 20 20 20 3d 20  PHONE_BOOK    = 
7420: 31 2c 0d 0a 09 53 4f 52 54 5f 48 55 4e 47 41 52  1,...SORT_HUNGAR
7430: 49 41 4e 5f 44 45 46 41 55 4c 54 20 20 20 20 3d  IAN_DEFAULT    =
7440: 20 30 2c 0d 0a 09 53 4f 52 54 5f 48 55 4e 47 41   0,...SORT_HUNGA
7450: 52 49 41 4e 5f 54 45 43 48 4e 49 43 41 4c 20 20  RIAN_TECHNICAL  
7460: 3d 20 31 2c 0d 0a 09 53 4f 52 54 5f 47 45 4f 52  = 1,...SORT_GEOR
7470: 47 49 41 4e 5f 54 52 41 44 49 54 49 4f 4e 41 4c  GIAN_TRADITIONAL
7480: 20 3d 20 30 2c 0d 0a 09 53 4f 52 54 5f 47 45 4f   = 0,...SORT_GEO
7490: 52 47 49 41 4e 5f 4d 4f 44 45 52 4e 20 20 20 20  RGIAN_MODERN    
74a0: 20 20 3d 20 31 0d 0a 7d 0d 0a 0d 0a 57 4f 52 44    = 1..}....WORD
74b0: 20 4d 41 4b 45 4c 41 4e 47 49 44 28 55 53 48 4f   MAKELANGID(USHO
74c0: 52 54 20 70 2c 20 55 53 48 4f 52 54 20 73 29 20  RT p, USHORT s) 
74d0: 7b 20 72 65 74 75 72 6e 20 63 61 73 74 28 57 4f  { return cast(WO
74e0: 52 44 29 28 28 73 20 3c 3c 20 31 30 29 20 7c 20  RD)((s << 10) | 
74f0: 70 29 3b 20 7d 0d 0a 57 4f 52 44 20 50 52 49 4d  p); }..WORD PRIM
7500: 41 52 59 4c 41 4e 47 49 44 28 57 4f 52 44 20 6c  ARYLANGID(WORD l
7510: 67 69 64 29 20 7b 20 72 65 74 75 72 6e 20 63 61  gid) { return ca
7520: 73 74 28 57 4f 52 44 29 28 6c 67 69 64 20 26 20  st(WORD)(lgid & 
7530: 30 78 33 46 46 29 3b 20 7d 0d 0a 57 4f 52 44 20  0x3FF); }..WORD 
7540: 53 55 42 4c 41 4e 47 49 44 28 57 4f 52 44 20 6c  SUBLANGID(WORD l
7550: 67 69 64 29 20 7b 20 72 65 74 75 72 6e 20 63 61  gid) { return ca
7560: 73 74 28 57 4f 52 44 29 28 6c 67 69 64 20 3e 3e  st(WORD)(lgid >>
7570: 3e 20 31 30 29 3b 20 7d 0d 0a 0d 0a 44 57 4f 52  > 10); }....DWOR
7580: 44 20 4d 41 4b 45 4c 43 49 44 28 57 4f 52 44 20  D MAKELCID(WORD 
7590: 6c 67 69 64 2c 20 57 4f 52 44 20 73 72 74 69 64  lgid, WORD srtid
75a0: 29 20 7b 20 72 65 74 75 72 6e 20 28 63 61 73 74  ) { return (cast
75b0: 28 44 57 4f 52 44 29 20 73 72 74 69 64 20 3c 3c  (DWORD) srtid <<
75c0: 20 31 36 29 20 7c 20 63 61 73 74 28 44 57 4f 52   16) | cast(DWOR
75d0: 44 29 20 6c 67 69 64 3b 20 7d 0d 0a 2f 2f 20 3f  D) lgid; }..// ?
75e0: 3f 3f 0d 0a 2f 2f 44 57 4f 52 44 20 4d 41 4b 45  ??..//DWORD MAKE
75f0: 53 4f 52 54 4c 43 49 44 28 57 4f 52 44 20 6c 67  SORTLCID(WORD lg
7600: 69 64 2c 20 57 4f 52 44 20 73 72 74 69 64 2c 20  id, WORD srtid, 
7610: 57 4f 52 44 20 76 65 72 29 20 7b 20 72 65 74 75  WORD ver) { retu
7620: 72 6e 20 28 4d 41 4b 45 4c 43 49 44 28 6c 67 69  rn (MAKELCID(lgi
7630: 64 2c 20 73 72 74 69 64 29 29 20 7c 20 28 28 63  d, srtid)) | ((c
7640: 61 73 74 28 44 57 4f 52 44 29 76 65 72 29 20 3c  ast(DWORD)ver) <
7650: 3c 20 32 30 29 3b 20 7d 0d 0a 57 4f 52 44 20 4c  < 20); }..WORD L
7660: 41 4e 47 49 44 46 52 4f 4d 4c 43 49 44 28 4c 43  ANGIDFROMLCID(LC
7670: 49 44 20 6c 63 69 64 29 20 7b 20 72 65 74 75 72  ID lcid) { retur
7680: 6e 20 63 61 73 74 28 57 4f 52 44 29 20 6c 63 69  n cast(WORD) lci
7690: 64 3b 20 7d 0d 0a 57 4f 52 44 20 53 4f 52 54 49  d; }..WORD SORTI
76a0: 44 46 52 4f 4d 4c 43 49 44 28 4c 43 49 44 20 6c  DFROMLCID(LCID l
76b0: 63 69 64 29 20 7b 20 72 65 74 75 72 6e 20 63 61  cid) { return ca
76c0: 73 74 28 57 4f 52 44 29 20 28 28 6c 63 69 64 20  st(WORD) ((lcid 
76d0: 3e 3e 3e 20 31 36 29 20 26 20 30 78 30 46 29 3b  >>> 16) & 0x0F);
76e0: 20 7d 0d 0a 57 4f 52 44 20 53 4f 52 54 56 45 52   }..WORD SORTVER
76f0: 53 49 4f 4e 46 52 4f 4d 4c 43 49 44 28 4c 43 49  SIONFROMLCID(LCI
7700: 44 20 6c 63 69 64 29 20 7b 20 72 65 74 75 72 6e  D lcid) { return
7710: 20 63 61 73 74 28 57 4f 52 44 29 20 28 28 6c 63   cast(WORD) ((lc
7720: 69 64 20 3e 3e 3e 20 32 30 29 20 26 20 30 78 30  id >>> 20) & 0x0
7730: 46 29 3b 20 7d 0d 0a 0d 0a 63 6f 6e 73 74 20 57  F); }....const W
7740: 4f 52 44 20 4c 41 4e 47 5f 53 59 53 54 45 4d 5f  ORD LANG_SYSTEM_
7750: 44 45 46 41 55 4c 54 20 3d 20 28 53 55 42 4c 41  DEFAULT = (SUBLA
7760: 4e 47 5f 53 59 53 5f 44 45 46 41 55 4c 54 20 3c  NG_SYS_DEFAULT <
7770: 3c 20 31 30 29 20 7c 20 4c 41 4e 47 5f 4e 45 55  < 10) | LANG_NEU
7780: 54 52 41 4c 3b 0d 0a 63 6f 6e 73 74 20 57 4f 52  TRAL;..const WOR
7790: 44 20 4c 41 4e 47 5f 55 53 45 52 5f 44 45 46 41  D LANG_USER_DEFA
77a0: 55 4c 54 20 20 20 3d 20 28 53 55 42 4c 41 4e 47  ULT   = (SUBLANG
77b0: 5f 44 45 46 41 55 4c 54 20 3c 3c 20 31 30 29 20  _DEFAULT << 10) 
77c0: 7c 20 4c 41 4e 47 5f 4e 45 55 54 52 41 4c 3b 0d  | LANG_NEUTRAL;.
77d0: 0a 63 6f 6e 73 74 20 44 57 4f 52 44 20 4c 4f 43  .const DWORD LOC
77e0: 41 4c 45 5f 4e 45 55 54 52 41 4c 20 20 20 20 20  ALE_NEUTRAL     
77f0: 3d 20 28 53 4f 52 54 5f 44 45 46 41 55 4c 54 20  = (SORT_DEFAULT 
7800: 3c 3c 20 31 36 29 0d 0a 20 20 20 20 20 20 20 20  << 16)..        
7810: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
7820: 20 20 20 20 20 20 20 20 20 7c 20 28 53 55 42 4c           | (SUBL
7830: 41 4e 47 5f 4e 45 55 54 52 41 4c 20 3c 3c 20 31  ANG_NEUTRAL << 1
7840: 30 29 20 7c 20 4c 41 4e 47 5f 4e 45 55 54 52 41  0) | LANG_NEUTRA
7850: 4c 3b 0d 0a 0d 0a 2f 2f 20 2d 2d 2d 0d 0a 65 6e  L;....// ---..en
7860: 75 6d 20 3a 20 42 59 54 45 20 7b 0d 0a 09 41 43  um : BYTE {...AC
7870: 4c 5f 52 45 56 49 53 49 4f 4e 20 20 20 20 3d 20  L_REVISION    = 
7880: 32 2c 0d 0a 09 41 43 4c 5f 52 45 56 49 53 49 4f  2,...ACL_REVISIO
7890: 4e 5f 44 53 20 3d 20 34 0d 0a 7d 0d 0a 0d 0a 2f  N_DS = 4..}..../
78a0: 2f 20 54 68 65 73 65 20 61 72 65 20 6e 6f 74 20  / These are not 
78b0: 64 6f 63 75 6d 65 6e 74 65 64 20 6f 6e 20 4d 53  documented on MS
78c0: 44 4e 0d 0a 65 6e 75 6d 20 3a 20 42 59 54 45 20  DN..enum : BYTE 
78d0: 7b 0d 0a 09 41 43 4c 5f 52 45 56 49 53 49 4f 4e  {...ACL_REVISION
78e0: 31 20 20 20 20 3d 20 31 2c 0d 0a 09 41 43 4c 5f  1    = 1,...ACL_
78f0: 52 45 56 49 53 49 4f 4e 32 2c 0d 0a 09 41 43 4c  REVISION2,...ACL
7900: 5f 52 45 56 49 53 49 4f 4e 33 2c 0d 0a 09 41 43  _REVISION3,...AC
7910: 4c 5f 52 45 56 49 53 49 4f 4e 34 20 2f 2f 20 3d  L_REVISION4 // =
7920: 20 34 0d 0a 7d 0d 0a 0d 0a 63 6f 6e 73 74 20 42   4..}....const B
7930: 59 54 45 0d 0a 09 4d 49 4e 5f 41 43 4c 5f 52 45  YTE...MIN_ACL_RE
7940: 56 49 53 49 4f 4e 20 3d 20 32 2c 0d 0a 09 4d 41  VISION = 2,...MA
7950: 58 5f 41 43 4c 5f 52 45 56 49 53 49 4f 4e 20 3d  X_ACL_REVISION =
7960: 20 34 3b 0d 0a 0d 0a 2f 2b 0d 0a 2f 2f 20 54 68   4;..../+..// Th
7970: 65 73 65 20 61 72 65 6e 27 74 20 6e 65 63 65 73  ese aren't neces
7980: 73 61 72 79 20 66 6f 72 20 44 2e 0d 0a 63 6f 6e  sary for D...con
7990: 73 74 20 4d 49 4e 43 48 41 52 3d 30 78 38 30 3b  st MINCHAR=0x80;
79a0: 0d 0a 63 6f 6e 73 74 20 4d 41 58 43 48 41 52 3d  ..const MAXCHAR=
79b0: 30 78 37 66 3b 0d 0a 63 6f 6e 73 74 20 4d 49 4e  0x7f;..const MIN
79c0: 53 48 4f 52 54 3d 30 78 38 30 30 30 3b 0d 0a 63  SHORT=0x8000;..c
79d0: 6f 6e 73 74 20 4d 41 58 53 48 4f 52 54 3d 30 78  onst MAXSHORT=0x
79e0: 37 66 66 66 3b 0d 0a 63 6f 6e 73 74 20 4d 49 4e  7fff;..const MIN
79f0: 4c 4f 4e 47 3d 30 78 38 30 30 30 30 30 30 30 3b  LONG=0x80000000;
7a00: 0d 0a 63 6f 6e 73 74 20 4d 41 58 4c 4f 4e 47 3d  ..const MAXLONG=
7a10: 30 78 37 66 66 66 66 66 66 66 3b 0d 0a 63 6f 6e  0x7fffffff;..con
7a20: 73 74 20 4d 41 58 42 59 54 45 3d 30 78 66 66 3b  st MAXBYTE=0xff;
7a30: 0d 0a 63 6f 6e 73 74 20 4d 41 58 57 4f 52 44 3d  ..const MAXWORD=
7a40: 30 78 66 66 66 66 3b 0d 0a 63 6f 6e 73 74 20 4d  0xffff;..const M
7a50: 41 58 44 57 4f 52 44 3d 30 78 66 66 66 66 66 66  AXDWORD=0xffffff
7a60: 66 66 3b 0d 0a 2b 2f 0d 0a 0d 0a 2f 2f 20 53 59  ff;..+/....// SY
7a70: 53 54 45 4d 5f 49 4e 46 4f 2e 64 77 50 72 6f 63  STEM_INFO.dwProc
7a80: 65 73 73 6f 72 54 79 70 65 0d 0a 65 6e 75 6d 20  essorType..enum 
7a90: 3a 20 44 57 4f 52 44 20 7b 0d 0a 09 50 52 4f 43  : DWORD {...PROC
7aa0: 45 53 53 4f 52 5f 49 4e 54 45 4c 5f 33 38 36 20  ESSOR_INTEL_386 
7ab0: 20 20 20 20 3d 20 20 20 33 38 36 2c 0d 0a 09 50      =   386,...P
7ac0: 52 4f 43 45 53 53 4f 52 5f 49 4e 54 45 4c 5f 34  ROCESSOR_INTEL_4
7ad0: 38 36 20 20 20 20 20 3d 20 20 20 34 38 36 2c 0d  86     =   486,.
7ae0: 0a 09 50 52 4f 43 45 53 53 4f 52 5f 49 4e 54 45  ..PROCESSOR_INTE
7af0: 4c 5f 50 45 4e 54 49 55 4d 20 3d 20 20 20 35 38  L_PENTIUM =   58
7b00: 36 2c 0d 0a 09 50 52 4f 43 45 53 53 4f 52 5f 4d  6,...PROCESSOR_M
7b10: 49 50 53 5f 52 34 30 30 30 20 20 20 20 3d 20 20  IPS_R4000    =  
7b20: 34 30 30 30 2c 0d 0a 09 50 52 4f 43 45 53 53 4f  4000,...PROCESSO
7b30: 52 5f 41 4c 50 48 41 5f 32 31 30 36 34 20 20 20  R_ALPHA_21064   
7b40: 3d 20 32 31 30 36 34 2c 0d 0a 09 50 52 4f 43 45  = 21064,...PROCE
7b50: 53 53 4f 52 5f 49 4e 54 45 4c 5f 49 41 36 34 20  SSOR_INTEL_IA64 
7b60: 20 20 20 3d 20 20 32 32 30 30 0d 0a 7d 0d 0a 0d     =  2200..}...
7b70: 0a 2f 2f 20 53 59 53 54 45 4d 5f 49 4e 46 4f 2e  .// SYSTEM_INFO.
7b80: 77 50 72 6f 63 65 73 73 6f 72 41 72 63 68 69 74  wProcessorArchit
7b90: 65 63 74 75 72 65 0d 0a 65 6e 75 6d 20 3a 20 57  ecture..enum : W
7ba0: 4f 52 44 20 7b 0d 0a 09 50 52 4f 43 45 53 53 4f  ORD {...PROCESSO
7bb0: 52 5f 41 52 43 48 49 54 45 43 54 55 52 45 5f 49  R_ARCHITECTURE_I
7bc0: 4e 54 45 4c 2c 0d 0a 09 50 52 4f 43 45 53 53 4f  NTEL,...PROCESSO
7bd0: 52 5f 41 52 43 48 49 54 45 43 54 55 52 45 5f 4d  R_ARCHITECTURE_M
7be0: 49 50 53 2c 0d 0a 09 50 52 4f 43 45 53 53 4f 52  IPS,...PROCESSOR
7bf0: 5f 41 52 43 48 49 54 45 43 54 55 52 45 5f 41 4c  _ARCHITECTURE_AL
7c00: 50 48 41 2c 0d 0a 09 50 52 4f 43 45 53 53 4f 52  PHA,...PROCESSOR
7c10: 5f 41 52 43 48 49 54 45 43 54 55 52 45 5f 50 50  _ARCHITECTURE_PP
7c20: 43 2c 0d 0a 09 50 52 4f 43 45 53 53 4f 52 5f 41  C,...PROCESSOR_A
7c30: 52 43 48 49 54 45 43 54 55 52 45 5f 53 48 58 2c  RCHITECTURE_SHX,
7c40: 0d 0a 09 50 52 4f 43 45 53 53 4f 52 5f 41 52 43  ...PROCESSOR_ARC
7c50: 48 49 54 45 43 54 55 52 45 5f 41 52 4d 2c 0d 0a  HITECTURE_ARM,..
7c60: 09 50 52 4f 43 45 53 53 4f 52 5f 41 52 43 48 49  .PROCESSOR_ARCHI
7c70: 54 45 43 54 55 52 45 5f 49 41 36 34 2c 0d 0a 09  TECTURE_IA64,...
7c80: 50 52 4f 43 45 53 53 4f 52 5f 41 52 43 48 49 54  PROCESSOR_ARCHIT
7c90: 45 43 54 55 52 45 5f 41 4c 50 48 41 36 34 2c 0d  ECTURE_ALPHA64,.
7ca0: 0a 09 50 52 4f 43 45 53 53 4f 52 5f 41 52 43 48  ..PROCESSOR_ARCH
7cb0: 49 54 45 43 54 55 52 45 5f 4d 53 49 4c 2c 0d 0a  ITECTURE_MSIL,..
7cc0: 09 50 52 4f 43 45 53 53 4f 52 5f 41 52 43 48 49  .PROCESSOR_ARCHI
7cd0: 54 45 43 54 55 52 45 5f 41 4d 44 36 34 2c 0d 0a  TECTURE_AMD64,..
7ce0: 09 50 52 4f 43 45 53 53 4f 52 5f 41 52 43 48 49  .PROCESSOR_ARCHI
7cf0: 54 45 43 54 55 52 45 5f 49 41 33 32 5f 4f 4e 5f  TECTURE_IA32_ON_
7d00: 57 49 4e 36 34 2c 20 2f 2f 20 3d 20 31 30 0d 0a  WIN64, // = 10..
7d10: 09 50 52 4f 43 45 53 53 4f 52 5f 41 52 43 48 49  .PROCESSOR_ARCHI
7d20: 54 45 43 54 55 52 45 5f 55 4e 4b 4e 4f 57 4e 20  TECTURE_UNKNOWN 
7d30: 3d 20 30 78 46 46 46 46 0d 0a 7d 0d 0a 0d 0a 2f  = 0xFFFF..}..../
7d40: 2f 20 49 73 50 72 6f 63 65 73 73 6f 72 46 65 61  / IsProcessorFea
7d50: 74 75 72 65 50 72 65 73 65 6e 74 28 29 0d 0a 65  turePresent()..e
7d60: 6e 75 6d 20 3a 20 44 57 4f 52 44 20 7b 0d 0a 09  num : DWORD {...
7d70: 50 46 5f 46 4c 4f 41 54 49 4e 47 5f 50 4f 49 4e  PF_FLOATING_POIN
7d80: 54 5f 50 52 45 43 49 53 49 4f 4e 5f 45 52 52 41  T_PRECISION_ERRA
7d90: 54 41 2c 0d 0a 09 50 46 5f 46 4c 4f 41 54 49 4e  TA,...PF_FLOATIN
7da0: 47 5f 50 4f 49 4e 54 5f 45 4d 55 4c 41 54 45 44  G_POINT_EMULATED
7db0: 2c 0d 0a 09 50 46 5f 43 4f 4d 50 41 52 45 5f 45  ,...PF_COMPARE_E
7dc0: 58 43 48 41 4e 47 45 5f 44 4f 55 42 4c 45 2c 0d  XCHANGE_DOUBLE,.
7dd0: 0a 09 50 46 5f 4d 4d 58 5f 49 4e 53 54 52 55 43  ..PF_MMX_INSTRUC
7de0: 54 49 4f 4e 53 5f 41 56 41 49 4c 41 42 4c 45 2c  TIONS_AVAILABLE,
7df0: 0d 0a 09 50 46 5f 50 50 43 5f 4d 4f 56 45 4d 45  ...PF_PPC_MOVEME
7e00: 4d 5f 36 34 42 49 54 5f 4f 4b 2c 0d 0a 09 50 46  M_64BIT_OK,...PF
7e10: 5f 41 4c 50 48 41 5f 42 59 54 45 5f 49 4e 53 54  _ALPHA_BYTE_INST
7e20: 52 55 43 54 49 4f 4e 53 2c 0d 0a 09 50 46 5f 58  RUCTIONS,...PF_X
7e30: 4d 4d 49 5f 49 4e 53 54 52 55 43 54 49 4f 4e 53  MMI_INSTRUCTIONS
7e40: 5f 41 56 41 49 4c 41 42 4c 45 2c 0d 0a 09 50 46  _AVAILABLE,...PF
7e50: 5f 33 44 4e 4f 57 5f 49 4e 53 54 52 55 43 54 49  _3DNOW_INSTRUCTI
7e60: 4f 4e 53 5f 41 56 41 49 4c 41 42 4c 45 2c 0d 0a  ONS_AVAILABLE,..
7e70: 09 50 46 5f 52 44 54 53 43 5f 49 4e 53 54 52 55  .PF_RDTSC_INSTRU
7e80: 43 54 49 4f 4e 5f 41 56 41 49 4c 41 42 4c 45 2c  CTION_AVAILABLE,
7e90: 0d 0a 09 50 46 5f 50 41 45 5f 45 4e 41 42 4c 45  ...PF_PAE_ENABLE
7ea0: 44 2c 0d 0a 09 50 46 5f 58 4d 4d 49 36 34 5f 49  D,...PF_XMMI64_I
7eb0: 4e 53 54 52 55 43 54 49 4f 4e 53 5f 41 56 41 49  NSTRUCTIONS_AVAI
7ec0: 4c 41 42 4c 45 0d 0a 7d 0d 0a 0d 0a 2f 2f 20 4d  LABLE..}....// M
7ed0: 69 6e 47 57 3a 20 61 6c 73 6f 20 69 6e 20 64 64  inGW: also in dd
7ee0: 6b 2f 6e 74 69 66 73 2e 68 0d 0a 65 6e 75 6d 20  k/ntifs.h..enum 
7ef0: 3a 20 44 57 4f 52 44 20 7b 0d 0a 09 46 49 4c 45  : DWORD {...FILE
7f00: 5f 41 43 54 49 4f 4e 5f 41 44 44 45 44 20 3d 20  _ACTION_ADDED = 
7f10: 31 2c 0d 0a 09 46 49 4c 45 5f 41 43 54 49 4f 4e  1,...FILE_ACTION
7f20: 5f 52 45 4d 4f 56 45 44 2c 0d 0a 09 46 49 4c 45  _REMOVED,...FILE
7f30: 5f 41 43 54 49 4f 4e 5f 4d 4f 44 49 46 49 45 44  _ACTION_MODIFIED
7f40: 2c 0d 0a 09 46 49 4c 45 5f 41 43 54 49 4f 4e 5f  ,...FILE_ACTION_
7f50: 52 45 4e 41 4d 45 44 5f 4f 4c 44 5f 4e 41 4d 45  RENAMED_OLD_NAME
7f60: 2c 0d 0a 09 46 49 4c 45 5f 41 43 54 49 4f 4e 5f  ,...FILE_ACTION_
7f70: 52 45 4e 41 4d 45 44 5f 4e 45 57 5f 4e 41 4d 45  RENAMED_NEW_NAME
7f80: 2c 0d 0a 09 46 49 4c 45 5f 41 43 54 49 4f 4e 5f  ,...FILE_ACTION_
7f90: 41 44 44 45 44 5f 53 54 52 45 41 4d 2c 0d 0a 09  ADDED_STREAM,...
7fa0: 46 49 4c 45 5f 41 43 54 49 4f 4e 5f 52 45 4d 4f  FILE_ACTION_REMO
7fb0: 56 45 44 5f 53 54 52 45 41 4d 2c 0d 0a 09 46 49  VED_STREAM,...FI
7fc0: 4c 45 5f 41 43 54 49 4f 4e 5f 4d 4f 44 49 46 49  LE_ACTION_MODIFI
7fd0: 45 44 5f 53 54 52 45 41 4d 2c 0d 0a 09 46 49 4c  ED_STREAM,...FIL
7fe0: 45 5f 41 43 54 49 4f 4e 5f 52 45 4d 4f 56 45 44  E_ACTION_REMOVED
7ff0: 5f 42 59 5f 44 45 4c 45 54 45 2c 0d 0a 09 46 49  _BY_DELETE,...FI
8000: 4c 45 5f 41 43 54 49 4f 4e 5f 49 44 5f 4e 4f 54  LE_ACTION_ID_NOT
8010: 5f 54 55 4e 4e 45 4c 4c 45 44 2c 0d 0a 09 46 49  _TUNNELLED,...FI
8020: 4c 45 5f 41 43 54 49 4f 4e 5f 54 55 4e 4e 45 4c  LE_ACTION_TUNNEL
8030: 4c 45 44 5f 49 44 5f 43 4f 4c 4c 49 53 49 4f 4e  LED_ID_COLLISION
8040: 20 2f 2f 20 3d 20 31 31 0d 0a 7d 0d 0a 2f 2f 20   // = 11..}..// 
8050: 4d 69 6e 47 57 3a 20 65 6e 64 20 6e 74 69 66 73  MinGW: end ntifs
8060: 2e 68 0d 0a 0d 0a 63 6f 6e 73 74 20 44 57 4f 52  .h....const DWOR
8070: 44 0d 0a 09 48 45 41 50 5f 4e 4f 5f 53 45 52 49  D...HEAP_NO_SERI
8080: 41 4c 49 5a 45 20 20 20 20 20 20 20 20 20 20 20  ALIZE           
8090: 20 20 3d 20 30 78 30 31 2c 0d 0a 09 48 45 41 50    = 0x01,...HEAP
80a0: 5f 47 52 4f 57 41 42 4c 45 20 20 20 20 20 20 20  _GROWABLE       
80b0: 20 20 20 20 20 20 20 20 20 20 3d 20 30 78 30 32            = 0x02
80c0: 2c 0d 0a 09 48 45 41 50 5f 47 45 4e 45 52 41 54  ,...HEAP_GENERAT
80d0: 45 5f 45 58 43 45 50 54 49 4f 4e 53 20 20 20 20  E_EXCEPTIONS    
80e0: 20 20 3d 20 30 78 30 34 2c 0d 0a 09 48 45 41 50    = 0x04,...HEAP
80f0: 5f 5a 45 52 4f 5f 4d 45 4d 4f 52 59 20 20 20 20  _ZERO_MEMORY    
8100: 20 20 20 20 20 20 20 20 20 20 3d 20 30 78 30 38            = 0x08
8110: 2c 0d 0a 09 48 45 41 50 5f 52 45 41 4c 4c 4f 43  ,...HEAP_REALLOC
8120: 5f 49 4e 5f 50 4c 41 43 45 5f 4f 4e 4c 59 20 20  _IN_PLACE_ONLY  
8130: 20 20 3d 20 30 78 31 30 2c 0d 0a 09 48 45 41 50    = 0x10,...HEAP
8140: 5f 54 41 49 4c 5f 43 48 45 43 4b 49 4e 47 5f 45  _TAIL_CHECKING_E
8150: 4e 41 42 4c 45 44 20 20 20 20 3d 20 30 78 32 30  NABLED    = 0x20
8160: 2c 0d 0a 09 48 45 41 50 5f 46 52 45 45 5f 43 48  ,...HEAP_FREE_CH
8170: 45 43 4b 49 4e 47 5f 45 4e 41 42 4c 45 44 20 20  ECKING_ENABLED  
8180: 20 20 3d 20 30 78 34 30 2c 0d 0a 09 48 45 41 50    = 0x40,...HEAP
8190: 5f 44 49 53 41 42 4c 45 5f 43 4f 41 4c 45 53 43  _DISABLE_COALESC
81a0: 45 5f 4f 4e 5f 46 52 45 45 20 3d 20 30 78 38 30  E_ON_FREE = 0x80
81b0: 3b 0d 0a 0d 0a 2f 2f 20 54 68 65 73 65 20 61 72  ;....// These ar
81c0: 65 20 6e 6f 74 20 64 6f 63 75 6d 65 6e 74 65 64  e not documented
81d0: 20 6f 6e 20 4d 53 44 4e 0d 0a 63 6f 6e 73 74 20   on MSDN..const 
81e0: 48 45 41 50 5f 43 52 45 41 54 45 5f 41 4c 49 47  HEAP_CREATE_ALIG
81f0: 4e 5f 31 36 20 20 20 20 20 20 20 3d 20 30 3b 0d  N_16       = 0;.
8200: 0a 63 6f 6e 73 74 20 48 45 41 50 5f 43 52 45 41  .const HEAP_CREA
8210: 54 45 5f 45 4e 41 42 4c 45 5f 54 52 41 43 49 4e  TE_ENABLE_TRACIN
8220: 47 20 3d 20 30 78 30 32 30 30 30 30 3b 0d 0a 63  G = 0x020000;..c
8230: 6f 6e 73 74 20 48 45 41 50 5f 4d 41 58 49 4d 55  onst HEAP_MAXIMU
8240: 4d 5f 54 41 47 20 20 20 20 20 20 20 20 20 20 20  M_TAG           
8250: 3d 20 30 78 30 30 30 46 46 46 3b 0d 0a 63 6f 6e  = 0x000FFF;..con
8260: 73 74 20 48 45 41 50 5f 50 53 45 55 44 4f 5f 54  st HEAP_PSEUDO_T
8270: 41 47 5f 46 4c 41 47 20 20 20 20 20 20 20 3d 20  AG_FLAG       = 
8280: 30 78 30 30 38 30 30 30 3b 0d 0a 63 6f 6e 73 74  0x008000;..const
8290: 20 48 45 41 50 5f 54 41 47 5f 53 48 49 46 54 20   HEAP_TAG_SHIFT 
82a0: 20 20 20 20 20 20 20 20 20 20 20 20 3d 20 31 36              = 16
82b0: 3b 0d 0a 2f 2f 20 3f 3f 3f 0d 0a 2f 2f 4d 41 43  ;..// ???..//MAC
82c0: 52 4f 20 23 64 65 66 69 6e 65 20 48 45 41 50 5f  RO #define HEAP_
82d0: 4d 41 4b 45 5f 54 41 47 5f 46 4c 41 47 53 28 62  MAKE_TAG_FLAGS(b
82e0: 2c 6f 29 20 28 28 44 57 4f 52 44 29 28 28 62 29  ,o) ((DWORD)((b)
82f0: 2b 28 6f 29 3c 3c 31 36 29 29 29 0d 0a 0d 0a 63  +(o)<<16)))....c
8300: 6f 6e 73 74 20 41 43 43 45 53 53 5f 4d 41 53 4b  onst ACCESS_MASK
8310: 0d 0a 09 4b 45 59 5f 51 55 45 52 59 5f 56 41 4c  ...KEY_QUERY_VAL
8320: 55 45 20 20 20 20 20 20 20 20 3d 20 30 78 30 30  UE        = 0x00
8330: 30 30 30 31 2c 0d 0a 09 4b 45 59 5f 53 45 54 5f  0001,...KEY_SET_
8340: 56 41 4c 55 45 20 20 20 20 20 20 20 20 20 20 3d  VALUE          =
8350: 20 30 78 30 30 30 30 30 32 2c 0d 0a 09 4b 45 59   0x000002,...KEY
8360: 5f 43 52 45 41 54 45 5f 53 55 42 5f 4b 45 59 20  _CREATE_SUB_KEY 
8370: 20 20 20 20 3d 20 30 78 30 30 30 30 30 34 2c 0d      = 0x000004,.
8380: 0a 09 4b 45 59 5f 45 4e 55 4d 45 52 41 54 45 5f  ..KEY_ENUMERATE_
8390: 53 55 42 5f 4b 45 59 53 20 3d 20 30 78 30 30 30  SUB_KEYS = 0x000
83a0: 30 30 38 2c 0d 0a 09 4b 45 59 5f 4e 4f 54 49 46  008,...KEY_NOTIF
83b0: 59 20 20 20 20 20 20 20 20 20 20 20 20 20 3d 20  Y             = 
83c0: 30 78 30 30 30 30 31 30 2c 0d 0a 09 4b 45 59 5f  0x000010,...KEY_
83d0: 43 52 45 41 54 45 5f 4c 49 4e 4b 20 20 20 20 20  CREATE_LINK     
83e0: 20 20 20 3d 20 30 78 30 30 30 30 32 30 2c 0d 0a     = 0x000020,..
83f0: 09 4b 45 59 5f 57 52 49 54 45 20 20 20 20 20 20  .KEY_WRITE      
8400: 20 20 20 20 20 20 20 20 3d 20 30 78 30 32 30 30          = 0x0200
8410: 30 36 2c 0d 0a 09 4b 45 59 5f 45 58 45 43 55 54  06,...KEY_EXECUT
8420: 45 20 20 20 20 20 20 20 20 20 20 20 20 3d 20 30  E            = 0
8430: 78 30 32 30 30 31 39 2c 0d 0a 09 4b 45 59 5f 52  x020019,...KEY_R
8440: 45 41 44 20 20 20 20 20 20 20 20 20 20 20 20 20  EAD             
8450: 20 20 3d 20 30 78 30 32 30 30 31 39 2c 0d 0a 09    = 0x020019,...
8460: 4b 45 59 5f 41 4c 4c 5f 41 43 43 45 53 53 20 20  KEY_ALL_ACCESS  
8470: 20 20 20 20 20 20 20 3d 20 30 78 30 46 30 30 33         = 0x0F003
8480: 46 3b 0d 0a 0d 0a 73 74 61 74 69 63 20 69 66 20  F;....static if 
8490: 28 5f 57 49 4e 33 32 5f 57 49 4e 4e 54 20 3e 3d  (_WIN32_WINNT >=
84a0: 20 30 78 35 30 32 29 20 7b 0d 0a 09 63 6f 6e 73   0x502) {...cons
84b0: 74 20 41 43 43 45 53 53 5f 4d 41 53 4b 0d 0a 09  t ACCESS_MASK...
84c0: 09 4b 45 59 5f 57 4f 57 36 34 5f 36 34 4b 45 59  .KEY_WOW64_64KEY
84d0: 20 20 20 20 3d 20 30 78 30 30 30 31 30 30 2c 0d      = 0x000100,.
84e0: 0a 09 09 4b 45 59 5f 57 4f 57 36 34 5f 33 32 4b  ...KEY_WOW64_32K
84f0: 45 59 20 20 20 20 3d 20 30 78 30 30 30 32 30 30  EY    = 0x000200
8500: 3b 0d 0a 7d 0d 0a 0d 0a 63 6f 6e 73 74 20 44 57  ;..}....const DW
8510: 4f 52 44 0d 0a 09 52 45 47 5f 57 48 4f 4c 45 5f  ORD...REG_WHOLE_
8520: 48 49 56 45 5f 56 4f 4c 41 54 49 4c 45 20 3d 20  HIVE_VOLATILE = 
8530: 31 2c 0d 0a 09 52 45 47 5f 52 45 46 52 45 53 48  1,...REG_REFRESH
8540: 5f 48 49 56 45 20 20 20 20 20 20 20 20 3d 20 32  _HIVE        = 2
8550: 2c 0d 0a 09 52 45 47 5f 4e 4f 5f 4c 41 5a 59 5f  ,...REG_NO_LAZY_
8560: 46 4c 55 53 48 20 20 20 20 20 20 20 3d 20 34 3b  FLUSH       = 4;
8570: 0d 0a 0d 0a 63 6f 6e 73 74 20 44 57 4f 52 44 0d  ....const DWORD.
8580: 0a 09 52 45 47 5f 4f 50 54 49 4f 4e 5f 52 45 53  ..REG_OPTION_RES
8590: 45 52 56 45 44 20 20 20 20 20 20 20 3d 20 20 30  ERVED       =  0
85a0: 2c 0d 0a 09 52 45 47 5f 4f 50 54 49 4f 4e 5f 4e  ,...REG_OPTION_N
85b0: 4f 4e 5f 56 4f 4c 41 54 49 4c 45 20 20 20 3d 20  ON_VOLATILE   = 
85c0: 20 30 2c 0d 0a 09 52 45 47 5f 4f 50 54 49 4f 4e   0,...REG_OPTION
85d0: 5f 56 4f 4c 41 54 49 4c 45 20 20 20 20 20 20 20  _VOLATILE       
85e0: 3d 20 20 31 2c 0d 0a 09 52 45 47 5f 4f 50 54 49  =  1,...REG_OPTI
85f0: 4f 4e 5f 43 52 45 41 54 45 5f 4c 49 4e 4b 20 20  ON_CREATE_LINK  
8600: 20 20 3d 20 20 32 2c 0d 0a 09 52 45 47 5f 4f 50    =  2,...REG_OP
8610: 54 49 4f 4e 5f 42 41 43 4b 55 50 5f 52 45 53 54  TION_BACKUP_REST
8620: 4f 52 45 20 3d 20 20 34 2c 0d 0a 09 52 45 47 5f  ORE =  4,...REG_
8630: 4f 50 54 49 4f 4e 5f 4f 50 45 4e 5f 4c 49 4e 4b  OPTION_OPEN_LINK
8640: 20 20 20 20 20 20 3d 20 20 38 2c 0d 0a 09 52 45        =  8,...RE
8650: 47 5f 4c 45 47 41 4c 5f 4f 50 54 49 4f 4e 20 20  G_LEGAL_OPTION  
8660: 20 20 20 20 20 20 20 20 3d 20 31 35 3b 0d 0a 0d          = 15;...
8670: 0a 63 6f 6e 73 74 20 53 45 43 55 52 49 54 59 5f  .const SECURITY_
8680: 49 4e 46 4f 52 4d 41 54 49 4f 4e 0d 0a 09 4f 57  INFORMATION...OW
8690: 4e 45 52 5f 53 45 43 55 52 49 54 59 5f 49 4e 46  NER_SECURITY_INF
86a0: 4f 52 4d 41 54 49 4f 4e 20 20 20 20 20 20 20 20  ORMATION        
86b0: 20 20 20 20 3d 20 30 78 30 30 30 30 30 30 30 31      = 0x00000001
86c0: 2c 0d 0a 09 47 52 4f 55 50 5f 53 45 43 55 52 49  ,...GROUP_SECURI
86d0: 54 59 5f 49 4e 46 4f 52 4d 41 54 49 4f 4e 20 20  TY_INFORMATION  
86e0: 20 20 20 20 20 20 20 20 20 20 3d 20 30 78 30 30            = 0x00
86f0: 30 30 30 30 30 32 2c 0d 0a 09 44 41 43 4c 5f 53  000002,...DACL_S
8700: 45 43 55 52 49 54 59 5f 49 4e 46 4f 52 4d 41 54  ECURITY_INFORMAT
8710: 49 4f 4e 20 20 20 20 20 20 20 20 20 20 20 20 20  ION             
8720: 3d 20 30 78 30 30 30 30 30 30 30 34 2c 0d 0a 09  = 0x00000004,...
8730: 53 41 43 4c 5f 53 45 43 55 52 49 54 59 5f 49 4e  SACL_SECURITY_IN
8740: 46 4f 52 4d 41 54 49 4f 4e 20 20 20 20 20 20 20  FORMATION       
8750: 20 20 20 20 20 20 3d 20 30 78 30 30 30 30 30 30        = 0x000000
8760: 30 38 2c 0d 0a 09 4c 41 42 45 4c 5f 53 45 43 55  08,...LABEL_SECU
8770: 52 49 54 59 5f 49 4e 46 4f 52 4d 41 54 49 4f 4e  RITY_INFORMATION
8780: 20 20 20 20 20 20 20 20 20 20 20 20 3d 20 30 78              = 0x
8790: 30 30 30 30 30 30 31 30 2c 0d 0a 09 55 4e 50 52  00000010,...UNPR
87a0: 4f 54 45 43 54 45 44 5f 53 41 43 4c 5f 53 45 43  OTECTED_SACL_SEC
87b0: 55 52 49 54 59 5f 49 4e 46 4f 52 4d 41 54 49 4f  URITY_INFORMATIO
87c0: 4e 20 3d 20 30 78 31 30 30 30 30 30 30 30 2c 0d  N = 0x10000000,.
87d0: 0a 09 55 4e 50 52 4f 54 45 43 54 45 44 5f 44 41  ..UNPROTECTED_DA
87e0: 43 4c 5f 53 45 43 55 52 49 54 59 5f 49 4e 46 4f  CL_SECURITY_INFO
87f0: 52 4d 41 54 49 4f 4e 20 3d 20 30 78 32 30 30 30  RMATION = 0x2000
8800: 30 30 30 30 2c 0d 0a 09 50 52 4f 54 45 43 54 45  0000,...PROTECTE
8810: 44 5f 53 41 43 4c 5f 53 45 43 55 52 49 54 59 5f  D_SACL_SECURITY_
8820: 49 4e 46 4f 52 4d 41 54 49 4f 4e 20 20 20 3d 20  INFORMATION   = 
8830: 30 78 34 30 30 30 30 30 30 30 2c 0d 0a 09 50 52  0x40000000,...PR
8840: 4f 54 45 43 54 45 44 5f 44 41 43 4c 5f 53 45 43  OTECTED_DACL_SEC
8850: 55 52 49 54 59 5f 49 4e 46 4f 52 4d 41 54 49 4f  URITY_INFORMATIO
8860: 4e 20 20 20 3d 20 30 78 38 30 30 30 30 30 30 30  N   = 0x80000000
8870: 3b 0d 0a 0d 0a 63 6f 6e 73 74 20 44 57 4f 52 44  ;....const DWORD
8880: 20 4d 41 58 49 4d 55 4d 5f 50 52 4f 43 45 53 53   MAXIMUM_PROCESS
8890: 4f 52 53 20 3d 20 33 32 3b 0d 0a 0d 0a 2f 2f 20  ORS = 32;....// 
88a0: 56 69 72 74 75 61 6c 41 6c 6c 6f 63 28 29 2c 20  VirtualAlloc(), 
88b0: 65 74 63 0d 0a 2f 2f 20 2d 2d 2d 2d 2d 2d 2d 2d  etc..// --------
88c0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0d 0a 0d 0a 65  -----------....e
88d0: 6e 75 6d 20 3a 20 44 57 4f 52 44 20 7b 0d 0a 09  num : DWORD {...
88e0: 50 41 47 45 5f 4e 4f 41 43 43 45 53 53 20 20 20  PAGE_NOACCESS   
88f0: 20 20 20 20 20 20 20 3d 20 30 78 30 30 30 31 2c         = 0x0001,
8900: 0d 0a 09 50 41 47 45 5f 52 45 41 44 4f 4e 4c 59  ...PAGE_READONLY
8910: 20 20 20 20 20 20 20 20 20 20 3d 20 30 78 30 30            = 0x00
8920: 30 32 2c 0d 0a 09 50 41 47 45 5f 52 45 41 44 57  02,...PAGE_READW
8930: 52 49 54 45 20 20 20 20 20 20 20 20 20 3d 20 30  RITE         = 0
8940: 78 30 30 30 34 2c 0d 0a 09 50 41 47 45 5f 57 52  x0004,...PAGE_WR
8950: 49 54 45 43 4f 50 59 20 20 20 20 20 20 20 20 20  ITECOPY         
8960: 3d 20 30 78 30 30 30 38 2c 0d 0a 09 50 41 47 45  = 0x0008,...PAGE
8970: 5f 45 58 45 43 55 54 45 20 20 20 20 20 20 20 20  _EXECUTE        
8980: 20 20 20 3d 20 30 78 30 30 31 30 2c 0d 0a 09 50     = 0x0010,...P
8990: 41 47 45 5f 45 58 45 43 55 54 45 5f 52 45 41 44  AGE_EXECUTE_READ
89a0: 20 20 20 20 20 20 3d 20 30 78 30 30 32 30 2c 0d        = 0x0020,.
89b0: 0a 09 50 41 47 45 5f 45 58 45 43 55 54 45 5f 52  ..PAGE_EXECUTE_R
89c0: 45 41 44 57 52 49 54 45 20 3d 20 30 78 30 30 34  EADWRITE = 0x004
89d0: 30 2c 0d 0a 09 50 41 47 45 5f 45 58 45 43 55 54  0,...PAGE_EXECUT
89e0: 45 5f 57 52 49 54 45 43 4f 50 59 20 3d 20 30 78  E_WRITECOPY = 0x
89f0: 30 30 38 30 2c 0d 0a 09 50 41 47 45 5f 47 55 41  0080,...PAGE_GUA
8a00: 52 44 20 20 20 20 20 20 20 20 20 20 20 20 20 3d  RD             =
8a10: 20 30 78 30 31 30 30 2c 0d 0a 09 50 41 47 45 5f   0x0100,...PAGE_
8a20: 4e 4f 43 41 43 48 45 20 20 20 20 20 20 20 20 20  NOCACHE         
8a30: 20 20 3d 20 30 78 30 32 30 30 0d 0a 7d 0d 0a 0d    = 0x0200..}...
8a40: 0a 65 6e 75 6d 20 3a 20 44 57 4f 52 44 20 7b 0d  .enum : DWORD {.
8a50: 0a 09 4d 45 4d 5f 43 4f 4d 4d 49 54 20 20 20 20  ..MEM_COMMIT    
8a60: 20 20 3d 20 30 78 30 30 30 30 31 30 30 30 2c 0d    = 0x00001000,.
8a70: 0a 09 4d 45 4d 5f 52 45 53 45 52 56 45 20 20 20  ..MEM_RESERVE   
8a80: 20 20 3d 20 30 78 30 30 30 30 32 30 30 30 2c 0d    = 0x00002000,.
8a90: 0a 09 4d 45 4d 5f 44 45 43 4f 4d 4d 49 54 20 20  ..MEM_DECOMMIT  
8aa0: 20 20 3d 20 30 78 30 30 30 30 34 30 30 30 2c 0d    = 0x00004000,.
8ab0: 0a 09 4d 45 4d 5f 52 45 4c 45 41 53 45 20 20 20  ..MEM_RELEASE   
8ac0: 20 20 3d 20 30 78 30 30 30 30 38 30 30 30 2c 0d    = 0x00008000,.
8ad0: 0a 09 4d 45 4d 5f 46 52 45 45 20 20 20 20 20 20  ..MEM_FREE      
8ae0: 20 20 3d 20 30 78 30 30 30 31 30 30 30 30 2c 0d    = 0x00010000,.
8af0: 0a 09 4d 45 4d 5f 50 52 49 56 41 54 45 20 20 20  ..MEM_PRIVATE   
8b00: 20 20 3d 20 30 78 30 30 30 32 30 30 30 30 2c 0d    = 0x00020000,.
8b10: 0a 09 4d 45 4d 5f 4d 41 50 50 45 44 20 20 20 20  ..MEM_MAPPED    
8b20: 20 20 3d 20 30 78 30 30 30 34 30 30 30 30 2c 0d    = 0x00040000,.
8b30: 0a 09 4d 45 4d 5f 52 45 53 45 54 20 20 20 20 20  ..MEM_RESET     
8b40: 20 20 3d 20 30 78 30 30 30 38 30 30 30 30 2c 0d    = 0x00080000,.
8b50: 0a 09 4d 45 4d 5f 54 4f 50 5f 44 4f 57 4e 20 20  ..MEM_TOP_DOWN  
8b60: 20 20 3d 20 30 78 30 30 31 30 30 30 30 30 2c 0d    = 0x00100000,.
8b70: 0a 09 4d 45 4d 5f 57 52 49 54 45 5f 57 41 54 43  ..MEM_WRITE_WATC
8b80: 48 20 3d 20 30 78 30 30 32 30 30 30 30 30 2c 20  H = 0x00200000, 
8b90: 2f 2f 20 4d 69 6e 47 57 20 28 3f 3f 3f 29 3a 20  // MinGW (???): 
8ba0: 39 38 2f 4d 65 0d 0a 09 4d 45 4d 5f 50 48 59 53  98/Me...MEM_PHYS
8bb0: 49 43 41 4c 20 20 20 20 3d 20 30 78 30 30 34 30  ICAL    = 0x0040
8bc0: 30 30 30 30 2c 0d 0a 09 4d 45 4d 5f 34 4d 42 5f  0000,...MEM_4MB_
8bd0: 50 41 47 45 53 20 20 20 3d 20 30 78 38 30 30 30  PAGES   = 0x8000
8be0: 30 30 30 30 0d 0a 7d 0d 0a 0d 0a 2f 2f 20 4d 69  0000..}....// Mi
8bf0: 6e 47 57 3a 20 61 6c 73 6f 20 69 6e 20 64 64 6b  nGW: also in ddk
8c00: 2f 6e 74 69 66 73 2e 68 0d 0a 2f 2f 20 43 72 65  /ntifs.h..// Cre
8c10: 61 74 65 46 69 6c 65 4d 61 70 70 69 6e 67 28 29  ateFileMapping()
8c20: 0d 0a 63 6f 6e 73 74 20 44 57 4f 52 44 0d 0a 09  ..const DWORD...
8c30: 53 45 43 5f 42 41 53 45 44 20 20 20 20 20 3d 20  SEC_BASED     = 
8c40: 30 78 30 30 32 30 30 30 30 30 2c 0d 0a 09 53 45  0x00200000,...SE
8c50: 43 5f 4e 4f 5f 43 48 41 4e 47 45 20 3d 20 30 78  C_NO_CHANGE = 0x
8c60: 30 30 34 30 30 30 30 30 2c 0d 0a 09 53 45 43 5f  00400000,...SEC_
8c70: 46 49 4c 45 20 20 20 20 20 20 3d 20 30 78 30 30  FILE      = 0x00
8c80: 38 30 30 30 30 30 2c 0d 0a 09 53 45 43 5f 49 4d  800000,...SEC_IM
8c90: 41 47 45 20 20 20 20 20 3d 20 30 78 30 31 30 30  AGE     = 0x0100
8ca0: 30 30 30 30 2c 0d 0a 09 53 45 43 5f 56 4c 4d 20  0000,...SEC_VLM 
8cb0: 20 20 20 20 20 20 3d 20 30 78 30 32 30 30 30 30        = 0x020000
8cc0: 30 30 2c 0d 0a 09 53 45 43 5f 52 45 53 45 52 56  00,...SEC_RESERV
8cd0: 45 20 20 20 3d 20 30 78 30 34 30 30 30 30 30 30  E   = 0x04000000
8ce0: 2c 0d 0a 09 53 45 43 5f 43 4f 4d 4d 49 54 20 20  ,...SEC_COMMIT  
8cf0: 20 20 3d 20 30 78 30 38 30 30 30 30 30 30 2c 0d    = 0x08000000,.
8d00: 0a 09 53 45 43 5f 4e 4f 43 41 43 48 45 20 20 20  ..SEC_NOCACHE   
8d10: 3d 20 30 78 31 30 30 30 30 30 30 30 2c 0d 0a 09  = 0x10000000,...
8d20: 4d 45 4d 5f 49 4d 41 47 45 20 20 20 20 20 3d 20  MEM_IMAGE     = 
8d30: 53 45 43 5f 49 4d 41 47 45 3b 0d 0a 2f 2f 20 4d  SEC_IMAGE;..// M
8d40: 69 6e 47 57 3a 20 65 6e 64 20 6e 74 69 66 73 2e  inGW: end ntifs.
8d50: 68 0d 0a 0d 0a 2f 2f 20 3f 3f 3f 0d 0a 63 6f 6e  h....// ???..con
8d60: 73 74 20 41 43 43 45 53 53 5f 4d 41 53 4b 0d 0a  st ACCESS_MASK..
8d70: 09 53 45 43 54 49 4f 4e 5f 51 55 45 52 59 20 20  .SECTION_QUERY  
8d80: 20 20 20 20 20 3d 20 30 78 30 30 30 30 30 31 2c       = 0x000001,
8d90: 0d 0a 09 53 45 43 54 49 4f 4e 5f 4d 41 50 5f 57  ...SECTION_MAP_W
8da0: 52 49 54 45 20 20 20 3d 20 30 78 30 30 30 30 30  RITE   = 0x00000
8db0: 32 2c 0d 0a 09 53 45 43 54 49 4f 4e 5f 4d 41 50  2,...SECTION_MAP
8dc0: 5f 52 45 41 44 20 20 20 20 3d 20 30 78 30 30 30  _READ    = 0x000
8dd0: 30 30 34 2c 0d 0a 09 53 45 43 54 49 4f 4e 5f 4d  004,...SECTION_M
8de0: 41 50 5f 45 58 45 43 55 54 45 20 3d 20 30 78 30  AP_EXECUTE = 0x0
8df0: 30 30 30 30 38 2c 0d 0a 09 53 45 43 54 49 4f 4e  00008,...SECTION
8e00: 5f 45 58 54 45 4e 44 5f 53 49 5a 45 20 3d 20 30  _EXTEND_SIZE = 0
8e10: 78 30 30 30 30 31 30 2c 0d 0a 09 53 45 43 54 49  x000010,...SECTI
8e20: 4f 4e 5f 41 4c 4c 5f 41 43 43 45 53 53 20 20 3d  ON_ALL_ACCESS  =
8e30: 20 30 78 30 46 30 30 31 46 3b 0d 0a 0d 0a 2f 2f   0x0F001F;....//
8e40: 20 54 68 65 73 65 20 61 72 65 20 6e 6f 74 20 64   These are not d
8e50: 6f 63 75 6d 65 6e 74 65 64 20 6f 6e 20 4d 53 44  ocumented on MSD
8e60: 4e 0d 0a 63 6f 6e 73 74 20 4d 45 53 53 41 47 45  N..const MESSAGE
8e70: 5f 52 45 53 4f 55 52 43 45 5f 55 4e 49 43 4f 44  _RESOURCE_UNICOD
8e80: 45 20 3d 20 31 3b 0d 0a 63 6f 6e 73 74 20 52 54  E = 1;..const RT
8e90: 4c 5f 43 52 49 54 53 45 43 54 5f 54 59 50 45 20  L_CRITSECT_TYPE 
8ea0: 20 20 20 20 20 20 20 3d 20 30 3b 0d 0a 63 6f 6e         = 0;..con
8eb0: 73 74 20 52 54 4c 5f 52 45 53 4f 55 52 43 45 5f  st RTL_RESOURCE_
8ec0: 54 59 50 45 20 20 20 20 20 20 20 20 3d 20 31 3b  TYPE        = 1;
8ed0: 0d 0a 0d 0a 2f 2f 20 43 4f 46 46 20 66 69 6c 65  ....// COFF file
8ee0: 20 66 6f 72 6d 61 74 0d 0a 2f 2f 20 2d 2d 2d 2d   format..// ----
8ef0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0d 0a 0d 0a  ------------....
8f00: 2f 2f 20 49 4d 41 47 45 5f 46 49 4c 45 5f 48 45  // IMAGE_FILE_HE
8f10: 41 44 45 52 2e 43 68 61 72 61 63 74 65 72 69 73  ADER.Characteris
8f20: 74 69 63 73 0d 0a 63 6f 6e 73 74 20 57 4f 52 44  tics..const WORD
8f30: 0d 0a 09 49 4d 41 47 45 5f 46 49 4c 45 5f 52 45  ...IMAGE_FILE_RE
8f40: 4c 4f 43 53 5f 53 54 52 49 50 50 45 44 20 20 20  LOCS_STRIPPED   
8f50: 20 20 20 20 20 20 3d 20 30 78 30 30 30 31 2c 0d        = 0x0001,.
8f60: 0a 09 49 4d 41 47 45 5f 46 49 4c 45 5f 45 58 45  ..IMAGE_FILE_EXE
8f70: 43 55 54 41 42 4c 45 5f 49 4d 41 47 45 20 20 20  CUTABLE_IMAGE   
8f80: 20 20 20 20 20 3d 20 30 78 30 30 30 32 2c 0d 0a       = 0x0002,..
8f90: 09 49 4d 41 47 45 5f 46 49 4c 45 5f 4c 49 4e 45  .IMAGE_FILE_LINE
8fa0: 5f 4e 55 4d 53 5f 53 54 52 49 50 50 45 44 20 20  _NUMS_STRIPPED  
8fb0: 20 20 20 20 3d 20 30 78 30 30 30 34 2c 0d 0a 09      = 0x0004,...
8fc0: 49 4d 41 47 45 5f 46 49 4c 45 5f 4c 4f 43 41 4c  IMAGE_FILE_LOCAL
8fd0: 5f 53 59 4d 53 5f 53 54 52 49 50 50 45 44 20 20  _SYMS_STRIPPED  
8fe0: 20 20 20 3d 20 30 78 30 30 30 38 2c 0d 0a 09 49     = 0x0008,...I
8ff0: 4d 41 47 45 5f 46 49 4c 45 5f 41 47 47 52 45 53  MAGE_FILE_AGGRES
9000: 49 56 45 5f 57 53 5f 54 52 49 4d 20 20 20 20 20  IVE_WS_TRIM     
9010: 20 20 3d 20 30 78 30 30 31 30 2c 0d 0a 09 49 4d    = 0x0010,...IM
9020: 41 47 45 5f 46 49 4c 45 5f 4c 41 52 47 45 5f 41  AGE_FILE_LARGE_A
9030: 44 44 52 45 53 53 5f 41 57 41 52 45 20 20 20 20  DDRESS_AWARE    
9040: 20 3d 20 30 78 30 30 32 30 2c 0d 0a 09 49 4d 41   = 0x0020,...IMA
9050: 47 45 5f 46 49 4c 45 5f 42 59 54 45 53 5f 52 45  GE_FILE_BYTES_RE
9060: 56 45 52 53 45 44 5f 4c 4f 20 20 20 20 20 20 20  VERSED_LO       
9070: 3d 20 30 78 30 30 38 30 2c 0d 0a 09 49 4d 41 47  = 0x0080,...IMAG
9080: 45 5f 46 49 4c 45 5f 33 32 42 49 54 5f 4d 41 43  E_FILE_32BIT_MAC
9090: 48 49 4e 45 20 20 20 20 20 20 20 20 20 20 20 3d  HINE           =
90a0: 20 30 78 30 31 30 30 2c 0d 0a 09 49 4d 41 47 45   0x0100,...IMAGE
90b0: 5f 46 49 4c 45 5f 44 45 42 55 47 5f 53 54 52 49  _FILE_DEBUG_STRI
90c0: 50 50 45 44 20 20 20 20 20 20 20 20 20 20 3d 20  PPED          = 
90d0: 30 78 30 32 30 30 2c 0d 0a 09 49 4d 41 47 45 5f  0x0200,...IMAGE_
90e0: 46 49 4c 45 5f 52 45 4d 4f 56 41 42 4c 45 5f 52  FILE_REMOVABLE_R
90f0: 55 4e 5f 46 52 4f 4d 5f 53 57 41 50 20 3d 20 30  UN_FROM_SWAP = 0
9100: 78 30 34 30 30 2c 0d 0a 09 49 4d 41 47 45 5f 46  x0400,...IMAGE_F
9110: 49 4c 45 5f 4e 45 54 5f 52 55 4e 5f 46 52 4f 4d  ILE_NET_RUN_FROM
9120: 5f 53 57 41 50 20 20 20 20 20 20 20 3d 20 30 78  _SWAP       = 0x
9130: 30 38 30 30 2c 0d 0a 09 49 4d 41 47 45 5f 46 49  0800,...IMAGE_FI
9140: 4c 45 5f 53 59 53 54 45 4d 20 20 20 20 20 20 20  LE_SYSTEM       
9150: 20 20 20 20 20 20 20 20 20 20 20 3d 20 30 78 31             = 0x1
9160: 30 30 30 2c 0d 0a 09 49 4d 41 47 45 5f 46 49 4c  000,...IMAGE_FIL
9170: 45 5f 44 4c 4c 20 20 20 20 20 20 20 20 20 20 20  E_DLL           
9180: 20 20 20 20 20 20 20 20 20 20 3d 20 30 78 32 30            = 0x20
9190: 30 30 2c 0d 0a 09 49 4d 41 47 45 5f 46 49 4c 45  00,...IMAGE_FILE
91a0: 5f 55 50 5f 53 59 53 54 45 4d 5f 4f 4e 4c 59 20  _UP_SYSTEM_ONLY 
91b0: 20 20 20 20 20 20 20 20 20 3d 20 30 78 34 30 30           = 0x400
91c0: 30 2c 0d 0a 09 49 4d 41 47 45 5f 46 49 4c 45 5f  0,...IMAGE_FILE_
91d0: 42 59 54 45 53 5f 52 45 56 45 52 53 45 44 5f 48  BYTES_REVERSED_H
91e0: 49 20 20 20 20 20 20 20 3d 20 30 78 38 30 30 30  I       = 0x8000
91f0: 3b 0d 0a 0d 0a 2f 2f 20 49 4d 41 47 45 5f 46 49  ;....// IMAGE_FI
9200: 4c 45 5f 48 45 41 44 45 52 2e 4d 61 63 68 69 6e  LE_HEADER.Machin
9210: 65 0d 0a 65 6e 75 6d 20 3a 20 57 4f 52 44 20 7b  e..enum : WORD {
9220: 0d 0a 09 49 4d 41 47 45 5f 46 49 4c 45 5f 4d 41  ...IMAGE_FILE_MA
9230: 43 48 49 4e 45 5f 55 4e 4b 4e 4f 57 4e 20 20 20  CHINE_UNKNOWN   
9240: 3d 20 30 78 30 30 30 30 2c 0d 0a 09 49 4d 41 47  = 0x0000,...IMAG
9250: 45 5f 46 49 4c 45 5f 4d 41 43 48 49 4e 45 5f 49  E_FILE_MACHINE_I
9260: 33 38 36 20 20 20 20 20 20 3d 20 30 78 30 31 34  386      = 0x014
9270: 43 2c 0d 0a 09 49 4d 41 47 45 5f 46 49 4c 45 5f  C,...IMAGE_FILE_
9280: 4d 41 43 48 49 4e 45 5f 52 33 30 30 30 20 20 20  MACHINE_R3000   
9290: 20 20 3d 20 30 78 30 31 36 32 2c 0d 0a 09 49 4d    = 0x0162,...IM
92a0: 41 47 45 5f 46 49 4c 45 5f 4d 41 43 48 49 4e 45  AGE_FILE_MACHINE
92b0: 5f 52 34 30 30 30 20 20 20 20 20 3d 20 30 78 30  _R4000     = 0x0
92c0: 31 36 36 2c 0d 0a 09 49 4d 41 47 45 5f 46 49 4c  166,...IMAGE_FIL
92d0: 45 5f 4d 41 43 48 49 4e 45 5f 52 31 30 30 30 30  E_MACHINE_R10000
92e0: 20 20 20 20 3d 20 30 78 30 31 36 38 2c 0d 0a 09      = 0x0168,...
92f0: 49 4d 41 47 45 5f 46 49 4c 45 5f 4d 41 43 48 49  IMAGE_FILE_MACHI
9300: 4e 45 5f 57 43 45 4d 49 50 53 56 32 20 3d 20 30  NE_WCEMIPSV2 = 0
9310: 78 30 31 36 39 2c 0d 0a 09 49 4d 41 47 45 5f 46  x0169,...IMAGE_F
9320: 49 4c 45 5f 4d 41 43 48 49 4e 45 5f 41 4c 50 48  ILE_MACHINE_ALPH
9330: 41 20 20 20 20 20 3d 20 30 78 30 31 38 34 2c 0d  A     = 0x0184,.
9340: 0a 09 49 4d 41 47 45 5f 46 49 4c 45 5f 4d 41 43  ..IMAGE_FILE_MAC
9350: 48 49 4e 45 5f 53 48 33 20 20 20 20 20 20 20 3d  HINE_SH3       =
9360: 20 30 78 30 31 41 32 2c 0d 0a 09 49 4d 41 47 45   0x01A2,...IMAGE
9370: 5f 46 49 4c 45 5f 4d 41 43 48 49 4e 45 5f 53 48  _FILE_MACHINE_SH
9380: 33 44 53 50 20 20 20 20 3d 20 30 78 30 31 41 33  3DSP    = 0x01A3
9390: 2c 0d 0a 09 49 4d 41 47 45 5f 46 49 4c 45 5f 4d  ,...IMAGE_FILE_M
93a0: 41 43 48 49 4e 45 5f 53 48 34 20 20 20 20 20 20  ACHINE_SH4      
93b0: 20 3d 20 30 78 30 31 41 36 2c 0d 0a 09 49 4d 41   = 0x01A6,...IMA
93c0: 47 45 5f 46 49 4c 45 5f 4d 41 43 48 49 4e 45 5f  GE_FILE_MACHINE_
93d0: 53 48 35 20 20 20 20 20 20 20 3d 20 30 78 30 31  SH5       = 0x01
93e0: 41 38 2c 0d 0a 09 49 4d 41 47 45 5f 46 49 4c 45  A8,...IMAGE_FILE
93f0: 5f 4d 41 43 48 49 4e 45 5f 41 52 4d 20 20 20 20  _MACHINE_ARM    
9400: 20 20 20 3d 20 30 78 30 31 43 30 2c 0d 0a 09 49     = 0x01C0,...I
9410: 4d 41 47 45 5f 46 49 4c 45 5f 4d 41 43 48 49 4e  MAGE_FILE_MACHIN
9420: 45 5f 54 48 55 4d 42 20 20 20 20 20 3d 20 30 78  E_THUMB     = 0x
9430: 30 31 43 32 2c 0d 0a 09 49 4d 41 47 45 5f 46 49  01C2,...IMAGE_FI
9440: 4c 45 5f 4d 41 43 48 49 4e 45 5f 41 4d 33 33 20  LE_MACHINE_AM33 
9450: 20 20 20 20 20 3d 20 30 78 30 31 44 33 2c 0d 0a       = 0x01D3,..
9460: 09 49 4d 41 47 45 5f 46 49 4c 45 5f 4d 41 43 48  .IMAGE_FILE_MACH
9470: 49 4e 45 5f 50 4f 57 45 52 50 43 20 20 20 3d 20  INE_POWERPC   = 
9480: 30 78 30 31 46 30 2c 0d 0a 09 49 4d 41 47 45 5f  0x01F0,...IMAGE_
9490: 46 49 4c 45 5f 4d 41 43 48 49 4e 45 5f 50 4f 57  FILE_MACHINE_POW
94a0: 45 52 50 43 46 50 20 3d 20 30 78 30 31 46 31 2c  ERPCFP = 0x01F1,
94b0: 0d 0a 09 49 4d 41 47 45 5f 46 49 4c 45 5f 4d 41  ...IMAGE_FILE_MA
94c0: 43 48 49 4e 45 5f 49 41 36 34 20 20 20 20 20 20  CHINE_IA64      
94d0: 3d 20 30 78 30 32 30 30 2c 0d 0a 09 49 4d 41 47  = 0x0200,...IMAG
94e0: 45 5f 46 49 4c 45 5f 4d 41 43 48 49 4e 45 5f 4d  E_FILE_MACHINE_M
94f0: 49 50 53 31 36 20 20 20 20 3d 20 30 78 30 32 36  IPS16    = 0x026
9500: 36 2c 0d 0a 09 49 4d 41 47 45 5f 46 49 4c 45 5f  6,...IMAGE_FILE_
9510: 4d 41 43 48 49 4e 45 5f 4d 49 50 53 46 50 55 20  MACHINE_MIPSFPU 
9520: 20 20 3d 20 30 78 30 33 36 36 2c 0d 0a 09 49 4d    = 0x0366,...IM
9530: 41 47 45 5f 46 49 4c 45 5f 4d 41 43 48 49 4e 45  AGE_FILE_MACHINE
9540: 5f 4d 49 50 53 46 50 55 31 36 20 3d 20 30 78 30  _MIPSFPU16 = 0x0
9550: 34 36 36 2c 0d 0a 09 49 4d 41 47 45 5f 46 49 4c  466,...IMAGE_FIL
9560: 45 5f 4d 41 43 48 49 4e 45 5f 45 42 43 20 20 20  E_MACHINE_EBC   
9570: 20 20 20 20 3d 20 30 78 30 45 42 43 2c 0d 0a 09      = 0x0EBC,...
9580: 49 4d 41 47 45 5f 46 49 4c 45 5f 4d 41 43 48 49  IMAGE_FILE_MACHI
9590: 4e 45 5f 41 4d 44 36 34 20 20 20 20 20 3d 20 30  NE_AMD64     = 0
95a0: 78 38 36 36 34 2c 0d 0a 09 49 4d 41 47 45 5f 46  x8664,...IMAGE_F
95b0: 49 4c 45 5f 4d 41 43 48 49 4e 45 5f 4d 33 32 52  ILE_MACHINE_M32R
95c0: 20 20 20 20 20 20 3d 20 30 78 39 30 34 31 0d 0a        = 0x9041..
95d0: 7d 0d 0a 0d 0a 2f 2f 20 3f 3f 3f 0d 0a 65 6e 75  }....// ???..enu
95e0: 6d 20 20 7b 0d 0a 09 49 4d 41 47 45 5f 44 4f 53  m  {...IMAGE_DOS
95f0: 5f 53 49 47 4e 41 54 55 52 45 20 20 20 20 3d 20  _SIGNATURE    = 
9600: 30 78 35 41 34 44 2c 0d 0a 09 49 4d 41 47 45 5f  0x5A4D,...IMAGE_
9610: 4f 53 32 5f 53 49 47 4e 41 54 55 52 45 20 20 20  OS2_SIGNATURE   
9620: 20 3d 20 30 78 34 35 34 45 2c 0d 0a 09 49 4d 41   = 0x454E,...IMA
9630: 47 45 5f 4f 53 32 5f 53 49 47 4e 41 54 55 52 45  GE_OS2_SIGNATURE
9640: 5f 4c 45 20 3d 20 30 78 34 35 34 43 2c 0d 0a 09  _LE = 0x454C,...
9650: 49 4d 41 47 45 5f 56 58 44 5f 53 49 47 4e 41 54  IMAGE_VXD_SIGNAT
9660: 55 52 45 20 20 20 20 3d 20 30 78 34 35 34 43 2c  URE    = 0x454C,
9670: 0d 0a 09 49 4d 41 47 45 5f 4e 54 5f 53 49 47 4e  ...IMAGE_NT_SIGN
9680: 41 54 55 52 45 20 20 20 20 20 3d 20 30 78 34 35  ATURE     = 0x45
9690: 35 30 0d 0a 7d 0d 0a 0d 0a 2f 2f 20 49 4d 41 47  50..}....// IMAG
96a0: 45 5f 4f 50 54 49 4f 4e 41 4c 5f 48 45 41 44 45  E_OPTIONAL_HEADE
96b0: 52 2e 4d 61 67 69 63 0d 0a 65 6e 75 6d 20 3a 20  R.Magic..enum : 
96c0: 57 4f 52 44 20 7b 0d 0a 09 49 4d 41 47 45 5f 4e  WORD {...IMAGE_N
96d0: 54 5f 4f 50 54 49 4f 4e 41 4c 5f 48 44 52 33 32  T_OPTIONAL_HDR32
96e0: 5f 4d 41 47 49 43 20 3d 20 30 78 30 31 30 42 2c  _MAGIC = 0x010B,
96f0: 0d 0a 09 49 4d 41 47 45 5f 52 4f 4d 5f 4f 50 54  ...IMAGE_ROM_OPT
9700: 49 4f 4e 41 4c 5f 48 44 52 5f 4d 41 47 49 43 20  IONAL_HDR_MAGIC 
9710: 20 3d 20 30 78 30 31 30 37 2c 0d 0a 09 49 4d 41   = 0x0107,...IMA
9720: 47 45 5f 4e 54 5f 4f 50 54 49 4f 4e 41 4c 5f 48  GE_NT_OPTIONAL_H
9730: 44 52 36 34 5f 4d 41 47 49 43 20 3d 20 30 78 30  DR64_MAGIC = 0x0
9740: 32 30 42 0d 0a 7d 0d 0a 0d 0a 2f 2f 20 49 4d 41  20B..}....// IMA
9750: 47 45 5f 4f 50 54 49 4f 4e 41 4c 5f 48 45 41 44  GE_OPTIONAL_HEAD
9760: 45 52 2e 53 75 62 73 79 73 74 65 6d 0d 0a 65 6e  ER.Subsystem..en
9770: 75 6d 20 3a 20 57 4f 52 44 20 7b 0d 0a 09 49 4d  um : WORD {...IM
9780: 41 47 45 5f 53 55 42 53 59 53 54 45 4d 5f 55 4e  AGE_SUBSYSTEM_UN
9790: 4b 4e 4f 57 4e 20 20 20 20 20 20 20 20 20 20 20  KNOWN           
97a0: 20 20 20 20 20 20 20 3d 20 20 30 2c 0d 0a 09 49         =  0,...I
97b0: 4d 41 47 45 5f 53 55 42 53 59 53 54 45 4d 5f 4e  MAGE_SUBSYSTEM_N
97c0: 41 54 49 56 45 2c 0d 0a 09 49 4d 41 47 45 5f 53  ATIVE,...IMAGE_S
97d0: 55 42 53 59 53 54 45 4d 5f 57 49 4e 44 4f 57 53  UBSYSTEM_WINDOWS
97e0: 5f 47 55 49 2c 0d 0a 09 49 4d 41 47 45 5f 53 55  _GUI,...IMAGE_SU
97f0: 42 53 59 53 54 45 4d 5f 57 49 4e 44 4f 57 53 5f  BSYSTEM_WINDOWS_
9800: 43 55 49 2c 20 20 20 20 20 20 20 20 20 20 2f 2f  CUI,          //
9810: 20 3d 20 20 33 0d 0a 09 49 4d 41 47 45 5f 53 55   =  3...IMAGE_SU
9820: 42 53 59 53 54 45 4d 5f 4f 53 32 5f 43 55 49 20  BSYSTEM_OS2_CUI 
9830: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
9840: 20 3d 20 20 35 2c 0d 0a 09 49 4d 41 47 45 5f 53   =  5,...IMAGE_S
9850: 55 42 53 59 53 54 45 4d 5f 50 4f 53 49 58 5f 43  UBSYSTEM_POSIX_C
9860: 55 49 20 20 20 20 20 20 20 20 20 20 20 20 20 20  UI              
9870: 20 20 3d 20 20 37 2c 0d 0a 09 49 4d 41 47 45 5f    =  7,...IMAGE_
9880: 53 55 42 53 59 53 54 45 4d 5f 4e 41 54 49 56 45  SUBSYSTEM_NATIVE
9890: 5f 57 49 4e 44 4f 57 53 2c 0d 0a 09 49 4d 41 47  _WINDOWS,...IMAG
98a0: 45 5f 53 55 42 53 59 53 54 45 4d 5f 57 49 4e 44  E_SUBSYSTEM_WIND
98b0: 4f 57 53 5f 43 45 5f 47 55 49 2c 0d 0a 09 49 4d  OWS_CE_GUI,...IM
98c0: 41 47 45 5f 53 55 42 53 59 53 54 45 4d 5f 45 46  AGE_SUBSYSTEM_EF
98d0: 49 5f 41 50 50 4c 49 43 41 54 49 4f 4e 2c 0d 0a  I_APPLICATION,..
98e0: 09 49 4d 41 47 45 5f 53 55 42 53 59 53 54 45 4d  .IMAGE_SUBSYSTEM
98f0: 5f 45 46 49 5f 42 4f 4f 54 5f 53 45 52 56 49 43  _EFI_BOOT_SERVIC
9900: 45 5f 44 52 49 56 45 52 2c 0d 0a 09 49 4d 41 47  E_DRIVER,...IMAG
9910: 45 5f 53 55 42 53 59 53 54 45 4d 5f 45 46 49 5f  E_SUBSYSTEM_EFI_
9920: 52 55 4e 54 49 4d 45 5f 44 52 49 56 45 52 2c 0d  RUNTIME_DRIVER,.
9930: 0a 09 49 4d 41 47 45 5f 53 55 42 53 59 53 54 45  ..IMAGE_SUBSYSTE
9940: 4d 5f 45 46 49 5f 52 4f 4d 2c 0d 0a 09 49 4d 41  M_EFI_ROM,...IMA
9950: 47 45 5f 53 55 42 53 59 53 54 45 4d 5f 58 42 4f  GE_SUBSYSTEM_XBO
9960: 58 2c 20 20 20 20 20 20 20 20 20 20 20 20 20 20  X,              
9970: 20 20 20 2f 2f 20 3d 20 31 34 0d 0a 09 49 4d 41     // = 14...IMA
9980: 47 45 5f 53 55 42 53 59 53 54 45 4d 5f 57 49 4e  GE_SUBSYSTEM_WIN
9990: 44 4f 57 53 5f 42 4f 4f 54 5f 41 50 50 4c 49 43  DOWS_BOOT_APPLIC
99a0: 41 54 49 4f 4e 20 3d 20 31 36 0d 0a 7d 0d 0a 0d  ATION = 16..}...
99b0: 0a 2f 2f 20 49 4d 41 47 45 5f 4f 50 54 49 4f 4e  .// IMAGE_OPTION
99c0: 41 4c 5f 48 45 41 44 45 52 2e 44 6c 6c 43 68 61  AL_HEADER.DllCha
99d0: 72 61 63 74 65 72 69 73 74 69 63 73 0d 0a 63 6f  racteristics..co
99e0: 6e 73 74 20 57 4f 52 44 0d 0a 09 49 4d 41 47 45  nst WORD...IMAGE
99f0: 5f 44 4c 4c 5f 43 48 41 52 41 43 54 45 52 49 53  _DLL_CHARACTERIS
9a00: 54 49 43 53 5f 44 59 4e 41 4d 49 43 5f 42 41 53  TICS_DYNAMIC_BAS
9a10: 45 20 20 20 20 20 20 20 20 20 3d 20 30 78 30 30  E         = 0x00
9a20: 34 30 2c 0d 0a 09 49 4d 41 47 45 5f 44 4c 4c 5f  40,...IMAGE_DLL_
9a30: 43 48 41 52 41 43 54 45 52 49 53 54 49 43 53 5f  CHARACTERISTICS_
9a40: 46 4f 52 43 45 5f 49 4e 54 45 47 52 49 54 59 20  FORCE_INTEGRITY 
9a50: 20 20 20 20 20 3d 20 30 78 30 30 38 30 2c 0d 0a       = 0x0080,..
9a60: 09 49 4d 41 47 45 5f 44 4c 4c 5f 43 48 41 52 41  .IMAGE_DLL_CHARA
9a70: 43 54 45 52 49 53 54 49 43 53 5f 4e 58 5f 43 4f  CTERISTICS_NX_CO
9a80: 4d 50 41 54 20 20 20 20 20 20 20 20 20 20 20 20  MPAT            
9a90: 3d 20 30 78 30 31 30 30 2c 0d 0a 09 49 4d 41 47  = 0x0100,...IMAG
9aa0: 45 5f 44 4c 4c 43 48 41 52 41 43 54 45 52 49 53  E_DLLCHARACTERIS
9ab0: 54 49 43 53 5f 4e 4f 5f 49 53 4f 4c 41 54 49 4f  TICS_NO_ISOLATIO
9ac0: 4e 20 20 20 20 20 20 20 20 20 20 3d 20 30 78 30  N          = 0x0
9ad0: 32 30 30 2c 0d 0a 09 49 4d 41 47 45 5f 44 4c 4c  200,...IMAGE_DLL
9ae0: 43 48 41 52 41 43 54 45 52 49 53 54 49 43 53 5f  CHARACTERISTICS_
9af0: 4e 4f 5f 53 45 48 09 20 20 20 20 20 20 20 20 20  NO_SEH.         
9b00: 20 20 20 20 20 20 3d 20 30 78 30 34 30 30 2c 0d        = 0x0400,.
9b10: 0a 09 49 4d 41 47 45 5f 44 4c 4c 43 48 41 52 41  ..IMAGE_DLLCHARA
9b20: 43 54 45 52 49 53 54 49 43 53 5f 4e 4f 5f 42 49  CTERISTICS_NO_BI
9b30: 4e 44 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ND              
9b40: 20 3d 20 30 78 30 38 30 30 2c 0d 0a 09 49 4d 41   = 0x0800,...IMA
9b50: 47 45 5f 44 4c 4c 43 48 41 52 41 43 54 45 52 49  GE_DLLCHARACTERI
9b60: 53 54 49 43 53 5f 57 44 4d 5f 44 52 49 56 45 52  STICS_WDM_DRIVER
9b70: 20 20 20 20 20 20 20 20 20 20 20 20 3d 20 30 78              = 0x
9b80: 32 30 30 30 2c 0d 0a 09 49 4d 41 47 45 5f 44 4c  2000,...IMAGE_DL
9b90: 4c 43 48 41 52 41 43 54 45 52 49 53 54 49 43 53  LCHARACTERISTICS
9ba0: 5f 54 45 52 4d 49 4e 41 4c 5f 53 45 52 56 45 52  _TERMINAL_SERVER
9bb0: 5f 41 57 41 52 45 20 3d 20 30 78 38 30 30 30 3b  _AWARE = 0x8000;
9bc0: 0d 0a 0d 0a 2f 2f 20 3f 3f 3f 0d 0a 63 6f 6e 73  ....// ???..cons
9bd0: 74 20 49 4d 41 47 45 5f 53 45 50 41 52 41 54 45  t IMAGE_SEPARATE
9be0: 5f 44 45 42 55 47 5f 53 49 47 4e 41 54 55 52 45  _DEBUG_SIGNATURE
9bf0: 20 3d 20 30 78 34 39 34 34 3b 0d 0a 0d 0a 63 6f   = 0x4944;....co
9c00: 6e 73 74 20 73 69 7a 65 5f 74 0d 0a 09 49 4d 41  nst size_t...IMA
9c10: 47 45 5f 4e 55 4d 42 45 52 4f 46 5f 44 49 52 45  GE_NUMBEROF_DIRE
9c20: 43 54 4f 52 59 5f 45 4e 54 52 49 45 53 20 3d 20  CTORY_ENTRIES = 
9c30: 20 31 36 2c 0d 0a 09 49 4d 41 47 45 5f 53 49 5a   16,...IMAGE_SIZ
9c40: 45 4f 46 5f 52 4f 4d 5f 4f 50 54 49 4f 4e 41 4c  EOF_ROM_OPTIONAL
9c50: 5f 48 45 41 44 45 52 20 3d 20 20 35 36 2c 0d 0a  _HEADER =  56,..
9c60: 09 49 4d 41 47 45 5f 53 49 5a 45 4f 46 5f 53 54  .IMAGE_SIZEOF_ST
9c70: 44 5f 4f 50 54 49 4f 4e 41 4c 5f 48 45 41 44 45  D_OPTIONAL_HEADE
9c80: 52 20 3d 20 20 32 38 2c 0d 0a 09 49 4d 41 47 45  R =  28,...IMAGE
9c90: 5f 53 49 5a 45 4f 46 5f 4e 54 5f 4f 50 54 49 4f  _SIZEOF_NT_OPTIO
9ca0: 4e 41 4c 5f 48 45 41 44 45 52 20 20 3d 20 32 32  NAL_HEADER  = 22
9cb0: 34 2c 0d 0a 09 49 4d 41 47 45 5f 53 49 5a 45 4f  4,...IMAGE_SIZEO
9cc0: 46 5f 53 48 4f 52 54 5f 4e 41 4d 45 20 20 20 20  F_SHORT_NAME    
9cd0: 20 20 20 20 20 20 3d 20 20 20 38 2c 0d 0a 09 49        =   8,...I
9ce0: 4d 41 47 45 5f 53 49 5a 45 4f 46 5f 53 45 43 54  MAGE_SIZEOF_SECT
9cf0: 49 4f 4e 5f 48 45 41 44 45 52 20 20 20 20 20 20  ION_HEADER      
9d00: 3d 20 20 34 30 2c 0d 0a 09 49 4d 41 47 45 5f 53  =  40,...IMAGE_S
9d10: 49 5a 45 4f 46 5f 53 59 4d 42 4f 4c 20 20 20 20  IZEOF_SYMBOL    
9d20: 20 20 20 20 20 20 20 20 20 20 3d 20 20 31 38 2c            =  18,
9d30: 0d 0a 09 49 4d 41 47 45 5f 53 49 5a 45 4f 46 5f  ...IMAGE_SIZEOF_
9d40: 41 55 58 5f 53 59 4d 42 4f 4c 20 20 20 20 20 20  AUX_SYMBOL      
9d50: 20 20 20 20 3d 20 20 31 38 2c 0d 0a 09 49 4d 41      =  18,...IMA
9d60: 47 45 5f 53 49 5a 45 4f 46 5f 52 45 4c 4f 43 41  GE_SIZEOF_RELOCA
9d70: 54 49 4f 4e 20 20 20 20 20 20 20 20 20 20 3d 20  TION          = 
9d80: 20 31 30 2c 0d 0a 09 49 4d 41 47 45 5f 53 49 5a   10,...IMAGE_SIZ
9d90: 45 4f 46 5f 42 41 53 45 5f 52 45 4c 4f 43 41 54  EOF_BASE_RELOCAT
9da0: 49 4f 4e 20 20 20 20 20 3d 20 20 20 38 2c 0d 0a  ION     =   8,..
9db0: 09 49 4d 41 47 45 5f 53 49 5a 45 4f 46 5f 4c 49  .IMAGE_SIZEOF_LI
9dc0: 4e 45 4e 55 4d 42 45 52 20 20 20 20 20 20 20 20  NENUMBER        
9dd0: 20 20 3d 20 20 20 36 2c 0d 0a 09 49 4d 41 47 45    =   6,...IMAGE
9de0: 5f 53 49 5a 45 4f 46 5f 41 52 43 48 49 56 45 5f  _SIZEOF_ARCHIVE_
9df0: 4d 45 4d 42 45 52 5f 48 44 52 20 20 3d 20 20 36  MEMBER_HDR  =  6
9e00: 30 2c 0d 0a 09 53 49 5a 45 4f 46 5f 52 46 50 4f  0,...SIZEOF_RFPO
9e10: 5f 44 41 54 41 20 20 20 20 20 20 20 20 20 20 20  _DATA           
9e20: 20 20 20 20 20 20 3d 20 20 31 36 3b 0d 0a 0d 0a        =  16;....
9e30: 50 49 4d 41 47 45 5f 53 45 43 54 49 4f 4e 5f 48  PIMAGE_SECTION_H
9e40: 45 41 44 45 52 20 49 4d 41 47 45 5f 46 49 52 53  EADER IMAGE_FIRS
9e50: 54 5f 53 45 43 54 49 4f 4e 28 50 49 4d 41 47 45  T_SECTION(PIMAGE
9e60: 5f 4e 54 5f 48 45 41 44 45 52 53 20 68 29 20 7b  _NT_HEADERS h) {
9e70: 0d 0a 09 72 65 74 75 72 6e 20 63 61 73 74 28 50  ...return cast(P
9e80: 49 4d 41 47 45 5f 53 45 43 54 49 4f 4e 5f 48 45  IMAGE_SECTION_HE
9e90: 41 44 45 52 29 0d 0a 09 09 28 26 68 2e 4f 70 74  ADER)....(&h.Opt
9ea0: 69 6f 6e 61 6c 48 65 61 64 65 72 20 2b 20 68 2e  ionalHeader + h.
9eb0: 46 69 6c 65 48 65 61 64 65 72 2e 53 69 7a 65 4f  FileHeader.SizeO
9ec0: 66 4f 70 74 69 6f 6e 61 6c 48 65 61 64 65 72 29  fOptionalHeader)
9ed0: 3b 0d 0a 7d 0d 0a 0d 0a 2f 2f 20 49 6d 61 67 65  ;..}....// Image
9ee0: 44 69 72 65 63 74 6f 72 79 45 6e 74 72 79 54 6f  DirectoryEntryTo
9ef0: 44 61 74 61 45 78 28 29 0d 0a 65 6e 75 6d 20 3a  DataEx()..enum :
9f00: 20 55 53 48 4f 52 54 20 7b 0d 0a 09 49 4d 41 47   USHORT {...IMAG
9f10: 45 5f 44 49 52 45 43 54 4f 52 59 5f 45 4e 54 52  E_DIRECTORY_ENTR
9f20: 59 5f 45 58 50 4f 52 54 20 20 20 20 20 20 20 20  Y_EXPORT        
9f30: 20 20 20 20 20 3d 20 20 30 2c 0d 0a 09 49 4d 41       =  0,...IMA
9f40: 47 45 5f 44 49 52 45 43 54 4f 52 59 5f 45 4e 54  GE_DIRECTORY_ENT
9f50: 52 59 5f 49 4d 50 4f 52 54 2c 0d 0a 09 49 4d 41  RY_IMPORT,...IMA
9f60: 47 45 5f 44 49 52 45 43 54 4f 52 59 5f 45 4e 54  GE_DIRECTORY_ENT
9f70: 52 59 5f 52 45 53 4f 55 52 43 45 2c 0d 0a 09 49  RY_RESOURCE,...I
9f80: 4d 41 47 45 5f 44 49 52 45 43 54 4f 52 59 5f 45  MAGE_DIRECTORY_E
9f90: 4e 54 52 59 5f 45 58 43 45 50 54 49 4f 4e 2c 0d  NTRY_EXCEPTION,.
9fa0: 0a 09 49 4d 41 47 45 5f 44 49 52 45 43 54 4f 52  ..IMAGE_DIRECTOR
9fb0: 59 5f 45 4e 54 52 59 5f 53 45 43 55 52 49 54 59  Y_ENTRY_SECURITY
9fc0: 2c 0d 0a 09 49 4d 41 47 45 5f 44 49 52 45 43 54  ,...IMAGE_DIRECT
9fd0: 4f 52 59 5f 45 4e 54 52 59 5f 42 41 53 45 52 45  ORY_ENTRY_BASERE
9fe0: 4c 4f 43 2c 0d 0a 09 49 4d 41 47 45 5f 44 49 52  LOC,...IMAGE_DIR
9ff0: 45 43 54 4f 52 59 5f 45 4e 54 52 59 5f 44 45 42  ECTORY_ENTRY_DEB
a000: 55 47 2c 0d 0a 09 49 4d 41 47 45 5f 44 49 52 45  UG,...IMAGE_DIRE
a010: 43 54 4f 52 59 5f 45 4e 54 52 59 5f 43 4f 50 59  CTORY_ENTRY_COPY
a020: 52 49 47 48 54 2c 20 20 20 20 20 20 2f 2f 20 3d  RIGHT,      // =
a030: 20 20 37 0d 0a 09 49 4d 41 47 45 5f 44 49 52 45    7...IMAGE_DIRE
a040: 43 54 4f 52 59 5f 45 4e 54 52 59 5f 41 52 43 48  CTORY_ENTRY_ARCH
a050: 49 54 45 43 54 55 52 45 20 20 20 20 20 20 20 3d  ITECTURE       =
a060: 20 20 37 2c 0d 0a 09 49 4d 41 47 45 5f 44 49 52    7,...IMAGE_DIR
a070: 45 43 54 4f 52 59 5f 45 4e 54 52 59 5f 47 4c 4f  ECTORY_ENTRY_GLO
a080: 42 41 4c 50 54 52 2c 0d 0a 09 49 4d 41 47 45 5f  BALPTR,...IMAGE_
a090: 44 49 52 45 43 54 4f 52 59 5f 45 4e 54 52 59 5f  DIRECTORY_ENTRY_
a0a0: 54 4c 53 2c 0d 0a 09 49 4d 41 47 45 5f 44 49 52  TLS,...IMAGE_DIR
a0b0: 45 43 54 4f 52 59 5f 45 4e 54 52 59 5f 4c 4f 41  ECTORY_ENTRY_LOA
a0c0: 44 5f 43 4f 4e 46 49 47 2c 0d 0a 09 49 4d 41 47  D_CONFIG,...IMAG
a0d0: 45 5f 44 49 52 45 43 54 4f 52 59 5f 45 4e 54 52  E_DIRECTORY_ENTR
a0e0: 59 5f 42 4f 55 4e 44 5f 49 4d 50 4f 52 54 2c 0d  Y_BOUND_IMPORT,.
a0f0: 0a 09 49 4d 41 47 45 5f 44 49 52 45 43 54 4f 52  ..IMAGE_DIRECTOR
a100: 59 5f 45 4e 54 52 59 5f 49 41 54 2c 0d 0a 09 49  Y_ENTRY_IAT,...I
a110: 4d 41 47 45 5f 44 49 52 45 43 54 4f 52 59 5f 45  MAGE_DIRECTORY_E
a120: 4e 54 52 59 5f 44 45 4c 41 59 5f 49 4d 50 4f 52  NTRY_DELAY_IMPOR
a130: 54 2c 0d 0a 09 49 4d 41 47 45 5f 44 49 52 45 43  T,...IMAGE_DIREC
a140: 54 4f 52 59 5f 45 4e 54 52 59 5f 43 4f 4d 5f 44  TORY_ENTRY_COM_D
a150: 45 53 43 52 49 50 54 4f 52 2c 20 2f 2f 20 3d 20  ESCRIPTOR, // = 
a160: 31 34 0d 0a 7d 0d 0a 0d 0a 2f 2f 20 49 4d 41 47  14..}....// IMAG
a170: 45 5f 53 45 43 54 49 4f 4e 5f 48 45 41 44 45 52  E_SECTION_HEADER
a180: 2e 43 68 61 72 61 63 74 65 72 69 73 74 69 63 73  .Characteristics
a190: 0d 0a 63 6f 6e 73 74 20 44 57 4f 52 44 0d 0a 09  ..const DWORD...
a1a0: 49 4d 41 47 45 5f 53 43 4e 5f 54 59 50 45 5f 52  IMAGE_SCN_TYPE_R
a1b0: 45 47 20 20 20 20 20 20 20 20 20 20 20 20 20 20  EG              
a1c0: 20 3d 20 30 78 30 30 30 30 30 30 30 30 2c 0d 0a   = 0x00000000,..
a1d0: 09 49 4d 41 47 45 5f 53 43 4e 5f 54 59 50 45 5f  .IMAGE_SCN_TYPE_
a1e0: 44 53 45 43 54 20 20 20 20 20 20 20 20 20 20 20  DSECT           
a1f0: 20 20 3d 20 30 78 30 30 30 30 30 30 30 31 2c 0d    = 0x00000001,.
a200: 0a 09 49 4d 41 47 45 5f 53 43 4e 5f 54 59 50 45  ..IMAGE_SCN_TYPE
a210: 5f 4e 4f 4c 4f 41 44 20 20 20 20 20 20 20 20 20  _NOLOAD         
a220: 20 20 20 3d 20 30 78 30 30 30 30 30 30 30 32 2c     = 0x00000002,
a230: 0d 0a 09 49 4d 41 47 45 5f 53 43 4e 5f 54 59 50  ...IMAGE_SCN_TYP
a240: 45 5f 47 52 4f 55 50 20 20 20 20 20 20 20 20 20  E_GROUP         
a250: 20 20 20 20 3d 20 30 78 30 30 30 30 30 30 30 34      = 0x00000004
a260: 2c 0d 0a 09 49 4d 41 47 45 5f 53 43 4e 5f 54 59  ,...IMAGE_SCN_TY
a270: 50 45 5f 4e 4f 5f 50 41 44 20 20 20 20 20 20 20  PE_NO_PAD       
a280: 20 20 20 20 20 3d 20 30 78 30 30 30 30 30 30 30       = 0x0000000
a290: 38 2c 0d 0a 09 49 4d 41 47 45 5f 53 43 4e 5f 54  8,...IMAGE_SCN_T
a2a0: 59 50 45 5f 43 4f 50 59 20 20 20 20 20 20 20 20  YPE_COPY        
a2b0: 20 20 20 20 20 20 3d 20 30 78 30 30 30 30 30 30        = 0x000000
a2c0: 31 30 2c 0d 0a 09 49 4d 41 47 45 5f 53 43 4e 5f  10,...IMAGE_SCN_
a2d0: 43 4e 54 5f 43 4f 44 45 20 20 20 20 20 20 20 20  CNT_CODE        
a2e0: 20 20 20 20 20 20 20 3d 20 30 78 30 30 30 30 30         = 0x00000
a2f0: 30 32 30 2c 0d 0a 09 49 4d 41 47 45 5f 53 43 4e  020,...IMAGE_SCN
a300: 5f 43 4e 54 5f 49 4e 49 54 49 41 4c 49 5a 45 44  _CNT_INITIALIZED
a310: 5f 44 41 54 41 20 20 20 3d 20 30 78 30 30 30 30  _DATA   = 0x0000
a320: 30 30 34 30 2c 0d 0a 09 49 4d 41 47 45 5f 53 43  0040,...IMAGE_SC
a330: 4e 5f 43 4e 54 5f 55 4e 49 4e 49 54 49 41 4c 49  N_CNT_UNINITIALI
a340: 5a 45 44 5f 44 41 54 41 20 3d 20 30 78 30 30 30  ZED_DATA = 0x000
a350: 30 30 30 38 30 2c 0d 0a 09 49 4d 41 47 45 5f 53  00080,...IMAGE_S
a360: 43 4e 5f 4c 4e 4b 5f 4f 54 48 45 52 20 20 20 20  CN_LNK_OTHER    
a370: 20 20 20 20 20 20 20 20 20 20 3d 20 30 78 30 30            = 0x00
a380: 30 30 30 31 30 30 2c 0d 0a 09 49 4d 41 47 45 5f  000100,...IMAGE_
a390: 53 43 4e 5f 4c 4e 4b 5f 49 4e 46 4f 20 20 20 20  SCN_LNK_INFO    
a3a0: 20 20 20 20 20 20 20 20 20 20 20 3d 20 30 78 30             = 0x0
a3b0: 30 30 30 30 32 30 30 2c 0d 0a 09 49 4d 41 47 45  0000200,...IMAGE
a3c0: 5f 53 43 4e 5f 54 59 50 45 5f 4f 56 45 52 20 20  _SCN_TYPE_OVER  
a3d0: 20 20 20 20 20 20 20 20 20 20 20 20 3d 20 30 78              = 0x
a3e0: 30 30 30 30 30 34 30 30 2c 0d 0a 09 49 4d 41 47  00000400,...IMAG
a3f0: 45 5f 53 43 4e 5f 4c 4e 4b 5f 52 45 4d 4f 56 45  E_SCN_LNK_REMOVE
a400: 20 20 20 20 20 20 20 20 20 20 20 20 20 3d 20 30               = 0
a410: 78 30 30 30 30 30 38 30 30 2c 0d 0a 09 49 4d 41  x00000800,...IMA
a420: 47 45 5f 53 43 4e 5f 4c 4e 4b 5f 43 4f 4d 44 41  GE_SCN_LNK_COMDA
a430: 54 20 20 20 20 20 20 20 20 20 20 20 20 20 3d 20  T             = 
a440: 30 78 30 30 30 30 31 30 30 30 2c 0d 0a 09 49 4d  0x00001000,...IM
a450: 41 47 45 5f 53 43 4e 5f 4d 45 4d 5f 46 41 52 44  AGE_SCN_MEM_FARD
a460: 41 54 41 20 20 20 20 20 20 20 20 20 20 20 20 3d  ATA            =
a470: 20 30 78 30 30 30 30 38 30 30 30 2c 0d 0a 09 49   0x00008000,...I
a480: 4d 41 47 45 5f 53 43 4e 5f 47 50 52 45 4c 20 20  MAGE_SCN_GPREL  
a490: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
a4a0: 3d 20 30 78 30 30 30 30 38 30 30 30 2c 0d 0a 09  = 0x00008000,...
a4b0: 49 4d 41 47 45 5f 53 43 4e 5f 4d 45 4d 5f 50 55  IMAGE_SCN_MEM_PU
a4c0: 52 47 45 41 42 4c 45 20 20 20 20 20 20 20 20 20  RGEABLE         
a4d0: 20 3d 20 30 78 30 30 30 32 30 30 30 30 2c 0d 0a   = 0x00020000,..
a4e0: 09 49 4d 41 47 45 5f 53 43 4e 5f 4d 45 4d 5f 31  .IMAGE_SCN_MEM_1
a4f0: 36 42 49 54 20 20 20 20 20 20 20 20 20 20 20 20  6BIT            
a500: 20 20 3d 20 30 78 30 30 30 32 30 30 30 30 2c 0d    = 0x00020000,.
a510: 0a 09 49 4d 41 47 45 5f 53 43 4e 5f 4d 45 4d 5f  ..IMAGE_SCN_MEM_
a520: 4c 4f 43 4b 45 44 20 20 20 20 20 20 20 20 20 20  LOCKED          
a530: 20 20 20 3d 20 30 78 30 30 30 34 30 30 30 30 2c     = 0x00040000,
a540: 0d 0a 09 49 4d 41 47 45 5f 53 43 4e 5f 4d 45 4d  ...IMAGE_SCN_MEM
a550: 5f 50 52 45 4c 4f 41 44 20 20 20 20 20 20 20 20  _PRELOAD        
a560: 20 20 20 20 3d 20 30 78 30 30 30 38 30 30 30 30      = 0x00080000
a570: 2c 0d 0a 09 49 4d 41 47 45 5f 53 43 4e 5f 41 4c  ,...IMAGE_SCN_AL
a580: 49 47 4e 5f 31 42 59 54 45 53 20 20 20 20 20 20  IGN_1BYTES      
a590: 20 20 20 20 20 3d 20 30 78 30 30 31 30 30 30 30       = 0x0010000
a5a0: 30 2c 0d 0a 09 49 4d 41 47 45 5f 53 43 4e 5f 41  0,...IMAGE_SCN_A
a5b0: 4c 49 47 4e 5f 32 42 59 54 45 53 20 20 20 20 20  LIGN_2BYTES     
a5c0: 20 20 20 20 20 20 3d 20 30 78 30 30 32 30 30 30        = 0x002000
a5d0: 30 30 2c 0d 0a 09 49 4d 41 47 45 5f 53 43 4e 5f  00,...IMAGE_SCN_
a5e0: 41 4c 49 47 4e 5f 34 42 59 54 45 53 20 20 20 20  ALIGN_4BYTES    
a5f0: 20 20 20 20 20 20 20 3d 20 30 78 30 30 33 30 30         = 0x00300
a600: 30 30 30 2c 0d 0a 09 49 4d 41 47 45 5f 53 43 4e  000,...IMAGE_SCN
a610: 5f 41 4c 49 47 4e 5f 38 42 59 54 45 53 20 20 20  _ALIGN_8BYTES   
a620: 20 20 20 20 20 20 20 20 3d 20 30 78 30 30 34 30          = 0x0040
a630: 30 30 30 30 2c 0d 0a 09 49 4d 41 47 45 5f 53 43  0000,...IMAGE_SC
a640: 4e 5f 41 4c 49 47 4e 5f 31 36 42 59 54 45 53 20  N_ALIGN_16BYTES 
a650: 20 20 20 20 20 20 20 20 20 3d 20 30 78 30 30 35           = 0x005
a660: 30 30 30 30 30 2c 0d 0a 09 49 4d 41 47 45 5f 53  00000,...IMAGE_S
a670: 43 4e 5f 41 4c 49 47 4e 5f 33 32 42 59 54 45 53  CN_ALIGN_32BYTES
a680: 20 20 20 20 20 20 20 20 20 20 3d 20 30 78 30 30            = 0x00
a690: 36 30 30 30 30 30 2c 0d 0a 09 49 4d 41 47 45 5f  600000,...IMAGE_
a6a0: 53 43 4e 5f 41 4c 49 47 4e 5f 36 34 42 59 54 45  SCN_ALIGN_64BYTE
a6b0: 53 20 20 20 20 20 20 20 20 20 20 3d 20 30 78 30  S          = 0x0
a6c0: 30 37 30 30 30 30 30 2c 0d 0a 09 49 4d 41 47 45  0700000,...IMAGE
a6d0: 5f 53 43 4e 5f 41 4c 49 47 4e 5f 31 32 38 42 59  _SCN_ALIGN_128BY
a6e0: 54 45 53 20 20 20 20 20 20 20 20 20 3d 20 30 78  TES         = 0x
a6f0: 30 30 38 30 30 30 30 30 2c 0d 0a 09 49 4d 41 47  00800000,...IMAG
a700: 45 5f 53 43 4e 5f 41 4c 49 47 4e 5f 32 35 36 42  E_SCN_ALIGN_256B
a710: 59 54 45 53 20 20 20 20 20 20 20 20 20 3d 20 30  YTES         = 0
a720: 78 30 30 39 30 30 30 30 30 2c 0d 0a 09 49 4d 41  x00900000,...IMA
a730: 47 45 5f 53 43 4e 5f 41 4c 49 47 4e 5f 35 31 32  GE_SCN_ALIGN_512
a740: 42 59 54 45 53 20 20 20 20 20 20 20 20 20 3d 20  BYTES         = 
a750: 30 78 30 30 41 30 30 30 30 30 2c 0d 0a 09 49 4d  0x00A00000,...IM
a760: 41 47 45 5f 53 43 4e 5f 41 4c 49 47 4e 5f 31 30  AGE_SCN_ALIGN_10
a770: 32 34 42 59 54 45 53 20 20 20 20 20 20 20 20 3d  24BYTES        =
a780: 20 30 78 30 30 42 30 30 30 30 30 2c 0d 0a 09 49   0x00B00000,...I
a790: 4d 41 47 45 5f 53 43 4e 5f 41 4c 49 47 4e 5f 32  MAGE_SCN_ALIGN_2
a7a0: 30 34 38 42 59 54 45 53 20 20 20 20 20 20 20 20  048BYTES        
a7b0: 3d 20 30 78 30 30 43 30 30 30 30 30 2c 0d 0a 09  = 0x00C00000,...
a7c0: 49 4d 41 47 45 5f 53 43 4e 5f 41 4c 49 47 4e 5f  IMAGE_SCN_ALIGN_
a7d0: 34 30 39 36 42 59 54 45 53 20 20 20 20 20 20 20  4096BYTES       
a7e0: 20 3d 20 30 78 30 30 44 30 30 30 30 30 2c 0d 0a   = 0x00D00000,..
a7f0: 09 49 4d 41 47 45 5f 53 43 4e 5f 41 4c 49 47 4e  .IMAGE_SCN_ALIGN
a800: 5f 38 31 39 32 42 59 54 45 53 20 20 20 20 20 20  _8192BYTES      
a810: 20 20 3d 20 30 78 30 30 45 30 30 30 30 30 2c 0d    = 0x00E00000,.
a820: 0a 09 49 4d 41 47 45 5f 53 43 4e 5f 4c 4e 4b 5f  ..IMAGE_SCN_LNK_
a830: 4e 52 45 4c 4f 43 5f 4f 56 46 4c 20 20 20 20 20  NRELOC_OVFL     
a840: 20 20 20 3d 20 30 78 30 31 30 30 30 30 30 30 2c     = 0x01000000,
a850: 0d 0a 09 49 4d 41 47 45 5f 53 43 4e 5f 4d 45 4d  ...IMAGE_SCN_MEM
a860: 5f 44 49 53 43 41 52 44 41 42 4c 45 20 20 20 20  _DISCARDABLE    
a870: 20 20 20 20 3d 20 30 78 30 32 30 30 30 30 30 30      = 0x02000000
a880: 2c 0d 0a 09 49 4d 41 47 45 5f 53 43 4e 5f 4d 45  ,...IMAGE_SCN_ME
a890: 4d 5f 4e 4f 54 5f 43 41 43 48 45 44 20 20 20 20  M_NOT_CACHED    
a8a0: 20 20 20 20 20 3d 20 30 78 30 34 30 30 30 30 30       = 0x0400000
a8b0: 30 2c 0d 0a 09 49 4d 41 47 45 5f 53 43 4e 5f 4d  0,...IMAGE_SCN_M
a8c0: 45 4d 5f 4e 4f 54 5f 50 41 47 45 44 20 20 20 20  EM_NOT_PAGED    
a8d0: 20 20 20 20 20 20 3d 20 30 78 30 38 30 30 30 30        = 0x080000
a8e0: 30 30 2c 0d 0a 09 49 4d 41 47 45 5f 53 43 4e 5f  00,...IMAGE_SCN_
a8f0: 4d 45 4d 5f 53 48 41 52 45 44 20 20 20 20 20 20  MEM_SHARED      
a900: 20 20 20 20 20 20 20 3d 20 30 78 31 30 30 30 30         = 0x10000
a910: 30 30 30 2c 0d 0a 09 49 4d 41 47 45 5f 53 43 4e  000,...IMAGE_SCN
a920: 5f 4d 45 4d 5f 45 58 45 43 55 54 45 20 20 20 20  _MEM_EXECUTE    
a930: 20 20 20 20 20 20 20 20 3d 20 30 78 32 30 30 30          = 0x2000
a940: 30 30 30 30 2c 0d 0a 09 49 4d 41 47 45 5f 53 43  0000,...IMAGE_SC
a950: 4e 5f 4d 45 4d 5f 52 45 41 44 20 20 20 20 20 20  N_MEM_READ      
a960: 20 20 20 20 20 20 20 20 20 3d 20 30 78 34 30 30           = 0x400
a970: 30 30 30 30 30 2c 0d 0a 09 49 4d 41 47 45 5f 53  00000,...IMAGE_S
a980: 43 4e 5f 4d 45 4d 5f 57 52 49 54 45 20 20 20 20  CN_MEM_WRITE    
a990: 20 20 20 20 20 20 20 20 20 20 3d 20 30 78 38 30            = 0x80
a9a0: 30 30 30 30 30 30 3b 0d 0a 0d 0a 2f 2a 09 54 68  000000;..../*.Th
a9b0: 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 63 6f 6e 73  e following cons
a9c0: 74 61 6e 74 73 20 61 72 65 20 6d 6f 73 74 6c 79  tants are mostly
a9d0: 64 6f 63 75 6d 65 6e 74 65 64 20 61 74 0d 0a 20  documented at.. 
a9e0: 2a 09 68 74 74 70 3a 2f 2f 64 6f 77 6e 6c 6f 61  *.http://downloa
a9f0: 64 2e 6d 69 63 72 6f 73 6f 66 74 2e 63 6f 6d 2f  d.microsoft.com/
aa00: 64 6f 77 6e 6c 6f 61 64 2f 31 2f 36 2f 31 2f 31  download/1/6/1/1
aa10: 36 31 62 61 35 31 32 2d 34 30 65 32 2d 34 63 63  61ba512-40e2-4cc
aa20: 39 2d 38 34 33 61 2d 39 32 33 31 34 33 66 33 34  9-843a-923143f34
aa30: 35 36 63 2f 70 65 63 6f 66 66 2e 64 6f 63 0d 0a  56c/pecoff.doc..
aa40: 20 2a 09 62 75 74 20 64 6f 6e 27 74 20 73 65 65   *.but don't see
aa50: 6d 20 74 6f 20 62 65 20 64 65 66 69 6e 65 64 20  m to be defined 
aa60: 69 6e 20 74 68 65 20 48 54 4d 4c 20 64 6f 63 73  in the HTML docs
aa70: 2e 0d 0a 20 2a 2f 0d 0a 65 6e 75 6d 20 3a 20 53  ... */..enum : S
aa80: 48 4f 52 54 20 7b 0d 0a 09 49 4d 41 47 45 5f 53  HORT {...IMAGE_S
aa90: 59 4d 5f 55 4e 44 45 46 49 4e 45 44 20 3d 20 20  YM_UNDEFINED =  
aaa0: 30 2c 0d 0a 09 49 4d 41 47 45 5f 53 59 4d 5f 41  0,...IMAGE_SYM_A
aab0: 42 53 4f 4c 55 54 45 20 20 3d 20 2d 31 2c 0d 0a  BSOLUTE  = -1,..
aac0: 09 49 4d 41 47 45 5f 53 59 4d 5f 44 45 42 55 47  .IMAGE_SYM_DEBUG
aad0: 20 20 20 20 20 3d 20 2d 32 0d 0a 7d 0d 0a 0d 0a       = -2..}....
aae0: 65 6e 75 6d 20 3a 20 75 62 79 74 65 20 7b 0d 0a  enum : ubyte {..
aaf0: 09 49 4d 41 47 45 5f 53 59 4d 5f 54 59 50 45 5f  .IMAGE_SYM_TYPE_
ab00: 4e 55 4c 4c 2c 0d 0a 09 49 4d 41 47 45 5f 53 59  NULL,...IMAGE_SY
ab10: 4d 5f 54 59 50 45 5f 56 4f 49 44 2c 0d 0a 09 49  M_TYPE_VOID,...I
ab20: 4d 41 47 45 5f 53 59 4d 5f 54 59 50 45 5f 43 48  MAGE_SYM_TYPE_CH
ab30: 41 52 2c 0d 0a 09 49 4d 41 47 45 5f 53 59 4d 5f  AR,...IMAGE_SYM_
ab40: 54 59 50 45 5f 53 48 4f 52 54 2c 0d 0a 09 49 4d  TYPE_SHORT,...IM
ab50: 41 47 45 5f 53 59 4d 5f 54 59 50 45 5f 49 4e 54  AGE_SYM_TYPE_INT
ab60: 2c 0d 0a 09 49 4d 41 47 45 5f 53 59 4d 5f 54 59  ,...IMAGE_SYM_TY
ab70: 50 45 5f 4c 4f 4e 47 2c 0d 0a 09 49 4d 41 47 45  PE_LONG,...IMAGE
ab80: 5f 53 59 4d 5f 54 59 50 45 5f 46 4c 4f 41 54 2c  _SYM_TYPE_FLOAT,
ab90: 0d 0a 09 49 4d 41 47 45 5f 53 59 4d 5f 54 59 50  ...IMAGE_SYM_TYP
aba0: 45 5f 44 4f 55 42 4c 45 2c 0d 0a 09 49 4d 41 47  E_DOUBLE,...IMAG
abb0: 45 5f 53 59 4d 5f 54 59 50 45 5f 53 54 52 55 43  E_SYM_TYPE_STRUC
abc0: 54 2c 0d 0a 09 49 4d 41 47 45 5f 53 59 4d 5f 54  T,...IMAGE_SYM_T
abd0: 59 50 45 5f 55 4e 49 4f 4e 2c 0d 0a 09 49 4d 41  YPE_UNION,...IMA
abe0: 47 45 5f 53 59 4d 5f 54 59 50 45 5f 45 4e 55 4d  GE_SYM_TYPE_ENUM
abf0: 2c 0d 0a 09 49 4d 41 47 45 5f 53 59 4d 5f 54 59  ,...IMAGE_SYM_TY
ac00: 50 45 5f 4d 4f 45 2c 0d 0a 09 49 4d 41 47 45 5f  PE_MOE,...IMAGE_
ac10: 53 59 4d 5f 54 59 50 45 5f 42 59 54 45 2c 0d 0a  SYM_TYPE_BYTE,..
ac20: 09 49 4d 41 47 45 5f 53 59 4d 5f 54 59 50 45 5f  .IMAGE_SYM_TYPE_
ac30: 57 4f 52 44 2c 0d 0a 09 49 4d 41 47 45 5f 53 59  WORD,...IMAGE_SY
ac40: 4d 5f 54 59 50 45 5f 55 49 4e 54 2c 0d 0a 09 49  M_TYPE_UINT,...I
ac50: 4d 41 47 45 5f 53 59 4d 5f 54 59 50 45 5f 44 57  MAGE_SYM_TYPE_DW
ac60: 4f 52 44 20 2f 2f 20 3d 20 31 35 0d 0a 7d 0d 0a  ORD // = 15..}..
ac70: 63 6f 6e 73 74 20 49 4d 41 47 45 5f 53 59 4d 5f  const IMAGE_SYM_
ac80: 54 59 50 45 5f 50 43 4f 44 45 20 3d 20 33 32 37  TYPE_PCODE = 327
ac90: 36 38 3b 20 2f 2f 20 3f 3f 3f 0d 0a 0d 0a 65 6e  68; // ???....en
aca0: 75 6d 20 3a 20 75 62 79 74 65 20 7b 0d 0a 09 49  um : ubyte {...I
acb0: 4d 41 47 45 5f 53 59 4d 5f 44 54 59 50 45 5f 4e  MAGE_SYM_DTYPE_N
acc0: 55 4c 4c 2c 0d 0a 09 49 4d 41 47 45 5f 53 59 4d  ULL,...IMAGE_SYM
acd0: 5f 44 54 59 50 45 5f 50 4f 49 4e 54 45 52 2c 0d  _DTYPE_POINTER,.
ace0: 0a 09 49 4d 41 47 45 5f 53 59 4d 5f 44 54 59 50  ..IMAGE_SYM_DTYP
acf0: 45 5f 46 55 4e 43 54 49 4f 4e 2c 0d 0a 09 49 4d  E_FUNCTION,...IM
ad00: 41 47 45 5f 53 59 4d 5f 44 54 59 50 45 5f 41 52  AGE_SYM_DTYPE_AR
ad10: 52 41 59 0d 0a 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a  RAY..}....enum :
ad20: 20 42 59 54 45 20 7b 0d 0a 09 49 4d 41 47 45 5f   BYTE {...IMAGE_
ad30: 53 59 4d 5f 43 4c 41 53 53 5f 45 4e 44 5f 4f 46  SYM_CLASS_END_OF
ad40: 5f 46 55 4e 43 54 49 4f 4e 20 20 3d 20 30 78 46  _FUNCTION  = 0xF
ad50: 46 2c 0d 0a 09 49 4d 41 47 45 5f 53 59 4d 5f 43  F,...IMAGE_SYM_C
ad60: 4c 41 53 53 5f 4e 55 4c 4c 20 20 20 20 20 20 20  LASS_NULL       
ad70: 20 20 20 20 20 20 3d 20 20 20 30 2c 0d 0a 09 49        =   0,...I
ad80: 4d 41 47 45 5f 53 59 4d 5f 43 4c 41 53 53 5f 41  MAGE_SYM_CLASS_A
ad90: 55 54 4f 4d 41 54 49 43 2c 0d 0a 09 49 4d 41 47  UTOMATIC,...IMAG
ada0: 45 5f 53 59 4d 5f 43 4c 41 53 53 5f 45 58 54 45  E_SYM_CLASS_EXTE
adb0: 52 4e 41 4c 2c 0d 0a 09 49 4d 41 47 45 5f 53 59  RNAL,...IMAGE_SY
adc0: 4d 5f 43 4c 41 53 53 5f 53 54 41 54 49 43 2c 0d  M_CLASS_STATIC,.
add0: 0a 09 49 4d 41 47 45 5f 53 59 4d 5f 43 4c 41 53  ..IMAGE_SYM_CLAS
ade0: 53 5f 52 45 47 49 53 54 45 52 2c 0d 0a 09 49 4d  S_REGISTER,...IM
adf0: 41 47 45 5f 53 59 4d 5f 43 4c 41 53 53 5f 45 58  AGE_SYM_CLASS_EX
ae00: 54 45 52 4e 41 4c 5f 44 45 46 2c 0d 0a 09 49 4d  TERNAL_DEF,...IM
ae10: 41 47 45 5f 53 59 4d 5f 43 4c 41 53 53 5f 4c 41  AGE_SYM_CLASS_LA
ae20: 42 45 4c 2c 0d 0a 09 49 4d 41 47 45 5f 53 59 4d  BEL,...IMAGE_SYM
ae30: 5f 43 4c 41 53 53 5f 55 4e 44 45 46 49 4e 45 44  _CLASS_UNDEFINED
ae40: 5f 4c 41 42 45 4c 2c 0d 0a 09 49 4d 41 47 45 5f  _LABEL,...IMAGE_
ae50: 53 59 4d 5f 43 4c 41 53 53 5f 4d 45 4d 42 45 52  SYM_CLASS_MEMBER
ae60: 5f 4f 46 5f 53 54 52 55 43 54 2c 0d 0a 09 49 4d  _OF_STRUCT,...IM
ae70: 41 47 45 5f 53 59 4d 5f 43 4c 41 53 53 5f 41 52  AGE_SYM_CLASS_AR
ae80: 47 55 4d 45 4e 54 2c 0d 0a 09 49 4d 41 47 45 5f  GUMENT,...IMAGE_
ae90: 53 59 4d 5f 43 4c 41 53 53 5f 53 54 52 55 43 54  SYM_CLASS_STRUCT
aea0: 5f 54 41 47 2c 0d 0a 09 49 4d 41 47 45 5f 53 59  _TAG,...IMAGE_SY
aeb0: 4d 5f 43 4c 41 53 53 5f 4d 45 4d 42 45 52 5f 4f  M_CLASS_MEMBER_O
aec0: 46 5f 55 4e 49 4f 4e 2c 0d 0a 09 49 4d 41 47 45  F_UNION,...IMAGE
aed0: 5f 53 59 4d 5f 43 4c 41 53 53 5f 55 4e 49 4f 4e  _SYM_CLASS_UNION
aee0: 5f 54 41 47 2c 0d 0a 09 49 4d 41 47 45 5f 53 59  _TAG,...IMAGE_SY
aef0: 4d 5f 43 4c 41 53 53 5f 54 59 50 45 5f 44 45 46  M_CLASS_TYPE_DEF
af00: 49 4e 49 54 49 4f 4e 2c 0d 0a 09 49 4d 41 47 45  INITION,...IMAGE
af10: 5f 53 59 4d 5f 43 4c 41 53 53 5f 55 4e 44 45 46  _SYM_CLASS_UNDEF
af20: 49 4e 45 44 5f 53 54 41 54 49 43 2c 0d 0a 09 49  INED_STATIC,...I
af30: 4d 41 47 45 5f 53 59 4d 5f 43 4c 41 53 53 5f 45  MAGE_SYM_CLASS_E
af40: 4e 55 4d 5f 54 41 47 2c 0d 0a 09 49 4d 41 47 45  NUM_TAG,...IMAGE
af50: 5f 53 59 4d 5f 43 4c 41 53 53 5f 4d 45 4d 42 45  _SYM_CLASS_MEMBE
af60: 52 5f 4f 46 5f 45 4e 55 4d 2c 0d 0a 09 49 4d 41  R_OF_ENUM,...IMA
af70: 47 45 5f 53 59 4d 5f 43 4c 41 53 53 5f 52 45 47  GE_SYM_CLASS_REG
af80: 49 53 54 45 52 5f 50 41 52 41 4d 2c 0d 0a 09 49  ISTER_PARAM,...I
af90: 4d 41 47 45 5f 53 59 4d 5f 43 4c 41 53 53 5f 42  MAGE_SYM_CLASS_B
afa0: 49 54 5f 46 49 45 4c 44 2c 20 20 20 20 2f 2f 20  IT_FIELD,    // 
afb0: 3d 20 20 31 38 0d 0a 09 49 4d 41 47 45 5f 53 59  =  18...IMAGE_SY
afc0: 4d 5f 43 4c 41 53 53 5f 46 41 52 5f 45 58 54 45  M_CLASS_FAR_EXTE
afd0: 52 4e 41 4c 20 20 20 20 20 3d 20 20 36 38 2c 0d  RNAL     =  68,.
afe0: 0a 09 49 4d 41 47 45 5f 53 59 4d 5f 43 4c 41 53  ..IMAGE_SYM_CLAS
aff0: 53 5f 42 4c 4f 43 4b 20 20 20 20 20 20 20 20 20  S_BLOCK         
b000: 20 20 20 3d 20 31 30 30 2c 0d 0a 09 49 4d 41 47     = 100,...IMAG
b010: 45 5f 53 59 4d 5f 43 4c 41 53 53 5f 46 55 4e 43  E_SYM_CLASS_FUNC
b020: 54 49 4f 4e 2c 0d 0a 09 49 4d 41 47 45 5f 53 59  TION,...IMAGE_SY
b030: 4d 5f 43 4c 41 53 53 5f 45 4e 44 5f 4f 46 5f 53  M_CLASS_END_OF_S
b040: 54 52 55 43 54 2c 0d 0a 09 49 4d 41 47 45 5f 53  TRUCT,...IMAGE_S
b050: 59 4d 5f 43 4c 41 53 53 5f 46 49 4c 45 2c 0d 0a  YM_CLASS_FILE,..
b060: 09 49 4d 41 47 45 5f 53 59 4d 5f 43 4c 41 53 53  .IMAGE_SYM_CLASS
b070: 5f 53 45 43 54 49 4f 4e 2c 0d 0a 09 49 4d 41 47  _SECTION,...IMAG
b080: 45 5f 53 59 4d 5f 43 4c 41 53 53 5f 57 45 41 4b  E_SYM_CLASS_WEAK
b090: 5f 45 58 54 45 52 4e 41 4c 2c 2f 2f 20 3d 20 31  _EXTERNAL,// = 1
b0a0: 30 35 0d 0a 09 49 4d 41 47 45 5f 53 59 4d 5f 43  05...IMAGE_SYM_C
b0b0: 4c 41 53 53 5f 43 4c 52 5f 54 4f 4b 45 4e 20 20  LASS_CLR_TOKEN  
b0c0: 20 20 20 20 20 20 3d 20 31 30 37 0d 0a 7d 0d 0a        = 107..}..
b0d0: 0d 0a 65 6e 75 6d 20 3a 20 42 59 54 45 20 7b 0d  ..enum : BYTE {.
b0e0: 0a 09 49 4d 41 47 45 5f 43 4f 4d 44 41 54 5f 53  ..IMAGE_COMDAT_S
b0f0: 45 4c 45 43 54 5f 4e 4f 44 55 50 4c 49 43 41 54  ELECT_NODUPLICAT
b100: 45 53 20 3d 20 31 2c 0d 0a 09 49 4d 41 47 45 5f  ES = 1,...IMAGE_
b110: 43 4f 4d 44 41 54 5f 53 45 4c 45 43 54 5f 41 4e  COMDAT_SELECT_AN
b120: 59 2c 0d 0a 09 49 4d 41 47 45 5f 43 4f 4d 44 41  Y,...IMAGE_COMDA
b130: 54 5f 53 45 4c 45 43 54 5f 53 41 4d 45 5f 53 49  T_SELECT_SAME_SI
b140: 5a 45 2c 0d 0a 09 49 4d 41 47 45 5f 43 4f 4d 44  ZE,...IMAGE_COMD
b150: 41 54 5f 53 45 4c 45 43 54 5f 45 58 41 43 54 5f  AT_SELECT_EXACT_
b160: 4d 41 54 43 48 2c 0d 0a 09 49 4d 41 47 45 5f 43  MATCH,...IMAGE_C
b170: 4f 4d 44 41 54 5f 53 45 4c 45 43 54 5f 41 53 53  OMDAT_SELECT_ASS
b180: 4f 43 49 41 54 49 56 45 2c 0d 0a 09 49 4d 41 47  OCIATIVE,...IMAG
b190: 45 5f 43 4f 4d 44 41 54 5f 53 45 4c 45 43 54 5f  E_COMDAT_SELECT_
b1a0: 4c 41 52 47 45 53 54 2c 0d 0a 09 49 4d 41 47 45  LARGEST,...IMAGE
b1b0: 5f 43 4f 4d 44 41 54 5f 53 45 4c 45 43 54 5f 4e  _COMDAT_SELECT_N
b1c0: 45 57 45 53 54 20 20 20 20 2f 2f 20 3d 20 37 0d  EWEST    // = 7.
b1d0: 0a 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 44 57 4f  .}....enum : DWO
b1e0: 52 44 20 7b 0d 0a 09 49 4d 41 47 45 5f 57 45 41  RD {...IMAGE_WEA
b1f0: 4b 5f 45 58 54 45 52 4e 5f 53 45 41 52 43 48 5f  K_EXTERN_SEARCH_
b200: 4e 4f 4c 49 42 52 41 52 59 20 3d 20 31 2c 0d 0a  NOLIBRARY = 1,..
b210: 09 49 4d 41 47 45 5f 57 45 41 4b 5f 45 58 54 45  .IMAGE_WEAK_EXTE
b220: 52 4e 5f 53 45 41 52 43 48 5f 4c 49 42 52 41 52  RN_SEARCH_LIBRAR
b230: 59 2c 0d 0a 09 49 4d 41 47 45 5f 57 45 41 4b 5f  Y,...IMAGE_WEAK_
b240: 45 58 54 45 52 4e 5f 53 45 41 52 43 48 5f 41 4c  EXTERN_SEARCH_AL
b250: 49 41 53 0d 0a 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a  IAS..}....enum :
b260: 20 57 4f 52 44 20 7b 0d 0a 09 49 4d 41 47 45 5f   WORD {...IMAGE_
b270: 52 45 4c 5f 49 33 38 36 5f 41 42 53 4f 4c 55 54  REL_I386_ABSOLUT
b280: 45 20 20 20 20 20 20 20 3d 20 30 78 30 30 30 30  E       = 0x0000
b290: 2c 0d 0a 09 49 4d 41 47 45 5f 52 45 4c 5f 49 33  ,...IMAGE_REL_I3
b2a0: 38 36 5f 44 49 52 31 36 20 20 20 20 20 20 20 20  86_DIR16        
b2b0: 20 20 3d 20 30 78 30 30 30 31 2c 0d 0a 09 49 4d    = 0x0001,...IM
b2c0: 41 47 45 5f 52 45 4c 5f 49 33 38 36 5f 52 45 4c  AGE_REL_I386_REL
b2d0: 31 36 20 20 20 20 20 20 20 20 20 20 3d 20 30 78  16          = 0x
b2e0: 30 30 30 32 2c 0d 0a 09 49 4d 41 47 45 5f 52 45  0002,...IMAGE_RE
b2f0: 4c 5f 49 33 38 36 5f 44 49 52 33 32 20 20 20 20  L_I386_DIR32    
b300: 20 20 20 20 20 20 3d 20 30 78 30 30 30 36 2c 0d        = 0x0006,.
b310: 0a 09 49 4d 41 47 45 5f 52 45 4c 5f 49 33 38 36  ..IMAGE_REL_I386
b320: 5f 44 49 52 33 32 4e 42 20 20 20 20 20 20 20 20  _DIR32NB        
b330: 3d 20 30 78 30 30 30 37 2c 0d 0a 09 49 4d 41 47  = 0x0007,...IMAG
b340: 45 5f 52 45 4c 5f 49 33 38 36 5f 53 45 47 31 32  E_REL_I386_SEG12
b350: 20 20 20 20 20 20 20 20 20 20 3d 20 30 78 30 30            = 0x00
b360: 30 39 2c 0d 0a 09 49 4d 41 47 45 5f 52 45 4c 5f  09,...IMAGE_REL_
b370: 49 33 38 36 5f 53 45 43 54 49 4f 4e 20 20 20 20  I386_SECTION    
b380: 20 20 20 20 3d 20 30 78 30 30 30 41 2c 0d 0a 09      = 0x000A,...
b390: 49 4d 41 47 45 5f 52 45 4c 5f 49 33 38 36 5f 53  IMAGE_REL_I386_S
b3a0: 45 43 52 45 4c 20 20 20 20 20 20 20 20 20 3d 20  ECREL         = 
b3b0: 30 78 30 30 30 42 2c 0d 0a 09 49 4d 41 47 45 5f  0x000B,...IMAGE_
b3c0: 52 45 4c 5f 49 33 38 36 5f 54 4f 4b 45 4e 20 20  REL_I386_TOKEN  
b3d0: 20 20 20 20 20 20 20 20 3d 20 30 78 30 30 30 43          = 0x000C
b3e0: 2c 0d 0a 09 49 4d 41 47 45 5f 52 45 4c 5f 49 33  ,...IMAGE_REL_I3
b3f0: 38 36 5f 53 45 43 52 45 4c 37 20 20 20 20 20 20  86_SECREL7      
b400: 20 20 3d 20 30 78 30 30 30 44 2c 0d 0a 09 49 4d    = 0x000D,...IM
b410: 41 47 45 5f 52 45 4c 5f 49 33 38 36 5f 52 45 4c  AGE_REL_I386_REL
b420: 33 32 20 20 20 20 20 20 20 20 20 20 3d 20 30 78  32          = 0x
b430: 30 30 31 34 0d 0a 7d 0d 0a 0d 0a 65 6e 75 6d 20  0014..}....enum 
b440: 3a 20 57 4f 52 44 20 7b 0d 0a 09 49 4d 41 47 45  : WORD {...IMAGE
b450: 5f 52 45 4c 5f 41 4d 44 36 34 5f 41 42 53 4f 4c  _REL_AMD64_ABSOL
b460: 55 54 45 20 20 20 20 20 20 3d 20 30 78 30 30 30  UTE      = 0x000
b470: 30 2c 0d 0a 09 49 4d 41 47 45 5f 52 45 4c 5f 41  0,...IMAGE_REL_A
b480: 4d 44 36 34 5f 41 44 44 52 36 34 20 20 20 20 20  MD64_ADDR64     
b490: 20 20 20 3d 20 30 78 30 30 30 31 2c 0d 0a 09 49     = 0x0001,...I
b4a0: 4d 41 47 45 5f 52 45 4c 5f 41 4d 44 36 34 5f 41  MAGE_REL_AMD64_A
b4b0: 44 44 52 33 32 20 20 20 20 20 20 20 20 3d 20 30  DDR32        = 0
b4c0: 78 30 30 30 32 2c 0d 0a 09 49 4d 41 47 45 5f 52  x0002,...IMAGE_R
b4d0: 45 4c 5f 41 4d 44 36 34 5f 41 44 44 52 33 32 4e  EL_AMD64_ADDR32N
b4e0: 42 20 20 20 20 20 20 3d 20 30 78 30 30 30 33 2c  B      = 0x0003,
b4f0: 0d 0a 09 49 4d 41 47 45 5f 52 45 4c 5f 41 4d 44  ...IMAGE_REL_AMD
b500: 36 34 5f 52 45 4c 33 32 20 20 20 20 20 20 20 20  64_REL32        
b510: 20 3d 20 30 78 30 30 30 34 2c 0d 0a 09 49 4d 41   = 0x0004,...IMA
b520: 47 45 5f 52 45 4c 5f 41 4d 44 36 34 5f 52 45 4c  GE_REL_AMD64_REL
b530: 33 32 5f 31 20 20 20 20 20 20 20 3d 20 30 78 30  32_1       = 0x0
b540: 30 30 35 2c 0d 0a 09 49 4d 41 47 45 5f 52 45 4c  005,...IMAGE_REL
b550: 5f 41 4d 44 36 34 5f 52 45 4c 33 32 5f 32 20 20  _AMD64_REL32_2  
b560: 20 20 20 20 20 3d 20 30 78 30 30 30 36 2c 0d 0a       = 0x0006,..
b570: 09 49 4d 41 47 45 5f 52 45 4c 5f 41 4d 44 36 34  .IMAGE_REL_AMD64
b580: 5f 52 45 4c 33 32 5f 33 20 20 20 20 20 20 20 3d  _REL32_3       =
b590: 20 30 78 30 30 30 37 2c 0d 0a 09 49 4d 41 47 45   0x0007,...IMAGE
b5a0: 5f 52 45 4c 5f 41 4d 44 36 34 5f 52 45 4c 33 32  _REL_AMD64_REL32
b5b0: 5f 34 20 20 20 20 20 20 20 3d 20 30 78 30 30 30  _4       = 0x000
b5c0: 38 2c 0d 0a 09 49 4d 41 47 45 5f 52 45 4c 5f 41  8,...IMAGE_REL_A
b5d0: 4d 44 36 34 5f 52 45 4c 33 32 5f 35 20 20 20 20  MD64_REL32_5    
b5e0: 20 20 20 3d 20 30 78 30 30 30 39 2c 0d 0a 09 49     = 0x0009,...I
b5f0: 4d 41 47 45 5f 52 45 4c 5f 41 4d 44 36 34 5f 53  MAGE_REL_AMD64_S
b600: 45 43 54 49 4f 4e 20 20 20 20 20 20 20 3d 20 30  ECTION       = 0
b610: 78 30 30 30 41 2c 0d 0a 09 49 4d 41 47 45 5f 52  x000A,...IMAGE_R
b620: 45 4c 5f 41 4d 44 36 34 5f 53 45 43 52 45 4c 20  EL_AMD64_SECREL 
b630: 20 20 20 20 20 20 20 3d 20 30 78 30 30 30 42 2c         = 0x000B,
b640: 0d 0a 09 49 4d 41 47 45 5f 52 45 4c 5f 41 4d 44  ...IMAGE_REL_AMD
b650: 36 34 5f 53 45 43 52 45 4c 37 20 20 20 20 20 20  64_SECREL7      
b660: 20 3d 20 30 78 30 30 30 43 2c 0d 0a 09 49 4d 41   = 0x000C,...IMA
b670: 47 45 5f 52 45 4c 5f 41 4d 44 36 34 5f 54 4f 4b  GE_REL_AMD64_TOK
b680: 45 4e 20 20 20 20 20 20 20 20 20 3d 20 30 78 30  EN         = 0x0
b690: 30 30 44 2c 0d 0a 09 49 4d 41 47 45 5f 52 45 4c  00D,...IMAGE_REL
b6a0: 5f 41 4d 44 36 34 5f 53 52 45 4c 33 32 20 20 20  _AMD64_SREL32   
b6b0: 20 20 20 20 20 3d 20 30 78 30 30 30 45 2c 0d 0a       = 0x000E,..
b6c0: 09 49 4d 41 47 45 5f 52 45 4c 5f 41 4d 44 36 34  .IMAGE_REL_AMD64
b6d0: 5f 50 41 49 52 20 20 20 20 20 20 20 20 20 20 3d  _PAIR          =
b6e0: 20 30 78 30 30 30 46 2c 0d 0a 09 49 4d 41 47 45   0x000F,...IMAGE
b6f0: 5f 52 45 4c 5f 41 4d 44 36 34 5f 53 53 50 41 4e  _REL_AMD64_SSPAN
b700: 33 32 20 20 20 20 20 20 20 3d 20 30 78 30 30 31  32       = 0x001
b710: 30 0d 0a 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 57  0..}....enum : W
b720: 4f 52 44 20 7b 0d 0a 09 49 4d 41 47 45 5f 52 45  ORD {...IMAGE_RE
b730: 4c 5f 49 41 36 34 5f 41 42 53 4f 4c 55 54 45 20  L_IA64_ABSOLUTE 
b740: 20 20 20 20 20 20 3d 20 30 78 30 30 30 30 2c 0d        = 0x0000,.
b750: 0a 09 49 4d 41 47 45 5f 52 45 4c 5f 49 41 36 34  ..IMAGE_REL_IA64
b760: 5f 49 4d 4d 31 34 20 20 20 20 20 20 20 20 20 20  _IMM14          
b770: 3d 20 30 78 30 30 30 31 2c 0d 0a 09 49 4d 41 47  = 0x0001,...IMAG
b780: 45 5f 52 45 4c 5f 49 41 36 34 5f 49 4d 4d 32 32  E_REL_IA64_IMM22
b790: 20 20 20 20 20 20 20 20 20 20 3d 20 30 78 30 30            = 0x00
b7a0: 30 32 2c 0d 0a 09 49 4d 41 47 45 5f 52 45 4c 5f  02,...IMAGE_REL_
b7b0: 49 41 36 34 5f 49 4d 4d 36 34 20 20 20 20 20 20  IA64_IMM64      
b7c0: 20 20 20 20 3d 20 30 78 30 30 30 33 2c 0d 0a 09      = 0x0003,...
b7d0: 49 4d 41 47 45 5f 52 45 4c 5f 49 41 36 34 5f 44  IMAGE_REL_IA64_D
b7e0: 49 52 33 32 20 20 20 20 20 20 20 20 20 20 3d 20  IR32          = 
b7f0: 30 78 30 30 30 34 2c 0d 0a 09 49 4d 41 47 45 5f  0x0004,...IMAGE_
b800: 52 45 4c 5f 49 41 36 34 5f 44 49 52 36 34 20 20  REL_IA64_DIR64  
b810: 20 20 20 20 20 20 20 20 3d 20 30 78 30 30 30 35          = 0x0005
b820: 2c 0d 0a 09 49 4d 41 47 45 5f 52 45 4c 5f 49 41  ,...IMAGE_REL_IA
b830: 36 34 5f 50 43 52 45 4c 32 31 42 20 20 20 20 20  64_PCREL21B     
b840: 20 20 3d 20 30 78 30 30 30 36 2c 0d 0a 09 49 4d    = 0x0006,...IM
b850: 41 47 45 5f 52 45 4c 5f 49 41 36 34 5f 50 43 52  AGE_REL_IA64_PCR
b860: 45 4c 32 31 4d 20 20 20 20 20 20 20 3d 20 30 78  EL21M       = 0x
b870: 30 30 30 37 2c 0d 0a 09 49 4d 41 47 45 5f 52 45  0007,...IMAGE_RE
b880: 4c 5f 49 41 36 34 5f 50 43 52 45 4c 32 31 46 20  L_IA64_PCREL21F 
b890: 20 20 20 20 20 20 3d 20 30 78 30 30 30 38 2c 0d        = 0x0008,.
b8a0: 0a 09 49 4d 41 47 45 5f 52 45 4c 5f 49 41 36 34  ..IMAGE_REL_IA64
b8b0: 5f 47 50 52 45 4c 32 32 20 20 20 20 20 20 20 20  _GPREL22        
b8c0: 3d 20 30 78 30 30 30 39 2c 0d 0a 09 49 4d 41 47  = 0x0009,...IMAG
b8d0: 45 5f 52 45 4c 5f 49 41 36 34 5f 4c 54 4f 46 46  E_REL_IA64_LTOFF
b8e0: 32 32 20 20 20 20 20 20 20 20 3d 20 30 78 30 30  22        = 0x00
b8f0: 30 41 2c 0d 0a 09 49 4d 41 47 45 5f 52 45 4c 5f  0A,...IMAGE_REL_
b900: 49 41 36 34 5f 53 45 43 54 49 4f 4e 20 20 20 20  IA64_SECTION    
b910: 20 20 20 20 3d 20 30 78 30 30 30 42 2c 0d 0a 09      = 0x000B,...
b920: 49 4d 41 47 45 5f 52 45 4c 5f 49 41 36 34 5f 53  IMAGE_REL_IA64_S
b930: 45 43 52 45 4c 32 32 20 20 20 20 20 20 20 3d 20  ECREL22       = 
b940: 30 78 30 30 30 43 2c 0d 0a 09 49 4d 41 47 45 5f  0x000C,...IMAGE_
b950: 52 45 4c 5f 49 41 36 34 5f 53 45 43 52 45 4c 36  REL_IA64_SECREL6
b960: 34 49 20 20 20 20 20 20 3d 20 30 78 30 30 30 44  4I      = 0x000D
b970: 2c 0d 0a 09 49 4d 41 47 45 5f 52 45 4c 5f 49 41  ,...IMAGE_REL_IA
b980: 36 34 5f 53 45 43 52 45 4c 33 32 20 20 20 20 20  64_SECREL32     
b990: 20 20 3d 20 30 78 30 30 30 45 2c 0d 0a 09 49 4d    = 0x000E,...IM
b9a0: 41 47 45 5f 52 45 4c 5f 49 41 36 34 5f 44 49 52  AGE_REL_IA64_DIR
b9b0: 33 32 4e 42 20 20 20 20 20 20 20 20 3d 20 30 78  32NB        = 0x
b9c0: 30 30 31 30 2c 0d 0a 09 49 4d 41 47 45 5f 52 45  0010,...IMAGE_RE
b9d0: 4c 5f 49 41 36 34 5f 53 52 45 4c 31 34 20 20 20  L_IA64_SREL14   
b9e0: 20 20 20 20 20 20 3d 20 30 78 30 30 31 31 2c 0d        = 0x0011,.
b9f0: 0a 09 49 4d 41 47 45 5f 52 45 4c 5f 49 41 36 34  ..IMAGE_REL_IA64
ba00: 5f 53 52 45 4c 32 32 20 20 20 20 20 20 20 20 20  _SREL22         
ba10: 3d 20 30 78 30 30 31 32 2c 0d 0a 09 49 4d 41 47  = 0x0012,...IMAG
ba20: 45 5f 52 45 4c 5f 49 41 36 34 5f 53 52 45 4c 33  E_REL_IA64_SREL3
ba30: 32 20 20 20 20 20 20 20 20 20 3d 20 30 78 30 30  2         = 0x00
ba40: 31 33 2c 0d 0a 09 49 4d 41 47 45 5f 52 45 4c 5f  13,...IMAGE_REL_
ba50: 49 41 36 34 5f 55 52 45 4c 33 32 20 20 20 20 20  IA64_UREL32     
ba60: 20 20 20 20 3d 20 30 78 30 30 31 34 2c 0d 0a 09      = 0x0014,...
ba70: 49 4d 41 47 45 5f 52 45 4c 5f 49 41 36 34 5f 50  IMAGE_REL_IA64_P
ba80: 43 52 45 4c 36 30 58 20 20 20 20 20 20 20 3d 20  CREL60X       = 
ba90: 30 78 30 30 31 35 2c 0d 0a 09 49 4d 41 47 45 5f  0x0015,...IMAGE_
baa0: 52 45 4c 5f 49 41 36 34 5f 50 43 52 45 4c 36 30  REL_IA64_PCREL60
bab0: 42 20 20 20 20 20 20 20 3d 20 30 78 30 30 31 36  B       = 0x0016
bac0: 2c 0d 0a 09 49 4d 41 47 45 5f 52 45 4c 5f 49 41  ,...IMAGE_REL_IA
bad0: 36 34 5f 50 43 52 45 4c 36 30 46 20 20 20 20 20  64_PCREL60F     
bae0: 20 20 3d 20 30 78 30 30 31 37 2c 0d 0a 09 49 4d    = 0x0017,...IM
baf0: 41 47 45 5f 52 45 4c 5f 49 41 36 34 5f 50 43 52  AGE_REL_IA64_PCR
bb00: 45 4c 36 30 49 20 20 20 20 20 20 20 3d 20 30 78  EL60I       = 0x
bb10: 30 30 31 38 2c 0d 0a 09 49 4d 41 47 45 5f 52 45  0018,...IMAGE_RE
bb20: 4c 5f 49 41 36 34 5f 50 43 52 45 4c 36 30 4d 20  L_IA64_PCREL60M 
bb30: 20 20 20 20 20 20 3d 20 30 78 30 30 31 39 2c 0d        = 0x0019,.
bb40: 0a 09 49 4d 41 47 45 5f 52 45 4c 5f 49 41 36 34  ..IMAGE_REL_IA64
bb50: 5f 49 4d 4d 47 50 52 45 4c 36 34 20 20 20 20 20  _IMMGPREL64     
bb60: 3d 20 30 78 30 30 31 41 2c 0d 0a 09 49 4d 41 47  = 0x001A,...IMAG
bb70: 45 5f 52 45 4c 5f 49 41 36 34 5f 54 4f 4b 45 4e  E_REL_IA64_TOKEN
bb80: 20 20 20 20 20 20 20 20 20 20 3d 20 30 78 30 30            = 0x00
bb90: 31 42 2c 0d 0a 09 49 4d 41 47 45 5f 52 45 4c 5f  1B,...IMAGE_REL_
bba0: 49 41 36 34 5f 47 50 52 45 4c 33 32 20 20 20 20  IA64_GPREL32    
bbb0: 20 20 20 20 3d 20 30 78 30 30 31 43 2c 0d 0a 09      = 0x001C,...
bbc0: 49 4d 41 47 45 5f 52 45 4c 5f 49 41 36 34 5f 41  IMAGE_REL_IA64_A
bbd0: 44 44 45 4e 44 20 20 20 20 20 20 20 20 20 3d 20  DDEND         = 
bbe0: 30 78 30 30 31 46 0d 0a 7d 0d 0a 0d 0a 65 6e 75  0x001F..}....enu
bbf0: 6d 20 3a 20 57 4f 52 44 20 7b 0d 0a 09 49 4d 41  m : WORD {...IMA
bc00: 47 45 5f 52 45 4c 5f 53 48 33 5f 41 42 53 4f 4c  GE_REL_SH3_ABSOL
bc10: 55 54 45 20 20 20 20 20 20 20 20 3d 20 30 78 30  UTE        = 0x0
bc20: 30 30 30 2c 0d 0a 09 49 4d 41 47 45 5f 52 45 4c  000,...IMAGE_REL
bc30: 5f 53 48 33 5f 44 49 52 45 43 54 31 36 20 20 20  _SH3_DIRECT16   
bc40: 20 20 20 20 20 3d 20 30 78 30 30 30 31 2c 0d 0a       = 0x0001,..
bc50: 09 49 4d 41 47 45 5f 52 45 4c 5f 53 48 33 5f 44  .IMAGE_REL_SH3_D
bc60: 49 52 45 43 54 33 32 20 20 20 20 20 20 20 20 3d  IRECT32        =
bc70: 20 30 78 30 30 30 32 2c 0d 0a 09 49 4d 41 47 45   0x0002,...IMAGE
bc80: 5f 52 45 4c 5f 53 48 33 5f 44 49 52 45 43 54 38  _REL_SH3_DIRECT8
bc90: 20 20 20 20 20 20 20 20 20 3d 20 30 78 30 30 30           = 0x000
bca0: 33 2c 0d 0a 09 49 4d 41 47 45 5f 52 45 4c 5f 53  3,...IMAGE_REL_S
bcb0: 48 33 5f 44 49 52 45 43 54 38 5f 57 4f 52 44 20  H3_DIRECT8_WORD 
bcc0: 20 20 20 3d 20 30 78 30 30 30 34 2c 0d 0a 09 49     = 0x0004,...I
bcd0: 4d 41 47 45 5f 52 45 4c 5f 53 48 33 5f 44 49 52  MAGE_REL_SH3_DIR
bce0: 45 43 54 38 5f 4c 4f 4e 47 20 20 20 20 3d 20 30  ECT8_LONG    = 0
bcf0: 78 30 30 30 35 2c 0d 0a 09 49 4d 41 47 45 5f 52  x0005,...IMAGE_R
bd00: 45 4c 5f 53 48 33 5f 44 49 52 45 43 54 34 20 20  EL_SH3_DIRECT4  
bd10: 20 20 20 20 20 20 20 3d 20 30 78 30 30 30 36 2c         = 0x0006,
bd20: 0d 0a 09 49 4d 41 47 45 5f 52 45 4c 5f 53 48 33  ...IMAGE_REL_SH3
bd30: 5f 44 49 52 45 43 54 34 5f 57 4f 52 44 20 20 20  _DIRECT4_WORD   
bd40: 20 3d 20 30 78 30 30 30 37 2c 0d 0a 09 49 4d 41   = 0x0007,...IMA
bd50: 47 45 5f 52 45 4c 5f 53 48 33 5f 44 49 52 45 43  GE_REL_SH3_DIREC
bd60: 54 34 5f 4c 4f 4e 47 20 20 20 20 3d 20 30 78 30  T4_LONG    = 0x0
bd70: 30 30 38 2c 0d 0a 09 49 4d 41 47 45 5f 52 45 4c  008,...IMAGE_REL
bd80: 5f 53 48 33 5f 50 43 52 45 4c 38 5f 57 4f 52 44  _SH3_PCREL8_WORD
bd90: 20 20 20 20 20 3d 20 30 78 30 30 30 39 2c 0d 0a       = 0x0009,..
bda0: 09 49 4d 41 47 45 5f 52 45 4c 5f 53 48 33 5f 50  .IMAGE_REL_SH3_P
bdb0: 43 52 45 4c 38 5f 4c 4f 4e 47 20 20 20 20 20 3d  CREL8_LONG     =
bdc0: 20 30 78 30 30 30 41 2c 0d 0a 09 49 4d 41 47 45   0x000A,...IMAGE
bdd0: 5f 52 45 4c 5f 53 48 33 5f 50 43 52 45 4c 31 32  _REL_SH3_PCREL12
bde0: 5f 57 4f 52 44 20 20 20 20 3d 20 30 78 30 30 30  _WORD    = 0x000
bdf0: 42 2c 0d 0a 09 49 4d 41 47 45 5f 52 45 4c 5f 53  B,...IMAGE_REL_S
be00: 48 33 5f 53 54 41 52 54 4f 46 5f 53 45 43 54 49  H3_STARTOF_SECTI
be10: 4f 4e 20 3d 20 30 78 30 30 30 43 2c 0d 0a 09 49  ON = 0x000C,...I
be20: 4d 41 47 45 5f 52 45 4c 5f 53 48 33 5f 53 49 5a  MAGE_REL_SH3_SIZ
be30: 45 4f 46 5f 53 45 43 54 49 4f 4e 20 20 3d 20 30  EOF_SECTION  = 0
be40: 78 30 30 30 44 2c 0d 0a 09 49 4d 41 47 45 5f 52  x000D,...IMAGE_R
be50: 45 4c 5f 53 48 33 5f 53 45 43 54 49 4f 4e 20 20  EL_SH3_SECTION  
be60: 20 20 20 20 20 20 20 3d 20 30 78 30 30 30 45 2c         = 0x000E,
be70: 0d 0a 09 49 4d 41 47 45 5f 52 45 4c 5f 53 48 33  ...IMAGE_REL_SH3
be80: 5f 53 45 43 52 45 4c 20 20 20 20 20 20 20 20 20  _SECREL         
be90: 20 3d 20 30 78 30 30 30 46 2c 0d 0a 09 49 4d 41   = 0x000F,...IMA
bea0: 47 45 5f 52 45 4c 5f 53 48 33 5f 44 49 52 45 43  GE_REL_SH3_DIREC
beb0: 54 33 32 5f 4e 42 20 20 20 20 20 3d 20 30 78 30  T32_NB     = 0x0
bec0: 30 31 30 2c 0d 0a 09 49 4d 41 47 45 5f 52 45 4c  010,...IMAGE_REL
bed0: 5f 53 48 33 5f 47 50 52 45 4c 34 5f 4c 4f 4e 47  _SH3_GPREL4_LONG
bee0: 20 20 20 20 20 3d 20 30 78 30 30 31 31 2c 0d 0a       = 0x0011,..
bef0: 09 49 4d 41 47 45 5f 52 45 4c 5f 53 48 33 5f 54  .IMAGE_REL_SH3_T
bf00: 4f 4b 45 4e 20 20 20 20 20 20 20 20 20 20 20 3d  OKEN           =
bf10: 20 30 78 30 30 31 32 2c 0d 0a 09 49 4d 41 47 45   0x0012,...IMAGE
bf20: 5f 52 45 4c 5f 53 48 4d 5f 50 43 52 45 4c 50 54  _REL_SHM_PCRELPT
bf30: 20 20 20 20 20 20 20 20 20 3d 20 30 78 30 30 31           = 0x001
bf40: 33 2c 0d 0a 09 49 4d 41 47 45 5f 52 45 4c 5f 53  3,...IMAGE_REL_S
bf50: 48 4d 5f 52 45 46 4c 4f 20 20 20 20 20 20 20 20  HM_REFLO        
bf60: 20 20 20 3d 20 30 78 30 30 31 34 2c 0d 0a 09 49     = 0x0014,...I
bf70: 4d 41 47 45 5f 52 45 4c 5f 53 48 4d 5f 52 45 46  MAGE_REL_SHM_REF
bf80: 48 41 4c 46 20 20 20 20 20 20 20 20 20 3d 20 30  HALF         = 0
bf90: 78 30 30 31 35 2c 0d 0a 09 49 4d 41 47 45 5f 52  x0015,...IMAGE_R
bfa0: 45 4c 5f 53 48 4d 5f 52 45 4c 4c 4f 20 20 20 20  EL_SHM_RELLO    
bfb0: 20 20 20 20 20 20 20 3d 20 30 78 30 30 31 36 2c         = 0x0016,
bfc0: 0d 0a 09 49 4d 41 47 45 5f 52 45 4c 5f 53 48 4d  ...IMAGE_REL_SHM
bfd0: 5f 52 45 4c 48 41 4c 46 20 20 20 20 20 20 20 20  _RELHALF        
bfe0: 20 3d 20 30 78 30 30 31 37 2c 0d 0a 09 49 4d 41   = 0x0017,...IMA
bff0: 47 45 5f 52 45 4c 5f 53 48 4d 5f 50 41 49 52 20  GE_REL_SHM_PAIR 
c000: 20 20 20 20 20 20 20 20 20 20 20 3d 20 30 78 30             = 0x0
c010: 30 31 38 2c 0d 0a 09 49 4d 41 47 45 5f 52 45 4c  018,...IMAGE_REL
c020: 5f 53 48 4d 5f 4e 4f 4d 4f 44 45 20 20 20 20 20  _SHM_NOMODE     
c030: 20 20 20 20 20 3d 20 30 78 38 30 30 30 0d 0a 7d       = 0x8000..}
c040: 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 57 4f 52 44 20  ....enum : WORD 
c050: 7b 0d 0a 09 49 4d 41 47 45 5f 52 45 4c 5f 4d 33  {...IMAGE_REL_M3
c060: 32 52 5f 41 42 53 4f 4c 55 54 45 20 20 20 20 20  2R_ABSOLUTE     
c070: 20 20 3d 20 30 78 30 30 30 30 2c 0d 0a 09 49 4d    = 0x0000,...IM
c080: 41 47 45 5f 52 45 4c 5f 4d 33 32 52 5f 41 44 44  AGE_REL_M32R_ADD
c090: 52 33 32 20 20 20 20 20 20 20 20 20 3d 20 30 78  R32         = 0x
c0a0: 30 30 30 31 2c 0d 0a 09 49 4d 41 47 45 5f 52 45  0001,...IMAGE_RE
c0b0: 4c 5f 4d 33 32 52 5f 41 44 44 52 33 32 4e 42 20  L_M32R_ADDR32NB 
c0c0: 20 20 20 20 20 20 3d 20 30 78 30 30 30 32 2c 0d        = 0x0002,.
c0d0: 0a 09 49 4d 41 47 45 5f 52 45 4c 5f 4d 33 32 52  ..IMAGE_REL_M32R
c0e0: 5f 41 44 44 52 32 34 20 20 20 20 20 20 20 20 20  _ADDR24         
c0f0: 3d 20 30 78 30 30 30 33 2c 0d 0a 09 49 4d 41 47  = 0x0003,...IMAG
c100: 45 5f 52 45 4c 5f 4d 33 32 52 5f 47 50 52 45 4c  E_REL_M32R_GPREL
c110: 31 36 20 20 20 20 20 20 20 20 3d 20 30 78 30 30  16        = 0x00
c120: 30 34 2c 0d 0a 09 49 4d 41 47 45 5f 52 45 4c 5f  04,...IMAGE_REL_
c130: 4d 33 32 52 5f 50 43 52 45 4c 32 34 20 20 20 20  M32R_PCREL24    
c140: 20 20 20 20 3d 20 30 78 30 30 30 35 2c 0d 0a 09      = 0x0005,...
c150: 49 4d 41 47 45 5f 52 45 4c 5f 4d 33 32 52 5f 50  IMAGE_REL_M32R_P
c160: 43 52 45 4c 31 36 20 20 20 20 20 20 20 20 3d 20  CREL16        = 
c170: 30 78 30 30 30 36 2c 0d 0a 09 49 4d 41 47 45 5f  0x0006,...IMAGE_
c180: 52 45 4c 5f 4d 33 32 52 5f 50 43 52 45 4c 38 20  REL_M32R_PCREL8 
c190: 20 20 20 20 20 20 20 20 3d 20 30 78 30 30 30 37          = 0x0007
c1a0: 2c 0d 0a 09 49 4d 41 47 45 5f 52 45 4c 5f 4d 33  ,...IMAGE_REL_M3
c1b0: 32 52 5f 52 45 46 48 41 4c 46 20 20 20 20 20 20  2R_REFHALF      
c1c0: 20 20 3d 20 30 78 30 30 30 38 2c 0d 0a 09 49 4d    = 0x0008,...IM
c1d0: 41 47 45 5f 52 45 4c 5f 4d 33 32 52 5f 52 45 46  AGE_REL_M32R_REF
c1e0: 48 49 20 20 20 20 20 20 20 20 20 20 3d 20 30 78  HI          = 0x
c1f0: 30 30 30 39 2c 0d 0a 09 49 4d 41 47 45 5f 52 45  0009,...IMAGE_RE
c200: 4c 5f 4d 33 32 52 5f 52 45 46 4c 4f 20 20 20 20  L_M32R_REFLO    
c210: 20 20 20 20 20 20 3d 20 30 78 30 30 30 41 2c 0d        = 0x000A,.
c220: 0a 09 49 4d 41 47 45 5f 52 45 4c 5f 4d 33 32 52  ..IMAGE_REL_M32R
c230: 5f 50 41 49 52 20 20 20 20 20 20 20 20 20 20 20  _PAIR           
c240: 3d 20 30 78 30 30 30 42 2c 0d 0a 09 49 4d 41 47  = 0x000B,...IMAG
c250: 45 5f 52 45 4c 5f 4d 33 32 52 5f 53 45 43 54 49  E_REL_M32R_SECTI
c260: 4f 4e 20 20 20 20 20 20 20 20 3d 20 30 78 30 30  ON        = 0x00
c270: 30 43 2c 0d 0a 09 49 4d 41 47 45 5f 52 45 4c 5f  0C,...IMAGE_REL_
c280: 4d 33 32 52 5f 53 45 43 52 45 4c 20 20 20 20 20  M32R_SECREL     
c290: 20 20 20 20 3d 20 30 78 30 30 30 44 2c 0d 0a 09      = 0x000D,...
c2a0: 49 4d 41 47 45 5f 52 45 4c 5f 4d 33 32 52 5f 54  IMAGE_REL_M32R_T
c2b0: 4f 4b 45 4e 20 20 20 20 20 20 20 20 20 20 3d 20  OKEN          = 
c2c0: 30 78 30 30 30 45 0d 0a 7d 0d 0a 0d 0a 65 6e 75  0x000E..}....enu
c2d0: 6d 20 3a 20 57 4f 52 44 20 7b 0d 0a 09 49 4d 41  m : WORD {...IMA
c2e0: 47 45 5f 52 45 4c 5f 4d 49 50 53 5f 41 42 53 4f  GE_REL_MIPS_ABSO
c2f0: 4c 55 54 45 20 20 20 20 20 20 20 3d 20 30 78 30  LUTE       = 0x0
c300: 30 30 30 2c 0d 0a 09 49 4d 41 47 45 5f 52 45 4c  000,...IMAGE_REL
c310: 5f 4d 49 50 53 5f 52 45 46 48 41 4c 46 20 20 20  _MIPS_REFHALF   
c320: 20 20 20 20 20 3d 20 30 78 30 30 30 31 2c 0d 0a       = 0x0001,..
c330: 09 49 4d 41 47 45 5f 52 45 4c 5f 4d 49 50 53 5f  .IMAGE_REL_MIPS_
c340: 52 45 46 57 4f 52 44 20 20 20 20 20 20 20 20 3d  REFWORD        =
c350: 20 30 78 30 30 30 32 2c 0d 0a 09 49 4d 41 47 45   0x0002,...IMAGE
c360: 5f 52 45 4c 5f 4d 49 50 53 5f 4a 4d 50 41 44 44  _REL_MIPS_JMPADD
c370: 52 20 20 20 20 20 20 20 20 3d 20 30 78 30 30 30  R        = 0x000
c380: 33 2c 0d 0a 09 49 4d 41 47 45 5f 52 45 4c 5f 4d  3,...IMAGE_REL_M
c390: 49 50 53 5f 52 45 46 48 49 20 20 20 20 20 20 20  IPS_REFHI       
c3a0: 20 20 20 3d 20 30 78 30 30 30 34 2c 0d 0a 09 49     = 0x0004,...I
c3b0: 4d 41 47 45 5f 52 45 4c 5f 4d 49 50 53 5f 52 45  MAGE_REL_MIPS_RE
c3c0: 46 4c 4f 20 20 20 20 20 20 20 20 20 20 3d 20 30  FLO          = 0
c3d0: 78 30 30 30 35 2c 0d 0a 09 49 4d 41 47 45 5f 52  x0005,...IMAGE_R
c3e0: 45 4c 5f 4d 49 50 53 5f 47 50 52 45 4c 20 20 20  EL_MIPS_GPREL   
c3f0: 20 20 20 20 20 20 20 3d 20 30 78 30 30 30 36 2c         = 0x0006,
c400: 0d 0a 09 49 4d 41 47 45 5f 52 45 4c 5f 4d 49 50  ...IMAGE_REL_MIP
c410: 53 5f 4c 49 54 45 52 41 4c 20 20 20 20 20 20 20  S_LITERAL       
c420: 20 3d 20 30 78 30 30 30 37 2c 0d 0a 09 49 4d 41   = 0x0007,...IMA
c430: 47 45 5f 52 45 4c 5f 4d 49 50 53 5f 53 45 43 54  GE_REL_MIPS_SECT
c440: 49 4f 4e 20 20 20 20 20 20 20 20 3d 20 30 78 30  ION        = 0x0
c450: 30 30 41 2c 0d 0a 09 49 4d 41 47 45 5f 52 45 4c  00A,...IMAGE_REL
c460: 5f 4d 49 50 53 5f 53 45 43 52 45 4c 20 20 20 20  _MIPS_SECREL    
c470: 20 20 20 20 20 3d 20 30 78 30 30 30 42 2c 0d 0a       = 0x000B,..
c480: 09 49 4d 41 47 45 5f 52 45 4c 5f 4d 49 50 53 5f  .IMAGE_REL_MIPS_
c490: 53 45 43 52 45 4c 4c 4f 20 20 20 20 20 20 20 3d  SECRELLO       =
c4a0: 20 30 78 30 30 30 43 2c 0d 0a 09 49 4d 41 47 45   0x000C,...IMAGE
c4b0: 5f 52 45 4c 5f 4d 49 50 53 5f 53 45 43 52 45 4c  _REL_MIPS_SECREL
c4c0: 48 49 20 20 20 20 20 20 20 3d 20 30 78 30 30 30  HI       = 0x000
c4d0: 44 2c 0d 0a 09 49 4d 41 47 45 5f 52 45 4c 5f 4d  D,...IMAGE_REL_M
c4e0: 49 50 53 5f 4a 4d 50 41 44 44 52 31 36 20 20 20  IPS_JMPADDR16   
c4f0: 20 20 20 3d 20 30 78 30 30 31 30 2c 0d 0a 09 49     = 0x0010,...I
c500: 4d 41 47 45 5f 52 45 4c 5f 4d 49 50 53 5f 52 45  MAGE_REL_MIPS_RE
c510: 46 57 4f 52 44 4e 42 20 20 20 20 20 20 3d 20 30  FWORDNB      = 0
c520: 78 30 30 32 32 2c 0d 0a 09 49 4d 41 47 45 5f 52  x0022,...IMAGE_R
c530: 45 4c 5f 4d 49 50 53 5f 50 41 49 52 20 20 20 20  EL_MIPS_PAIR    
c540: 20 20 20 20 20 20 20 3d 20 30 78 30 30 32 35 0d         = 0x0025.
c550: 0a 7d 0d 0a 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 57  .}......enum : W
c560: 4f 52 44 20 7b 0d 0a 09 49 4d 41 47 45 5f 52 45  ORD {...IMAGE_RE
c570: 4c 5f 41 4c 50 48 41 5f 41 42 53 4f 4c 55 54 45  L_ALPHA_ABSOLUTE
c580: 2c 0d 0a 09 49 4d 41 47 45 5f 52 45 4c 5f 41 4c  ,...IMAGE_REL_AL
c590: 50 48 41 5f 52 45 46 4c 4f 4e 47 2c 0d 0a 09 49  PHA_REFLONG,...I
c5a0: 4d 41 47 45 5f 52 45 4c 5f 41 4c 50 48 41 5f 52  MAGE_REL_ALPHA_R
c5b0: 45 46 51 55 41 44 2c 0d 0a 09 49 4d 41 47 45 5f  EFQUAD,...IMAGE_
c5c0: 52 45 4c 5f 41 4c 50 48 41 5f 47 50 52 45 4c 33  REL_ALPHA_GPREL3
c5d0: 32 2c 0d 0a 09 49 4d 41 47 45 5f 52 45 4c 5f 41  2,...IMAGE_REL_A
c5e0: 4c 50 48 41 5f 4c 49 54 45 52 41 4c 2c 0d 0a 09  LPHA_LITERAL,...
c5f0: 49 4d 41 47 45 5f 52 45 4c 5f 41 4c 50 48 41 5f  IMAGE_REL_ALPHA_
c600: 4c 49 54 55 53 45 2c 0d 0a 09 49 4d 41 47 45 5f  LITUSE,...IMAGE_
c610: 52 45 4c 5f 41 4c 50 48 41 5f 47 50 44 49 53 50  REL_ALPHA_GPDISP
c620: 2c 0d 0a 09 49 4d 41 47 45 5f 52 45 4c 5f 41 4c  ,...IMAGE_REL_AL
c630: 50 48 41 5f 42 52 41 44 44 52 2c 0d 0a 09 49 4d  PHA_BRADDR,...IM
c640: 41 47 45 5f 52 45 4c 5f 41 4c 50 48 41 5f 48 49  AGE_REL_ALPHA_HI
c650: 4e 54 2c 0d 0a 09 49 4d 41 47 45 5f 52 45 4c 5f  NT,...IMAGE_REL_
c660: 41 4c 50 48 41 5f 49 4e 4c 49 4e 45 5f 52 45 46  ALPHA_INLINE_REF
c670: 4c 4f 4e 47 2c 0d 0a 09 49 4d 41 47 45 5f 52 45  LONG,...IMAGE_RE
c680: 4c 5f 41 4c 50 48 41 5f 52 45 46 48 49 2c 0d 0a  L_ALPHA_REFHI,..
c690: 09 49 4d 41 47 45 5f 52 45 4c 5f 41 4c 50 48 41  .IMAGE_REL_ALPHA
c6a0: 5f 52 45 46 4c 4f 2c 0d 0a 09 49 4d 41 47 45 5f  _REFLO,...IMAGE_
c6b0: 52 45 4c 5f 41 4c 50 48 41 5f 50 41 49 52 2c 0d  REL_ALPHA_PAIR,.
c6c0: 0a 09 49 4d 41 47 45 5f 52 45 4c 5f 41 4c 50 48  ..IMAGE_REL_ALPH
c6d0: 41 5f 4d 41 54 43 48 2c 0d 0a 09 49 4d 41 47 45  A_MATCH,...IMAGE
c6e0: 5f 52 45 4c 5f 41 4c 50 48 41 5f 53 45 43 54 49  _REL_ALPHA_SECTI
c6f0: 4f 4e 2c 0d 0a 09 49 4d 41 47 45 5f 52 45 4c 5f  ON,...IMAGE_REL_
c700: 41 4c 50 48 41 5f 53 45 43 52 45 4c 2c 0d 0a 09  ALPHA_SECREL,...
c710: 49 4d 41 47 45 5f 52 45 4c 5f 41 4c 50 48 41 5f  IMAGE_REL_ALPHA_
c720: 52 45 46 4c 4f 4e 47 4e 42 2c 0d 0a 09 49 4d 41  REFLONGNB,...IMA
c730: 47 45 5f 52 45 4c 5f 41 4c 50 48 41 5f 53 45 43  GE_REL_ALPHA_SEC
c740: 52 45 4c 4c 4f 2c 0d 0a 09 49 4d 41 47 45 5f 52  RELLO,...IMAGE_R
c750: 45 4c 5f 41 4c 50 48 41 5f 53 45 43 52 45 4c 48  EL_ALPHA_SECRELH
c760: 49 20 2f 2f 20 3d 20 31 38 0d 0a 7d 0d 0a 0d 0a  I // = 18..}....
c770: 65 6e 75 6d 20 3a 20 57 4f 52 44 20 7b 0d 0a 09  enum : WORD {...
c780: 49 4d 41 47 45 5f 52 45 4c 5f 50 50 43 5f 41 42  IMAGE_REL_PPC_AB
c790: 53 4f 4c 55 54 45 2c 0d 0a 09 49 4d 41 47 45 5f  SOLUTE,...IMAGE_
c7a0: 52 45 4c 5f 50 50 43 5f 41 44 44 52 36 34 2c 0d  REL_PPC_ADDR64,.
c7b0: 0a 09 49 4d 41 47 45 5f 52 45 4c 5f 50 50 43 5f  ..IMAGE_REL_PPC_
c7c0: 41 44 44 52 33 32 2c 0d 0a 09 49 4d 41 47 45 5f  ADDR32,...IMAGE_
c7d0: 52 45 4c 5f 50 50 43 5f 41 44 44 52 32 34 2c 0d  REL_PPC_ADDR24,.
c7e0: 0a 09 49 4d 41 47 45 5f 52 45 4c 5f 50 50 43 5f  ..IMAGE_REL_PPC_
c7f0: 41 44 44 52 31 36 2c 0d 0a 09 49 4d 41 47 45 5f  ADDR16,...IMAGE_
c800: 52 45 4c 5f 50 50 43 5f 41 44 44 52 31 34 2c 0d  REL_PPC_ADDR14,.
c810: 0a 09 49 4d 41 47 45 5f 52 45 4c 5f 50 50 43 5f  ..IMAGE_REL_PPC_
c820: 52 45 4c 32 34 2c 0d 0a 09 49 4d 41 47 45 5f 52  REL24,...IMAGE_R
c830: 45 4c 5f 50 50 43 5f 52 45 4c 31 34 2c 0d 0a 09  EL_PPC_REL14,...
c840: 49 4d 41 47 45 5f 52 45 4c 5f 50 50 43 5f 54 4f  IMAGE_REL_PPC_TO
c850: 43 52 45 4c 31 36 2c 0d 0a 09 49 4d 41 47 45 5f  CREL16,...IMAGE_
c860: 52 45 4c 5f 50 50 43 5f 54 4f 43 52 45 4c 31 34  REL_PPC_TOCREL14
c870: 2c 0d 0a 09 49 4d 41 47 45 5f 52 45 4c 5f 50 50  ,...IMAGE_REL_PP
c880: 43 5f 41 44 44 52 33 32 4e 42 2c 0d 0a 09 49 4d  C_ADDR32NB,...IM
c890: 41 47 45 5f 52 45 4c 5f 50 50 43 5f 53 45 43 52  AGE_REL_PPC_SECR
c8a0: 45 4c 2c 0d 0a 09 49 4d 41 47 45 5f 52 45 4c 5f  EL,...IMAGE_REL_
c8b0: 50 50 43 5f 53 45 43 54 49 4f 4e 2c 0d 0a 09 49  PPC_SECTION,...I
c8c0: 4d 41 47 45 5f 52 45 4c 5f 50 50 43 5f 49 46 47  MAGE_REL_PPC_IFG
c8d0: 4c 55 45 2c 0d 0a 09 49 4d 41 47 45 5f 52 45 4c  LUE,...IMAGE_REL
c8e0: 5f 50 50 43 5f 49 4d 47 4c 55 45 2c 0d 0a 09 49  _PPC_IMGLUE,...I
c8f0: 4d 41 47 45 5f 52 45 4c 5f 50 50 43 5f 53 45 43  MAGE_REL_PPC_SEC
c900: 52 45 4c 31 36 2c 0d 0a 09 49 4d 41 47 45 5f 52  REL16,...IMAGE_R
c910: 45 4c 5f 50 50 43 5f 52 45 46 48 49 2c 0d 0a 09  EL_PPC_REFHI,...
c920: 49 4d 41 47 45 5f 52 45 4c 5f 50 50 43 5f 52 45  IMAGE_REL_PPC_RE
c930: 46 4c 4f 2c 0d 0a 09 49 4d 41 47 45 5f 52 45 4c  FLO,...IMAGE_REL
c940: 5f 50 50 43 5f 50 41 49 52 20 2f 2f 20 3d 20 31  _PPC_PAIR // = 1
c950: 38 0d 0a 7d 0d 0a 0d 0a 2f 2f 20 3f 3f 3f 0d 0a  8..}....// ???..
c960: 63 6f 6e 73 74 20 49 4d 41 47 45 5f 52 45 4c 5f  const IMAGE_REL_
c970: 50 50 43 5f 54 59 50 45 4d 41 53 4b 20 3d 20 30  PPC_TYPEMASK = 0
c980: 78 30 30 46 46 3b 0d 0a 63 6f 6e 73 74 20 49 4d  x00FF;..const IM
c990: 41 47 45 5f 52 45 4c 5f 50 50 43 5f 4e 45 47 20  AGE_REL_PPC_NEG 
c9a0: 20 20 20 20 20 3d 20 30 78 30 31 30 30 3b 0d 0a       = 0x0100;..
c9b0: 63 6f 6e 73 74 20 49 4d 41 47 45 5f 52 45 4c 5f  const IMAGE_REL_
c9c0: 50 50 43 5f 42 52 54 41 4b 45 4e 20 20 3d 20 30  PPC_BRTAKEN  = 0
c9d0: 78 30 32 30 30 3b 0d 0a 63 6f 6e 73 74 20 49 4d  x0200;..const IM
c9e0: 41 47 45 5f 52 45 4c 5f 50 50 43 5f 42 52 4e 54  AGE_REL_PPC_BRNT
c9f0: 41 4b 45 4e 20 3d 20 30 78 30 34 30 30 3b 0d 0a  AKEN = 0x0400;..
ca00: 63 6f 6e 73 74 20 49 4d 41 47 45 5f 52 45 4c 5f  const IMAGE_REL_
ca10: 50 50 43 5f 54 4f 43 44 45 46 4e 20 20 3d 20 30  PPC_TOCDEFN  = 0
ca20: 78 30 38 30 30 3b 0d 0a 0d 0a 65 6e 75 6d 20 7b  x0800;....enum {
ca30: 0d 0a 09 49 4d 41 47 45 5f 52 45 4c 5f 42 41 53  ...IMAGE_REL_BAS
ca40: 45 44 5f 41 42 53 4f 4c 55 54 45 2c 0d 0a 09 49  ED_ABSOLUTE,...I
ca50: 4d 41 47 45 5f 52 45 4c 5f 42 41 53 45 44 5f 48  MAGE_REL_BASED_H
ca60: 49 47 48 2c 0d 0a 09 49 4d 41 47 45 5f 52 45 4c  IGH,...IMAGE_REL
ca70: 5f 42 41 53 45 44 5f 4c 4f 57 2c 0d 0a 09 49 4d  _BASED_LOW,...IM
ca80: 41 47 45 5f 52 45 4c 5f 42 41 53 45 44 5f 48 49  AGE_REL_BASED_HI
ca90: 47 48 4c 4f 57 2c 0d 0a 09 49 4d 41 47 45 5f 52  GHLOW,...IMAGE_R
caa0: 45 4c 5f 42 41 53 45 44 5f 48 49 47 48 41 44 4a  EL_BASED_HIGHADJ
cab0: 2c 0d 0a 09 49 4d 41 47 45 5f 52 45 4c 5f 42 41  ,...IMAGE_REL_BA
cac0: 53 45 44 5f 4d 49 50 53 5f 4a 4d 50 41 44 44 52  SED_MIPS_JMPADDR
cad0: 0d 0a 7d 0d 0a 2f 2f 20 45 6e 64 20 6f 66 20 63  ..}..// End of c
cae0: 6f 6e 73 74 61 6e 74 73 20 64 6f 63 75 6d 65 6e  onstants documen
caf0: 74 65 64 20 69 6e 20 70 65 63 6f 66 66 2e 64 6f  ted in pecoff.do
cb00: 63 0d 0a 0d 0a 63 6f 6e 73 74 20 73 69 7a 65 5f  c....const size_
cb10: 74 20 49 4d 41 47 45 5f 41 52 43 48 49 56 45 5f  t IMAGE_ARCHIVE_
cb20: 53 54 41 52 54 5f 53 49 5a 45 20 3d 20 38 3b 0d  START_SIZE = 8;.
cb30: 0a 0d 0a 63 6f 6e 73 74 20 54 43 48 41 52 5b 5d  ...const TCHAR[]
cb40: 0d 0a 09 49 4d 41 47 45 5f 41 52 43 48 49 56 45  ...IMAGE_ARCHIVE
cb50: 5f 53 54 41 52 54 20 20 20 20 20 20 20 20 20 20  _START          
cb60: 20 20 3d 20 22 21 3c 61 72 63 68 3e 5c 6e 22 2c    = "!<arch>\n",
cb70: 0d 0a 09 49 4d 41 47 45 5f 41 52 43 48 49 56 45  ...IMAGE_ARCHIVE
cb80: 5f 45 4e 44 20 20 20 20 20 20 20 20 20 20 20 20  _END            
cb90: 20 20 3d 20 22 60 5c 6e 22 2c 0d 0a 09 49 4d 41    = "`\n",...IMA
cba0: 47 45 5f 41 52 43 48 49 56 45 5f 50 41 44 20 20  GE_ARCHIVE_PAD  
cbb0: 20 20 20 20 20 20 20 20 20 20 20 20 3d 20 22 5c              = "\
cbc0: 6e 22 2c 0d 0a 09 49 4d 41 47 45 5f 41 52 43 48  n",...IMAGE_ARCH
cbd0: 49 56 45 5f 4c 49 4e 4b 45 52 5f 4d 45 4d 42 45  IVE_LINKER_MEMBE
cbe0: 52 20 20 20 20 3d 20 22 2f 20 20 20 20 20 20 20  R    = "/       
cbf0: 20 20 20 20 20 20 20 20 22 2c 0d 0a 09 49 4d 41          ",...IMA
cc00: 47 45 5f 41 52 43 48 49 56 45 5f 4c 4f 4e 47 4e  GE_ARCHIVE_LONGN
cc10: 41 4d 45 53 5f 4d 45 4d 42 45 52 20 3d 20 22 2f  AMES_MEMBER = "/
cc20: 2f 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22  /              "
cc30: 3b 0d 0a 0d 0a 63 6f 6e 73 74 20 49 4d 41 47 45  ;....const IMAGE
cc40: 5f 4f 52 44 49 4e 41 4c 5f 46 4c 41 47 33 32 20  _ORDINAL_FLAG32 
cc50: 3d 20 30 78 38 30 30 30 30 30 30 30 3b 0d 0a 0d  = 0x80000000;...
cc60: 0a 75 6c 6f 6e 67 20 49 4d 41 47 45 5f 4f 52 44  .ulong IMAGE_ORD
cc70: 49 4e 41 4c 36 34 28 75 6c 6f 6e 67 20 4f 72 64  INAL64(ulong Ord
cc80: 69 6e 61 6c 29 20 7b 20 72 65 74 75 72 6e 20 4f  inal) { return O
cc90: 72 64 69 6e 61 6c 20 26 20 30 78 46 46 46 46 3b  rdinal & 0xFFFF;
cca0: 20 7d 0d 0a 75 69 6e 74 20 49 4d 41 47 45 5f 4f   }..uint IMAGE_O
ccb0: 52 44 49 4e 41 4c 33 32 28 75 69 6e 74 20 4f 72  RDINAL32(uint Or
ccc0: 64 69 6e 61 6c 29 20 20 20 7b 20 72 65 74 75 72  dinal)   { retur
ccd0: 6e 20 4f 72 64 69 6e 61 6c 20 26 20 30 78 46 46  n Ordinal & 0xFF
cce0: 46 46 3b 20 7d 0d 0a 0d 0a 62 6f 6f 6c 20 49 4d  FF; }....bool IM
ccf0: 41 47 45 5f 53 4e 41 50 5f 42 59 5f 4f 52 44 49  AGE_SNAP_BY_ORDI
cd00: 4e 41 4c 33 32 28 75 69 6e 74 20 4f 72 64 69 6e  NAL32(uint Ordin
cd10: 61 6c 29 20 7b 0d 0a 09 72 65 74 75 72 6e 20 28  al) {...return (
cd20: 4f 72 64 69 6e 61 6c 20 26 20 49 4d 41 47 45 5f  Ordinal & IMAGE_
cd30: 4f 52 44 49 4e 41 4c 5f 46 4c 41 47 33 32 29 20  ORDINAL_FLAG32) 
cd40: 21 3d 20 30 3b 0d 0a 7d 0d 0a 0d 0a 63 6f 6e 73  != 0;..}....cons
cd50: 74 20 75 6c 6f 6e 67 20 49 4d 41 47 45 5f 4f 52  t ulong IMAGE_OR
cd60: 44 49 4e 41 4c 5f 46 4c 41 47 36 34 20 3d 20 30  DINAL_FLAG64 = 0
cd70: 78 38 30 30 30 30 30 30 30 30 30 30 30 30 30 30  x800000000000000
cd80: 30 3b 0d 0a 0d 0a 62 6f 6f 6c 20 49 4d 41 47 45  0;....bool IMAGE
cd90: 5f 53 4e 41 50 5f 42 59 5f 4f 52 44 49 4e 41 4c  _SNAP_BY_ORDINAL
cda0: 36 34 28 75 6c 6f 6e 67 20 4f 72 64 69 6e 61 6c  64(ulong Ordinal
cdb0: 29 20 7b 0d 0a 09 72 65 74 75 72 6e 20 28 4f 72  ) {...return (Or
cdc0: 64 69 6e 61 6c 20 26 20 49 4d 41 47 45 5f 4f 52  dinal & IMAGE_OR
cdd0: 44 49 4e 41 4c 5f 46 4c 41 47 36 34 29 20 21 3d  DINAL_FLAG64) !=
cde0: 20 30 3b 0d 0a 7d 0d 0a 0d 0a 2f 2f 20 3f 3f 3f   0;..}....// ???
cdf0: 0d 0a 63 6f 6e 73 74 20 49 4d 41 47 45 5f 52 45  ..const IMAGE_RE
ce00: 53 4f 55 52 43 45 5f 4e 41 4d 45 5f 49 53 5f 53  SOURCE_NAME_IS_S
ce10: 54 52 49 4e 47 20 20 20 20 3d 20 30 78 38 30 30  TRING    = 0x800
ce20: 30 30 30 30 30 3b 0d 0a 63 6f 6e 73 74 20 49 4d  00000;..const IM
ce30: 41 47 45 5f 52 45 53 4f 55 52 43 45 5f 44 41 54  AGE_RESOURCE_DAT
ce40: 41 5f 49 53 5f 44 49 52 45 43 54 4f 52 59 20 3d  A_IS_DIRECTORY =
ce50: 20 30 78 38 30 30 30 30 30 30 30 3b 0d 0a 0d 0a   0x80000000;....
ce60: 65 6e 75 6d 20 3a 20 44 57 4f 52 44 20 7b 0d 0a  enum : DWORD {..
ce70: 09 49 4d 41 47 45 5f 44 45 42 55 47 5f 54 59 50  .IMAGE_DEBUG_TYP
ce80: 45 5f 55 4e 4b 4e 4f 57 4e 2c 0d 0a 09 49 4d 41  E_UNKNOWN,...IMA
ce90: 47 45 5f 44 45 42 55 47 5f 54 59 50 45 5f 43 4f  GE_DEBUG_TYPE_CO
cea0: 46 46 2c 0d 0a 09 49 4d 41 47 45 5f 44 45 42 55  FF,...IMAGE_DEBU
ceb0: 47 5f 54 59 50 45 5f 43 4f 44 45 56 49 45 57 2c  G_TYPE_CODEVIEW,
cec0: 0d 0a 09 49 4d 41 47 45 5f 44 45 42 55 47 5f 54  ...IMAGE_DEBUG_T
ced0: 59 50 45 5f 46 50 4f 2c 0d 0a 09 49 4d 41 47 45  YPE_FPO,...IMAGE
cee0: 5f 44 45 42 55 47 5f 54 59 50 45 5f 4d 49 53 43  _DEBUG_TYPE_MISC
cef0: 2c 0d 0a 09 49 4d 41 47 45 5f 44 45 42 55 47 5f  ,...IMAGE_DEBUG_
cf00: 54 59 50 45 5f 45 58 43 45 50 54 49 4f 4e 2c 0d  TYPE_EXCEPTION,.
cf10: 0a 09 49 4d 41 47 45 5f 44 45 42 55 47 5f 54 59  ..IMAGE_DEBUG_TY
cf20: 50 45 5f 46 49 58 55 50 2c 0d 0a 09 49 4d 41 47  PE_FIXUP,...IMAG
cf30: 45 5f 44 45 42 55 47 5f 54 59 50 45 5f 4f 4d 41  E_DEBUG_TYPE_OMA
cf40: 50 5f 54 4f 5f 53 52 43 2c 0d 0a 09 49 4d 41 47  P_TO_SRC,...IMAG
cf50: 45 5f 44 45 42 55 47 5f 54 59 50 45 5f 4f 4d 41  E_DEBUG_TYPE_OMA
cf60: 50 5f 46 52 4f 4d 5f 53 52 43 2c 0d 0a 09 49 4d  P_FROM_SRC,...IM
cf70: 41 47 45 5f 44 45 42 55 47 5f 54 59 50 45 5f 42  AGE_DEBUG_TYPE_B
cf80: 4f 52 4c 41 4e 44 20 2f 2f 20 3d 20 39 0d 0a 7d  ORLAND // = 9..}
cf90: 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 75 62 79 74 65  ....enum : ubyte
cfa0: 20 7b 0d 0a 09 46 52 41 4d 45 5f 46 50 4f 2c 0d   {...FRAME_FPO,.
cfb0: 0a 09 46 52 41 4d 45 5f 54 52 41 50 2c 0d 0a 09  ..FRAME_TRAP,...
cfc0: 46 52 41 4d 45 5f 54 53 53 2c 0d 0a 09 46 52 41  FRAME_TSS,...FRA
cfd0: 4d 45 5f 4e 4f 4e 46 50 4f 0d 0a 7d 0d 0a 0d 0a  ME_NONFPO..}....
cfe0: 2f 2f 20 3f 3f 3f 0d 0a 63 6f 6e 73 74 20 49 4d  // ???..const IM
cff0: 41 47 45 5f 44 45 42 55 47 5f 4d 49 53 43 5f 45  AGE_DEBUG_MISC_E
d000: 58 45 4e 41 4d 45 20 3d 20 31 3b 0d 0a 0d 0a 2f  XENAME = 1;..../
d010: 2f 20 3f 3f 3f 0d 0a 63 6f 6e 73 74 20 4e 5f 42  / ???..const N_B
d020: 54 4d 41 53 4b 20 3d 20 30 78 30 30 30 46 3b 0d  TMASK = 0x000F;.
d030: 0a 63 6f 6e 73 74 20 4e 5f 54 4d 41 53 4b 20 20  .const N_TMASK  
d040: 3d 20 30 78 30 30 33 30 3b 0d 0a 63 6f 6e 73 74  = 0x0030;..const
d050: 20 4e 5f 54 4d 41 53 4b 31 20 3d 20 30 78 30 30   N_TMASK1 = 0x00
d060: 43 30 3b 0d 0a 63 6f 6e 73 74 20 4e 5f 54 4d 41  C0;..const N_TMA
d070: 53 4b 32 20 3d 20 30 78 30 30 46 30 3b 0d 0a 63  SK2 = 0x00F0;..c
d080: 6f 6e 73 74 20 4e 5f 42 54 53 48 46 54 20 3d 20  onst N_BTSHFT = 
d090: 34 3b 0d 0a 63 6f 6e 73 74 20 4e 5f 54 53 48 49  4;..const N_TSHI
d0a0: 46 54 20 3d 20 32 3b 0d 0a 0d 0a 63 6f 6e 73 74  FT = 2;....const
d0b0: 20 69 6e 74 0d 0a 09 49 53 5f 54 45 58 54 5f 55   int...IS_TEXT_U
d0c0: 4e 49 43 4f 44 45 5f 41 53 43 49 49 31 36 20 20  NICODE_ASCII16  
d0d0: 20 20 20 20 20 20 20 20 20 20 3d 20 30 78 30 30            = 0x00
d0e0: 30 31 2c 0d 0a 09 49 53 5f 54 45 58 54 5f 55 4e  01,...IS_TEXT_UN
d0f0: 49 43 4f 44 45 5f 53 54 41 54 49 53 54 49 43 53  ICODE_STATISTICS
d100: 20 20 20 20 20 20 20 20 20 3d 20 30 78 30 30 30           = 0x000
d110: 32 2c 0d 0a 09 49 53 5f 54 45 58 54 5f 55 4e 49  2,...IS_TEXT_UNI
d120: 43 4f 44 45 5f 43 4f 4e 54 52 4f 4c 53 20 20 20  CODE_CONTROLS   
d130: 20 20 20 20 20 20 20 20 3d 20 30 78 30 30 30 34          = 0x0004
d140: 2c 0d 0a 09 49 53 5f 54 45 58 54 5f 55 4e 49 43  ,...IS_TEXT_UNIC
d150: 4f 44 45 5f 53 49 47 4e 41 54 55 52 45 20 20 20  ODE_SIGNATURE   
d160: 20 20 20 20 20 20 20 3d 20 30 78 30 30 30 38 2c         = 0x0008,
d170: 0d 0a 09 49 53 5f 54 45 58 54 5f 55 4e 49 43 4f  ...IS_TEXT_UNICO
d180: 44 45 5f 52 45 56 45 52 53 45 5f 41 53 43 49 49  DE_REVERSE_ASCII
d190: 31 36 20 20 20 20 3d 20 30 78 30 30 31 30 2c 0d  16    = 0x0010,.
d1a0: 0a 09 49 53 5f 54 45 58 54 5f 55 4e 49 43 4f 44  ..IS_TEXT_UNICOD
d1b0: 45 5f 52 45 56 45 52 53 45 5f 53 54 41 54 49 53  E_REVERSE_STATIS
d1c0: 54 49 43 53 20 3d 20 30 78 30 30 32 30 2c 0d 0a  TICS = 0x0020,..
d1d0: 09 49 53 5f 54 45 58 54 5f 55 4e 49 43 4f 44 45  .IS_TEXT_UNICODE
d1e0: 5f 52 45 56 45 52 53 45 5f 43 4f 4e 54 52 4f 4c  _REVERSE_CONTROL
d1f0: 53 20 20 20 3d 20 30 78 30 30 34 30 2c 0d 0a 09  S   = 0x0040,...
d200: 49 53 5f 54 45 58 54 5f 55 4e 49 43 4f 44 45 5f  IS_TEXT_UNICODE_
d210: 52 45 56 45 52 53 45 5f 53 49 47 4e 41 54 55 52  REVERSE_SIGNATUR
d220: 45 20 20 3d 20 30 78 30 30 38 30 2c 0d 0a 09 49  E  = 0x0080,...I
d230: 53 5f 54 45 58 54 5f 55 4e 49 43 4f 44 45 5f 49  S_TEXT_UNICODE_I
d240: 4c 4c 45 47 41 4c 5f 43 48 41 52 53 20 20 20 20  LLEGAL_CHARS    
d250: 20 20 3d 20 30 78 30 31 30 30 2c 0d 0a 09 49 53    = 0x0100,...IS
d260: 5f 54 45 58 54 5f 55 4e 49 43 4f 44 45 5f 4f 44  _TEXT_UNICODE_OD
d270: 44 5f 4c 45 4e 47 54 48 20 20 20 20 20 20 20 20  D_LENGTH        
d280: 20 3d 20 30 78 30 32 30 30 2c 0d 0a 09 49 53 5f   = 0x0200,...IS_
d290: 54 45 58 54 5f 55 4e 49 43 4f 44 45 5f 4e 55 4c  TEXT_UNICODE_NUL
d2a0: 4c 5f 42 59 54 45 53 20 20 20 20 20 20 20 20 20  L_BYTES         
d2b0: 3d 20 30 78 31 30 30 30 2c 0d 0a 09 49 53 5f 54  = 0x1000,...IS_T
d2c0: 45 58 54 5f 55 4e 49 43 4f 44 45 5f 55 4e 49 43  EXT_UNICODE_UNIC
d2d0: 4f 44 45 5f 4d 41 53 4b 20 20 20 20 20 20 20 3d  ODE_MASK       =
d2e0: 20 30 78 30 30 30 46 2c 0d 0a 09 49 53 5f 54 45   0x000F,...IS_TE
d2f0: 58 54 5f 55 4e 49 43 4f 44 45 5f 52 45 56 45 52  XT_UNICODE_REVER
d300: 53 45 5f 4d 41 53 4b 20 20 20 20 20 20 20 3d 20  SE_MASK       = 
d310: 30 78 30 30 46 30 2c 0d 0a 09 49 53 5f 54 45 58  0x00F0,...IS_TEX
d320: 54 5f 55 4e 49 43 4f 44 45 5f 4e 4f 54 5f 55 4e  T_UNICODE_NOT_UN
d330: 49 43 4f 44 45 5f 4d 41 53 4b 20 20 20 3d 20 30  ICODE_MASK   = 0
d340: 78 30 46 30 30 2c 0d 0a 09 49 53 5f 54 45 58 54  x0F00,...IS_TEXT
d350: 5f 55 4e 49 43 4f 44 45 5f 4e 4f 54 5f 41 53 43  _UNICODE_NOT_ASC
d360: 49 49 5f 4d 41 53 4b 20 20 20 20 20 3d 20 30 78  II_MASK     = 0x
d370: 46 30 30 30 3b 0d 0a 0d 0a 63 6f 6e 73 74 20 44  F000;....const D
d380: 57 4f 52 44 0d 0a 09 53 45 52 56 49 43 45 5f 4b  WORD...SERVICE_K
d390: 45 52 4e 45 4c 5f 44 52 49 56 45 52 20 20 20 20  ERNEL_DRIVER    
d3a0: 20 20 20 3d 20 30 78 30 30 30 31 2c 0d 0a 09 53     = 0x0001,...S
d3b0: 45 52 56 49 43 45 5f 46 49 4c 45 5f 53 59 53 54  ERVICE_FILE_SYST
d3c0: 45 4d 5f 44 52 49 56 45 52 20 20 3d 20 30 78 30  EM_DRIVER  = 0x0
d3d0: 30 30 32 2c 0d 0a 09 53 45 52 56 49 43 45 5f 41  002,...SERVICE_A
d3e0: 44 41 50 54 45 52 20 20 20 20 20 20 20 20 20 20  DAPTER          
d3f0: 20 20 20 3d 20 30 78 30 30 30 34 2c 0d 0a 09 53     = 0x0004,...S
d400: 45 52 56 49 43 45 5f 52 45 43 4f 47 4e 49 5a 45  ERVICE_RECOGNIZE
d410: 52 5f 44 52 49 56 45 52 20 20 20 3d 20 30 78 30  R_DRIVER   = 0x0
d420: 30 30 38 2c 0d 0a 09 53 45 52 56 49 43 45 5f 57  008,...SERVICE_W
d430: 49 4e 33 32 5f 4f 57 4e 5f 50 52 4f 43 45 53 53  IN32_OWN_PROCESS
d440: 20 20 20 3d 20 30 78 30 30 31 30 2c 0d 0a 09 53     = 0x0010,...S
d450: 45 52 56 49 43 45 5f 57 49 4e 33 32 5f 53 48 41  ERVICE_WIN32_SHA
d460: 52 45 5f 50 52 4f 43 45 53 53 20 3d 20 30 78 30  RE_PROCESS = 0x0
d470: 30 32 30 2c 0d 0a 09 53 45 52 56 49 43 45 5f 49  020,...SERVICE_I
d480: 4e 54 45 52 41 43 54 49 56 45 5f 50 52 4f 43 45  NTERACTIVE_PROCE
d490: 53 53 20 3d 20 30 78 30 31 30 30 2c 0d 0a 09 53  SS = 0x0100,...S
d4a0: 45 52 56 49 43 45 5f 44 52 49 56 45 52 20 20 20  ERVICE_DRIVER   
d4b0: 20 20 20 20 20 20 20 20 20 20 20 3d 20 30 78 30             = 0x0
d4c0: 30 30 42 2c 0d 0a 09 53 45 52 56 49 43 45 5f 57  00B,...SERVICE_W
d4d0: 49 4e 33 32 20 20 20 20 20 20 20 20 20 20 20 20  IN32            
d4e0: 20 20 20 3d 20 30 78 30 30 33 30 2c 0d 0a 09 53     = 0x0030,...S
d4f0: 45 52 56 49 43 45 5f 54 59 50 45 5f 41 4c 4c 20  ERVICE_TYPE_ALL 
d500: 20 20 20 20 20 20 20 20 20 20 20 3d 20 30 78 30             = 0x0
d510: 31 33 46 3b 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 44  13F;....enum : D
d520: 57 4f 52 44 20 7b 0d 0a 09 53 45 52 56 49 43 45  WORD {...SERVICE
d530: 5f 42 4f 4f 54 5f 53 54 41 52 54 20 20 20 3d 20  _BOOT_START   = 
d540: 30 2c 0d 0a 09 53 45 52 56 49 43 45 5f 53 59 53  0,...SERVICE_SYS
d550: 54 45 4d 5f 53 54 41 52 54 20 3d 20 31 2c 0d 0a  TEM_START = 1,..
d560: 09 53 45 52 56 49 43 45 5f 41 55 54 4f 5f 53 54  .SERVICE_AUTO_ST
d570: 41 52 54 20 20 20 3d 20 32 2c 0d 0a 09 53 45 52  ART   = 2,...SER
d580: 56 49 43 45 5f 44 45 4d 41 4e 44 5f 53 54 41 52  VICE_DEMAND_STAR
d590: 54 20 3d 20 33 2c 0d 0a 09 53 45 52 56 49 43 45  T = 3,...SERVICE
d5a0: 5f 44 49 53 41 42 4c 45 44 20 20 20 20 20 3d 20  _DISABLED     = 
d5b0: 34 0d 0a 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 44  4..}....enum : D
d5c0: 57 4f 52 44 20 7b 0d 0a 09 53 45 52 56 49 43 45  WORD {...SERVICE
d5d0: 5f 45 52 52 4f 52 5f 49 47 4e 4f 52 45 20 20 20  _ERROR_IGNORE   
d5e0: 3d 20 30 2c 0d 0a 09 53 45 52 56 49 43 45 5f 45  = 0,...SERVICE_E
d5f0: 52 52 4f 52 5f 4e 4f 52 4d 41 4c 20 20 20 3d 20  RROR_NORMAL   = 
d600: 31 2c 0d 0a 09 53 45 52 56 49 43 45 5f 45 52 52  1,...SERVICE_ERR
d610: 4f 52 5f 53 45 56 45 52 45 20 20 20 3d 20 32 2c  OR_SEVERE   = 2,
d620: 0d 0a 09 53 45 52 56 49 43 45 5f 45 52 52 4f 52  ...SERVICE_ERROR
d630: 5f 43 52 49 54 49 43 41 4c 20 3d 20 33 0d 0a 7d  _CRITICAL = 3..}
d640: 0d 0a 0d 0a 0d 0a 63 6f 6e 73 74 20 75 69 6e 74  ......const uint
d650: 0d 0a 09 53 45 5f 4f 57 4e 45 52 5f 44 45 46 41  ...SE_OWNER_DEFA
d660: 55 4c 54 45 44 20 20 20 20 20 20 20 20 20 20 3d  ULTED          =
d670: 20 30 78 30 30 30 31 2c 0d 0a 09 53 45 5f 47 52   0x0001,...SE_GR
d680: 4f 55 50 5f 44 45 46 41 55 4c 54 45 44 20 20 20  OUP_DEFAULTED   
d690: 20 20 20 20 20 20 20 3d 20 30 78 30 30 30 32 2c         = 0x0002,
d6a0: 0d 0a 09 53 45 5f 44 41 43 4c 5f 50 52 45 53 45  ...SE_DACL_PRESE
d6b0: 4e 54 20 20 20 20 20 20 20 20 20 20 20 20 20 3d  NT             =
d6c0: 20 30 78 30 30 30 34 2c 0d 0a 09 53 45 5f 44 41   0x0004,...SE_DA
d6d0: 43 4c 5f 44 45 46 41 55 4c 54 45 44 20 20 20 20  CL_DEFAULTED    
d6e0: 20 20 20 20 20 20 20 3d 20 30 78 30 30 30 38 2c         = 0x0008,
d6f0: 0d 0a 09 53 45 5f 53 41 43 4c 5f 50 52 45 53 45  ...SE_SACL_PRESE
d700: 4e 54 20 20 20 20 20 20 20 20 20 20 20 20 20 3d  NT             =
d710: 20 30 78 30 30 31 30 2c 0d 0a 09 53 45 5f 53 41   0x0010,...SE_SA
d720: 43 4c 5f 44 45 46 41 55 4c 54 45 44 20 20 20 20  CL_DEFAULTED    
d730: 20 20 20 20 20 20 20 3d 20 30 78 30 30 32 30 2c         = 0x0020,
d740: 0d 0a 09 53 45 5f 44 41 43 4c 5f 41 55 54 4f 5f  ...SE_DACL_AUTO_
d750: 49 4e 48 45 52 49 54 5f 52 45 51 20 20 20 20 3d  INHERIT_REQ    =
d760: 20 30 78 30 31 30 30 2c 0d 0a 09 53 45 5f 53 41   0x0100,...SE_SA
d770: 43 4c 5f 41 55 54 4f 5f 49 4e 48 45 52 49 54 5f  CL_AUTO_INHERIT_
d780: 52 45 51 20 20 20 20 3d 20 30 78 30 32 30 30 2c  REQ    = 0x0200,
d790: 0d 0a 09 53 45 5f 44 41 43 4c 5f 41 55 54 4f 5f  ...SE_DACL_AUTO_
d7a0: 49 4e 48 45 52 49 54 45 44 20 20 20 20 20 20 3d  INHERITED      =
d7b0: 20 30 78 30 34 30 30 2c 0d 0a 09 53 45 5f 53 41   0x0400,...SE_SA
d7c0: 43 4c 5f 41 55 54 4f 5f 49 4e 48 45 52 49 54 45  CL_AUTO_INHERITE
d7d0: 44 20 20 20 20 20 20 3d 20 30 78 30 38 30 30 2c  D      = 0x0800,
d7e0: 0d 0a 09 53 45 5f 44 41 43 4c 5f 50 52 4f 54 45  ...SE_DACL_PROTE
d7f0: 43 54 45 44 20 20 20 20 20 20 20 20 20 20 20 3d  CTED           =
d800: 20 30 78 31 30 30 30 2c 0d 0a 09 53 45 5f 53 41   0x1000,...SE_SA
d810: 43 4c 5f 50 52 4f 54 45 43 54 45 44 20 20 20 20  CL_PROTECTED    
d820: 20 20 20 20 20 20 20 3d 20 30 78 32 30 30 30 2c         = 0x2000,
d830: 0d 0a 09 53 45 5f 53 45 4c 46 5f 52 45 4c 41 54  ...SE_SELF_RELAT
d840: 49 56 45 20 20 20 20 20 20 20 20 20 20 20 20 3d  IVE            =
d850: 20 30 78 38 30 30 30 3b 0d 0a 0d 0a 65 6e 75 6d   0x8000;....enum
d860: 20 53 45 43 55 52 49 54 59 5f 49 4d 50 45 52 53   SECURITY_IMPERS
d870: 4f 4e 41 54 49 4f 4e 5f 4c 45 56 45 4c 20 7b 0d  ONATION_LEVEL {.
d880: 0a 09 53 65 63 75 72 69 74 79 41 6e 6f 6e 79 6d  ..SecurityAnonym
d890: 6f 75 73 2c 0d 0a 09 53 65 63 75 72 69 74 79 49  ous,...SecurityI
d8a0: 64 65 6e 74 69 66 69 63 61 74 69 6f 6e 2c 0d 0a  dentification,..
d8b0: 09 53 65 63 75 72 69 74 79 49 6d 70 65 72 73 6f  .SecurityImperso
d8c0: 6e 61 74 69 6f 6e 2c 0d 0a 09 53 65 63 75 72 69  nation,...Securi
d8d0: 74 79 44 65 6c 65 67 61 74 69 6f 6e 0d 0a 7d 0d  tyDelegation..}.
d8e0: 0a 61 6c 69 61 73 20 53 45 43 55 52 49 54 59 5f  .alias SECURITY_
d8f0: 49 4d 50 45 52 53 4f 4e 41 54 49 4f 4e 5f 4c 45  IMPERSONATION_LE
d900: 56 45 4c 2a 20 50 53 45 43 55 52 49 54 59 5f 49  VEL* PSECURITY_I
d910: 4d 50 45 52 53 4f 4e 41 54 49 4f 4e 5f 4c 45 56  MPERSONATION_LEV
d920: 45 4c 3b 0d 0a 0d 0a 61 6c 69 61 73 20 42 4f 4f  EL;....alias BOO
d930: 4c 45 41 4e 20 53 45 43 55 52 49 54 59 5f 43 4f  LEAN SECURITY_CO
d940: 4e 54 45 58 54 5f 54 52 41 43 4b 49 4e 47 5f 4d  NTEXT_TRACKING_M
d950: 4f 44 45 3b 0d 0a 61 6c 69 61 73 20 42 4f 4f 4c  ODE;..alias BOOL
d960: 45 41 4e 2a 20 50 53 45 43 55 52 49 54 59 5f 43  EAN* PSECURITY_C
d970: 4f 4e 54 45 58 54 5f 54 52 41 43 4b 49 4e 47 5f  ONTEXT_TRACKING_
d980: 4d 4f 44 45 3b 0d 0a 0d 0a 63 6f 6e 73 74 20 73  MODE;....const s
d990: 69 7a 65 5f 74 20 53 45 43 55 52 49 54 59 5f 44  ize_t SECURITY_D
d9a0: 45 53 43 52 49 50 54 4f 52 5f 4d 49 4e 5f 4c 45  ESCRIPTOR_MIN_LE
d9b0: 4e 47 54 48 20 3d 20 32 30 3b 0d 0a 0d 0a 63 6f  NGTH = 20;....co
d9c0: 6e 73 74 20 44 57 4f 52 44 0d 0a 09 53 45 43 55  nst DWORD...SECU
d9d0: 52 49 54 59 5f 44 45 53 43 52 49 50 54 4f 52 5f  RITY_DESCRIPTOR_
d9e0: 52 45 56 49 53 49 4f 4e 20 20 3d 20 31 2c 0d 0a  REVISION  = 1,..
d9f0: 09 53 45 43 55 52 49 54 59 5f 44 45 53 43 52 49  .SECURITY_DESCRI
da00: 50 54 4f 52 5f 52 45 56 49 53 49 4f 4e 31 20 3d  PTOR_REVISION1 =
da10: 20 31 3b 0d 0a 0d 0a 63 6f 6e 73 74 20 44 57 4f   1;....const DWO
da20: 52 44 0d 0a 09 53 45 5f 50 52 49 56 49 4c 45 47  RD...SE_PRIVILEG
da30: 45 5f 45 4e 41 42 4c 45 44 5f 42 59 5f 44 45 46  E_ENABLED_BY_DEF
da40: 41 55 4c 54 20 3d 20 30 78 30 30 30 30 30 30 30  AULT = 0x0000000
da50: 31 2c 0d 0a 09 53 45 5f 50 52 49 56 49 4c 45 47  1,...SE_PRIVILEG
da60: 45 5f 45 4e 41 42 4c 45 44 20 20 20 20 20 20 20  E_ENABLED       
da70: 20 20 20 20 20 3d 20 30 78 30 30 30 30 30 30 30       = 0x0000000
da80: 32 2c 0d 0a 09 53 45 5f 50 52 49 56 49 4c 45 47  2,...SE_PRIVILEG
da90: 45 5f 55 53 45 44 5f 46 4f 52 5f 41 43 43 45 53  E_USED_FOR_ACCES
daa0: 53 20 20 20 20 3d 20 30 78 38 30 30 30 30 30 30  S    = 0x8000000
dab0: 30 3b 0d 0a 0d 0a 63 6f 6e 73 74 20 44 57 4f 52  0;....const DWOR
dac0: 44 20 50 52 49 56 49 4c 45 47 45 5f 53 45 54 5f  D PRIVILEGE_SET_
dad0: 41 4c 4c 5f 4e 45 43 45 53 53 41 52 59 20 3d 20  ALL_NECESSARY = 
dae0: 31 3b 0d 0a 0d 0a 63 6f 6e 73 74 20 53 45 43 55  1;....const SECU
daf0: 52 49 54 59 5f 49 4d 50 45 52 53 4f 4e 41 54 49  RITY_IMPERSONATI
db00: 4f 4e 5f 4c 45 56 45 4c 0d 0a 09 53 45 43 55 52  ON_LEVEL...SECUR
db10: 49 54 59 5f 4d 41 58 5f 49 4d 50 45 52 53 4f 4e  ITY_MAX_IMPERSON
db20: 41 54 49 4f 4e 5f 4c 45 56 45 4c 20 3d 20 53 45  ATION_LEVEL = SE
db30: 43 55 52 49 54 59 5f 49 4d 50 45 52 53 4f 4e 41  CURITY_IMPERSONA
db40: 54 49 4f 4e 5f 4c 45 56 45 4c 2e 53 65 63 75 72  TION_LEVEL.Secur
db50: 69 74 79 44 65 6c 65 67 61 74 69 6f 6e 2c 0d 0a  ityDelegation,..
db60: 09 44 45 46 41 55 4c 54 5f 49 4d 50 45 52 53 4f  .DEFAULT_IMPERSO
db70: 4e 41 54 49 4f 4e 5f 4c 45 56 45 4c 20 20 20 20  NATION_LEVEL    
db80: 20 20 3d 20 53 45 43 55 52 49 54 59 5f 49 4d 50    = SECURITY_IMP
db90: 45 52 53 4f 4e 41 54 49 4f 4e 5f 4c 45 56 45 4c  ERSONATION_LEVEL
dba0: 2e 53 65 63 75 72 69 74 79 49 6d 70 65 72 73 6f  .SecurityImperso
dbb0: 6e 61 74 69 6f 6e 3b 0d 0a 0d 0a 63 6f 6e 73 74  nation;....const
dbc0: 20 42 4f 4f 4c 45 41 4e 0d 0a 09 53 45 43 55 52   BOOLEAN...SECUR
dbd0: 49 54 59 5f 44 59 4e 41 4d 49 43 5f 54 52 41 43  ITY_DYNAMIC_TRAC
dbe0: 4b 49 4e 47 20 3d 20 74 72 75 65 2c 0d 0a 09 53  KING = true,...S
dbf0: 45 43 55 52 49 54 59 5f 53 54 41 54 49 43 5f 54  ECURITY_STATIC_T
dc00: 52 41 43 4b 49 4e 47 20 20 3d 20 66 61 6c 73 65  RACKING  = false
dc10: 3b 0d 0a 0d 0a 2f 2f 20 61 6c 73 6f 20 69 6e 20  ;....// also in 
dc20: 64 64 6b 2f 6e 74 69 66 73 2e 68 0d 0a 63 6f 6e  ddk/ntifs.h..con
dc30: 73 74 20 44 57 4f 52 44 0d 0a 09 54 4f 4b 45 4e  st DWORD...TOKEN
dc40: 5f 41 53 53 49 47 4e 5f 50 52 49 4d 41 52 59 20  _ASSIGN_PRIMARY 
dc50: 20 20 20 3d 20 30 78 30 30 30 31 2c 0d 0a 09 54     = 0x0001,...T
dc60: 4f 4b 45 4e 5f 44 55 50 4c 49 43 41 54 45 20 20  OKEN_DUPLICATE  
dc70: 20 20 20 20 20 20 20 3d 20 30 78 30 30 30 32 2c         = 0x0002,
dc80: 0d 0a 09 54 4f 4b 45 4e 5f 49 4d 50 45 52 53 4f  ...TOKEN_IMPERSO
dc90: 4e 41 54 45 20 20 20 20 20 20 20 3d 20 30 78 30  NATE       = 0x0
dca0: 30 30 34 2c 0d 0a 09 54 4f 4b 45 4e 5f 51 55 45  004,...TOKEN_QUE
dcb0: 52 59 20 20 20 20 20 20 20 20 20 20 20 20 20 3d  RY             =
dcc0: 20 30 78 30 30 30 38 2c 0d 0a 09 54 4f 4b 45 4e   0x0008,...TOKEN
dcd0: 5f 51 55 45 52 59 5f 53 4f 55 52 43 45 20 20 20  _QUERY_SOURCE   
dce0: 20 20 20 3d 20 30 78 30 30 31 30 2c 0d 0a 09 54     = 0x0010,...T
dcf0: 4f 4b 45 4e 5f 41 44 4a 55 53 54 5f 50 52 49 56  OKEN_ADJUST_PRIV
dd00: 49 4c 45 47 45 53 20 3d 20 30 78 30 30 32 30 2c  ILEGES = 0x0020,
dd10: 0d 0a 09 54 4f 4b 45 4e 5f 41 44 4a 55 53 54 5f  ...TOKEN_ADJUST_
dd20: 47 52 4f 55 50 53 20 20 20 20 20 3d 20 30 78 30  GROUPS     = 0x0
dd30: 30 34 30 2c 0d 0a 09 54 4f 4b 45 4e 5f 41 44 4a  040,...TOKEN_ADJ
dd40: 55 53 54 5f 44 45 46 41 55 4c 54 20 20 20 20 3d  UST_DEFAULT    =
dd50: 20 30 78 30 30 38 30 2c 0d 0a 0d 0a 09 54 4f 4b   0x0080,.....TOK
dd60: 45 4e 5f 41 4c 4c 5f 41 43 43 45 53 53 20 20 20  EN_ALL_ACCESS   
dd70: 20 20 20 20 20 3d 20 53 54 41 4e 44 41 52 44 5f       = STANDARD_
dd80: 52 49 47 48 54 53 5f 52 45 51 55 49 52 45 44 0d  RIGHTS_REQUIRED.
dd90: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
dda0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c                 |
ddb0: 20 54 4f 4b 45 4e 5f 41 53 53 49 47 4e 5f 50 52   TOKEN_ASSIGN_PR
ddc0: 49 4d 41 52 59 0d 0a 20 20 20 20 20 20 20 20 20  IMARY..         
ddd0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
dde0: 20 20 20 20 20 7c 20 54 4f 4b 45 4e 5f 44 55 50       | TOKEN_DUP
ddf0: 4c 49 43 41 54 45 0d 0a 20 20 20 20 20 20 20 20  LICATE..        
de00: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
de10: 20 20 20 20 20 20 7c 20 54 4f 4b 45 4e 5f 49 4d        | TOKEN_IM
de20: 50 45 52 53 4f 4e 41 54 45 0d 0a 20 20 20 20 20  PERSONATE..     
de30: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
de40: 20 20 20 20 20 20 20 20 20 7c 20 54 4f 4b 45 4e           | TOKEN
de50: 5f 51 55 45 52 59 0d 0a 20 20 20 20 20 20 20 20  _QUERY..        
de60: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
de70: 20 20 20 20 20 20 7c 20 54 4f 4b 45 4e 5f 51 55        | TOKEN_QU
de80: 45 52 59 5f 53 4f 55 52 43 45 0d 0a 20 20 20 20  ERY_SOURCE..    
de90: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
dea0: 20 20 20 20 20 20 20 20 20 20 7c 20 54 4f 4b 45            | TOKE
deb0: 4e 5f 41 44 4a 55 53 54 5f 50 52 49 56 49 4c 45  N_ADJUST_PRIVILE
dec0: 47 45 53 0d 0a 20 20 20 20 20 20 20 20 20 20 20  GES..           
ded0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
dee0: 20 20 20 7c 20 54 4f 4b 45 4e 5f 41 44 4a 55 53     | TOKEN_ADJUS
def0: 54 5f 47 52 4f 55 50 53 0d 0a 20 20 20 20 20 20  T_GROUPS..      
df00: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
df10: 20 20 20 20 20 20 20 20 7c 20 54 4f 4b 45 4e 5f          | TOKEN_
df20: 41 44 4a 55 53 54 5f 44 45 46 41 55 4c 54 2c 0d  ADJUST_DEFAULT,.
df30: 0a 09 54 4f 4b 45 4e 5f 52 45 41 44 20 20 20 20  ..TOKEN_READ    
df40: 20 20 20 20 20 20 20 20 20 20 3d 20 53 54 41 4e            = STAN
df50: 44 41 52 44 5f 52 49 47 48 54 53 5f 52 45 41 44  DARD_RIGHTS_READ
df60: 20 7c 20 54 4f 4b 45 4e 5f 51 55 45 52 59 2c 0d   | TOKEN_QUERY,.
df70: 0a 09 54 4f 4b 45 4e 5f 57 52 49 54 45 20 20 20  ..TOKEN_WRITE   
df80: 20 20 20 20 20 20 20 20 20 20 3d 20 53 54 41 4e            = STAN
df90: 44 41 52 44 5f 52 49 47 48 54 53 5f 57 52 49 54  DARD_RIGHTS_WRIT
dfa0: 45 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  E..             
dfb0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
dfc0: 20 7c 20 54 4f 4b 45 4e 5f 41 44 4a 55 53 54 5f   | TOKEN_ADJUST_
dfd0: 50 52 49 56 49 4c 45 47 45 53 0d 0a 20 20 20 20  PRIVILEGES..    
dfe0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
dff0: 20 20 20 20 20 20 20 20 20 20 7c 20 54 4f 4b 45            | TOKE
e000: 4e 5f 41 44 4a 55 53 54 5f 47 52 4f 55 50 53 0d  N_ADJUST_GROUPS.
e010: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
e020: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c                 |
e030: 20 54 4f 4b 45 4e 5f 41 44 4a 55 53 54 5f 44 45   TOKEN_ADJUST_DE
e040: 46 41 55 4c 54 2c 0d 0a 09 54 4f 4b 45 4e 5f 45  FAULT,...TOKEN_E
e050: 58 45 43 55 54 45 20 20 20 20 20 20 20 20 20 20  XECUTE          
e060: 20 3d 20 53 54 41 4e 44 41 52 44 5f 52 49 47 48   = STANDARD_RIGH
e070: 54 53 5f 45 58 45 43 55 54 45 3b 0d 0a 0d 0a 63  TS_EXECUTE;....c
e080: 6f 6e 73 74 20 73 69 7a 65 5f 74 20 54 4f 4b 45  onst size_t TOKE
e090: 4e 5f 53 4f 55 52 43 45 5f 4c 45 4e 47 54 48 20  N_SOURCE_LENGTH 
e0a0: 3d 20 38 3b 0d 0a 2f 2f 20 65 6e 64 20 64 64 6b  = 8;..// end ddk
e0b0: 2f 6e 74 69 66 73 2e 68 0d 0a 0d 0a 65 6e 75 6d  /ntifs.h....enum
e0c0: 20 3a 20 44 57 4f 52 44 20 7b 0d 0a 09 44 4c 4c   : DWORD {...DLL
e0d0: 5f 50 52 4f 43 45 53 53 5f 44 45 54 41 43 48 2c  _PROCESS_DETACH,
e0e0: 0d 0a 09 44 4c 4c 5f 50 52 4f 43 45 53 53 5f 41  ...DLL_PROCESS_A
e0f0: 54 54 41 43 48 2c 0d 0a 09 44 4c 4c 5f 54 48 52  TTACH,...DLL_THR
e100: 45 41 44 5f 41 54 54 41 43 48 2c 0d 0a 09 44 4c  EAD_ATTACH,...DL
e110: 4c 5f 54 48 52 45 41 44 5f 44 45 54 41 43 48 0d  L_THREAD_DETACH.
e120: 0a 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 44 57 4f  .}....enum : DWO
e130: 52 44 20 7b 0d 0a 09 44 42 47 5f 43 4f 4e 54 49  RD {...DBG_CONTI
e140: 4e 55 45 20 20 20 20 20 20 20 20 20 20 20 20 20  NUE             
e150: 20 3d 20 30 78 30 30 30 31 30 30 30 32 2c 0d 0a   = 0x00010002,..
e160: 09 44 42 47 5f 54 45 52 4d 49 4e 41 54 45 5f 54  .DBG_TERMINATE_T
e170: 48 52 45 41 44 20 20 20 20 20 20 3d 20 30 78 34  HREAD      = 0x4
e180: 30 30 31 30 30 30 33 2c 0d 0a 09 44 42 47 5f 54  0010003,...DBG_T
e190: 45 52 4d 49 4e 41 54 45 5f 50 52 4f 43 45 53 53  ERMINATE_PROCESS
e1a0: 20 20 20 20 20 3d 20 30 78 34 30 30 31 30 30 30       = 0x4001000
e1b0: 34 2c 0d 0a 09 44 42 47 5f 43 4f 4e 54 52 4f 4c  4,...DBG_CONTROL
e1c0: 5f 43 20 20 20 20 20 20 20 20 20 20 20 20 20 3d  _C             =
e1d0: 20 30 78 34 30 30 31 30 30 30 35 2c 0d 0a 09 44   0x40010005,...D
e1e0: 42 47 5f 43 4f 4e 54 52 4f 4c 5f 42 52 45 41 4b  BG_CONTROL_BREAK
e1f0: 20 20 20 20 20 20 20 20 20 3d 20 30 78 34 30 30           = 0x400
e200: 31 30 30 30 38 2c 0d 0a 09 44 42 47 5f 45 58 43  10008,...DBG_EXC
e210: 45 50 54 49 4f 4e 5f 4e 4f 54 5f 48 41 4e 44 4c  EPTION_NOT_HANDL
e220: 45 44 20 3d 20 30 78 38 30 30 31 30 30 30 31 0d  ED = 0x80010001.
e230: 0a 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 44 57 4f  .}....enum : DWO
e240: 52 44 20 7b 0d 0a 09 54 41 50 45 5f 41 42 53 4f  RD {...TAPE_ABSO
e250: 4c 55 54 45 5f 50 4f 53 49 54 49 4f 4e 2c 0d 0a  LUTE_POSITION,..
e260: 09 54 41 50 45 5f 4c 4f 47 49 43 41 4c 5f 50 4f  .TAPE_LOGICAL_PO
e270: 53 49 54 49 4f 4e 2c 0d 0a 09 54 41 50 45 5f 50  SITION,...TAPE_P
e280: 53 45 55 44 4f 5f 4c 4f 47 49 43 41 4c 5f 50 4f  SEUDO_LOGICAL_PO
e290: 53 49 54 49 4f 4e 0d 0a 7d 0d 0a 0d 0a 65 6e 75  SITION..}....enu
e2a0: 6d 20 3a 20 44 57 4f 52 44 20 7b 0d 0a 09 54 41  m : DWORD {...TA
e2b0: 50 45 5f 52 45 57 49 4e 44 2c 0d 0a 09 54 41 50  PE_REWIND,...TAP
e2c0: 45 5f 41 42 53 4f 4c 55 54 45 5f 42 4c 4f 43 4b  E_ABSOLUTE_BLOCK
e2d0: 2c 0d 0a 09 54 41 50 45 5f 4c 4f 47 49 43 41 4c  ,...TAPE_LOGICAL
e2e0: 5f 42 4c 4f 43 4b 2c 0d 0a 09 54 41 50 45 5f 50  _BLOCK,...TAPE_P
e2f0: 53 45 55 44 4f 5f 4c 4f 47 49 43 41 4c 5f 42 4c  SEUDO_LOGICAL_BL
e300: 4f 43 4b 2c 0d 0a 09 54 41 50 45 5f 53 50 41 43  OCK,...TAPE_SPAC
e310: 45 5f 45 4e 44 5f 4f 46 5f 44 41 54 41 2c 0d 0a  E_END_OF_DATA,..
e320: 09 54 41 50 45 5f 53 50 41 43 45 5f 52 45 4c 41  .TAPE_SPACE_RELA
e330: 54 49 56 45 5f 42 4c 4f 43 4b 53 2c 0d 0a 09 54  TIVE_BLOCKS,...T
e340: 41 50 45 5f 53 50 41 43 45 5f 46 49 4c 45 4d 41  APE_SPACE_FILEMA
e350: 52 4b 53 2c 0d 0a 09 54 41 50 45 5f 53 50 41 43  RKS,...TAPE_SPAC
e360: 45 5f 53 45 51 55 45 4e 54 49 41 4c 5f 46 4d 4b  E_SEQUENTIAL_FMK
e370: 53 2c 0d 0a 09 54 41 50 45 5f 53 50 41 43 45 5f  S,...TAPE_SPACE_
e380: 53 45 54 4d 41 52 4b 53 2c 0d 0a 09 54 41 50 45  SETMARKS,...TAPE
e390: 5f 53 50 41 43 45 5f 53 45 51 55 45 4e 54 49 41  _SPACE_SEQUENTIA
e3a0: 4c 5f 53 4d 4b 53 0d 0a 7d 0d 0a 0d 0a 63 6f 6e  L_SMKS..}....con
e3b0: 73 74 20 44 57 4f 52 44 0d 0a 09 54 41 50 45 5f  st DWORD...TAPE_
e3c0: 44 52 49 56 45 5f 46 49 58 45 44 20 20 20 20 20  DRIVE_FIXED     
e3d0: 20 20 20 20 20 20 20 3d 20 30 78 30 30 30 30 30         = 0x00000
e3e0: 30 30 31 2c 0d 0a 09 54 41 50 45 5f 44 52 49 56  001,...TAPE_DRIV
e3f0: 45 5f 53 45 4c 45 43 54 20 20 20 20 20 20 20 20  E_SELECT        
e400: 20 20 20 3d 20 30 78 30 30 30 30 30 30 30 32 2c     = 0x00000002,
e410: 0d 0a 09 54 41 50 45 5f 44 52 49 56 45 5f 49 4e  ...TAPE_DRIVE_IN
e420: 49 54 49 41 54 4f 52 20 20 20 20 20 20 20 20 3d  ITIATOR        =
e430: 20 30 78 30 30 30 30 30 30 30 34 2c 0d 0a 09 54   0x00000004,...T
e440: 41 50 45 5f 44 52 49 56 45 5f 45 52 41 53 45 5f  APE_DRIVE_ERASE_
e450: 53 48 4f 52 54 20 20 20 20 20 20 3d 20 30 78 30  SHORT      = 0x0
e460: 30 30 30 30 30 31 30 2c 0d 0a 09 54 41 50 45 5f  0000010,...TAPE_
e470: 44 52 49 56 45 5f 45 52 41 53 45 5f 4c 4f 4e 47  DRIVE_ERASE_LONG
e480: 20 20 20 20 20 20 20 3d 20 30 78 30 30 30 30 30         = 0x00000
e490: 30 32 30 2c 0d 0a 09 54 41 50 45 5f 44 52 49 56  020,...TAPE_DRIV
e4a0: 45 5f 45 52 41 53 45 5f 42 4f 50 5f 4f 4e 4c 59  E_ERASE_BOP_ONLY
e4b0: 20 20 20 3d 20 30 78 30 30 30 30 30 30 34 30 2c     = 0x00000040,
e4c0: 0d 0a 09 54 41 50 45 5f 44 52 49 56 45 5f 45 52  ...TAPE_DRIVE_ER
e4d0: 41 53 45 5f 49 4d 4d 45 44 49 41 54 45 20 20 3d  ASE_IMMEDIATE  =
e4e0: 20 30 78 30 30 30 30 30 30 38 30 2c 0d 0a 09 54   0x00000080,...T
e4f0: 41 50 45 5f 44 52 49 56 45 5f 54 41 50 45 5f 43  APE_DRIVE_TAPE_C
e500: 41 50 41 43 49 54 59 20 20 20 20 3d 20 30 78 30  APACITY    = 0x0
e510: 30 30 30 30 31 30 30 2c 0d 0a 09 54 41 50 45 5f  0000100,...TAPE_
e520: 44 52 49 56 45 5f 54 41 50 45 5f 52 45 4d 41 49  DRIVE_TAPE_REMAI
e530: 4e 49 4e 47 20 20 20 3d 20 30 78 30 30 30 30 30  NING   = 0x00000
e540: 32 30 30 2c 0d 0a 09 54 41 50 45 5f 44 52 49 56  200,...TAPE_DRIV
e550: 45 5f 46 49 58 45 44 5f 42 4c 4f 43 4b 20 20 20  E_FIXED_BLOCK   
e560: 20 20 20 3d 20 30 78 30 30 30 30 30 34 30 30 2c     = 0x00000400,
e570: 0d 0a 09 54 41 50 45 5f 44 52 49 56 45 5f 56 41  ...TAPE_DRIVE_VA
e580: 52 49 41 42 4c 45 5f 42 4c 4f 43 4b 20 20 20 3d  RIABLE_BLOCK   =
e590: 20 30 78 30 30 30 30 30 38 30 30 2c 0d 0a 09 54   0x00000800,...T
e5a0: 41 50 45 5f 44 52 49 56 45 5f 57 52 49 54 45 5f  APE_DRIVE_WRITE_
e5b0: 50 52 4f 54 45 43 54 20 20 20 20 3d 20 30 78 30  PROTECT    = 0x0
e5c0: 30 30 30 31 30 30 30 2c 0d 0a 09 54 41 50 45 5f  0001000,...TAPE_
e5d0: 44 52 49 56 45 5f 45 4f 54 5f 57 5a 5f 53 49 5a  DRIVE_EOT_WZ_SIZ
e5e0: 45 20 20 20 20 20 20 3d 20 30 78 30 30 30 30 32  E      = 0x00002
e5f0: 30 30 30 2c 0d 0a 09 54 41 50 45 5f 44 52 49 56  000,...TAPE_DRIV
e600: 45 5f 45 43 43 20 20 20 20 20 20 20 20 20 20 20  E_ECC           
e610: 20 20 20 3d 20 30 78 30 30 30 31 30 30 30 30 2c     = 0x00010000,
e620: 0d 0a 09 54 41 50 45 5f 44 52 49 56 45 5f 43 4f  ...TAPE_DRIVE_CO
e630: 4d 50 52 45 53 53 49 4f 4e 20 20 20 20 20 20 3d  MPRESSION      =
e640: 20 30 78 30 30 30 32 30 30 30 30 2c 0d 0a 09 54   0x00020000,...T
e650: 41 50 45 5f 44 52 49 56 45 5f 50 41 44 44 49 4e  APE_DRIVE_PADDIN
e660: 47 20 20 20 20 20 20 20 20 20 20 3d 20 30 78 30  G          = 0x0
e670: 30 30 34 30 30 30 30 2c 0d 0a 09 54 41 50 45 5f  0040000,...TAPE_
e680: 44 52 49 56 45 5f 52 45 50 4f 52 54 5f 53 4d 4b  DRIVE_REPORT_SMK
e690: 53 20 20 20 20 20 20 3d 20 30 78 30 30 30 38 30  S      = 0x00080
e6a0: 30 30 30 2c 0d 0a 09 54 41 50 45 5f 44 52 49 56  000,...TAPE_DRIV
e6b0: 45 5f 47 45 54 5f 41 42 53 4f 4c 55 54 45 5f 42  E_GET_ABSOLUTE_B
e6c0: 4c 4b 20 3d 20 30 78 30 30 31 30 30 30 30 30 2c  LK = 0x00100000,
e6d0: 0d 0a 09 54 41 50 45 5f 44 52 49 56 45 5f 47 45  ...TAPE_DRIVE_GE
e6e0: 54 5f 4c 4f 47 49 43 41 4c 5f 42 4c 4b 20 20 3d  T_LOGICAL_BLK  =
e6f0: 20 30 78 30 30 32 30 30 30 30 30 2c 0d 0a 09 54   0x00200000,...T
e700: 41 50 45 5f 44 52 49 56 45 5f 53 45 54 5f 45 4f  APE_DRIVE_SET_EO
e710: 54 5f 57 5a 5f 53 49 5a 45 20 20 3d 20 30 78 30  T_WZ_SIZE  = 0x0
e720: 30 34 30 30 30 30 30 2c 0d 0a 09 54 41 50 45 5f  0400000,...TAPE_
e730: 44 52 49 56 45 5f 45 4a 45 43 54 5f 4d 45 44 49  DRIVE_EJECT_MEDI
e740: 41 20 20 20 20 20 20 3d 20 30 78 30 31 30 30 30  A      = 0x01000
e750: 30 30 30 2c 0d 0a 09 54 41 50 45 5f 44 52 49 56  000,...TAPE_DRIV
e760: 45 5f 43 4c 45 41 4e 5f 52 45 51 55 45 53 54 53  E_CLEAN_REQUESTS
e770: 20 20 20 3d 20 30 78 30 32 30 30 30 30 30 30 2c     = 0x02000000,
e780: 0d 0a 09 54 41 50 45 5f 44 52 49 56 45 5f 53 45  ...TAPE_DRIVE_SE
e790: 54 5f 43 4d 50 5f 42 4f 50 5f 4f 4e 4c 59 20 3d  T_CMP_BOP_ONLY =
e7a0: 20 30 78 30 34 30 30 30 30 30 30 2c 0d 0a 09 54   0x04000000,...T
e7b0: 41 50 45 5f 44 52 49 56 45 5f 52 45 53 45 52 56  APE_DRIVE_RESERV
e7c0: 45 44 5f 42 49 54 20 20 20 20 20 3d 20 30 78 38  ED_BIT     = 0x8
e7d0: 30 30 30 30 30 30 30 3b 0d 0a 0d 0a 63 6f 6e 73  0000000;....cons
e7e0: 74 20 44 57 4f 52 44 0d 0a 09 54 41 50 45 5f 44  t DWORD...TAPE_D
e7f0: 52 49 56 45 5f 4c 4f 41 44 5f 55 4e 4c 4f 41 44  RIVE_LOAD_UNLOAD
e800: 20 20 20 20 20 20 3d 20 30 78 38 30 30 30 30 30        = 0x800000
e810: 30 31 2c 0d 0a 09 54 41 50 45 5f 44 52 49 56 45  01,...TAPE_DRIVE
e820: 5f 54 45 4e 53 49 4f 4e 20 20 20 20 20 20 20 20  _TENSION        
e830: 20 20 3d 20 30 78 38 30 30 30 30 30 30 32 2c 0d    = 0x80000002,.
e840: 0a 09 54 41 50 45 5f 44 52 49 56 45 5f 4c 4f 43  ..TAPE_DRIVE_LOC
e850: 4b 5f 55 4e 4c 4f 43 4b 20 20 20 20 20 20 3d 20  K_UNLOCK      = 
e860: 30 78 38 30 30 30 30 30 30 34 2c 0d 0a 09 54 41  0x80000004,...TA
e870: 50 45 5f 44 52 49 56 45 5f 52 45 57 49 4e 44 5f  PE_DRIVE_REWIND_
e880: 49 4d 4d 45 44 49 41 54 45 20 3d 20 30 78 38 30  IMMEDIATE = 0x80
e890: 30 30 30 30 30 38 2c 0d 0a 09 54 41 50 45 5f 44  000008,...TAPE_D
e8a0: 52 49 56 45 5f 53 45 54 5f 42 4c 4f 43 4b 5f 53  RIVE_SET_BLOCK_S
e8b0: 49 5a 45 20 20 20 3d 20 30 78 38 30 30 30 30 30  IZE   = 0x800000
e8c0: 31 30 2c 0d 0a 09 54 41 50 45 5f 44 52 49 56 45  10,...TAPE_DRIVE
e8d0: 5f 4c 4f 41 44 5f 55 4e 4c 44 5f 49 4d 4d 45 44  _LOAD_UNLD_IMMED
e8e0: 20 20 3d 20 30 78 38 30 30 30 30 30 32 30 2c 0d    = 0x80000020,.
e8f0: 0a 09 54 41 50 45 5f 44 52 49 56 45 5f 54 45 4e  ..TAPE_DRIVE_TEN
e900: 53 49 4f 4e 5f 49 4d 4d 45 44 20 20 20 20 3d 20  SION_IMMED    = 
e910: 30 78 38 30 30 30 30 30 34 30 2c 0d 0a 09 54 41  0x80000040,...TA
e920: 50 45 5f 44 52 49 56 45 5f 4c 4f 43 4b 5f 55 4e  PE_DRIVE_LOCK_UN
e930: 4c 4b 5f 49 4d 4d 45 44 20 20 3d 20 30 78 38 30  LK_IMMED  = 0x80
e940: 30 30 30 30 38 30 2c 0d 0a 09 54 41 50 45 5f 44  000080,...TAPE_D
e950: 52 49 56 45 5f 53 45 54 5f 45 43 43 20 20 20 20  RIVE_SET_ECC    
e960: 20 20 20 20 20 20 3d 20 30 78 38 30 30 30 30 31        = 0x800001
e970: 30 30 2c 0d 0a 09 54 41 50 45 5f 44 52 49 56 45  00,...TAPE_DRIVE
e980: 5f 53 45 54 5f 43 4f 4d 50 52 45 53 53 49 4f 4e  _SET_COMPRESSION
e990: 20 20 3d 20 30 78 38 30 30 30 30 32 30 30 2c 0d    = 0x80000200,.
e9a0: 0a 09 54 41 50 45 5f 44 52 49 56 45 5f 53 45 54  ..TAPE_DRIVE_SET
e9b0: 5f 50 41 44 44 49 4e 47 20 20 20 20 20 20 3d 20  _PADDING      = 
e9c0: 30 78 38 30 30 30 30 34 30 30 2c 0d 0a 09 54 41  0x80000400,...TA
e9d0: 50 45 5f 44 52 49 56 45 5f 53 45 54 5f 52 45 50  PE_DRIVE_SET_REP
e9e0: 4f 52 54 5f 53 4d 4b 53 20 20 3d 20 30 78 38 30  ORT_SMKS  = 0x80
e9f0: 30 30 30 38 30 30 2c 0d 0a 09 54 41 50 45 5f 44  000800,...TAPE_D
ea00: 52 49 56 45 5f 41 42 53 4f 4c 55 54 45 5f 42 4c  RIVE_ABSOLUTE_BL
ea10: 4b 20 20 20 20 20 3d 20 30 78 38 30 30 30 31 30  K     = 0x800010
ea20: 30 30 2c 0d 0a 09 54 41 50 45 5f 44 52 49 56 45  00,...TAPE_DRIVE
ea30: 5f 41 42 53 5f 42 4c 4b 5f 49 4d 4d 45 44 20 20  _ABS_BLK_IMMED  
ea40: 20 20 3d 20 30 78 38 30 30 30 32 30 30 30 2c 0d    = 0x80002000,.
ea50: 0a 09 54 41 50 45 5f 44 52 49 56 45 5f 4c 4f 47  ..TAPE_DRIVE_LOG
ea60: 49 43 41 4c 5f 42 4c 4b 20 20 20 20 20 20 3d 20  ICAL_BLK      = 
ea70: 30 78 38 30 30 30 34 30 30 30 2c 0d 0a 09 54 41  0x80004000,...TA
ea80: 50 45 5f 44 52 49 56 45 5f 4c 4f 47 5f 42 4c 4b  PE_DRIVE_LOG_BLK
ea90: 5f 49 4d 4d 45 44 20 20 20 20 3d 20 30 78 38 30  _IMMED    = 0x80
eaa0: 30 30 38 30 30 30 2c 0d 0a 09 54 41 50 45 5f 44  008000,...TAPE_D
eab0: 52 49 56 45 5f 45 4e 44 5f 4f 46 5f 44 41 54 41  RIVE_END_OF_DATA
eac0: 20 20 20 20 20 20 3d 20 30 78 38 30 30 31 30 30        = 0x800100
ead0: 30 30 2c 0d 0a 09 54 41 50 45 5f 44 52 49 56 45  00,...TAPE_DRIVE
eae0: 5f 52 45 4c 41 54 49 56 45 5f 42 4c 4b 53 20 20  _RELATIVE_BLKS  
eaf0: 20 20 3d 20 30 78 38 30 30 32 30 30 30 30 2c 0d    = 0x80020000,.
eb00: 0a 09 54 41 50 45 5f 44 52 49 56 45 5f 46 49 4c  ..TAPE_DRIVE_FIL
eb10: 45 4d 41 52 4b 53 20 20 20 20 20 20 20 20 3d 20  EMARKS        = 
eb20: 30 78 38 30 30 34 30 30 30 30 2c 0d 0a 09 54 41  0x80040000,...TA
eb30: 50 45 5f 44 52 49 56 45 5f 53 45 51 55 45 4e 54  PE_DRIVE_SEQUENT
eb40: 49 41 4c 5f 46 4d 4b 53 20 20 3d 20 30 78 38 30  IAL_FMKS  = 0x80
eb50: 30 38 30 30 30 30 2c 0d 0a 09 54 41 50 45 5f 44  080000,...TAPE_D
eb60: 52 49 56 45 5f 53 45 54 4d 41 52 4b 53 20 20 20  RIVE_SETMARKS   
eb70: 20 20 20 20 20 20 3d 20 30 78 38 30 31 30 30 30        = 0x801000
eb80: 30 30 2c 0d 0a 09 54 41 50 45 5f 44 52 49 56 45  00,...TAPE_DRIVE
eb90: 5f 53 45 51 55 45 4e 54 49 41 4c 5f 53 4d 4b 53  _SEQUENTIAL_SMKS
eba0: 20 20 3d 20 30 78 38 30 32 30 30 30 30 30 2c 0d    = 0x80200000,.
ebb0: 0a 09 54 41 50 45 5f 44 52 49 56 45 5f 52 45 56  ..TAPE_DRIVE_REV
ebc0: 45 52 53 45 5f 50 4f 53 49 54 49 4f 4e 20 3d 20  ERSE_POSITION = 
ebd0: 30 78 38 30 34 30 30 30 30 30 2c 0d 0a 09 54 41  0x80400000,...TA
ebe0: 50 45 5f 44 52 49 56 45 5f 53 50 41 43 45 5f 49  PE_DRIVE_SPACE_I
ebf0: 4d 4d 45 44 49 41 54 45 20 20 3d 20 30 78 38 30  MMEDIATE  = 0x80
ec00: 38 30 30 30 30 30 2c 0d 0a 09 54 41 50 45 5f 44  800000,...TAPE_D
ec10: 52 49 56 45 5f 57 52 49 54 45 5f 53 45 54 4d 41  RIVE_WRITE_SETMA
ec20: 52 4b 53 20 20 20 3d 20 30 78 38 31 30 30 30 30  RKS   = 0x810000
ec30: 30 30 2c 0d 0a 09 54 41 50 45 5f 44 52 49 56 45  00,...TAPE_DRIVE
ec40: 5f 57 52 49 54 45 5f 46 49 4c 45 4d 41 52 4b 53  _WRITE_FILEMARKS
ec50: 20 20 3d 20 30 78 38 32 30 30 30 30 30 30 2c 0d    = 0x82000000,.
ec60: 0a 09 54 41 50 45 5f 44 52 49 56 45 5f 57 52 49  ..TAPE_DRIVE_WRI
ec70: 54 45 5f 53 48 4f 52 54 5f 46 4d 4b 53 20 3d 20  TE_SHORT_FMKS = 
ec80: 30 78 38 34 30 30 30 30 30 30 2c 0d 0a 09 54 41  0x84000000,...TA
ec90: 50 45 5f 44 52 49 56 45 5f 57 52 49 54 45 5f 4c  PE_DRIVE_WRITE_L
eca0: 4f 4e 47 5f 46 4d 4b 53 20 20 3d 20 30 78 38 38  ONG_FMKS  = 0x88
ecb0: 30 30 30 30 30 30 2c 0d 0a 09 54 41 50 45 5f 44  000000,...TAPE_D
ecc0: 52 49 56 45 5f 57 52 49 54 45 5f 4d 41 52 4b 5f  RIVE_WRITE_MARK_
ecd0: 49 4d 4d 45 44 20 3d 20 30 78 39 30 30 30 30 30  IMMED = 0x900000
ece0: 30 30 2c 0d 0a 09 54 41 50 45 5f 44 52 49 56 45  00,...TAPE_DRIVE
ecf0: 5f 46 4f 52 4d 41 54 20 20 20 20 20 20 20 20 20  _FORMAT         
ed00: 20 20 3d 20 30 78 41 30 30 30 30 30 30 30 2c 0d    = 0xA0000000,.
ed10: 0a 09 54 41 50 45 5f 44 52 49 56 45 5f 46 4f 52  ..TAPE_DRIVE_FOR
ed20: 4d 41 54 5f 49 4d 4d 45 44 49 41 54 45 20 3d 20  MAT_IMMEDIATE = 
ed30: 30 78 43 30 30 30 30 30 30 30 2c 0d 0a 09 54 41  0xC0000000,...TA
ed40: 50 45 5f 44 52 49 56 45 5f 48 49 47 48 5f 46 45  PE_DRIVE_HIGH_FE
ed50: 41 54 55 52 45 53 20 20 20 20 3d 20 30 78 38 30  ATURES    = 0x80
ed60: 30 30 30 30 30 30 3b 0d 0a 0d 0a 65 6e 75 6d 20  000000;....enum 
ed70: 3a 20 44 57 4f 52 44 20 7b 0d 0a 09 54 41 50 45  : DWORD {...TAPE
ed80: 5f 46 49 58 45 44 5f 50 41 52 54 49 54 49 4f 4e  _FIXED_PARTITION
ed90: 53 20 20 20 20 20 3d 20 30 2c 0d 0a 09 54 41 50  S     = 0,...TAP
eda0: 45 5f 53 45 4c 45 43 54 5f 50 41 52 54 49 54 49  E_SELECT_PARTITI
edb0: 4f 4e 53 20 20 20 20 3d 20 31 2c 0d 0a 09 54 41  ONS    = 1,...TA
edc0: 50 45 5f 49 4e 49 54 49 41 54 4f 52 5f 50 41 52  PE_INITIATOR_PAR
edd0: 54 49 54 49 4f 4e 53 20 3d 20 32 0d 0a 7d 0d 0a  TITIONS = 2..}..
ede0: 0d 0a 65 6e 75 6d 20 3a 20 44 57 4f 52 44 20 7b  ..enum : DWORD {
edf0: 0d 0a 09 54 41 50 45 5f 53 45 54 4d 41 52 4b 53  ...TAPE_SETMARKS
ee00: 2c 0d 0a 09 54 41 50 45 5f 46 49 4c 45 4d 41 52  ,...TAPE_FILEMAR
ee10: 4b 53 2c 0d 0a 09 54 41 50 45 5f 53 48 4f 52 54  KS,...TAPE_SHORT
ee20: 5f 46 49 4c 45 4d 41 52 4b 53 2c 0d 0a 09 54 41  _FILEMARKS,...TA
ee30: 50 45 5f 4c 4f 4e 47 5f 46 49 4c 45 4d 41 52 4b  PE_LONG_FILEMARK
ee40: 53 0d 0a 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 44  S..}....enum : D
ee50: 57 4f 52 44 20 7b 0d 0a 09 54 41 50 45 5f 45 52  WORD {...TAPE_ER
ee60: 41 53 45 5f 53 48 4f 52 54 2c 0d 0a 09 54 41 50  ASE_SHORT,...TAP
ee70: 45 5f 45 52 41 53 45 5f 4c 4f 4e 47 0d 0a 7d 0d  E_ERASE_LONG..}.
ee80: 0a 0d 0a 65 6e 75 6d 20 3a 20 44 57 4f 52 44 20  ...enum : DWORD 
ee90: 7b 0d 0a 09 54 41 50 45 5f 4c 4f 41 44 2c 0d 0a  {...TAPE_LOAD,..
eea0: 09 54 41 50 45 5f 55 4e 4c 4f 41 44 2c 0d 0a 09  .TAPE_UNLOAD,...
eeb0: 54 41 50 45 5f 54 45 4e 53 49 4f 4e 2c 0d 0a 09  TAPE_TENSION,...
eec0: 54 41 50 45 5f 4c 4f 43 4b 2c 0d 0a 09 54 41 50  TAPE_LOCK,...TAP
eed0: 45 5f 55 4e 4c 4f 43 4b 2c 0d 0a 09 54 41 50 45  E_UNLOCK,...TAPE
eee0: 5f 46 4f 52 4d 41 54 0d 0a 7d 0d 0a 0d 0a 65 6e  _FORMAT..}....en
eef0: 75 6d 20 3a 20 55 4c 4f 4e 47 33 32 20 7b 0d 0a  um : ULONG32 {..
ef00: 09 56 45 52 5f 50 4c 41 54 46 4f 52 4d 5f 57 49  .VER_PLATFORM_WI
ef10: 4e 33 32 73 2c 0d 0a 09 56 45 52 5f 50 4c 41 54  N32s,...VER_PLAT
ef20: 46 4f 52 4d 5f 57 49 4e 33 32 5f 57 49 4e 44 4f  FORM_WIN32_WINDO
ef30: 57 53 2c 0d 0a 09 56 45 52 5f 50 4c 41 54 46 4f  WS,...VER_PLATFO
ef40: 52 4d 5f 57 49 4e 33 32 5f 4e 54 0d 0a 7d 0d 0a  RM_WIN32_NT..}..
ef50: 0d 0a 65 6e 75 6d 20 3a 20 55 43 48 41 52 20 7b  ..enum : UCHAR {
ef60: 0d 0a 09 56 45 52 5f 4e 54 5f 57 4f 52 4b 53 54  ...VER_NT_WORKST
ef70: 41 54 49 4f 4e 20 3d 20 31 2c 0d 0a 09 56 45 52  ATION = 1,...VER
ef80: 5f 4e 54 5f 44 4f 4d 41 49 4e 5f 43 4f 4e 54 52  _NT_DOMAIN_CONTR
ef90: 4f 4c 4c 45 52 2c 0d 0a 09 56 45 52 5f 4e 54 5f  OLLER,...VER_NT_
efa0: 53 45 52 56 45 52 0d 0a 7d 0d 0a 0d 0a 63 6f 6e  SERVER..}....con
efb0: 73 74 20 55 53 48 4f 52 54 0d 0a 09 56 45 52 5f  st USHORT...VER_
efc0: 53 55 49 54 45 5f 53 4d 41 4c 4c 42 55 53 49 4e  SUITE_SMALLBUSIN
efd0: 45 53 53 20 20 20 20 20 20 20 20 20 20 20 20 3d  ESS            =
efe0: 20 30 78 30 30 30 31 2c 0d 0a 09 56 45 52 5f 53   0x0001,...VER_S
eff0: 55 49 54 45 5f 45 4e 54 45 52 50 52 49 53 45 20  UITE_ENTERPRISE 
f000: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3d 20                = 
f010: 30 78 30 30 30 32 2c 0d 0a 09 56 45 52 5f 53 55  0x0002,...VER_SU
f020: 49 54 45 5f 42 41 43 4b 4f 46 46 49 43 45 20 20  ITE_BACKOFFICE  
f030: 20 20 20 20 20 20 20 20 20 20 20 20 20 3d 20 30               = 0
f040: 78 30 30 30 34 2c 0d 0a 09 56 45 52 5f 53 55 49  x0004,...VER_SUI
f050: 54 45 5f 54 45 52 4d 49 4e 41 4c 20 20 20 20 20  TE_TERMINAL     
f060: 20 20 20 20 20 20 20 20 20 20 20 20 3d 20 30 78              = 0x
f070: 30 30 31 30 2c 0d 0a 09 56 45 52 5f 53 55 49 54  0010,...VER_SUIT
f080: 45 5f 53 4d 41 4c 4c 42 55 53 49 4e 45 53 53 5f  E_SMALLBUSINESS_
f090: 52 45 53 54 52 49 43 54 45 44 20 3d 20 30 78 30  RESTRICTED = 0x0
f0a0: 30 32 30 2c 0d 0a 09 56 45 52 5f 53 55 49 54 45  020,...VER_SUITE
f0b0: 5f 45 4d 42 45 44 44 45 44 4e 54 20 20 20 20 20  _EMBEDDEDNT     
f0c0: 20 20 20 20 20 20 20 20 20 20 3d 20 30 78 30 30            = 0x00
f0d0: 34 30 2c 0d 0a 09 56 45 52 5f 53 55 49 54 45 5f  40,...VER_SUITE_
f0e0: 44 41 54 41 43 45 4e 54 45 52 20 20 20 20 20 20  DATACENTER      
f0f0: 20 20 20 20 20 20 20 20 20 3d 20 30 78 30 30 38           = 0x008
f100: 30 2c 0d 0a 09 56 45 52 5f 53 55 49 54 45 5f 53  0,...VER_SUITE_S
f110: 49 4e 47 4c 45 55 53 45 52 54 53 20 20 20 20 20  INGLEUSERTS     
f120: 20 20 20 20 20 20 20 20 3d 20 30 78 30 31 30 30          = 0x0100
f130: 2c 0d 0a 09 56 45 52 5f 53 55 49 54 45 5f 50 45  ,...VER_SUITE_PE
f140: 52 53 4f 4e 41 4c 20 20 20 20 20 20 20 20 20 20  RSONAL          
f150: 20 20 20 20 20 20 20 3d 20 30 78 30 32 30 30 2c         = 0x0200,
f160: 0d 0a 09 56 45 52 5f 53 55 49 54 45 5f 42 4c 41  ...VER_SUITE_BLA
f170: 44 45 20 20 20 20 20 20 20 20 20 20 20 20 20 20  DE              
f180: 20 20 20 20 20 20 3d 20 30 78 30 34 30 30 2c 0d        = 0x0400,.
f190: 0a 09 56 45 52 5f 53 55 49 54 45 5f 53 54 4f 52  ..VER_SUITE_STOR
f1a0: 41 47 45 5f 53 45 52 56 45 52 20 20 20 20 20 20  AGE_SERVER      
f1b0: 20 20 20 20 20 3d 20 30 78 32 30 30 30 2c 0d 0a       = 0x2000,..
f1c0: 09 56 45 52 5f 53 55 49 54 45 5f 43 4f 4d 50 55  .VER_SUITE_COMPU
f1d0: 54 45 5f 53 45 52 56 45 52 20 20 20 20 20 20 20  TE_SERVER       
f1e0: 20 20 20 20 3d 20 30 78 34 30 30 30 3b 0d 0a 0d      = 0x4000;...
f1f0: 0a 63 6f 6e 73 74 20 55 4c 4f 4e 47 0d 0a 09 57  .const ULONG...W
f200: 54 5f 45 58 45 43 55 54 45 44 45 46 41 55 4c 54  T_EXECUTEDEFAULT
f210: 20 20 20 20 20 20 20 20 20 20 20 20 3d 20 30 78              = 0x
f220: 30 30 30 30 30 30 30 30 2c 0d 0a 09 57 54 5f 45  00000000,...WT_E
f230: 58 45 43 55 54 45 49 4e 49 4f 54 48 52 45 41 44  XECUTEINIOTHREAD
f240: 20 20 20 20 20 20 20 20 20 3d 20 30 78 30 30 30           = 0x000
f250: 30 30 30 30 31 2c 0d 0a 09 57 54 5f 45 58 45 43  00001,...WT_EXEC
f260: 55 54 45 49 4e 57 41 49 54 54 48 52 45 41 44 20  UTEINWAITTHREAD 
f270: 20 20 20 20 20 20 3d 20 30 78 30 30 30 30 30 30        = 0x000000
f280: 30 34 2c 0d 0a 09 57 54 5f 45 58 45 43 55 54 45  04,...WT_EXECUTE
f290: 4f 4e 4c 59 4f 4e 43 45 20 20 20 20 20 20 20 20  ONLYONCE        
f2a0: 20 20 20 3d 20 30 78 30 30 30 30 30 30 30 38 2c     = 0x00000008,
f2b0: 0d 0a 09 57 54 5f 45 58 45 43 55 54 45 4c 4f 4e  ...WT_EXECUTELON
f2c0: 47 46 55 4e 43 54 49 4f 4e 20 20 20 20 20 20 20  GFUNCTION       
f2d0: 3d 20 30 78 30 30 30 30 30 30 31 30 2c 0d 0a 09  = 0x00000010,...
f2e0: 57 54 5f 45 58 45 43 55 54 45 49 4e 54 49 4d 45  WT_EXECUTEINTIME
f2f0: 52 54 48 52 45 41 44 20 20 20 20 20 20 3d 20 30  RTHREAD      = 0
f300: 78 30 30 30 30 30 30 32 30 2c 0d 0a 09 57 54 5f  x00000020,...WT_
f310: 45 58 45 43 55 54 45 49 4e 50 45 52 53 49 53 54  EXECUTEINPERSIST
f320: 45 4e 54 54 48 52 45 41 44 20 3d 20 30 78 30 30  ENTTHREAD = 0x00
f330: 30 30 30 30 38 30 2c 0d 0a 09 57 54 5f 54 52 41  000080,...WT_TRA
f340: 4e 53 46 45 52 5f 49 4d 50 45 52 53 4f 4e 41 54  NSFER_IMPERSONAT
f350: 49 4f 4e 20 20 20 20 3d 20 30 78 30 30 30 30 30  ION    = 0x00000
f360: 31 30 30 3b 0d 0a 0d 0a 73 74 61 74 69 63 20 69  100;....static i
f370: 66 20 28 5f 57 49 4e 33 32 5f 57 49 4e 4e 54 20  f (_WIN32_WINNT 
f380: 3e 3d 20 30 78 35 30 30 29 20 7b 0d 0a 09 63 6f  >= 0x500) {...co
f390: 6e 73 74 20 44 57 4f 52 44 0d 0a 09 09 56 45 52  nst DWORD....VER
f3a0: 5f 4d 49 4e 4f 52 56 45 52 53 49 4f 4e 20 20 20  _MINORVERSION   
f3b0: 20 20 3d 20 30 78 30 31 2c 0d 0a 09 09 56 45 52    = 0x01,....VER
f3c0: 5f 4d 41 4a 4f 52 56 45 52 53 49 4f 4e 20 20 20  _MAJORVERSION   
f3d0: 20 20 3d 20 30 78 30 32 2c 0d 0a 09 09 56 45 52    = 0x02,....VER
f3e0: 5f 42 55 49 4c 44 4e 55 4d 42 45 52 20 20 20 20  _BUILDNUMBER    
f3f0: 20 20 3d 20 30 78 30 34 2c 0d 0a 09 09 56 45 52    = 0x04,....VER
f400: 5f 50 4c 41 54 46 4f 52 4d 49 44 20 20 20 20 20  _PLATFORMID     
f410: 20 20 3d 20 30 78 30 38 2c 0d 0a 09 09 56 45 52    = 0x08,....VER
f420: 5f 53 45 52 56 49 43 45 50 41 43 4b 4d 49 4e 4f  _SERVICEPACKMINO
f430: 52 20 3d 20 30 78 31 30 2c 0d 0a 09 09 56 45 52  R = 0x10,....VER
f440: 5f 53 45 52 56 49 43 45 50 41 43 4b 4d 41 4a 4f  _SERVICEPACKMAJO
f450: 52 20 3d 20 30 78 32 30 2c 0d 0a 09 09 56 45 52  R = 0x20,....VER
f460: 5f 53 55 49 54 45 4e 41 4d 45 20 20 20 20 20 20  _SUITENAME      
f470: 20 20 3d 20 30 78 34 30 2c 0d 0a 09 09 56 45 52    = 0x40,....VER
f480: 5f 50 52 4f 44 55 43 54 5f 54 59 50 45 20 20 20  _PRODUCT_TYPE   
f490: 20 20 3d 20 30 78 38 30 3b 0d 0a 0d 0a 09 65 6e    = 0x80;.....en
f4a0: 75 6d 20 3a 20 44 57 4f 52 44 20 7b 0d 0a 09 09  um : DWORD {....
f4b0: 56 45 52 5f 45 51 55 41 4c 20 3d 20 31 2c 0d 0a  VER_EQUAL = 1,..
f4c0: 09 09 56 45 52 5f 47 52 45 41 54 45 52 2c 0d 0a  ..VER_GREATER,..
f4d0: 09 09 56 45 52 5f 47 52 45 41 54 45 52 5f 45 51  ..VER_GREATER_EQ
f4e0: 55 41 4c 2c 0d 0a 09 09 56 45 52 5f 4c 45 53 53  UAL,....VER_LESS
f4f0: 2c 0d 0a 09 09 56 45 52 5f 4c 45 53 53 5f 45 51  ,....VER_LESS_EQ
f500: 55 41 4c 2c 0d 0a 09 09 56 45 52 5f 41 4e 44 2c  UAL,....VER_AND,
f510: 0d 0a 09 09 56 45 52 5f 4f 52 20 2f 2f 20 3d 20  ....VER_OR // = 
f520: 37 0d 0a 09 7d 0d 0a 7d 0d 0a 0d 0a 73 74 61 74  7...}..}....stat
f530: 69 63 20 69 66 20 28 5f 57 49 4e 33 32 5f 57 49  ic if (_WIN32_WI
f540: 4e 4e 54 20 3e 3d 20 30 78 35 30 31 29 20 7b 0d  NNT >= 0x501) {.
f550: 0a 09 65 6e 75 6d 20 3a 20 55 4c 4f 4e 47 20 7b  ..enum : ULONG {
f560: 0d 0a 09 09 41 43 54 49 56 41 54 49 4f 4e 5f 43  ....ACTIVATION_C
f570: 4f 4e 54 45 58 54 5f 53 45 43 54 49 4f 4e 5f 41  ONTEXT_SECTION_A
f580: 53 53 45 4d 42 4c 59 5f 49 4e 46 4f 52 4d 41 54  SSEMBLY_INFORMAT
f590: 49 4f 4e 20 20 20 20 20 20 20 3d 20 31 2c 0d 0a  ION       = 1,..
f5a0: 09 09 41 43 54 49 56 41 54 49 4f 4e 5f 43 4f 4e  ..ACTIVATION_CON
f5b0: 54 45 58 54 5f 53 45 43 54 49 4f 4e 5f 44 4c 4c  TEXT_SECTION_DLL
f5c0: 5f 52 45 44 49 52 45 43 54 49 4f 4e 2c 0d 0a 09  _REDIRECTION,...
f5d0: 09 41 43 54 49 56 41 54 49 4f 4e 5f 43 4f 4e 54  .ACTIVATION_CONT
f5e0: 45 58 54 5f 53 45 43 54 49 4f 4e 5f 57 49 4e 44  EXT_SECTION_WIND
f5f0: 4f 57 5f 43 4c 41 53 53 5f 52 45 44 49 52 45 43  OW_CLASS_REDIREC
f600: 54 49 4f 4e 2c 0d 0a 09 09 41 43 54 49 56 41 54  TION,....ACTIVAT
f610: 49 4f 4e 5f 43 4f 4e 54 45 58 54 5f 53 45 43 54  ION_CONTEXT_SECT
f620: 49 4f 4e 5f 43 4f 4d 5f 53 45 52 56 45 52 5f 52  ION_COM_SERVER_R
f630: 45 44 49 52 45 43 54 49 4f 4e 2c 0d 0a 09 09 41  EDIRECTION,....A
f640: 43 54 49 56 41 54 49 4f 4e 5f 43 4f 4e 54 45 58  CTIVATION_CONTEX
f650: 54 5f 53 45 43 54 49 4f 4e 5f 43 4f 4d 5f 49 4e  T_SECTION_COM_IN
f660: 54 45 52 46 41 43 45 5f 52 45 44 49 52 45 43 54  TERFACE_REDIRECT
f670: 49 4f 4e 2c 0d 0a 09 09 41 43 54 49 56 41 54 49  ION,....ACTIVATI
f680: 4f 4e 5f 43 4f 4e 54 45 58 54 5f 53 45 43 54 49  ON_CONTEXT_SECTI
f690: 4f 4e 5f 43 4f 4d 5f 54 59 50 45 5f 4c 49 42 52  ON_COM_TYPE_LIBR
f6a0: 41 52 59 5f 52 45 44 49 52 45 43 54 49 4f 4e 2c  ARY_REDIRECTION,
f6b0: 0d 0a 09 09 41 43 54 49 56 41 54 49 4f 4e 5f 43  ....ACTIVATION_C
f6c0: 4f 4e 54 45 58 54 5f 53 45 43 54 49 4f 4e 5f 43  ONTEXT_SECTION_C
f6d0: 4f 4d 5f 50 52 4f 47 49 44 5f 52 45 44 49 52 45  OM_PROGID_REDIRE
f6e0: 43 54 49 4f 4e 2c 20 2f 2f 20 3d 20 37 0d 0a 09  CTION, // = 7...
f6f0: 09 41 43 54 49 56 41 54 49 4f 4e 5f 43 4f 4e 54  .ACTIVATION_CONT
f700: 45 58 54 5f 53 45 43 54 49 4f 4e 5f 43 4c 52 5f  EXT_SECTION_CLR_
f710: 53 55 52 52 4f 47 41 54 45 53 20 20 20 20 20 20  SURROGATES      
f720: 20 20 20 20 20 20 20 3d 20 39 0d 0a 09 7d 0d 0a         = 9...}..
f730: 7d 0d 0a 0d 0a 2f 2f 20 4d 61 63 72 6f 73 0d 0a  }....// Macros..
f740: 42 59 54 45 20 42 54 59 50 45 28 42 59 54 45 20  BYTE BTYPE(BYTE 
f750: 78 29 20 7b 20 72 65 74 75 72 6e 20 63 61 73 74  x) { return cast
f760: 28 42 59 54 45 29 20 28 78 20 26 20 4e 5f 42 54  (BYTE) (x & N_BT
f770: 4d 41 53 4b 29 3b 20 7d 0d 0a 62 6f 6f 6c 20 49  MASK); }..bool I
f780: 53 50 54 52 28 75 69 6e 74 20 78 29 20 7b 20 72  SPTR(uint x) { r
f790: 65 74 75 72 6e 20 28 78 20 26 20 4e 5f 54 4d 41  eturn (x & N_TMA
f7a0: 53 4b 29 20 3d 3d 20 28 49 4d 41 47 45 5f 53 59  SK) == (IMAGE_SY
f7b0: 4d 5f 44 54 59 50 45 5f 50 4f 49 4e 54 45 52 20  M_DTYPE_POINTER 
f7c0: 3c 3c 20 4e 5f 42 54 53 48 46 54 29 3b 20 7d 0d  << N_BTSHFT); }.
f7d0: 0a 62 6f 6f 6c 20 49 53 46 43 4e 28 75 69 6e 74  .bool ISFCN(uint
f7e0: 20 78 29 20 7b 20 72 65 74 75 72 6e 20 28 78 20   x) { return (x 
f7f0: 26 20 4e 5f 54 4d 41 53 4b 29 20 3d 3d 20 28 49  & N_TMASK) == (I
f800: 4d 41 47 45 5f 53 59 4d 5f 44 54 59 50 45 5f 46  MAGE_SYM_DTYPE_F
f810: 55 4e 43 54 49 4f 4e 20 3c 3c 20 4e 5f 42 54 53  UNCTION << N_BTS
f820: 48 46 54 29 3b 20 7d 0d 0a 62 6f 6f 6c 20 49 53  HFT); }..bool IS
f830: 41 52 59 28 75 69 6e 74 20 78 29 20 7b 20 72 65  ARY(uint x) { re
f840: 74 75 72 6e 20 28 78 20 26 20 4e 5f 54 4d 41 53  turn (x & N_TMAS
f850: 4b 29 20 3d 3d 20 28 49 4d 41 47 45 5f 53 59 4d  K) == (IMAGE_SYM
f860: 5f 44 54 59 50 45 5f 41 52 52 41 59 20 3c 3c 20  _DTYPE_ARRAY << 
f870: 4e 5f 42 54 53 48 46 54 29 3b 20 7d 0d 0a 62 6f  N_BTSHFT); }..bo
f880: 6f 6c 20 49 53 54 41 47 28 75 69 6e 74 20 78 29  ol ISTAG(uint x)
f890: 20 7b 0d 0a 09 72 65 74 75 72 6e 20 78 20 3d 3d   {...return x ==
f8a0: 20 49 4d 41 47 45 5f 53 59 4d 5f 43 4c 41 53 53   IMAGE_SYM_CLASS
f8b0: 5f 53 54 52 55 43 54 5f 54 41 47 0d 0a 09 20 20  _STRUCT_TAG...  
f8c0: 20 20 7c 7c 20 78 20 3d 3d 20 49 4d 41 47 45 5f    || x == IMAGE_
f8d0: 53 59 4d 5f 43 4c 41 53 53 5f 55 4e 49 4f 4e 5f  SYM_CLASS_UNION_
f8e0: 54 41 47 0d 0a 09 20 20 20 20 7c 7c 20 78 20 3d  TAG...    || x =
f8f0: 3d 20 49 4d 41 47 45 5f 53 59 4d 5f 43 4c 41 53  = IMAGE_SYM_CLAS
f900: 53 5f 45 4e 55 4d 5f 54 41 47 3b 0d 0a 7d 0d 0a  S_ENUM_TAG;..}..
f910: 75 69 6e 74 20 49 4e 43 52 45 46 28 75 69 6e 74  uint INCREF(uint
f920: 20 78 29 20 7b 0d 0a 09 72 65 74 75 72 6e 20 28   x) {...return (
f930: 28 78 20 26 20 7e 4e 5f 42 54 4d 41 53 4b 29 20  (x & ~N_BTMASK) 
f940: 3c 3c 20 4e 5f 54 53 48 49 46 54 29 20 7c 20 28  << N_TSHIFT) | (
f950: 49 4d 41 47 45 5f 53 59 4d 5f 44 54 59 50 45 5f  IMAGE_SYM_DTYPE_
f960: 50 4f 49 4e 54 45 52 20 3c 3c 20 4e 5f 42 54 53  POINTER << N_BTS
f970: 48 46 54 29 0d 0a 09 20 20 7c 20 28 78 20 26 20  HFT)...  | (x & 
f980: 4e 5f 42 54 4d 41 53 4b 29 3b 0d 0a 7d 0d 0a 75  N_BTMASK);..}..u
f990: 69 6e 74 20 44 45 43 52 45 46 28 75 69 6e 74 20  int DECREF(uint 
f9a0: 78 29 20 7b 20 72 65 74 75 72 6e 20 28 28 78 20  x) { return ((x 
f9b0: 3e 3e 3e 20 4e 5f 54 53 48 49 46 54 29 20 26 20  >>> N_TSHIFT) & 
f9c0: 7e 4e 5f 42 54 4d 41 53 4b 29 20 7c 20 28 78 20  ~N_BTMASK) | (x 
f9d0: 26 20 4e 5f 42 54 4d 41 53 4b 29 3b 20 7d 0d 0a  & N_BTMASK); }..
f9e0: 0d 0a 63 6f 6e 73 74 20 44 57 4f 52 44 20 54 4c  ..const DWORD TL
f9f0: 53 5f 4d 49 4e 49 4d 55 4d 5f 41 56 41 49 4c 41  S_MINIMUM_AVAILA
fa00: 42 4c 45 20 3d 20 36 34 3b 0d 0a 0d 0a 63 6f 6e  BLE = 64;....con
fa10: 73 74 20 55 4c 4f 4e 47 0d 0a 09 49 4f 5f 52 45  st ULONG...IO_RE
fa20: 50 41 52 53 45 5f 54 41 47 5f 52 45 53 45 52 56  PARSE_TAG_RESERV
fa30: 45 44 5f 5a 45 52 4f 20 20 3d 20 30 2c 0d 0a 09  ED_ZERO  = 0,...
fa40: 49 4f 5f 52 45 50 41 52 53 45 5f 54 41 47 5f 52  IO_REPARSE_TAG_R
fa50: 45 53 45 52 56 45 44 5f 4f 4e 45 20 20 20 3d 20  ESERVED_ONE   = 
fa60: 31 2c 0d 0a 09 49 4f 5f 52 45 50 41 52 53 45 5f  1,...IO_REPARSE_
fa70: 54 41 47 5f 52 45 53 45 52 56 45 44 5f 52 41 4e  TAG_RESERVED_RAN
fa80: 47 45 20 3d 20 49 4f 5f 52 45 50 41 52 53 45 5f  GE = IO_REPARSE_
fa90: 54 41 47 5f 52 45 53 45 52 56 45 44 5f 4f 4e 45  TAG_RESERVED_ONE
faa0: 2c 0d 0a 09 49 4f 5f 52 45 50 41 52 53 45 5f 54  ,...IO_REPARSE_T
fab0: 41 47 5f 53 59 4d 42 4f 4c 49 43 5f 4c 49 4e 4b  AG_SYMBOLIC_LINK
fac0: 20 20 3d 20 49 4f 5f 52 45 50 41 52 53 45 5f 54    = IO_REPARSE_T
fad0: 41 47 5f 52 45 53 45 52 56 45 44 5f 5a 45 52 4f  AG_RESERVED_ZERO
fae0: 2c 0d 0a 09 49 4f 5f 52 45 50 41 52 53 45 5f 54  ,...IO_REPARSE_T
faf0: 41 47 5f 4d 4f 55 4e 54 5f 50 4f 49 4e 54 20 20  AG_MOUNT_POINT  
fb00: 20 20 3d 20 30 78 41 30 30 30 30 30 30 33 2c 0d    = 0xA0000003,.
fb10: 0a 09 49 4f 5f 52 45 50 41 52 53 45 5f 54 41 47  ..IO_REPARSE_TAG
fb20: 5f 53 59 4d 4c 49 4e 4b 20 20 20 20 20 20 20 20  _SYMLINK        
fb30: 3d 20 30 78 41 30 30 30 30 30 30 43 2c 0d 0a 09  = 0xA000000C,...
fb40: 49 4f 5f 52 45 50 41 52 53 45 5f 54 41 47 5f 56  IO_REPARSE_TAG_V
fb50: 41 4c 49 44 5f 56 41 4c 55 45 53 20 20 20 3d 20  ALID_VALUES   = 
fb60: 30 78 45 30 30 30 46 46 46 46 3b 0d 0a 0d 0a 2f  0xE000FFFF;..../
fb70: 2a 09 41 6c 74 68 6f 75 67 68 20 74 68 65 73 65  *.Although these
fb80: 20 61 72 65 20 73 65 6d 61 6e 74 69 63 61 6c 6c   are semanticall
fb90: 79 20 62 6f 6f 6c 65 61 6e 2c 20 74 68 65 79 20  y boolean, they 
fba0: 61 72 65 20 64 6f 63 75 6d 65 6e 74 65 64 20 61  are documented a
fbb0: 6e 64 0d 0a 20 2a 09 69 6d 70 6c 65 6d 65 6e 74  nd.. *.implement
fbc0: 65 64 20 74 6f 20 72 65 74 75 72 6e 20 55 4c 4f  ed to return ULO
fbd0: 4e 47 3b 20 74 68 69 73 20 62 65 68 61 76 69 6f  NG; this behavio
fbe0: 75 72 20 69 73 20 70 72 65 73 65 72 76 65 64 20  ur is preserved 
fbf0: 66 6f 72 20 63 6f 6d 70 61 74 69 62 69 6c 69 74  for compatibilit
fc00: 79 0d 0a 20 2a 2f 0d 0a 55 4c 4f 4e 47 20 49 73  y.. */..ULONG Is
fc10: 52 65 70 61 72 73 65 54 61 67 4d 69 63 72 6f 73  ReparseTagMicros
fc20: 6f 66 74 28 55 4c 4f 4e 47 20 78 29 20 20 20 20  oft(ULONG x)    
fc30: 20 7b 20 72 65 74 75 72 6e 20 78 20 26 20 30 78   { return x & 0x
fc40: 38 30 30 30 30 30 30 30 3b 20 7d 0d 0a 55 4c 4f  80000000; }..ULO
fc50: 4e 47 20 49 73 52 65 70 61 72 73 65 54 61 67 48  NG IsReparseTagH
fc60: 69 67 68 4c 61 74 65 6e 63 79 28 55 4c 4f 4e 47  ighLatency(ULONG
fc70: 20 78 29 20 20 20 7b 20 72 65 74 75 72 6e 20 78   x)   { return x
fc80: 20 26 20 30 78 34 30 30 30 30 30 30 30 3b 20 7d   & 0x40000000; }
fc90: 0d 0a 55 4c 4f 4e 47 20 49 73 52 65 70 61 72 73  ..ULONG IsRepars
fca0: 65 54 61 67 4e 61 6d 65 53 75 72 72 6f 67 61 74  eTagNameSurrogat
fcb0: 65 28 55 4c 4f 4e 47 20 78 29 20 7b 20 72 65 74  e(ULONG x) { ret
fcc0: 75 72 6e 20 78 20 26 20 30 78 32 30 30 30 30 30  urn x & 0x200000
fcd0: 30 30 3b 20 7d 0d 0a 0d 0a 62 6f 6f 6c 20 49 73  00; }....bool Is
fce0: 52 65 70 61 72 73 65 54 61 67 56 61 6c 69 64 28  ReparseTagValid(
fcf0: 55 4c 4f 4e 47 20 78 29 20 7b 0d 0a 09 72 65 74  ULONG x) {...ret
fd00: 75 72 6e 20 21 28 78 20 26 20 7e 49 4f 5f 52 45  urn !(x & ~IO_RE
fd10: 50 41 52 53 45 5f 54 41 47 5f 56 41 4c 49 44 5f  PARSE_TAG_VALID_
fd20: 56 41 4c 55 45 53 29 20 26 26 20 28 78 20 3e 20  VALUES) && (x > 
fd30: 49 4f 5f 52 45 50 41 52 53 45 5f 54 41 47 5f 52  IO_REPARSE_TAG_R
fd40: 45 53 45 52 56 45 44 5f 52 41 4e 47 45 29 3b 0d  ESERVED_RANGE);.
fd50: 0a 7d 0d 0a 0d 0a 2f 2f 20 44 6f 65 73 6e 27 74  .}....// Doesn't
fd60: 20 73 65 65 6d 20 74 6f 20 6d 61 6b 65 20 73 65   seem to make se
fd70: 6e 73 65 2c 20 62 75 74 20 61 6e 79 77 61 79 2e  nse, but anyway.
fd80: 2e 2e 2e 0d 0a 55 4c 4f 4e 47 20 57 54 5f 53 45  .....ULONG WT_SE
fd90: 54 5f 4d 41 58 5f 54 48 52 45 41 44 50 4f 4f 4c  T_MAX_THREADPOOL
fda0: 5f 54 48 52 45 41 44 53 28 72 65 66 20 55 4c 4f  _THREADS(ref ULO
fdb0: 4e 47 20 46 6c 61 67 73 2c 20 75 73 68 6f 72 74  NG Flags, ushort
fdc0: 20 4c 69 6d 69 74 29 20 7b 0d 0a 09 72 65 74 75   Limit) {...retu
fdd0: 72 6e 20 46 6c 61 67 73 20 7c 3d 20 4c 69 6d 69  rn Flags |= Limi
fde0: 74 20 3c 3c 20 31 36 3b 0d 0a 7d 0d 0a 0d 0a 69  t << 16;..}....i
fdf0: 6d 70 6f 72 74 20 77 69 6e 33 32 2e 62 61 73 65  mport win32.base
fe00: 74 79 70 73 3b 0d 0a 2f 2a 20 61 6c 73 6f 20 69  typs;../* also i
fe10: 6e 20 77 69 6e 33 32 2e 62 61 73 65 74 79 70 73  n win32.basetyps
fe20: 0d 0a 73 74 72 75 63 74 20 47 55 49 44 20 7b 0d  ..struct GUID {.
fe30: 0a 09 75 69 6e 74 20 20 44 61 74 61 31 3b 0d 0a  ..uint  Data1;..
fe40: 09 75 73 68 6f 72 74 20 44 61 74 61 32 3b 0d 0a  .ushort Data2;..
fe50: 09 75 73 68 6f 72 74 20 44 61 74 61 33 3b 0d 0a  .ushort Data3;..
fe60: 09 75 62 79 74 65 20 20 44 61 74 61 34 5b 38 5d  .ubyte  Data4[8]
fe70: 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 47 55 49 44  ;..}..alias GUID
fe80: 2a 20 52 45 46 47 55 49 44 2c 20 4c 50 47 55 49  * REFGUID, LPGUI
fe90: 44 3b 0d 0a 2a 2f 0d 0a 0d 0a 73 74 72 75 63 74  D;..*/....struct
fea0: 20 47 45 4e 45 52 49 43 5f 4d 41 50 50 49 4e 47   GENERIC_MAPPING
feb0: 20 7b 0d 0a 09 41 43 43 45 53 53 5f 4d 41 53 4b   {...ACCESS_MASK
fec0: 20 47 65 6e 65 72 69 63 52 65 61 64 3b 0d 0a 09   GenericRead;...
fed0: 41 43 43 45 53 53 5f 4d 41 53 4b 20 47 65 6e 65  ACCESS_MASK Gene
fee0: 72 69 63 57 72 69 74 65 3b 0d 0a 09 41 43 43 45  ricWrite;...ACCE
fef0: 53 53 5f 4d 41 53 4b 20 47 65 6e 65 72 69 63 45  SS_MASK GenericE
ff00: 78 65 63 75 74 65 3b 0d 0a 09 41 43 43 45 53 53  xecute;...ACCESS
ff10: 5f 4d 41 53 4b 20 47 65 6e 65 72 69 63 41 6c 6c  _MASK GenericAll
ff20: 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 47 45 4e 45  ;..}..alias GENE
ff30: 52 49 43 5f 4d 41 50 50 49 4e 47 2a 20 50 47 45  RIC_MAPPING* PGE
ff40: 4e 45 52 49 43 5f 4d 41 50 50 49 4e 47 3b 0d 0a  NERIC_MAPPING;..
ff50: 0d 0a 73 74 72 75 63 74 20 41 43 45 5f 48 45 41  ..struct ACE_HEA
ff60: 44 45 52 20 7b 0d 0a 09 42 59 54 45 20 41 63 65  DER {...BYTE Ace
ff70: 54 79 70 65 3b 0d 0a 09 42 59 54 45 20 41 63 65  Type;...BYTE Ace
ff80: 46 6c 61 67 73 3b 0d 0a 09 57 4f 52 44 20 41 63  Flags;...WORD Ac
ff90: 65 53 69 7a 65 3b 0d 0a 7d 0d 0a 61 6c 69 61 73  eSize;..}..alias
ffa0: 20 41 43 45 5f 48 45 41 44 45 52 2a 20 50 41 43   ACE_HEADER* PAC
ffb0: 45 5f 48 45 41 44 45 52 3b 0d 0a 0d 0a 73 74 72  E_HEADER;....str
ffc0: 75 63 74 20 41 43 43 45 53 53 5f 41 4c 4c 4f 57  uct ACCESS_ALLOW
ffd0: 45 44 5f 41 43 45 20 7b 0d 0a 09 41 43 45 5f 48  ED_ACE {...ACE_H
ffe0: 45 41 44 45 52 20 20 48 65 61 64 65 72 3b 0d 0a  EADER  Header;..
fff0: 09 41 43 43 45 53 53 5f 4d 41 53 4b 20 4d 61 73  .ACCESS_MASK Mas
10000 6b 3b 0d 0a 09 44 57 4f 52 44 20 20 20 20 20 20  k;...DWORD      
10010 20 53 69 64 53 74 61 72 74 3b 0d 0a 7d 0d 0a 61   SidStart;..}..a
10020 6c 69 61 73 20 41 43 43 45 53 53 5f 41 4c 4c 4f  lias ACCESS_ALLO
10030 57 45 44 5f 41 43 45 2a 20 50 41 43 43 45 53 53  WED_ACE* PACCESS
10040 5f 41 4c 4c 4f 57 45 44 5f 41 43 45 3b 0d 0a 0d  _ALLOWED_ACE;...
10050 0a 73 74 72 75 63 74 20 41 43 43 45 53 53 5f 44  .struct ACCESS_D
10060 45 4e 49 45 44 5f 41 43 45 20 7b 0d 0a 09 41 43  ENIED_ACE {...AC
10070 45 5f 48 45 41 44 45 52 20 20 48 65 61 64 65 72  E_HEADER  Header
10080 3b 0d 0a 09 41 43 43 45 53 53 5f 4d 41 53 4b 20  ;...ACCESS_MASK 
10090 4d 61 73 6b 3b 0d 0a 09 44 57 4f 52 44 20 20 20  Mask;...DWORD   
100a0 20 20 20 20 53 69 64 53 74 61 72 74 3b 0d 0a 7d      SidStart;..}
100b0 0d 0a 61 6c 69 61 73 20 41 43 43 45 53 53 5f 44  ..alias ACCESS_D
100c0 45 4e 49 45 44 5f 41 43 45 2a 20 50 41 43 43 45  ENIED_ACE* PACCE
100d0 53 53 5f 44 45 4e 49 45 44 5f 41 43 45 3b 0d 0a  SS_DENIED_ACE;..
100e0 0d 0a 73 74 72 75 63 74 20 53 59 53 54 45 4d 5f  ..struct SYSTEM_
100f0 41 55 44 49 54 5f 41 43 45 20 7b 0d 0a 09 41 43  AUDIT_ACE {...AC
10100 45 5f 48 45 41 44 45 52 20 20 48 65 61 64 65 72  E_HEADER  Header
10110 3b 0d 0a 09 41 43 43 45 53 53 5f 4d 41 53 4b 20  ;...ACCESS_MASK 
10120 4d 61 73 6b 3b 0d 0a 09 44 57 4f 52 44 20 20 20  Mask;...DWORD   
10130 20 20 20 20 53 69 64 53 74 61 72 74 3b 0d 0a 7d      SidStart;..}
10140 0d 0a 61 6c 69 61 73 20 53 59 53 54 45 4d 5f 41  ..alias SYSTEM_A
10150 55 44 49 54 5f 41 43 45 20 2a 50 53 59 53 54 45  UDIT_ACE *PSYSTE
10160 4d 5f 41 55 44 49 54 5f 41 43 45 3b 0d 0a 0d 0a  M_AUDIT_ACE;....
10170 73 74 72 75 63 74 20 53 59 53 54 45 4d 5f 41 4c  struct SYSTEM_AL
10180 41 52 4d 5f 41 43 45 20 7b 0d 0a 09 41 43 45 5f  ARM_ACE {...ACE_
10190 48 45 41 44 45 52 20 20 48 65 61 64 65 72 3b 0d  HEADER  Header;.
101a0 0a 09 41 43 43 45 53 53 5f 4d 41 53 4b 20 4d 61  ..ACCESS_MASK Ma
101b0 73 6b 3b 0d 0a 09 44 57 4f 52 44 20 20 20 20 20  sk;...DWORD     
101c0 20 20 53 69 64 53 74 61 72 74 3b 0d 0a 7d 0d 0a    SidStart;..}..
101d0 61 6c 69 61 73 20 53 59 53 54 45 4d 5f 41 4c 41  alias SYSTEM_ALA
101e0 52 4d 5f 41 43 45 2a 20 50 53 59 53 54 45 4d 5f  RM_ACE* PSYSTEM_
101f0 41 4c 41 52 4d 5f 41 43 45 3b 0d 0a 0d 0a 73 74  ALARM_ACE;....st
10200 72 75 63 74 20 41 43 43 45 53 53 5f 41 4c 4c 4f  ruct ACCESS_ALLO
10210 57 45 44 5f 4f 42 4a 45 43 54 5f 41 43 45 20 7b  WED_OBJECT_ACE {
10220 0d 0a 09 41 43 45 5f 48 45 41 44 45 52 20 20 48  ...ACE_HEADER  H
10230 65 61 64 65 72 3b 0d 0a 09 41 43 43 45 53 53 5f  eader;...ACCESS_
10240 4d 41 53 4b 20 4d 61 73 6b 3b 0d 0a 09 44 57 4f  MASK Mask;...DWO
10250 52 44 20 20 20 20 20 20 20 46 6c 61 67 73 3b 0d  RD       Flags;.
10260 0a 09 47 55 49 44 20 20 20 20 20 20 20 20 4f 62  ..GUID        Ob
10270 6a 65 63 74 54 79 70 65 3b 0d 0a 09 47 55 49 44  jectType;...GUID
10280 20 20 20 20 20 20 20 20 49 6e 68 65 72 69 74 65          Inherite
10290 64 4f 62 6a 65 63 74 54 79 70 65 3b 0d 0a 09 44  dObjectType;...D
102a0 57 4f 52 44 20 20 20 20 20 20 20 53 69 64 53 74  WORD       SidSt
102b0 61 72 74 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 41  art;..}..alias A
102c0 43 43 45 53 53 5f 41 4c 4c 4f 57 45 44 5f 4f 42  CCESS_ALLOWED_OB
102d0 4a 45 43 54 5f 41 43 45 2a 20 50 41 43 43 45 53  JECT_ACE* PACCES
102e0 53 5f 41 4c 4c 4f 57 45 44 5f 4f 42 4a 45 43 54  S_ALLOWED_OBJECT
102f0 5f 41 43 45 3b 0d 0a 0d 0a 73 74 72 75 63 74 20  _ACE;....struct 
10300 41 43 43 45 53 53 5f 44 45 4e 49 45 44 5f 4f 42  ACCESS_DENIED_OB
10310 4a 45 43 54 5f 41 43 45 20 7b 0d 0a 09 41 43 45  JECT_ACE {...ACE
10320 5f 48 45 41 44 45 52 20 20 48 65 61 64 65 72 3b  _HEADER  Header;
10330 0d 0a 09 41 43 43 45 53 53 5f 4d 41 53 4b 20 4d  ...ACCESS_MASK M
10340 61 73 6b 3b 0d 0a 09 44 57 4f 52 44 20 20 20 20  ask;...DWORD    
10350 20 20 20 46 6c 61 67 73 3b 0d 0a 09 47 55 49 44     Flags;...GUID
10360 20 20 20 20 20 20 20 20 4f 62 6a 65 63 74 54 79          ObjectTy
10370 70 65 3b 0d 0a 09 47 55 49 44 20 20 20 20 20 20  pe;...GUID      
10380 20 20 49 6e 68 65 72 69 74 65 64 4f 62 6a 65 63    InheritedObjec
10390 74 54 79 70 65 3b 0d 0a 09 44 57 4f 52 44 20 20  tType;...DWORD  
103a0 20 20 20 20 20 53 69 64 53 74 61 72 74 3b 0d 0a       SidStart;..
103b0 7d 0d 0a 61 6c 69 61 73 20 41 43 43 45 53 53 5f  }..alias ACCESS_
103c0 44 45 4e 49 45 44 5f 4f 42 4a 45 43 54 5f 41 43  DENIED_OBJECT_AC
103d0 45 2a 20 50 41 43 43 45 53 53 5f 44 45 4e 49 45  E* PACCESS_DENIE
103e0 44 5f 4f 42 4a 45 43 54 5f 41 43 45 3b 0d 0a 0d  D_OBJECT_ACE;...
103f0 0a 73 74 72 75 63 74 20 53 59 53 54 45 4d 5f 41  .struct SYSTEM_A
10400 55 44 49 54 5f 4f 42 4a 45 43 54 5f 41 43 45 20  UDIT_OBJECT_ACE 
10410 7b 0d 0a 09 41 43 45 5f 48 45 41 44 45 52 20 20  {...ACE_HEADER  
10420 48 65 61 64 65 72 3b 0d 0a 09 41 43 43 45 53 53  Header;...ACCESS
10430 5f 4d 41 53 4b 20 4d 61 73 6b 3b 0d 0a 09 44 57  _MASK Mask;...DW
10440 4f 52 44 20 20 20 20 20 20 20 46 6c 61 67 73 3b  ORD       Flags;
10450 0d 0a 09 47 55 49 44 20 20 20 20 20 20 20 20 4f  ...GUID        O
10460 62 6a 65 63 74 54 79 70 65 3b 0d 0a 09 47 55 49  bjectType;...GUI
10470 44 20 20 20 20 20 20 20 20 49 6e 68 65 72 69 74  D        Inherit
10480 65 64 4f 62 6a 65 63 74 54 79 70 65 3b 0d 0a 09  edObjectType;...
10490 44 57 4f 52 44 20 20 20 20 20 20 20 53 69 64 53  DWORD       SidS
104a0 74 61 72 74 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20  tart;..}..alias 
104b0 53 59 53 54 45 4d 5f 41 55 44 49 54 5f 4f 42 4a  SYSTEM_AUDIT_OBJ
104c0 45 43 54 5f 41 43 45 2a 20 50 53 59 53 54 45 4d  ECT_ACE* PSYSTEM
104d0 5f 41 55 44 49 54 5f 4f 42 4a 45 43 54 5f 41 43  _AUDIT_OBJECT_AC
104e0 45 3b 0d 0a 0d 0a 73 74 72 75 63 74 20 53 59 53  E;....struct SYS
104f0 54 45 4d 5f 41 4c 41 52 4d 5f 4f 42 4a 45 43 54  TEM_ALARM_OBJECT
10500 5f 41 43 45 20 7b 0d 0a 09 41 43 45 5f 48 45 41  _ACE {...ACE_HEA
10510 44 45 52 20 20 48 65 61 64 65 72 3b 0d 0a 09 41  DER  Header;...A
10520 43 43 45 53 53 5f 4d 41 53 4b 20 4d 61 73 6b 3b  CCESS_MASK Mask;
10530 0d 0a 09 44 57 4f 52 44 20 20 20 20 20 20 20 46  ...DWORD       F
10540 6c 61 67 73 3b 0d 0a 09 47 55 49 44 20 20 20 20  lags;...GUID    
10550 20 20 20 20 4f 62 6a 65 63 74 54 79 70 65 3b 0d      ObjectType;.
10560 0a 09 47 55 49 44 20 20 20 20 20 20 20 20 49 6e  ..GUID        In
10570 68 65 72 69 74 65 64 4f 62 6a 65 63 74 54 79 70  heritedObjectTyp
10580 65 3b 0d 0a 09 44 57 4f 52 44 20 20 20 20 20 20  e;...DWORD      
10590 20 53 69 64 53 74 61 72 74 3b 0d 0a 7d 0d 0a 61   SidStart;..}..a
105a0 6c 69 61 73 20 53 59 53 54 45 4d 5f 41 4c 41 52  lias SYSTEM_ALAR
105b0 4d 5f 4f 42 4a 45 43 54 5f 41 43 45 2a 20 50 53  M_OBJECT_ACE* PS
105c0 59 53 54 45 4d 5f 41 4c 41 52 4d 5f 4f 42 4a 45  YSTEM_ALARM_OBJE
105d0 43 54 5f 41 43 45 3b 0d 0a 0d 0a 73 74 72 75 63  CT_ACE;....struc
105e0 74 20 41 43 4c 20 7b 0d 0a 09 42 59 54 45 20 41  t ACL {...BYTE A
105f0 63 6c 52 65 76 69 73 69 6f 6e 3b 0d 0a 09 42 59  clRevision;...BY
10600 54 45 20 53 62 7a 31 3b 0d 0a 09 57 4f 52 44 20  TE Sbz1;...WORD 
10610 41 63 6c 53 69 7a 65 3b 0d 0a 09 57 4f 52 44 20  AclSize;...WORD 
10620 41 63 65 43 6f 75 6e 74 3b 0d 0a 09 57 4f 52 44  AceCount;...WORD
10630 20 53 62 7a 32 3b 0d 0a 7d 0d 0a 61 6c 69 61 73   Sbz2;..}..alias
10640 20 41 43 4c 2a 20 50 41 43 4c 3b 0d 0a 0d 0a 73   ACL* PACL;....s
10650 74 72 75 63 74 20 41 43 4c 5f 52 45 56 49 53 49  truct ACL_REVISI
10660 4f 4e 5f 49 4e 46 4f 52 4d 41 54 49 4f 4e 20 7b  ON_INFORMATION {
10670 0d 0a 09 44 57 4f 52 44 20 41 63 6c 52 65 76 69  ...DWORD AclRevi
10680 73 69 6f 6e 3b 0d 0a 7d 0d 0a 0d 0a 73 74 72 75  sion;..}....stru
10690 63 74 20 41 43 4c 5f 53 49 5a 45 5f 49 4e 46 4f  ct ACL_SIZE_INFO
106a0 52 4d 41 54 49 4f 4e 20 7b 0d 0a 09 44 57 4f 52  RMATION {...DWOR
106b0 44 20 41 63 65 43 6f 75 6e 74 3b 0d 0a 09 44 57  D AceCount;...DW
106c0 4f 52 44 20 41 63 6c 42 79 74 65 73 49 6e 55 73  ORD AclBytesInUs
106d0 65 3b 0d 0a 09 44 57 4f 52 44 20 41 63 6c 42 79  e;...DWORD AclBy
106e0 74 65 73 46 72 65 65 3b 0d 0a 7d 0d 0a 0d 0a 76  tesFree;..}....v
106f0 65 72 73 69 6f 6e 20 28 58 38 36 29 20 7b 0d 0a  ersion (X86) {..
10700 09 2f 2f 20 3f 3f 3f 0d 0a 09 63 6f 6e 73 74 20  .// ???...const 
10710 53 49 5a 45 5f 4f 46 5f 38 30 33 38 37 5f 52 45  SIZE_OF_80387_RE
10720 47 49 53 54 45 52 53 20 20 20 20 20 3d 20 38 30  GISTERS     = 80
10730 3b 0d 0a 09 63 6f 6e 73 74 20 43 4f 4e 54 45 58  ;...const CONTEX
10740 54 5f 69 33 38 36 20 20 20 20 20 20 20 20 20 20  T_i386          
10750 20 20 20 20 20 20 3d 20 30 78 30 31 30 30 30 30        = 0x010000
10760 3b 0d 0a 09 63 6f 6e 73 74 20 43 4f 4e 54 45 58  ;...const CONTEX
10770 54 5f 69 34 38 36 20 20 20 20 20 20 20 20 20 20  T_i486          
10780 20 20 20 20 20 20 3d 20 30 78 30 31 30 30 30 30        = 0x010000
10790 3b 0d 0a 09 63 6f 6e 73 74 20 43 4f 4e 54 45 58  ;...const CONTEX
107a0 54 5f 43 4f 4e 54 52 4f 4c 20 20 20 20 20 20 20  T_CONTROL       
107b0 20 20 20 20 20 20 3d 20 43 4f 4e 54 45 58 54 5f        = CONTEXT_
107c0 69 33 38 36 20 7c 20 30 78 30 31 3b 0d 0a 09 63  i386 | 0x01;...c
107d0 6f 6e 73 74 20 43 4f 4e 54 45 58 54 5f 49 4e 54  onst CONTEXT_INT
107e0 45 47 45 52 20 20 20 20 20 20 20 20 20 20 20 20  EGER            
107f0 20 3d 20 43 4f 4e 54 45 58 54 5f 69 33 38 36 20   = CONTEXT_i386 
10800 7c 20 30 78 30 32 3b 0d 0a 09 63 6f 6e 73 74 20  | 0x02;...const 
10810 43 4f 4e 54 45 58 54 5f 53 45 47 4d 45 4e 54 53  CONTEXT_SEGMENTS
10820 20 20 20 20 20 20 20 20 20 20 20 20 3d 20 43 4f              = CO
10830 4e 54 45 58 54 5f 69 33 38 36 20 7c 20 30 78 30  NTEXT_i386 | 0x0
10840 34 3b 0d 0a 09 63 6f 6e 73 74 20 43 4f 4e 54 45  4;...const CONTE
10850 58 54 5f 46 4c 4f 41 54 49 4e 47 5f 50 4f 49 4e  XT_FLOATING_POIN
10860 54 20 20 20 20 20 20 3d 20 43 4f 4e 54 45 58 54  T      = CONTEXT
10870 5f 69 33 38 36 20 7c 20 30 78 30 38 3b 0d 0a 09  _i386 | 0x08;...
10880 63 6f 6e 73 74 20 43 4f 4e 54 45 58 54 5f 44 45  const CONTEXT_DE
10890 42 55 47 5f 52 45 47 49 53 54 45 52 53 20 20 20  BUG_REGISTERS   
108a0 20 20 3d 20 43 4f 4e 54 45 58 54 5f 69 33 38 36    = CONTEXT_i386
108b0 20 7c 20 30 78 31 30 3b 0d 0a 09 63 6f 6e 73 74   | 0x10;...const
108c0 20 43 4f 4e 54 45 58 54 5f 45 58 54 45 4e 44 45   CONTEXT_EXTENDE
108d0 44 5f 52 45 47 49 53 54 45 52 53 20 20 3d 20 43  D_REGISTERS  = C
108e0 4f 4e 54 45 58 54 5f 69 33 38 36 20 7c 20 30 78  ONTEXT_i386 | 0x
108f0 32 30 3b 0d 0a 09 63 6f 6e 73 74 20 43 4f 4e 54  20;...const CONT
10900 45 58 54 5f 46 55 4c 4c 20 20 20 20 20 20 20 20  EXT_FULL        
10910 20 20 20 20 20 20 20 20 3d 20 43 4f 4e 54 45 58          = CONTEX
10920 54 5f 43 4f 4e 54 52 4f 4c 20 7c 20 43 4f 4e 54  T_CONTROL | CONT
10930 45 58 54 5f 49 4e 54 45 47 45 52 20 7c 20 43 4f  EXT_INTEGER | CO
10940 4e 54 45 58 54 5f 53 45 47 4d 45 4e 54 53 3b 0d  NTEXT_SEGMENTS;.
10950 0a 09 63 6f 6e 73 74 20 4d 41 58 49 4d 55 4d 5f  ..const MAXIMUM_
10960 53 55 50 50 4f 52 54 45 44 5f 45 58 54 45 4e 53  SUPPORTED_EXTENS
10970 49 4f 4e 20 3d 20 35 31 32 3b 0d 0a 0d 0a 09 73  ION = 512;.....s
10980 74 72 75 63 74 20 46 4c 4f 41 54 49 4e 47 5f 53  truct FLOATING_S
10990 41 56 45 5f 41 52 45 41 20 7b 0d 0a 09 09 44 57  AVE_AREA {....DW
109a0 4f 52 44 20 20 20 20 43 6f 6e 74 72 6f 6c 57 6f  ORD    ControlWo
109b0 72 64 3b 0d 0a 09 09 44 57 4f 52 44 20 20 20 20  rd;....DWORD    
109c0 53 74 61 74 75 73 57 6f 72 64 3b 0d 0a 09 09 44  StatusWord;....D
109d0 57 4f 52 44 20 20 20 20 54 61 67 57 6f 72 64 3b  WORD    TagWord;
109e0 0d 0a 09 09 44 57 4f 52 44 20 20 20 20 45 72 72  ....DWORD    Err
109f0 6f 72 4f 66 66 73 65 74 3b 0d 0a 09 09 44 57 4f  orOffset;....DWO
10a00 52 44 20 20 20 20 45 72 72 6f 72 53 65 6c 65 63  RD    ErrorSelec
10a10 74 6f 72 3b 0d 0a 09 09 44 57 4f 52 44 20 20 20  tor;....DWORD   
10a20 20 44 61 74 61 4f 66 66 73 65 74 3b 0d 0a 09 09   DataOffset;....
10a30 44 57 4f 52 44 20 20 20 20 44 61 74 61 53 65 6c  DWORD    DataSel
10a40 65 63 74 6f 72 3b 0d 0a 09 09 42 59 54 45 5b 38  ector;....BYTE[8
10a50 30 5d 20 52 65 67 69 73 74 65 72 41 72 65 61 3b  0] RegisterArea;
10a60 0d 0a 09 09 44 57 4f 52 44 20 20 20 20 43 72 30  ....DWORD    Cr0
10a70 4e 70 78 53 74 61 74 65 3b 0d 0a 09 7d 0d 0a 0d  NpxState;...}...
10a80 0a 09 73 74 72 75 63 74 20 43 4f 4e 54 45 58 54  ..struct CONTEXT
10a90 20 7b 0d 0a 09 09 44 57 4f 52 44 20 43 6f 6e 74   {....DWORD Cont
10aa0 65 78 74 46 6c 61 67 73 3b 0d 0a 09 09 44 57 4f  extFlags;....DWO
10ab0 52 44 20 44 72 30 3b 0d 0a 09 09 44 57 4f 52 44  RD Dr0;....DWORD
10ac0 20 44 72 31 3b 0d 0a 09 09 44 57 4f 52 44 20 44   Dr1;....DWORD D
10ad0 72 32 3b 0d 0a 09 09 44 57 4f 52 44 20 44 72 33  r2;....DWORD Dr3
10ae0 3b 0d 0a 09 09 44 57 4f 52 44 20 44 72 36 3b 0d  ;....DWORD Dr6;.
10af0 0a 09 09 44 57 4f 52 44 20 44 72 37 3b 0d 0a 09  ...DWORD Dr7;...
10b00 09 46 4c 4f 41 54 49 4e 47 5f 53 41 56 45 5f 41  .FLOATING_SAVE_A
10b10 52 45 41 20 46 6c 6f 61 74 53 61 76 65 3b 0d 0a  REA FloatSave;..
10b20 09 09 44 57 4f 52 44 20 53 65 67 47 73 3b 0d 0a  ..DWORD SegGs;..
10b30 09 09 44 57 4f 52 44 20 53 65 67 46 73 3b 0d 0a  ..DWORD SegFs;..
10b40 09 09 44 57 4f 52 44 20 53 65 67 45 73 3b 0d 0a  ..DWORD SegEs;..
10b50 09 09 44 57 4f 52 44 20 53 65 67 44 73 3b 0d 0a  ..DWORD SegDs;..
10b60 09 09 44 57 4f 52 44 20 45 64 69 3b 0d 0a 09 09  ..DWORD Edi;....
10b70 44 57 4f 52 44 20 45 73 69 3b 0d 0a 09 09 44 57  DWORD Esi;....DW
10b80 4f 52 44 20 45 62 78 3b 0d 0a 09 09 44 57 4f 52  ORD Ebx;....DWOR
10b90 44 20 45 64 78 3b 0d 0a 09 09 44 57 4f 52 44 20  D Edx;....DWORD 
10ba0 45 63 78 3b 0d 0a 09 09 44 57 4f 52 44 20 45 61  Ecx;....DWORD Ea
10bb0 78 3b 0d 0a 09 09 44 57 4f 52 44 20 45 62 70 3b  x;....DWORD Ebp;
10bc0 0d 0a 09 09 44 57 4f 52 44 20 45 69 70 3b 0d 0a  ....DWORD Eip;..
10bd0 09 09 44 57 4f 52 44 20 53 65 67 43 73 3b 0d 0a  ..DWORD SegCs;..
10be0 09 09 44 57 4f 52 44 20 45 46 6c 61 67 73 3b 0d  ..DWORD EFlags;.
10bf0 0a 09 09 44 57 4f 52 44 20 45 73 70 3b 0d 0a 09  ...DWORD Esp;...
10c00 09 44 57 4f 52 44 20 53 65 67 53 73 3b 0d 0a 09  .DWORD SegSs;...
10c10 09 42 59 54 45 5b 4d 41 58 49 4d 55 4d 5f 53 55  .BYTE[MAXIMUM_SU
10c20 50 50 4f 52 54 45 44 5f 45 58 54 45 4e 53 49 4f  PPORTED_EXTENSIO
10c30 4e 5d 20 45 78 74 65 6e 64 65 64 52 65 67 69 73  N] ExtendedRegis
10c40 74 65 72 73 3b 0d 0a 09 7d 0d 0a 0d 0a 7d 20 65  ters;...}....} e
10c50 6c 73 65 20 76 65 72 73 69 6f 6e 28 58 38 36 5f  lse version(X86_
10c60 36 34 29 0d 0a 7b 0d 0a 09 63 6f 6e 73 74 20 43  64)..{...const C
10c70 4f 4e 54 45 58 54 5f 41 4d 44 36 34 20 3d 20 30  ONTEXT_AMD64 = 0
10c80 78 31 30 30 30 30 30 3b 0d 0a 0d 0a 09 63 6f 6e  x100000;.....con
10c90 73 74 20 43 4f 4e 54 45 58 54 5f 43 4f 4e 54 52  st CONTEXT_CONTR
10ca0 4f 4c 20 20 20 20 20 20 20 20 20 3d 20 28 43 4f  OL         = (CO
10cb0 4e 54 45 58 54 5f 41 4d 44 36 34 20 7c 20 30 78  NTEXT_AMD64 | 0x
10cc0 31 4c 29 3b 0d 0a 09 63 6f 6e 73 74 20 43 4f 4e  1L);...const CON
10cd0 54 45 58 54 5f 49 4e 54 45 47 45 52 20 20 20 20  TEXT_INTEGER    
10ce0 20 20 20 20 20 3d 20 28 43 4f 4e 54 45 58 54 5f       = (CONTEXT_
10cf0 41 4d 44 36 34 20 7c 20 30 78 32 4c 29 3b 0d 0a  AMD64 | 0x2L);..
10d00 09 63 6f 6e 73 74 20 43 4f 4e 54 45 58 54 5f 53  .const CONTEXT_S
10d10 45 47 4d 45 4e 54 53 20 20 20 20 20 20 20 20 3d  EGMENTS        =
10d20 20 28 43 4f 4e 54 45 58 54 5f 41 4d 44 36 34 20   (CONTEXT_AMD64 
10d30 7c 20 30 78 34 4c 29 3b 0d 0a 09 63 6f 6e 73 74  | 0x4L);...const
10d40 20 43 4f 4e 54 45 58 54 5f 46 4c 4f 41 54 49 4e   CONTEXT_FLOATIN
10d50 47 5f 50 4f 49 4e 54 20 20 3d 20 28 43 4f 4e 54  G_POINT  = (CONT
10d60 45 58 54 5f 41 4d 44 36 34 20 7c 20 30 78 38 4c  EXT_AMD64 | 0x8L
10d70 29 3b 0d 0a 09 63 6f 6e 73 74 20 43 4f 4e 54 45  );...const CONTE
10d80 58 54 5f 44 45 42 55 47 5f 52 45 47 49 53 54 45  XT_DEBUG_REGISTE
10d90 52 53 20 3d 20 28 43 4f 4e 54 45 58 54 5f 41 4d  RS = (CONTEXT_AM
10da0 44 36 34 20 7c 20 30 78 31 30 4c 29 3b 0d 0a 0d  D64 | 0x10L);...
10db0 0a 09 63 6f 6e 73 74 20 43 4f 4e 54 45 58 54 5f  ..const CONTEXT_
10dc0 46 55 4c 4c 20 3d 20 28 43 4f 4e 54 45 58 54 5f  FULL = (CONTEXT_
10dd0 43 4f 4e 54 52 4f 4c 20 7c 20 43 4f 4e 54 45 58  CONTROL | CONTEX
10de0 54 5f 49 4e 54 45 47 45 52 20 7c 20 43 4f 4e 54  T_INTEGER | CONT
10df0 45 58 54 5f 46 4c 4f 41 54 49 4e 47 5f 50 4f 49  EXT_FLOATING_POI
10e00 4e 54 29 3b 0d 0a 09 63 6f 6e 73 74 20 43 4f 4e  NT);...const CON
10e10 54 45 58 54 5f 41 4c 4c 20 20 3d 20 28 43 4f 4e  TEXT_ALL  = (CON
10e20 54 45 58 54 5f 43 4f 4e 54 52 4f 4c 20 7c 20 43  TEXT_CONTROL | C
10e30 4f 4e 54 45 58 54 5f 49 4e 54 45 47 45 52 20 7c  ONTEXT_INTEGER |
10e40 20 43 4f 4e 54 45 58 54 5f 53 45 47 4d 45 4e 54   CONTEXT_SEGMENT
10e50 53 20 7c 20 43 4f 4e 54 45 58 54 5f 46 4c 4f 41  S | CONTEXT_FLOA
10e60 54 49 4e 47 5f 50 4f 49 4e 54 20 7c 20 43 4f 4e  TING_POINT | CON
10e70 54 45 58 54 5f 44 45 42 55 47 5f 52 45 47 49 53  TEXT_DEBUG_REGIS
10e80 54 45 52 53 29 3b 0d 0a 0d 0a 09 63 6f 6e 73 74  TERS);.....const
10e90 20 43 4f 4e 54 45 58 54 5f 45 58 43 45 50 54 49   CONTEXT_EXCEPTI
10ea0 4f 4e 5f 41 43 54 49 56 45 20 20 20 20 3d 20 30  ON_ACTIVE    = 0
10eb0 78 38 30 30 30 30 30 30 3b 0d 0a 09 63 6f 6e 73  x8000000;...cons
10ec0 74 20 43 4f 4e 54 45 58 54 5f 53 45 52 56 49 43  t CONTEXT_SERVIC
10ed0 45 5f 41 43 54 49 56 45 20 20 20 20 20 20 3d 20  E_ACTIVE      = 
10ee0 30 78 31 30 30 30 30 30 30 30 3b 0d 0a 09 63 6f  0x10000000;...co
10ef0 6e 73 74 20 43 4f 4e 54 45 58 54 5f 45 58 43 45  nst CONTEXT_EXCE
10f00 50 54 49 4f 4e 5f 52 45 51 55 45 53 54 20 20 20  PTION_REQUEST   
10f10 3d 20 30 78 34 30 30 30 30 30 30 30 3b 0d 0a 09  = 0x40000000;...
10f20 63 6f 6e 73 74 20 43 4f 4e 54 45 58 54 5f 45 58  const CONTEXT_EX
10f30 43 45 50 54 49 4f 4e 5f 52 45 50 4f 52 54 49 4e  CEPTION_REPORTIN
10f40 47 20 3d 20 30 78 38 30 30 30 30 30 30 30 3b 0d  G = 0x80000000;.
10f50 0a 0d 0a 09 63 6f 6e 73 74 20 49 4e 49 54 49 41  ....const INITIA
10f60 4c 5f 4d 58 43 53 52 20 3d 20 30 78 31 66 38 30  L_MXCSR = 0x1f80
10f70 3b 0d 0a 09 63 6f 6e 73 74 20 49 4e 49 54 49 41  ;...const INITIA
10f80 4c 5f 46 50 43 53 52 20 3d 20 30 78 30 32 37 66  L_FPCSR = 0x027f
10f90 3b 0d 0a 0d 0a 09 61 6c 69 67 6e 28 31 36 29 20  ;.....align(16) 
10fa0 73 74 72 75 63 74 20 4d 31 32 38 41 20 0d 0a 09  struct M128A ...
10fb0 7b 0d 0a 09 09 55 4c 4f 4e 47 4c 4f 4e 47 20 4c  {....ULONGLONG L
10fc0 6f 77 3b 0d 0a 09 09 4c 4f 4e 47 4c 4f 4e 47 20  ow;....LONGLONG 
10fd0 48 69 67 68 3b 0d 0a 09 7d 20 0d 0a 09 61 6c 69  High;...} ...ali
10fe0 61 73 20 4d 31 32 38 41 2a 20 50 4d 31 32 38 41  as M128A* PM128A
10ff0 3b 0d 0a 0d 0a 09 73 74 72 75 63 74 20 58 4d 4d  ;.....struct XMM
11000 5f 53 41 56 45 5f 41 52 45 41 33 32 20 0d 0a 09  _SAVE_AREA32 ...
11010 7b 0d 0a 09 09 57 4f 52 44 20 43 6f 6e 74 72 6f  {....WORD Contro
11020 6c 57 6f 72 64 3b 0d 0a 09 09 57 4f 52 44 20 53  lWord;....WORD S
11030 74 61 74 75 73 57 6f 72 64 3b 0d 0a 09 09 42 59  tatusWord;....BY
11040 54 45 20 54 61 67 57 6f 72 64 3b 0d 0a 09 09 42  TE TagWord;....B
11050 59 54 45 20 52 65 73 65 72 76 65 64 31 3b 0d 0a  YTE Reserved1;..
11060 09 09 57 4f 52 44 20 45 72 72 6f 72 4f 70 63 6f  ..WORD ErrorOpco
11070 64 65 3b 0d 0a 09 09 44 57 4f 52 44 20 45 72 72  de;....DWORD Err
11080 6f 72 4f 66 66 73 65 74 3b 0d 0a 09 09 57 4f 52  orOffset;....WOR
11090 44 20 45 72 72 6f 72 53 65 6c 65 63 74 6f 72 3b  D ErrorSelector;
110a0 0d 0a 09 09 57 4f 52 44 20 52 65 73 65 72 76 65  ....WORD Reserve
110b0 64 32 3b 0d 0a 09 09 44 57 4f 52 44 20 44 61 74  d2;....DWORD Dat
110c0 61 4f 66 66 73 65 74 3b 0d 0a 09 09 57 4f 52 44  aOffset;....WORD
110d0 20 44 61 74 61 53 65 6c 65 63 74 6f 72 3b 0d 0a   DataSelector;..
110e0 09 09 57 4f 52 44 20 52 65 73 65 72 76 65 64 33  ..WORD Reserved3
110f0 3b 0d 0a 09 09 44 57 4f 52 44 20 4d 78 43 73 72  ;....DWORD MxCsr
11100 3b 0d 0a 09 09 44 57 4f 52 44 20 4d 78 43 73 72  ;....DWORD MxCsr
11110 5f 4d 61 73 6b 3b 0d 0a 09 09 4d 31 32 38 41 5b  _Mask;....M128A[
11120 38 5d 20 46 6c 6f 61 74 52 65 67 69 73 74 65 72  8] FloatRegister
11130 73 3b 0d 0a 09 09 4d 31 32 38 41 5b 31 36 5d 20  s;....M128A[16] 
11140 58 6d 6d 52 65 67 69 73 74 65 72 73 3b 0d 0a 09  XmmRegisters;...
11150 09 42 59 54 45 5b 39 36 5d 20 52 65 73 65 72 76  .BYTE[96] Reserv
11160 65 64 34 3b 0d 0a 09 7d 20 0d 0a 09 61 6c 69 61  ed4;...} ...alia
11170 73 20 58 4d 4d 5f 53 41 56 45 5f 41 52 45 41 33  s XMM_SAVE_AREA3
11180 32 20 50 58 4d 4d 5f 53 41 56 45 5f 41 52 45 41  2 PXMM_SAVE_AREA
11190 33 32 3b 0d 0a 09 63 6f 6e 73 74 20 4c 45 47 41  32;...const LEGA
111a0 43 59 5f 53 41 56 45 5f 41 52 45 41 5f 4c 45 4e  CY_SAVE_AREA_LEN
111b0 47 54 48 20 3d 20 58 4d 4d 5f 53 41 56 45 5f 41  GTH = XMM_SAVE_A
111c0 52 45 41 33 32 2e 73 69 7a 65 6f 66 3b 0d 0a 09  REA32.sizeof;...
111d0 0d 0a 09 61 6c 69 67 6e 28 31 36 29 20 73 74 72  ...align(16) str
111e0 75 63 74 20 43 4f 4e 54 45 58 54 0d 0a 09 7b 0d  uct CONTEXT...{.
111f0 0a 09 09 44 57 4f 52 44 36 34 20 50 31 48 6f 6d  ...DWORD64 P1Hom
11200 65 3b 0d 0a 09 09 44 57 4f 52 44 36 34 20 50 32  e;....DWORD64 P2
11210 48 6f 6d 65 3b 0d 0a 09 09 44 57 4f 52 44 36 34  Home;....DWORD64
11220 20 50 33 48 6f 6d 65 3b 0d 0a 09 09 44 57 4f 52   P3Home;....DWOR
11230 44 36 34 20 50 34 48 6f 6d 65 3b 0d 0a 09 09 44  D64 P4Home;....D
11240 57 4f 52 44 36 34 20 50 35 48 6f 6d 65 3b 0d 0a  WORD64 P5Home;..
11250 09 09 44 57 4f 52 44 36 34 20 50 36 48 6f 6d 65  ..DWORD64 P6Home
11260 3b 0d 0a 09 09 44 57 4f 52 44 20 43 6f 6e 74 65  ;....DWORD Conte
11270 78 74 46 6c 61 67 73 3b 0d 0a 09 09 44 57 4f 52  xtFlags;....DWOR
11280 44 20 4d 78 43 73 72 3b 0d 0a 09 09 57 4f 52 44  D MxCsr;....WORD
11290 20 53 65 67 43 73 3b 0d 0a 09 09 57 4f 52 44 20   SegCs;....WORD 
112a0 53 65 67 44 73 3b 0d 0a 09 09 57 4f 52 44 20 53  SegDs;....WORD S
112b0 65 67 45 73 3b 0d 0a 09 09 57 4f 52 44 20 53 65  egEs;....WORD Se
112c0 67 46 73 3b 0d 0a 09 09 57 4f 52 44 20 53 65 67  gFs;....WORD Seg
112d0 47 73 3b 0d 0a 09 09 57 4f 52 44 20 53 65 67 53  Gs;....WORD SegS
112e0 73 3b 0d 0a 09 09 44 57 4f 52 44 20 45 46 6c 61  s;....DWORD EFla
112f0 67 73 3b 0d 0a 09 09 44 57 4f 52 44 36 34 20 44  gs;....DWORD64 D
11300 72 30 3b 0d 0a 09 09 44 57 4f 52 44 36 34 20 44  r0;....DWORD64 D
11310 72 31 3b 0d 0a 09 09 44 57 4f 52 44 36 34 20 44  r1;....DWORD64 D
11320 72 32 3b 0d 0a 09 09 44 57 4f 52 44 36 34 20 44  r2;....DWORD64 D
11330 72 33 3b 0d 0a 09 09 44 57 4f 52 44 36 34 20 44  r3;....DWORD64 D
11340 72 36 3b 0d 0a 09 09 44 57 4f 52 44 36 34 20 44  r6;....DWORD64 D
11350 72 37 3b 0d 0a 09 09 44 57 4f 52 44 36 34 20 52  r7;....DWORD64 R
11360 61 78 3b 0d 0a 09 09 44 57 4f 52 44 36 34 20 52  ax;....DWORD64 R
11370 63 78 3b 0d 0a 09 09 44 57 4f 52 44 36 34 20 52  cx;....DWORD64 R
11380 64 78 3b 0d 0a 09 09 44 57 4f 52 44 36 34 20 52  dx;....DWORD64 R
11390 62 78 3b 0d 0a 09 09 44 57 4f 52 44 36 34 20 52  bx;....DWORD64 R
113a0 73 70 3b 0d 0a 09 09 44 57 4f 52 44 36 34 20 52  sp;....DWORD64 R
113b0 62 70 3b 0d 0a 09 09 44 57 4f 52 44 36 34 20 52  bp;....DWORD64 R
113c0 73 69 3b 0d 0a 09 09 44 57 4f 52 44 36 34 20 52  si;....DWORD64 R
113d0 64 69 3b 0d 0a 09 09 44 57 4f 52 44 36 34 20 52  di;....DWORD64 R
113e0 38 3b 0d 0a 09 09 44 57 4f 52 44 36 34 20 52 39  8;....DWORD64 R9
113f0 3b 0d 0a 09 09 44 57 4f 52 44 36 34 20 52 31 30  ;....DWORD64 R10
11400 3b 0d 0a 09 09 44 57 4f 52 44 36 34 20 52 31 31  ;....DWORD64 R11
11410 3b 0d 0a 09 09 44 57 4f 52 44 36 34 20 52 31 32  ;....DWORD64 R12
11420 3b 0d 0a 09 09 44 57 4f 52 44 36 34 20 52 31 33  ;....DWORD64 R13
11430 3b 0d 0a 09 09 44 57 4f 52 44 36 34 20 52 31 34  ;....DWORD64 R14
11440 3b 0d 0a 09 09 44 57 4f 52 44 36 34 20 52 31 35  ;....DWORD64 R15
11450 3b 0d 0a 09 09 44 57 4f 52 44 36 34 20 52 69 70  ;....DWORD64 Rip
11460 3b 0d 0a 09 09 75 6e 69 6f 6e 20 0d 0a 09 09 7b  ;....union ....{
11470 0d 0a 09 09 09 58 4d 4d 5f 53 41 56 45 5f 41 52  .....XMM_SAVE_AR
11480 45 41 33 32 20 46 6c 74 53 61 76 65 3b 0d 0a 09  EA32 FltSave;...
11490 09 09 58 4d 4d 5f 53 41 56 45 5f 41 52 45 41 33  ..XMM_SAVE_AREA3
114a0 32 20 46 6c 6f 61 74 53 61 76 65 3b 0d 0a 09 09  2 FloatSave;....
114b0 09 73 74 72 75 63 74 20 0d 0a 09 09 09 7b 0d 0a  .struct .....{..
114c0 09 09 09 09 4d 31 32 38 41 5b 32 5d 20 48 65 61  ....M128A[2] Hea
114d0 64 65 72 3b 0d 0a 09 09 09 09 4d 31 32 38 41 5b  der;......M128A[
114e0 38 5d 20 4c 65 67 61 63 79 3b 0d 0a 09 09 09 09  8] Legacy;......
114f0 4d 31 32 38 41 20 58 6d 6d 30 3b 0d 0a 09 09 09  M128A Xmm0;.....
11500 09 4d 31 32 38 41 20 58 6d 6d 31 3b 0d 0a 09 09  .M128A Xmm1;....
11510 09 09 4d 31 32 38 41 20 58 6d 6d 32 3b 0d 0a 09  ..M128A Xmm2;...
11520 09 09 09 4d 31 32 38 41 20 58 6d 6d 33 3b 0d 0a  ...M128A Xmm3;..
11530 09 09 09 09 4d 31 32 38 41 20 58 6d 6d 34 3b 0d  ....M128A Xmm4;.
11540 0a 09 09 09 09 4d 31 32 38 41 20 58 6d 6d 35 3b  .....M128A Xmm5;
11550 0d 0a 09 09 09 09 4d 31 32 38 41 20 58 6d 6d 36  ......M128A Xmm6
11560 3b 0d 0a 09 09 09 09 4d 31 32 38 41 20 58 6d 6d  ;......M128A Xmm
11570 37 3b 0d 0a 09 09 09 09 4d 31 32 38 41 20 58 6d  7;......M128A Xm
11580 6d 38 3b 0d 0a 09 09 09 09 4d 31 32 38 41 20 58  m8;......M128A X
11590 6d 6d 39 3b 0d 0a 09 09 09 09 4d 31 32 38 41 20  mm9;......M128A 
115a0 58 6d 6d 31 30 3b 0d 0a 09 09 09 09 4d 31 32 38  Xmm10;......M128
115b0 41 20 58 6d 6d 31 31 3b 0d 0a 09 09 09 09 4d 31  A Xmm11;......M1
115c0 32 38 41 20 58 6d 6d 31 32 3b 0d 0a 09 09 09 09  28A Xmm12;......
115d0 4d 31 32 38 41 20 58 6d 6d 31 33 3b 0d 0a 09 09  M128A Xmm13;....
115e0 09 09 4d 31 32 38 41 20 58 6d 6d 31 34 3b 0d 0a  ..M128A Xmm14;..
115f0 09 09 09 09 4d 31 32 38 41 20 58 6d 6d 31 35 3b  ....M128A Xmm15;
11600 0d 0a 09 09 09 7d 3b 0d 0a 09 09 7d 3b 0d 0a 09  .....};....};...
11610 09 4d 31 32 38 41 5b 32 36 5d 20 56 65 63 74 6f  .M128A[26] Vecto
11620 72 52 65 67 69 73 74 65 72 3b 0d 0a 09 09 44 57  rRegister;....DW
11630 4f 52 44 36 34 20 56 65 63 74 6f 72 43 6f 6e 74  ORD64 VectorCont
11640 72 6f 6c 3b 0d 0a 09 09 44 57 4f 52 44 36 34 20  rol;....DWORD64 
11650 44 65 62 75 67 43 6f 6e 74 72 6f 6c 3b 0d 0a 09  DebugControl;...
11660 09 44 57 4f 52 44 36 34 20 4c 61 73 74 42 72 61  .DWORD64 LastBra
11670 6e 63 68 54 6f 52 69 70 3b 0d 0a 09 09 44 57 4f  nchToRip;....DWO
11680 52 44 36 34 20 4c 61 73 74 42 72 61 6e 63 68 46  RD64 LastBranchF
11690 72 6f 6d 52 69 70 3b 0d 0a 09 09 44 57 4f 52 44  romRip;....DWORD
116a0 36 34 20 4c 61 73 74 45 78 63 65 70 74 69 6f 6e  64 LastException
116b0 54 6f 52 69 70 3b 0d 0a 09 09 44 57 4f 52 44 36  ToRip;....DWORD6
116c0 34 20 4c 61 73 74 45 78 63 65 70 74 69 6f 6e 46  4 LastExceptionF
116d0 72 6f 6d 52 69 70 3b 0d 0a 09 7d 0d 0a 09 0d 0a  romRip;...}.....
116e0 7d 20 65 6c 73 65 20 7b 0d 0a 09 73 74 61 74 69  } else {...stati
116f0 63 20 61 73 73 65 72 74 28 66 61 6c 73 65 2c 20  c assert(false, 
11700 22 55 6e 73 75 70 70 6f 72 74 65 64 20 43 50 55  "Unsupported CPU
11710 22 29 3b 0d 0a 09 2f 2f 20 56 65 72 73 69 6f 6e  ");...// Version
11720 73 20 66 6f 72 20 50 6f 77 65 72 50 43 2c 20 41  s for PowerPC, A
11730 6c 70 68 61 2c 20 53 48 58 2c 20 61 6e 64 20 4d  lpha, SHX, and M
11740 49 50 53 20 72 65 6d 6f 76 65 64 2e 0d 0a 7d 0d  IPS removed...}.
11750 0a 0d 0a 61 6c 69 61 73 20 43 4f 4e 54 45 58 54  ...alias CONTEXT
11760 2a 20 50 43 4f 4e 54 45 58 54 2c 20 4c 50 43 4f  * PCONTEXT, LPCO
11770 4e 54 45 58 54 3b 0d 0a 0d 0a 73 74 72 75 63 74  NTEXT;....struct
11780 20 45 58 43 45 50 54 49 4f 4e 5f 52 45 43 4f 52   EXCEPTION_RECOR
11790 44 20 7b 0d 0a 09 44 57 4f 52 44 20 45 78 63 65  D {...DWORD Exce
117a0 70 74 69 6f 6e 43 6f 64 65 3b 0d 0a 09 44 57 4f  ptionCode;...DWO
117b0 52 44 20 45 78 63 65 70 74 69 6f 6e 46 6c 61 67  RD ExceptionFlag
117c0 73 3b 0d 0a 09 45 58 43 45 50 54 49 4f 4e 5f 52  s;...EXCEPTION_R
117d0 45 43 4f 52 44 2a 20 45 78 63 65 70 74 69 6f 6e  ECORD* Exception
117e0 52 65 63 6f 72 64 3b 0d 0a 09 50 56 4f 49 44 20  Record;...PVOID 
117f0 45 78 63 65 70 74 69 6f 6e 41 64 64 72 65 73 73  ExceptionAddress
11800 3b 0d 0a 09 44 57 4f 52 44 20 4e 75 6d 62 65 72  ;...DWORD Number
11810 50 61 72 61 6d 65 74 65 72 73 3b 0d 0a 09 44 57  Parameters;...DW
11820 4f 52 44 5b 45 58 43 45 50 54 49 4f 4e 5f 4d 41  ORD[EXCEPTION_MA
11830 58 49 4d 55 4d 5f 50 41 52 41 4d 45 54 45 52 53  XIMUM_PARAMETERS
11840 5d 20 45 78 63 65 70 74 69 6f 6e 49 6e 66 6f 72  ] ExceptionInfor
11850 6d 61 74 69 6f 6e 3b 0d 0a 7d 0d 0a 61 6c 69 61  mation;..}..alia
11860 73 20 45 58 43 45 50 54 49 4f 4e 5f 52 45 43 4f  s EXCEPTION_RECO
11870 52 44 2a 20 50 45 58 43 45 50 54 49 4f 4e 5f 52  RD* PEXCEPTION_R
11880 45 43 4f 52 44 2c 20 4c 50 45 58 43 45 50 54 49  ECORD, LPEXCEPTI
11890 4f 4e 5f 52 45 43 4f 52 44 3b 0d 0a 0d 0a 73 74  ON_RECORD;....st
118a0 72 75 63 74 20 45 58 43 45 50 54 49 4f 4e 5f 50  ruct EXCEPTION_P
118b0 4f 49 4e 54 45 52 53 20 7b 0d 0a 09 50 45 58 43  OINTERS {...PEXC
118c0 45 50 54 49 4f 4e 5f 52 45 43 4f 52 44 20 45 78  EPTION_RECORD Ex
118d0 63 65 70 74 69 6f 6e 52 65 63 6f 72 64 3b 0d 0a  ceptionRecord;..
118e0 09 50 43 4f 4e 54 45 58 54 20 20 20 20 20 20 20  .PCONTEXT       
118f0 20 20 20 43 6f 6e 74 65 78 74 52 65 63 6f 72 64     ContextRecord
11900 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 45 58 43 45  ;..}..alias EXCE
11910 50 54 49 4f 4e 5f 50 4f 49 4e 54 45 52 53 2a 20  PTION_POINTERS* 
11920 50 45 58 43 45 50 54 49 4f 4e 5f 50 4f 49 4e 54  PEXCEPTION_POINT
11930 45 52 53 2c 20 4c 50 45 58 43 45 50 54 49 4f 4e  ERS, LPEXCEPTION
11940 5f 50 4f 49 4e 54 45 52 53 3b 0d 0a 0d 0a 75 6e  _POINTERS;....un
11950 69 6f 6e 20 4c 41 52 47 45 5f 49 4e 54 45 47 45  ion LARGE_INTEGE
11960 52 20 7b 0d 0a 09 73 74 72 75 63 74 20 7b 0d 0a  R {...struct {..
11970 09 09 75 69 6e 74 20 4c 6f 77 50 61 72 74 3b 0d  ..uint LowPart;.
11980 0a 09 09 69 6e 74 20 20 48 69 67 68 50 61 72 74  ...int  HighPart
11990 3b 0d 0a 09 7d 0d 0a 09 6c 6f 6e 67 20 51 75 61  ;...}...long Qua
119a0 64 50 61 72 74 3b 0d 0a 7d 0d 0a 61 6c 69 61 73  dPart;..}..alias
119b0 20 4c 41 52 47 45 5f 49 4e 54 45 47 45 52 2a 20   LARGE_INTEGER* 
119c0 50 4c 41 52 47 45 5f 49 4e 54 45 47 45 52 3b 0d  PLARGE_INTEGER;.
119d0 0a 0d 0a 75 6e 69 6f 6e 20 55 4c 41 52 47 45 5f  ...union ULARGE_
119e0 49 4e 54 45 47 45 52 20 7b 0d 0a 09 73 74 72 75  INTEGER {...stru
119f0 63 74 20 7b 0d 0a 09 09 75 69 6e 74 20 4c 6f 77  ct {....uint Low
11a00 50 61 72 74 3b 0d 0a 09 09 75 69 6e 74 20 48 69  Part;....uint Hi
11a10 67 68 50 61 72 74 3b 0d 0a 09 7d 0d 0a 09 75 6c  ghPart;...}...ul
11a20 6f 6e 67 20 51 75 61 64 50 61 72 74 3b 0d 0a 7d  ong QuadPart;..}
11a30 0d 0a 61 6c 69 61 73 20 55 4c 41 52 47 45 5f 49  ..alias ULARGE_I
11a40 4e 54 45 47 45 52 2a 20 50 55 4c 41 52 47 45 5f  NTEGER* PULARGE_
11a50 49 4e 54 45 47 45 52 3b 0d 0a 0d 0a 61 6c 69 61  INTEGER;....alia
11a60 73 20 4c 41 52 47 45 5f 49 4e 54 45 47 45 52 20  s LARGE_INTEGER 
11a70 4c 55 49 44 3b 0d 0a 61 6c 69 61 73 20 4c 55 49  LUID;..alias LUI
11a80 44 2a 20 50 4c 55 49 44 3b 0d 0a 0d 0a 63 6f 6e  D* PLUID;....con
11a90 73 74 20 4c 55 49 44 20 53 59 53 54 45 4d 5f 4c  st LUID SYSTEM_L
11aa0 55 49 44 20 3d 20 7b 20 51 75 61 64 50 61 72 74  UID = { QuadPart
11ab0 3a 39 39 39 20 7d 3b 0d 0a 0d 0a 61 6c 69 67 6e  :999 };....align
11ac0 28 34 29 20 73 74 72 75 63 74 20 4c 55 49 44 5f  (4) struct LUID_
11ad0 41 4e 44 5f 41 54 54 52 49 42 55 54 45 53 20 7b  AND_ATTRIBUTES {
11ae0 0d 0a 09 4c 55 49 44 20 20 4c 75 69 64 3b 0d 0a  ...LUID  Luid;..
11af0 09 44 57 4f 52 44 20 41 74 74 72 69 62 75 74 65  .DWORD Attribute
11b00 73 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 4c 55 49  s;..}..alias LUI
11b10 44 5f 41 4e 44 5f 41 54 54 52 49 42 55 54 45 53  D_AND_ATTRIBUTES
11b20 2a 20 50 4c 55 49 44 5f 41 4e 44 5f 41 54 54 52  * PLUID_AND_ATTR
11b30 49 42 55 54 45 53 3b 0d 0a 0d 0a 73 74 72 75 63  IBUTES;....struc
11b40 74 20 50 52 49 56 49 4c 45 47 45 5f 53 45 54 20  t PRIVILEGE_SET 
11b50 7b 0d 0a 09 44 57 4f 52 44 20 50 72 69 76 69 6c  {...DWORD Privil
11b60 65 67 65 43 6f 75 6e 74 3b 0d 0a 09 44 57 4f 52  egeCount;...DWOR
11b70 44 20 43 6f 6e 74 72 6f 6c 3b 0d 0a 09 4c 55 49  D Control;...LUI
11b80 44 5f 41 4e 44 5f 41 54 54 52 49 42 55 54 45 53  D_AND_ATTRIBUTES
11b90 20 5f 50 72 69 76 69 6c 65 67 65 3b 0d 0a 0d 0a   _Privilege;....
11ba0 09 4c 55 49 44 5f 41 4e 44 5f 41 54 54 52 49 42  .LUID_AND_ATTRIB
11bb0 55 54 45 53 2a 20 50 72 69 76 69 6c 65 67 65 28  UTES* Privilege(
11bc0 29 20 7b 20 72 65 74 75 72 6e 20 26 5f 50 72 69  ) { return &_Pri
11bd0 76 69 6c 65 67 65 3b 20 7d 0d 0a 7d 0d 0a 61 6c  vilege; }..}..al
11be0 69 61 73 20 50 52 49 56 49 4c 45 47 45 5f 53 45  ias PRIVILEGE_SE
11bf0 54 2a 20 50 50 52 49 56 49 4c 45 47 45 5f 53 45  T* PPRIVILEGE_SE
11c00 54 3b 0d 0a 0d 0a 73 74 72 75 63 74 20 53 45 43  T;....struct SEC
11c10 55 52 49 54 59 5f 41 54 54 52 49 42 55 54 45 53  URITY_ATTRIBUTES
11c20 20 7b 0d 0a 09 44 57 4f 52 44 20 20 6e 4c 65 6e   {...DWORD  nLen
11c30 67 74 68 3b 0d 0a 09 4c 50 56 4f 49 44 20 6c 70  gth;...LPVOID lp
11c40 53 65 63 75 72 69 74 79 44 65 73 63 72 69 70 74  SecurityDescript
11c50 6f 72 3b 0d 0a 09 42 4f 4f 4c 20 20 20 62 49 6e  or;...BOOL   bIn
11c60 68 65 72 69 74 48 61 6e 64 6c 65 3b 0d 0a 7d 0d  heritHandle;..}.
11c70 0a 61 6c 69 61 73 20 53 45 43 55 52 49 54 59 5f  .alias SECURITY_
11c80 41 54 54 52 49 42 55 54 45 53 2a 20 50 53 45 43  ATTRIBUTES* PSEC
11c90 55 52 49 54 59 5f 41 54 54 52 49 42 55 54 45 53  URITY_ATTRIBUTES
11ca0 2c 20 4c 50 53 45 43 55 52 49 54 59 5f 41 54 54  , LPSECURITY_ATT
11cb0 52 49 42 55 54 45 53 3b 0d 0a 0d 0a 73 74 72 75  RIBUTES;....stru
11cc0 63 74 20 53 45 43 55 52 49 54 59 5f 51 55 41 4c  ct SECURITY_QUAL
11cd0 49 54 59 5f 4f 46 5f 53 45 52 56 49 43 45 20 7b  ITY_OF_SERVICE {
11ce0 0d 0a 09 44 57 4f 52 44 20 20 20 4c 65 6e 67 74  ...DWORD   Lengt
11cf0 68 3b 0d 0a 09 53 45 43 55 52 49 54 59 5f 49 4d  h;...SECURITY_IM
11d00 50 45 52 53 4f 4e 41 54 49 4f 4e 5f 4c 45 56 45  PERSONATION_LEVE
11d10 4c 20 20 20 49 6d 70 65 72 73 6f 6e 61 74 69 6f  L   Impersonatio
11d20 6e 4c 65 76 65 6c 3b 0d 0a 09 53 45 43 55 52 49  nLevel;...SECURI
11d30 54 59 5f 43 4f 4e 54 45 58 54 5f 54 52 41 43 4b  TY_CONTEXT_TRACK
11d40 49 4e 47 5f 4d 4f 44 45 20 43 6f 6e 74 65 78 74  ING_MODE Context
11d50 54 72 61 63 6b 69 6e 67 4d 6f 64 65 3b 0d 0a 09  TrackingMode;...
11d60 42 4f 4f 4c 45 41 4e 20 45 66 66 65 63 74 69 76  BOOLEAN Effectiv
11d70 65 4f 6e 6c 79 3b 0d 0a 7d 0d 0a 61 6c 69 61 73  eOnly;..}..alias
11d80 20 53 45 43 55 52 49 54 59 5f 51 55 41 4c 49 54   SECURITY_QUALIT
11d90 59 5f 4f 46 5f 53 45 52 56 49 43 45 2a 20 50 53  Y_OF_SERVICE* PS
11da0 45 43 55 52 49 54 59 5f 51 55 41 4c 49 54 59 5f  ECURITY_QUALITY_
11db0 4f 46 5f 53 45 52 56 49 43 45 3b 0d 0a 0d 0a 61  OF_SERVICE;....a
11dc0 6c 69 61 73 20 50 56 4f 49 44 20 50 41 43 43 45  lias PVOID PACCE
11dd0 53 53 5f 54 4f 4b 45 4e 3b 0d 0a 0d 0a 73 74 72  SS_TOKEN;....str
11de0 75 63 74 20 53 45 5f 49 4d 50 45 52 53 4f 4e 41  uct SE_IMPERSONA
11df0 54 49 4f 4e 5f 53 54 41 54 45 20 7b 0d 0a 09 50  TION_STATE {...P
11e00 41 43 43 45 53 53 5f 54 4f 4b 45 4e 20 54 6f 6b  ACCESS_TOKEN Tok
11e10 65 6e 3b 0d 0a 09 42 4f 4f 4c 45 41 4e 20 20 20  en;...BOOLEAN   
11e20 20 20 20 20 43 6f 70 79 4f 6e 4f 70 65 6e 3b 0d      CopyOnOpen;.
11e30 0a 09 42 4f 4f 4c 45 41 4e 20 20 20 20 20 20 20  ..BOOLEAN       
11e40 45 66 66 65 63 74 69 76 65 4f 6e 6c 79 3b 0d 0a  EffectiveOnly;..
11e50 09 53 45 43 55 52 49 54 59 5f 49 4d 50 45 52 53  .SECURITY_IMPERS
11e60 4f 4e 41 54 49 4f 4e 5f 4c 45 56 45 4c 20 4c 65  ONATION_LEVEL Le
11e70 76 65 6c 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 53  vel;..}..alias S
11e80 45 5f 49 4d 50 45 52 53 4f 4e 41 54 49 4f 4e 5f  E_IMPERSONATION_
11e90 53 54 41 54 45 2a 20 50 53 45 5f 49 4d 50 45 52  STATE* PSE_IMPER
11ea0 53 4f 4e 41 54 49 4f 4e 5f 53 54 41 54 45 3b 0d  SONATION_STATE;.
11eb0 0a 0d 0a 73 74 72 75 63 74 20 53 49 44 5f 49 44  ...struct SID_ID
11ec0 45 4e 54 49 46 49 45 52 5f 41 55 54 48 4f 52 49  ENTIFIER_AUTHORI
11ed0 54 59 20 7b 0d 0a 09 42 59 54 45 5b 36 5d 20 56  TY {...BYTE[6] V
11ee0 61 6c 75 65 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20  alue;..}..alias 
11ef0 53 49 44 5f 49 44 45 4e 54 49 46 49 45 52 5f 41  SID_IDENTIFIER_A
11f00 55 54 48 4f 52 49 54 59 2a 20 50 53 49 44 5f 49  UTHORITY* PSID_I
11f10 44 45 4e 54 49 46 49 45 52 5f 41 55 54 48 4f 52  DENTIFIER_AUTHOR
11f20 49 54 59 2c 20 4c 50 53 49 44 5f 49 44 45 4e 54  ITY, LPSID_IDENT
11f30 49 46 49 45 52 5f 41 55 54 48 4f 52 49 54 59 3b  IFIER_AUTHORITY;
11f40 0d 0a 0d 0a 61 6c 69 61 73 20 50 56 4f 49 44 20  ....alias PVOID 
11f50 50 53 49 44 3b 0d 0a 0d 0a 73 74 72 75 63 74 20  PSID;....struct 
11f60 53 49 44 20 7b 0d 0a 09 42 59 54 45 20 20 52 65  SID {...BYTE  Re
11f70 76 69 73 69 6f 6e 3b 0d 0a 09 42 59 54 45 20 20  vision;...BYTE  
11f80 53 75 62 41 75 74 68 6f 72 69 74 79 43 6f 75 6e  SubAuthorityCoun
11f90 74 3b 0d 0a 09 53 49 44 5f 49 44 45 4e 54 49 46  t;...SID_IDENTIF
11fa0 49 45 52 5f 41 55 54 48 4f 52 49 54 59 20 49 64  IER_AUTHORITY Id
11fb0 65 6e 74 69 66 69 65 72 41 75 74 68 6f 72 69 74  entifierAuthorit
11fc0 79 3b 0d 0a 09 44 57 4f 52 44 20 5f 53 75 62 41  y;...DWORD _SubA
11fd0 75 74 68 6f 72 69 74 79 3b 0d 0a 0d 0a 09 44 57  uthority;.....DW
11fe0 4f 52 44 2a 20 53 75 62 41 75 74 68 6f 72 69 74  ORD* SubAuthorit
11ff0 79 28 29 20 7b 20 72 65 74 75 72 6e 20 26 5f 53  y() { return &_S
12000 75 62 41 75 74 68 6f 72 69 74 79 3b 20 7d 0d 0a  ubAuthority; }..
12010 7d 0d 0a 61 6c 69 61 73 20 53 49 44 2a 20 50 49  }..alias SID* PI
12020 53 49 44 3b 0d 0a 0d 0a 73 74 72 75 63 74 20 53  SID;....struct S
12030 49 44 5f 41 4e 44 5f 41 54 54 52 49 42 55 54 45  ID_AND_ATTRIBUTE
12040 53 20 7b 0d 0a 09 50 53 49 44 20 20 53 69 64 3b  S {...PSID  Sid;
12050 0d 0a 09 44 57 4f 52 44 20 41 74 74 72 69 62 75  ...DWORD Attribu
12060 74 65 73 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 53  tes;..}..alias S
12070 49 44 5f 41 4e 44 5f 41 54 54 52 49 42 55 54 45  ID_AND_ATTRIBUTE
12080 53 2a 20 50 53 49 44 5f 41 4e 44 5f 41 54 54 52  S* PSID_AND_ATTR
12090 49 42 55 54 45 53 3b 0d 0a 0d 0a 73 74 72 75 63  IBUTES;....struc
120a0 74 20 54 4f 4b 45 4e 5f 53 4f 55 52 43 45 20 7b  t TOKEN_SOURCE {
120b0 0d 0a 09 43 48 41 52 5b 54 4f 4b 45 4e 5f 53 4f  ...CHAR[TOKEN_SO
120c0 55 52 43 45 5f 4c 45 4e 47 54 48 5d 20 53 6f 75  URCE_LENGTH] Sou
120d0 72 63 65 4e 61 6d 65 3b 0d 0a 09 4c 55 49 44 20  rceName;...LUID 
120e0 53 6f 75 72 63 65 49 64 65 6e 74 69 66 69 65 72  SourceIdentifier
120f0 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 54 4f 4b 45  ;..}..alias TOKE
12100 4e 5f 53 4f 55 52 43 45 2a 20 50 54 4f 4b 45 4e  N_SOURCE* PTOKEN
12110 5f 53 4f 55 52 43 45 3b 0d 0a 0d 0a 73 74 72 75  _SOURCE;....stru
12120 63 74 20 54 4f 4b 45 4e 5f 43 4f 4e 54 52 4f 4c  ct TOKEN_CONTROL
12130 20 7b 0d 0a 09 4c 55 49 44 20 20 20 20 20 20 20   {...LUID       
12140 20 20 54 6f 6b 65 6e 49 64 3b 0d 0a 09 4c 55 49    TokenId;...LUI
12150 44 20 20 20 20 20 20 20 20 20 41 75 74 68 65 6e  D         Authen
12160 74 69 63 61 74 69 6f 6e 49 64 3b 0d 0a 09 4c 55  ticationId;...LU
12170 49 44 20 20 20 20 20 20 20 20 20 4d 6f 64 69 66  ID         Modif
12180 69 65 64 49 64 3b 0d 0a 09 54 4f 4b 45 4e 5f 53  iedId;...TOKEN_S
12190 4f 55 52 43 45 20 54 6f 6b 65 6e 53 6f 75 72 63  OURCE TokenSourc
121a0 65 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 54 4f 4b  e;..}..alias TOK
121b0 45 4e 5f 43 4f 4e 54 52 4f 4c 2a 20 50 54 4f 4b  EN_CONTROL* PTOK
121c0 45 4e 5f 43 4f 4e 54 52 4f 4c 3b 0d 0a 0d 0a 73  EN_CONTROL;....s
121d0 74 72 75 63 74 20 54 4f 4b 45 4e 5f 44 45 46 41  truct TOKEN_DEFA
121e0 55 4c 54 5f 44 41 43 4c 20 7b 0d 0a 09 50 41 43  ULT_DACL {...PAC
121f0 4c 20 44 65 66 61 75 6c 74 44 61 63 6c 3b 0d 0a  L DefaultDacl;..
12200 7d 0d 0a 61 6c 69 61 73 20 54 4f 4b 45 4e 5f 44  }..alias TOKEN_D
12210 45 46 41 55 4c 54 5f 44 41 43 4c 2a 20 50 54 4f  EFAULT_DACL* PTO
12220 4b 45 4e 5f 44 45 46 41 55 4c 54 5f 44 41 43 4c  KEN_DEFAULT_DACL
12230 3b 0d 0a 0d 0a 73 74 72 75 63 74 20 54 4f 4b 45  ;....struct TOKE
12240 4e 5f 47 52 4f 55 50 53 20 7b 0d 0a 09 44 57 4f  N_GROUPS {...DWO
12250 52 44 20 47 72 6f 75 70 43 6f 75 6e 74 3b 0d 0a  RD GroupCount;..
12260 09 53 49 44 5f 41 4e 44 5f 41 54 54 52 49 42 55  .SID_AND_ATTRIBU
12270 54 45 53 20 5f 47 72 6f 75 70 73 3b 0d 0a 0d 0a  TES _Groups;....
12280 09 53 49 44 5f 41 4e 44 5f 41 54 54 52 49 42 55  .SID_AND_ATTRIBU
12290 54 45 53 2a 20 47 72 6f 75 70 73 28 29 20 7b 20  TES* Groups() { 
122a0 72 65 74 75 72 6e 20 26 5f 47 72 6f 75 70 73 3b  return &_Groups;
122b0 20 7d 0d 0a 7d 0d 0a 61 6c 69 61 73 20 54 4f 4b   }..}..alias TOK
122c0 45 4e 5f 47 52 4f 55 50 53 2a 20 50 54 4f 4b 45  EN_GROUPS* PTOKE
122d0 4e 5f 47 52 4f 55 50 53 2c 20 4c 50 54 4f 4b 45  N_GROUPS, LPTOKE
122e0 4e 5f 47 52 4f 55 50 53 3b 0d 0a 0d 0a 73 74 72  N_GROUPS;....str
122f0 75 63 74 20 54 4f 4b 45 4e 5f 4f 57 4e 45 52 20  uct TOKEN_OWNER 
12300 7b 0d 0a 09 50 53 49 44 20 4f 77 6e 65 72 3b 0d  {...PSID Owner;.
12310 0a 7d 0d 0a 61 6c 69 61 73 20 54 4f 4b 45 4e 5f  .}..alias TOKEN_
12320 4f 57 4e 45 52 2a 20 50 54 4f 4b 45 4e 5f 4f 57  OWNER* PTOKEN_OW
12330 4e 45 52 3b 0d 0a 0d 0a 73 74 72 75 63 74 20 54  NER;....struct T
12340 4f 4b 45 4e 5f 50 52 49 4d 41 52 59 5f 47 52 4f  OKEN_PRIMARY_GRO
12350 55 50 20 7b 0d 0a 09 50 53 49 44 20 50 72 69 6d  UP {...PSID Prim
12360 61 72 79 47 72 6f 75 70 3b 0d 0a 7d 0d 0a 61 6c  aryGroup;..}..al
12370 69 61 73 20 54 4f 4b 45 4e 5f 50 52 49 4d 41 52  ias TOKEN_PRIMAR
12380 59 5f 47 52 4f 55 50 2a 20 50 54 4f 4b 45 4e 5f  Y_GROUP* PTOKEN_
12390 50 52 49 4d 41 52 59 5f 47 52 4f 55 50 3b 0d 0a  PRIMARY_GROUP;..
123a0 0d 0a 73 74 72 75 63 74 20 54 4f 4b 45 4e 5f 50  ..struct TOKEN_P
123b0 52 49 56 49 4c 45 47 45 53 20 7b 0d 0a 09 44 57  RIVILEGES {...DW
123c0 4f 52 44 20 50 72 69 76 69 6c 65 67 65 43 6f 75  ORD PrivilegeCou
123d0 6e 74 3b 0d 0a 09 4c 55 49 44 5f 41 4e 44 5f 41  nt;...LUID_AND_A
123e0 54 54 52 49 42 55 54 45 53 20 5f 50 72 69 76 69  TTRIBUTES _Privi
123f0 6c 65 67 65 73 3b 0d 0a 0d 0a 09 4c 55 49 44 5f  leges;.....LUID_
12400 41 4e 44 5f 41 54 54 52 49 42 55 54 45 53 2a 20  AND_ATTRIBUTES* 
12410 50 72 69 76 69 6c 65 67 65 73 28 29 20 7b 20 72  Privileges() { r
12420 65 74 75 72 6e 20 26 5f 50 72 69 76 69 6c 65 67  eturn &_Privileg
12430 65 73 3b 20 7d 0d 0a 7d 0d 0a 61 6c 69 61 73 20  es; }..}..alias 
12440 54 4f 4b 45 4e 5f 50 52 49 56 49 4c 45 47 45 53  TOKEN_PRIVILEGES
12450 2a 20 50 54 4f 4b 45 4e 5f 50 52 49 56 49 4c 45  * PTOKEN_PRIVILE
12460 47 45 53 2c 20 4c 50 54 4f 4b 45 4e 5f 50 52 49  GES, LPTOKEN_PRI
12470 56 49 4c 45 47 45 53 3b 0d 0a 0d 0a 65 6e 75 6d  VILEGES;....enum
12480 20 54 4f 4b 45 4e 5f 54 59 50 45 20 7b 0d 0a 09   TOKEN_TYPE {...
12490 54 6f 6b 65 6e 50 72 69 6d 61 72 79 20 3d 20 31  TokenPrimary = 1
124a0 2c 0d 0a 09 54 6f 6b 65 6e 49 6d 70 65 72 73 6f  ,...TokenImperso
124b0 6e 61 74 69 6f 6e 0d 0a 7d 0d 0a 61 6c 69 61 73  nation..}..alias
124c0 20 54 4f 4b 45 4e 5f 54 59 50 45 2a 20 50 54 4f   TOKEN_TYPE* PTO
124d0 4b 45 4e 5f 54 59 50 45 3b 0d 0a 0d 0a 73 74 72  KEN_TYPE;....str
124e0 75 63 74 20 54 4f 4b 45 4e 5f 53 54 41 54 49 53  uct TOKEN_STATIS
124f0 54 49 43 53 20 7b 0d 0a 09 4c 55 49 44 20 20 20  TICS {...LUID   
12500 20 20 20 20 20 20 20 54 6f 6b 65 6e 49 64 3b 0d         TokenId;.
12510 0a 09 4c 55 49 44 20 20 20 20 20 20 20 20 20 20  ..LUID          
12520 41 75 74 68 65 6e 74 69 63 61 74 69 6f 6e 49 64  AuthenticationId
12530 3b 0d 0a 09 4c 41 52 47 45 5f 49 4e 54 45 47 45  ;...LARGE_INTEGE
12540 52 20 45 78 70 69 72 61 74 69 6f 6e 54 69 6d 65  R ExpirationTime
12550 3b 0d 0a 09 54 4f 4b 45 4e 5f 54 59 50 45 20 20  ;...TOKEN_TYPE  
12560 20 20 54 6f 6b 65 6e 54 79 70 65 3b 0d 0a 09 53    TokenType;...S
12570 45 43 55 52 49 54 59 5f 49 4d 50 45 52 53 4f 4e  ECURITY_IMPERSON
12580 41 54 49 4f 4e 5f 4c 45 56 45 4c 20 49 6d 70 65  ATION_LEVEL Impe
12590 72 73 6f 6e 61 74 69 6f 6e 4c 65 76 65 6c 3b 0d  rsonationLevel;.
125a0 0a 09 44 57 4f 52 44 20 20 20 20 20 20 20 20 20  ..DWORD         
125b0 44 79 6e 61 6d 69 63 43 68 61 72 67 65 64 3b 0d  DynamicCharged;.
125c0 0a 09 44 57 4f 52 44 20 20 20 20 20 20 20 20 20  ..DWORD         
125d0 44 79 6e 61 6d 69 63 41 76 61 69 6c 61 62 6c 65  DynamicAvailable
125e0 3b 0d 0a 09 44 57 4f 52 44 20 20 20 20 20 20 20  ;...DWORD       
125f0 20 20 47 72 6f 75 70 43 6f 75 6e 74 3b 0d 0a 09    GroupCount;...
12600 44 57 4f 52 44 20 20 20 20 20 20 20 20 20 50 72  DWORD         Pr
12610 69 76 69 6c 65 67 65 43 6f 75 6e 74 3b 0d 0a 09  ivilegeCount;...
12620 4c 55 49 44 20 20 20 20 20 20 20 20 20 20 4d 6f  LUID          Mo
12630 64 69 66 69 65 64 49 64 3b 0d 0a 7d 0d 0a 61 6c  difiedId;..}..al
12640 69 61 73 20 54 4f 4b 45 4e 5f 53 54 41 54 49 53  ias TOKEN_STATIS
12650 54 49 43 53 2a 20 50 54 4f 4b 45 4e 5f 53 54 41  TICS* PTOKEN_STA
12660 54 49 53 54 49 43 53 3b 0d 0a 0d 0a 73 74 72 75  TISTICS;....stru
12670 63 74 20 54 4f 4b 45 4e 5f 55 53 45 52 20 7b 0d  ct TOKEN_USER {.
12680 0a 09 53 49 44 5f 41 4e 44 5f 41 54 54 52 49 42  ..SID_AND_ATTRIB
12690 55 54 45 53 20 55 73 65 72 3b 0d 0a 7d 0d 0a 61  UTES User;..}..a
126a0 6c 69 61 73 20 54 4f 4b 45 4e 5f 55 53 45 52 2a  lias TOKEN_USER*
126b0 20 50 54 4f 4b 45 4e 5f 55 53 45 52 3b 0d 0a 0d   PTOKEN_USER;...
126c0 0a 61 6c 69 61 73 20 44 57 4f 52 44 20 53 45 43  .alias DWORD SEC
126d0 55 52 49 54 59 5f 49 4e 46 4f 52 4d 41 54 49 4f  URITY_INFORMATIO
126e0 4e 3b 0d 0a 61 6c 69 61 73 20 53 45 43 55 52 49  N;..alias SECURI
126f0 54 59 5f 49 4e 46 4f 52 4d 41 54 49 4f 4e 2a 20  TY_INFORMATION* 
12700 50 53 45 43 55 52 49 54 59 5f 49 4e 46 4f 52 4d  PSECURITY_INFORM
12710 41 54 49 4f 4e 3b 0d 0a 61 6c 69 61 73 20 57 4f  ATION;..alias WO
12720 52 44 20 53 45 43 55 52 49 54 59 5f 44 45 53 43  RD SECURITY_DESC
12730 52 49 50 54 4f 52 5f 43 4f 4e 54 52 4f 4c 3b 0d  RIPTOR_CONTROL;.
12740 0a 61 6c 69 61 73 20 53 45 43 55 52 49 54 59 5f  .alias SECURITY_
12750 44 45 53 43 52 49 50 54 4f 52 5f 43 4f 4e 54 52  DESCRIPTOR_CONTR
12760 4f 4c 2a 20 50 53 45 43 55 52 49 54 59 5f 44 45  OL* PSECURITY_DE
12770 53 43 52 49 50 54 4f 52 5f 43 4f 4e 54 52 4f 4c  SCRIPTOR_CONTROL
12780 3b 0d 0a 0d 0a 73 74 72 75 63 74 20 53 45 43 55  ;....struct SECU
12790 52 49 54 59 5f 44 45 53 43 52 49 50 54 4f 52 20  RITY_DESCRIPTOR 
127a0 7b 0d 0a 09 42 59 54 45 20 52 65 76 69 73 69 6f  {...BYTE Revisio
127b0 6e 3b 0d 0a 09 42 59 54 45 20 53 62 7a 31 3b 0d  n;...BYTE Sbz1;.
127c0 0a 09 53 45 43 55 52 49 54 59 5f 44 45 53 43 52  ..SECURITY_DESCR
127d0 49 50 54 4f 52 5f 43 4f 4e 54 52 4f 4c 20 43 6f  IPTOR_CONTROL Co
127e0 6e 74 72 6f 6c 3b 0d 0a 09 50 53 49 44 20 4f 77  ntrol;...PSID Ow
127f0 6e 65 72 3b 0d 0a 09 50 53 49 44 20 47 72 6f 75  ner;...PSID Grou
12800 70 3b 0d 0a 09 50 41 43 4c 20 53 61 63 6c 3b 0d  p;...PACL Sacl;.
12810 0a 09 50 41 43 4c 20 44 61 63 6c 3b 0d 0a 7d 0d  ..PACL Dacl;..}.
12820 0a 61 6c 69 61 73 20 53 45 43 55 52 49 54 59 5f  .alias SECURITY_
12830 44 45 53 43 52 49 50 54 4f 52 2a 20 50 53 45 43  DESCRIPTOR* PSEC
12840 55 52 49 54 59 5f 44 45 53 43 52 49 50 54 4f 52  URITY_DESCRIPTOR
12850 2c 20 50 49 53 45 43 55 52 49 54 59 5f 44 45 53  , PISECURITY_DES
12860 43 52 49 50 54 4f 52 3b 0d 0a 0d 0a 65 6e 75 6d  CRIPTOR;....enum
12870 20 54 4f 4b 45 4e 5f 49 4e 46 4f 52 4d 41 54 49   TOKEN_INFORMATI
12880 4f 4e 5f 43 4c 41 53 53 20 7b 0d 0a 09 54 6f 6b  ON_CLASS {...Tok
12890 65 6e 55 73 65 72 20 3d 20 31 2c 0d 0a 09 54 6f  enUser = 1,...To
128a0 6b 65 6e 47 72 6f 75 70 73 2c 0d 0a 09 54 6f 6b  kenGroups,...Tok
128b0 65 6e 50 72 69 76 69 6c 65 67 65 73 2c 0d 0a 09  enPrivileges,...
128c0 54 6f 6b 65 6e 4f 77 6e 65 72 2c 0d 0a 09 54 6f  TokenOwner,...To
128d0 6b 65 6e 50 72 69 6d 61 72 79 47 72 6f 75 70 2c  kenPrimaryGroup,
128e0 0d 0a 09 54 6f 6b 65 6e 44 65 66 61 75 6c 74 44  ...TokenDefaultD
128f0 61 63 6c 2c 0d 0a 09 54 6f 6b 65 6e 53 6f 75 72  acl,...TokenSour
12900 63 65 2c 0d 0a 09 54 6f 6b 65 6e 54 79 70 65 2c  ce,...TokenType,
12910 0d 0a 09 54 6f 6b 65 6e 49 6d 70 65 72 73 6f 6e  ...TokenImperson
12920 61 74 69 6f 6e 4c 65 76 65 6c 2c 0d 0a 09 54 6f  ationLevel,...To
12930 6b 65 6e 53 74 61 74 69 73 74 69 63 73 2c 0d 0a  kenStatistics,..
12940 09 54 6f 6b 65 6e 52 65 73 74 72 69 63 74 65 64  .TokenRestricted
12950 53 69 64 73 2c 0d 0a 09 54 6f 6b 65 6e 53 65 73  Sids,...TokenSes
12960 73 69 6f 6e 49 64 2c 0d 0a 09 54 6f 6b 65 6e 47  sionId,...TokenG
12970 72 6f 75 70 73 41 6e 64 50 72 69 76 69 6c 65 67  roupsAndPrivileg
12980 65 73 2c 0d 0a 09 54 6f 6b 65 6e 53 65 73 73 69  es,...TokenSessi
12990 6f 6e 52 65 66 65 72 65 6e 63 65 2c 0d 0a 09 54  onReference,...T
129a0 6f 6b 65 6e 53 61 6e 64 42 6f 78 49 6e 65 72 74  okenSandBoxInert
129b0 2c 0d 0a 09 54 6f 6b 65 6e 41 75 64 69 74 50 6f  ,...TokenAuditPo
129c0 6c 69 63 79 2c 0d 0a 09 54 6f 6b 65 6e 4f 72 69  licy,...TokenOri
129d0 67 69 6e 0d 0a 7d 0d 0a 0d 0a 65 6e 75 6d 20 53  gin..}....enum S
129e0 49 44 5f 4e 41 4d 45 5f 55 53 45 20 7b 0d 0a 09  ID_NAME_USE {...
129f0 53 69 64 54 79 70 65 55 73 65 72 20 3d 20 31 2c  SidTypeUser = 1,
12a00 0d 0a 09 53 69 64 54 79 70 65 47 72 6f 75 70 2c  ...SidTypeGroup,
12a10 0d 0a 09 53 69 64 54 79 70 65 44 6f 6d 61 69 6e  ...SidTypeDomain
12a20 2c 0d 0a 09 53 69 64 54 79 70 65 41 6c 69 61 73  ,...SidTypeAlias
12a30 2c 0d 0a 09 53 69 64 54 79 70 65 57 65 6c 6c 4b  ,...SidTypeWellK
12a40 6e 6f 77 6e 47 72 6f 75 70 2c 0d 0a 09 53 69 64  nownGroup,...Sid
12a50 54 79 70 65 44 65 6c 65 74 65 64 41 63 63 6f 75  TypeDeletedAccou
12a60 6e 74 2c 0d 0a 09 53 69 64 54 79 70 65 49 6e 76  nt,...SidTypeInv
12a70 61 6c 69 64 2c 0d 0a 09 53 69 64 54 79 70 65 55  alid,...SidTypeU
12a80 6e 6b 6e 6f 77 6e 2c 0d 0a 09 53 69 64 54 79 70  nknown,...SidTyp
12a90 65 43 6f 6d 70 75 74 65 72 0d 0a 7d 0d 0a 61 6c  eComputer..}..al
12aa0 69 61 73 20 53 49 44 5f 4e 41 4d 45 5f 55 53 45  ias SID_NAME_USE
12ab0 2a 20 50 53 49 44 5f 4e 41 4d 45 5f 55 53 45 3b  * PSID_NAME_USE;
12ac0 0d 0a 0d 0a 73 74 72 75 63 74 20 51 55 4f 54 41  ....struct QUOTA
12ad0 5f 4c 49 4d 49 54 53 20 7b 0d 0a 09 53 49 5a 45  _LIMITS {...SIZE
12ae0 5f 54 20 50 61 67 65 64 50 6f 6f 6c 4c 69 6d 69  _T PagedPoolLimi
12af0 74 3b 0d 0a 09 53 49 5a 45 5f 54 20 4e 6f 6e 50  t;...SIZE_T NonP
12b00 61 67 65 64 50 6f 6f 6c 4c 69 6d 69 74 3b 0d 0a  agedPoolLimit;..
12b10 09 53 49 5a 45 5f 54 20 4d 69 6e 69 6d 75 6d 57  .SIZE_T MinimumW
12b20 6f 72 6b 69 6e 67 53 65 74 53 69 7a 65 3b 0d 0a  orkingSetSize;..
12b30 09 53 49 5a 45 5f 54 20 4d 61 78 69 6d 75 6d 57  .SIZE_T MaximumW
12b40 6f 72 6b 69 6e 67 53 65 74 53 69 7a 65 3b 0d 0a  orkingSetSize;..
12b50 09 53 49 5a 45 5f 54 20 50 61 67 65 66 69 6c 65  .SIZE_T Pagefile
12b60 4c 69 6d 69 74 3b 0d 0a 09 4c 41 52 47 45 5f 49  Limit;...LARGE_I
12b70 4e 54 45 47 45 52 20 54 69 6d 65 4c 69 6d 69 74  NTEGER TimeLimit
12b80 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 51 55 4f 54  ;..}..alias QUOT
12b90 41 5f 4c 49 4d 49 54 53 2a 20 50 51 55 4f 54 41  A_LIMITS* PQUOTA
12ba0 5f 4c 49 4d 49 54 53 3b 0d 0a 0d 0a 73 74 72 75  _LIMITS;....stru
12bb0 63 74 20 49 4f 5f 43 4f 55 4e 54 45 52 53 20 7b  ct IO_COUNTERS {
12bc0 0d 0a 09 55 4c 4f 4e 47 4c 4f 4e 47 20 52 65 61  ...ULONGLONG Rea
12bd0 64 4f 70 65 72 61 74 69 6f 6e 43 6f 75 6e 74 3b  dOperationCount;
12be0 0d 0a 09 55 4c 4f 4e 47 4c 4f 4e 47 20 57 72 69  ...ULONGLONG Wri
12bf0 74 65 4f 70 65 72 61 74 69 6f 6e 43 6f 75 6e 74  teOperationCount
12c00 3b 0d 0a 09 55 4c 4f 4e 47 4c 4f 4e 47 20 4f 74  ;...ULONGLONG Ot
12c10 68 65 72 4f 70 65 72 61 74 69 6f 6e 43 6f 75 6e  herOperationCoun
12c20 74 3b 0d 0a 09 55 4c 4f 4e 47 4c 4f 4e 47 20 52  t;...ULONGLONG R
12c30 65 61 64 54 72 61 6e 73 66 65 72 43 6f 75 6e 74  eadTransferCount
12c40 3b 0d 0a 09 55 4c 4f 4e 47 4c 4f 4e 47 20 57 72  ;...ULONGLONG Wr
12c50 69 74 65 54 72 61 6e 73 66 65 72 43 6f 75 6e 74  iteTransferCount
12c60 3b 0d 0a 09 55 4c 4f 4e 47 4c 4f 4e 47 20 4f 74  ;...ULONGLONG Ot
12c70 68 65 72 54 72 61 6e 73 66 65 72 43 6f 75 6e 74  herTransferCount
12c80 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 49 4f 5f 43  ;..}..alias IO_C
12c90 4f 55 4e 54 45 52 53 2a 20 50 49 4f 5f 43 4f 55  OUNTERS* PIO_COU
12ca0 4e 54 45 52 53 3b 0d 0a 0d 0a 73 74 72 75 63 74  NTERS;....struct
12cb0 20 46 49 4c 45 5f 4e 4f 54 49 46 59 5f 49 4e 46   FILE_NOTIFY_INF
12cc0 4f 52 4d 41 54 49 4f 4e 20 7b 0d 0a 09 44 57 4f  ORMATION {...DWO
12cd0 52 44 20 4e 65 78 74 45 6e 74 72 79 4f 66 66 73  RD NextEntryOffs
12ce0 65 74 3b 0d 0a 09 44 57 4f 52 44 20 41 63 74 69  et;...DWORD Acti
12cf0 6f 6e 3b 0d 0a 09 44 57 4f 52 44 20 46 69 6c 65  on;...DWORD File
12d00 4e 61 6d 65 4c 65 6e 67 74 68 3b 0d 0a 09 57 43  NameLength;...WC
12d10 48 41 52 20 5f 46 69 6c 65 4e 61 6d 65 3b 0d 0a  HAR _FileName;..
12d20 0d 0a 09 57 43 48 41 52 2a 20 46 69 6c 65 4e 61  ...WCHAR* FileNa
12d30 6d 65 28 29 20 7b 20 72 65 74 75 72 6e 20 26 5f  me() { return &_
12d40 46 69 6c 65 4e 61 6d 65 3b 20 7d 0d 0a 7d 0d 0a  FileName; }..}..
12d50 61 6c 69 61 73 20 46 49 4c 45 5f 4e 4f 54 49 46  alias FILE_NOTIF
12d60 59 5f 49 4e 46 4f 52 4d 41 54 49 4f 4e 2a 20 50  Y_INFORMATION* P
12d70 46 49 4c 45 5f 4e 4f 54 49 46 59 5f 49 4e 46 4f  FILE_NOTIFY_INFO
12d80 52 4d 41 54 49 4f 4e 3b 0d 0a 0d 0a 73 74 72 75  RMATION;....stru
12d90 63 74 20 54 41 50 45 5f 45 52 41 53 45 20 7b 0d  ct TAPE_ERASE {.
12da0 0a 09 44 57 4f 52 44 20 20 20 54 79 70 65 3b 0d  ..DWORD   Type;.
12db0 0a 09 42 4f 4f 4c 45 41 4e 20 49 6d 6d 65 64 69  ..BOOLEAN Immedi
12dc0 61 74 65 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 54  ate;..}..alias T
12dd0 41 50 45 5f 45 52 41 53 45 2a 20 50 54 41 50 45  APE_ERASE* PTAPE
12de0 5f 45 52 41 53 45 3b 0d 0a 0d 0a 73 74 72 75 63  _ERASE;....struc
12df0 74 20 54 41 50 45 5f 47 45 54 5f 44 52 49 56 45  t TAPE_GET_DRIVE
12e00 5f 50 41 52 41 4d 45 54 45 52 53 20 7b 0d 0a 09  _PARAMETERS {...
12e10 42 4f 4f 4c 45 41 4e 20 45 43 43 3b 0d 0a 09 42  BOOLEAN ECC;...B
12e20 4f 4f 4c 45 41 4e 20 43 6f 6d 70 72 65 73 73 69  OOLEAN Compressi
12e30 6f 6e 3b 0d 0a 09 42 4f 4f 4c 45 41 4e 20 44 61  on;...BOOLEAN Da
12e40 74 61 50 61 64 64 69 6e 67 3b 0d 0a 09 42 4f 4f  taPadding;...BOO
12e50 4c 45 41 4e 20 52 65 70 6f 72 74 53 65 74 6d 61  LEAN ReportSetma
12e60 72 6b 73 3b 0d 0a 09 44 57 4f 52 44 20 20 20 44  rks;...DWORD   D
12e70 65 66 61 75 6c 74 42 6c 6f 63 6b 53 69 7a 65 3b  efaultBlockSize;
12e80 0d 0a 09 44 57 4f 52 44 20 20 20 4d 61 78 69 6d  ...DWORD   Maxim
12e90 75 6d 42 6c 6f 63 6b 53 69 7a 65 3b 0d 0a 09 44  umBlockSize;...D
12ea0 57 4f 52 44 20 20 20 4d 69 6e 69 6d 75 6d 42 6c  WORD   MinimumBl
12eb0 6f 63 6b 53 69 7a 65 3b 0d 0a 09 44 57 4f 52 44  ockSize;...DWORD
12ec0 20 20 20 4d 61 78 69 6d 75 6d 50 61 72 74 69 74     MaximumPartit
12ed0 69 6f 6e 43 6f 75 6e 74 3b 0d 0a 09 44 57 4f 52  ionCount;...DWOR
12ee0 44 20 20 20 46 65 61 74 75 72 65 73 4c 6f 77 3b  D   FeaturesLow;
12ef0 0d 0a 09 44 57 4f 52 44 20 20 20 46 65 61 74 75  ...DWORD   Featu
12f00 72 65 73 48 69 67 68 3b 0d 0a 09 44 57 4f 52 44  resHigh;...DWORD
12f10 20 20 20 45 4f 54 57 61 72 6e 69 6e 67 5a 6f 6e     EOTWarningZon
12f20 65 53 69 7a 65 3b 0d 0a 7d 0d 0a 61 6c 69 61 73  eSize;..}..alias
12f30 20 54 41 50 45 5f 47 45 54 5f 44 52 49 56 45 5f   TAPE_GET_DRIVE_
12f40 50 41 52 41 4d 45 54 45 52 53 2a 20 50 54 41 50  PARAMETERS* PTAP
12f50 45 5f 47 45 54 5f 44 52 49 56 45 5f 50 41 52 41  E_GET_DRIVE_PARA
12f60 4d 45 54 45 52 53 3b 0d 0a 0d 0a 73 74 72 75 63  METERS;....struc
12f70 74 20 54 41 50 45 5f 47 45 54 5f 4d 45 44 49 41  t TAPE_GET_MEDIA
12f80 5f 50 41 52 41 4d 45 54 45 52 53 20 7b 0d 0a 09  _PARAMETERS {...
12f90 4c 41 52 47 45 5f 49 4e 54 45 47 45 52 20 43 61  LARGE_INTEGER Ca
12fa0 70 61 63 69 74 79 3b 0d 0a 09 4c 41 52 47 45 5f  pacity;...LARGE_
12fb0 49 4e 54 45 47 45 52 20 52 65 6d 61 69 6e 69 6e  INTEGER Remainin
12fc0 67 3b 0d 0a 09 44 57 4f 52 44 20 20 20 20 20 20  g;...DWORD      
12fd0 20 20 20 42 6c 6f 63 6b 53 69 7a 65 3b 0d 0a 09     BlockSize;...
12fe0 44 57 4f 52 44 20 20 20 20 20 20 20 20 20 50 61  DWORD         Pa
12ff0 72 74 69 74 69 6f 6e 43 6f 75 6e 74 3b 0d 0a 09  rtitionCount;...
13000 42 4f 4f 4c 45 41 4e 20 20 20 20 20 20 20 57 72  BOOLEAN       Wr
13010 69 74 65 50 72 6f 74 65 63 74 65 64 3b 0d 0a 7d  iteProtected;..}
13020 0d 0a 61 6c 69 61 73 20 54 41 50 45 5f 47 45 54  ..alias TAPE_GET
13030 5f 4d 45 44 49 41 5f 50 41 52 41 4d 45 54 45 52  _MEDIA_PARAMETER
13040 53 2a 20 50 54 41 50 45 5f 47 45 54 5f 4d 45 44  S* PTAPE_GET_MED
13050 49 41 5f 50 41 52 41 4d 45 54 45 52 53 3b 0d 0a  IA_PARAMETERS;..
13060 0d 0a 73 74 72 75 63 74 20 54 41 50 45 5f 47 45  ..struct TAPE_GE
13070 54 5f 50 4f 53 49 54 49 4f 4e 20 7b 0d 0a 09 55  T_POSITION {...U
13080 4c 4f 4e 47 20 54 79 70 65 3b 0d 0a 09 55 4c 4f  LONG Type;...ULO
13090 4e 47 20 50 61 72 74 69 74 69 6f 6e 3b 0d 0a 09  NG Partition;...
130a0 55 4c 4f 4e 47 20 4f 66 66 73 65 74 4c 6f 77 3b  ULONG OffsetLow;
130b0 0d 0a 09 55 4c 4f 4e 47 20 4f 66 66 73 65 74 48  ...ULONG OffsetH
130c0 69 67 68 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 54  igh;..}..alias T
130d0 41 50 45 5f 47 45 54 5f 50 4f 53 49 54 49 4f 4e  APE_GET_POSITION
130e0 2a 20 50 54 41 50 45 5f 47 45 54 5f 50 4f 53 49  * PTAPE_GET_POSI
130f0 54 49 4f 4e 3b 0d 0a 0d 0a 73 74 72 75 63 74 20  TION;....struct 
13100 54 41 50 45 5f 50 52 45 50 41 52 45 20 7b 0d 0a  TAPE_PREPARE {..
13110 09 44 57 4f 52 44 20 20 20 4f 70 65 72 61 74 69  .DWORD   Operati
13120 6f 6e 3b 0d 0a 09 42 4f 4f 4c 45 41 4e 20 49 6d  on;...BOOLEAN Im
13130 6d 65 64 69 61 74 65 3b 0d 0a 7d 0d 0a 61 6c 69  mediate;..}..ali
13140 61 73 20 54 41 50 45 5f 50 52 45 50 41 52 45 2a  as TAPE_PREPARE*
13150 20 50 54 41 50 45 5f 50 52 45 50 41 52 45 3b 0d   PTAPE_PREPARE;.
13160 0a 0d 0a 73 74 72 75 63 74 20 54 41 50 45 5f 53  ...struct TAPE_S
13170 45 54 5f 44 52 49 56 45 5f 50 41 52 41 4d 45 54  ET_DRIVE_PARAMET
13180 45 52 53 20 7b 0d 0a 09 42 4f 4f 4c 45 41 4e 20  ERS {...BOOLEAN 
13190 45 43 43 3b 0d 0a 09 42 4f 4f 4c 45 41 4e 20 43  ECC;...BOOLEAN C
131a0 6f 6d 70 72 65 73 73 69 6f 6e 3b 0d 0a 09 42 4f  ompression;...BO
131b0 4f 4c 45 41 4e 20 44 61 74 61 50 61 64 64 69 6e  OLEAN DataPaddin
131c0 67 3b 0d 0a 09 42 4f 4f 4c 45 41 4e 20 52 65 70  g;...BOOLEAN Rep
131d0 6f 72 74 53 65 74 6d 61 72 6b 73 3b 0d 0a 09 55  ortSetmarks;...U
131e0 4c 4f 4e 47 20 20 20 45 4f 54 57 61 72 6e 69 6e  LONG   EOTWarnin
131f0 67 5a 6f 6e 65 53 69 7a 65 3b 0d 0a 7d 0d 0a 61  gZoneSize;..}..a
13200 6c 69 61 73 20 54 41 50 45 5f 53 45 54 5f 44 52  lias TAPE_SET_DR
13210 49 56 45 5f 50 41 52 41 4d 45 54 45 52 53 2a 20  IVE_PARAMETERS* 
13220 50 54 41 50 45 5f 53 45 54 5f 44 52 49 56 45 5f  PTAPE_SET_DRIVE_
13230 50 41 52 41 4d 45 54 45 52 53 3b 0d 0a 0d 0a 73  PARAMETERS;....s
13240 74 72 75 63 74 20 54 41 50 45 5f 53 45 54 5f 4d  truct TAPE_SET_M
13250 45 44 49 41 5f 50 41 52 41 4d 45 54 45 52 53 20  EDIA_PARAMETERS 
13260 7b 0d 0a 09 55 4c 4f 4e 47 20 42 6c 6f 63 6b 53  {...ULONG BlockS
13270 69 7a 65 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 54  ize;..}..alias T
13280 41 50 45 5f 53 45 54 5f 4d 45 44 49 41 5f 50 41  APE_SET_MEDIA_PA
13290 52 41 4d 45 54 45 52 53 2a 20 50 54 41 50 45 5f  RAMETERS* PTAPE_
132a0 53 45 54 5f 4d 45 44 49 41 5f 50 41 52 41 4d 45  SET_MEDIA_PARAME
132b0 54 45 52 53 3b 0d 0a 0d 0a 73 74 72 75 63 74 20  TERS;....struct 
132c0 54 41 50 45 5f 53 45 54 5f 50 4f 53 49 54 49 4f  TAPE_SET_POSITIO
132d0 4e 20 7b 0d 0a 09 44 57 4f 52 44 20 20 20 20 20  N {...DWORD     
132e0 20 20 20 20 4d 65 74 68 6f 64 3b 0d 0a 09 44 57      Method;...DW
132f0 4f 52 44 20 20 20 20 20 20 20 20 20 50 61 72 74  ORD         Part
13300 69 74 69 6f 6e 3b 0d 0a 09 4c 41 52 47 45 5f 49  ition;...LARGE_I
13310 4e 54 45 47 45 52 20 4f 66 66 73 65 74 3b 0d 0a  NTEGER Offset;..
13320 09 42 4f 4f 4c 45 41 4e 20 20 20 20 20 20 20 49  .BOOLEAN       I
13330 6d 6d 65 64 69 61 74 65 3b 0d 0a 7d 0d 0a 61 6c  mmediate;..}..al
13340 69 61 73 20 54 41 50 45 5f 53 45 54 5f 50 4f 53  ias TAPE_SET_POS
13350 49 54 49 4f 4e 2a 20 50 54 41 50 45 5f 53 45 54  ITION* PTAPE_SET
13360 5f 50 4f 53 49 54 49 4f 4e 3b 0d 0a 0d 0a 73 74  _POSITION;....st
13370 72 75 63 74 20 54 41 50 45 5f 57 52 49 54 45 5f  ruct TAPE_WRITE_
13380 4d 41 52 4b 53 20 7b 0d 0a 09 44 57 4f 52 44 20  MARKS {...DWORD 
13390 20 20 54 79 70 65 3b 0d 0a 09 44 57 4f 52 44 20    Type;...DWORD 
133a0 20 20 43 6f 75 6e 74 3b 0d 0a 09 42 4f 4f 4c 45    Count;...BOOLE
133b0 41 4e 20 49 6d 6d 65 64 69 61 74 65 3b 0d 0a 7d  AN Immediate;..}
133c0 0d 0a 61 6c 69 61 73 20 54 41 50 45 5f 57 52 49  ..alias TAPE_WRI
133d0 54 45 5f 4d 41 52 4b 53 2a 20 50 54 41 50 45 5f  TE_MARKS* PTAPE_
133e0 57 52 49 54 45 5f 4d 41 52 4b 53 3b 0d 0a 0d 0a  WRITE_MARKS;....
133f0 73 74 72 75 63 74 20 54 41 50 45 5f 43 52 45 41  struct TAPE_CREA
13400 54 45 5f 50 41 52 54 49 54 49 4f 4e 20 7b 0d 0a  TE_PARTITION {..
13410 09 44 57 4f 52 44 20 4d 65 74 68 6f 64 3b 0d 0a  .DWORD Method;..
13420 09 44 57 4f 52 44 20 43 6f 75 6e 74 3b 0d 0a 09  .DWORD Count;...
13430 44 57 4f 52 44 20 53 69 7a 65 3b 0d 0a 7d 0d 0a  DWORD Size;..}..
13440 61 6c 69 61 73 20 54 41 50 45 5f 43 52 45 41 54  alias TAPE_CREAT
13450 45 5f 50 41 52 54 49 54 49 4f 4e 2a 20 50 54 41  E_PARTITION* PTA
13460 50 45 5f 43 52 45 41 54 45 5f 50 41 52 54 49 54  PE_CREATE_PARTIT
13470 49 4f 4e 3b 0d 0a 0d 0a 73 74 72 75 63 74 20 4d  ION;....struct M
13480 45 4d 4f 52 59 5f 42 41 53 49 43 5f 49 4e 46 4f  EMORY_BASIC_INFO
13490 52 4d 41 54 49 4f 4e 20 7b 0d 0a 09 50 56 4f 49  RMATION {...PVOI
134a0 44 20 42 61 73 65 41 64 64 72 65 73 73 3b 0d 0a  D BaseAddress;..
134b0 09 50 56 4f 49 44 20 41 6c 6c 6f 63 61 74 69 6f  .PVOID Allocatio
134c0 6e 42 61 73 65 3b 0d 0a 09 44 57 4f 52 44 20 41  nBase;...DWORD A
134d0 6c 6c 6f 63 61 74 69 6f 6e 50 72 6f 74 65 63 74  llocationProtect
134e0 3b 0d 0a 09 44 57 4f 52 44 20 52 65 67 69 6f 6e  ;...DWORD Region
134f0 53 69 7a 65 3b 0d 0a 09 44 57 4f 52 44 20 53 74  Size;...DWORD St
13500 61 74 65 3b 0d 0a 09 44 57 4f 52 44 20 50 72 6f  ate;...DWORD Pro
13510 74 65 63 74 3b 0d 0a 09 44 57 4f 52 44 20 54 79  tect;...DWORD Ty
13520 70 65 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 4d 45  pe;..}..alias ME
13530 4d 4f 52 59 5f 42 41 53 49 43 5f 49 4e 46 4f 52  MORY_BASIC_INFOR
13540 4d 41 54 49 4f 4e 2a 20 50 4d 45 4d 4f 52 59 5f  MATION* PMEMORY_
13550 42 41 53 49 43 5f 49 4e 46 4f 52 4d 41 54 49 4f  BASIC_INFORMATIO
13560 4e 3b 0d 0a 0d 0a 73 74 72 75 63 74 20 4d 45 53  N;....struct MES
13570 53 41 47 45 5f 52 45 53 4f 55 52 43 45 5f 45 4e  SAGE_RESOURCE_EN
13580 54 52 59 20 7b 0d 0a 09 57 4f 52 44 20 4c 65 6e  TRY {...WORD Len
13590 67 74 68 3b 0d 0a 09 57 4f 52 44 20 46 6c 61 67  gth;...WORD Flag
135a0 73 3b 0d 0a 09 42 59 54 45 20 5f 54 65 78 74 3b  s;...BYTE _Text;
135b0 0d 0a 0d 0a 09 42 59 54 45 2a 20 54 65 78 74 28  .....BYTE* Text(
135c0 29 20 7b 20 72 65 74 75 72 6e 20 26 5f 54 65 78  ) { return &_Tex
135d0 74 3b 20 7d 0d 0a 7d 0d 0a 61 6c 69 61 73 20 4d  t; }..}..alias M
135e0 45 53 53 41 47 45 5f 52 45 53 4f 55 52 43 45 5f  ESSAGE_RESOURCE_
135f0 45 4e 54 52 59 2a 20 50 4d 45 53 53 41 47 45 5f  ENTRY* PMESSAGE_
13600 52 45 53 4f 55 52 43 45 5f 45 4e 54 52 59 3b 0d  RESOURCE_ENTRY;.
13610 0a 0d 0a 73 74 72 75 63 74 20 4d 45 53 53 41 47  ...struct MESSAG
13620 45 5f 52 45 53 4f 55 52 43 45 5f 42 4c 4f 43 4b  E_RESOURCE_BLOCK
13630 20 7b 0d 0a 09 44 57 4f 52 44 20 4c 6f 77 49 64   {...DWORD LowId
13640 3b 0d 0a 09 44 57 4f 52 44 20 48 69 67 68 49 64  ;...DWORD HighId
13650 3b 0d 0a 09 44 57 4f 52 44 20 4f 66 66 73 65 74  ;...DWORD Offset
13660 54 6f 45 6e 74 72 69 65 73 3b 0d 0a 7d 0d 0a 61  ToEntries;..}..a
13670 6c 69 61 73 20 4d 45 53 53 41 47 45 5f 52 45 53  lias MESSAGE_RES
13680 4f 55 52 43 45 5f 42 4c 4f 43 4b 2a 20 50 4d 45  OURCE_BLOCK* PME
13690 53 53 41 47 45 5f 52 45 53 4f 55 52 43 45 5f 42  SSAGE_RESOURCE_B
136a0 4c 4f 43 4b 3b 0d 0a 0d 0a 73 74 72 75 63 74 20  LOCK;....struct 
136b0 4d 45 53 53 41 47 45 5f 52 45 53 4f 55 52 43 45  MESSAGE_RESOURCE
136c0 5f 44 41 54 41 20 7b 0d 0a 09 44 57 4f 52 44 20  _DATA {...DWORD 
136d0 4e 75 6d 62 65 72 4f 66 42 6c 6f 63 6b 73 3b 0d  NumberOfBlocks;.
136e0 0a 09 4d 45 53 53 41 47 45 5f 52 45 53 4f 55 52  ..MESSAGE_RESOUR
136f0 43 45 5f 42 4c 4f 43 4b 20 5f 42 6c 6f 63 6b 73  CE_BLOCK _Blocks
13700 3b 0d 0a 0d 0a 09 4d 45 53 53 41 47 45 5f 52 45  ;.....MESSAGE_RE
13710 53 4f 55 52 43 45 5f 42 4c 4f 43 4b 2a 20 42 6c  SOURCE_BLOCK* Bl
13720 6f 63 6b 73 28 29 20 7b 20 72 65 74 75 72 6e 20  ocks() { return 
13730 26 5f 42 6c 6f 63 6b 73 3b 20 7d 0d 0a 7d 0d 0a  &_Blocks; }..}..
13740 61 6c 69 61 73 20 4d 45 53 53 41 47 45 5f 52 45  alias MESSAGE_RE
13750 53 4f 55 52 43 45 5f 44 41 54 41 2a 20 50 4d 45  SOURCE_DATA* PME
13760 53 53 41 47 45 5f 52 45 53 4f 55 52 43 45 5f 44  SSAGE_RESOURCE_D
13770 41 54 41 3b 0d 0a 0d 0a 73 74 72 75 63 74 20 4c  ATA;....struct L
13780 49 53 54 5f 45 4e 54 52 59 20 7b 0d 0a 09 4c 49  IST_ENTRY {...LI
13790 53 54 5f 45 4e 54 52 59 2a 20 46 6c 69 6e 6b 3b  ST_ENTRY* Flink;
137a0 0d 0a 09 4c 49 53 54 5f 45 4e 54 52 59 2a 20 42  ...LIST_ENTRY* B
137b0 6c 69 6e 6b 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20  link;..}..alias 
137c0 4c 49 53 54 5f 45 4e 54 52 59 2a 20 50 4c 49 53  LIST_ENTRY* PLIS
137d0 54 5f 45 4e 54 52 59 3b 0d 0a 0d 0a 73 74 72 75  T_ENTRY;....stru
137e0 63 74 20 53 49 4e 47 4c 45 5f 4c 49 53 54 5f 45  ct SINGLE_LIST_E
137f0 4e 54 52 59 20 7b 0d 0a 09 53 49 4e 47 4c 45 5f  NTRY {...SINGLE_
13800 4c 49 53 54 5f 45 4e 54 52 59 2a 20 4e 65 78 74  LIST_ENTRY* Next
13810 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 53 49 4e 47  ;..}..alias SING
13820 4c 45 5f 4c 49 53 54 5f 45 4e 54 52 59 20 53 4c  LE_LIST_ENTRY SL
13830 49 53 54 5f 45 4e 54 52 59 3b 0d 0a 61 6c 69 61  IST_ENTRY;..alia
13840 73 20 53 49 4e 47 4c 45 5f 4c 49 53 54 5f 45 4e  s SINGLE_LIST_EN
13850 54 52 59 2a 20 50 53 49 4e 47 4c 45 5f 4c 49 53  TRY* PSINGLE_LIS
13860 54 5f 45 4e 54 52 59 2c 20 50 53 4c 49 53 54 5f  T_ENTRY, PSLIST_
13870 45 4e 54 52 59 3b 0d 0a 0d 0a 75 6e 69 6f 6e 20  ENTRY;....union 
13880 53 4c 49 53 54 5f 48 45 41 44 45 52 20 7b 0d 0a  SLIST_HEADER {..
13890 09 55 4c 4f 4e 47 4c 4f 4e 47 20 20 20 20 20 20  .ULONGLONG      
138a0 20 41 6c 69 67 6e 6d 65 6e 74 3b 0d 0a 09 73 74   Alignment;...st
138b0 72 75 63 74 20 7b 0d 0a 09 09 53 4c 49 53 54 5f  ruct {....SLIST_
138c0 45 4e 54 52 59 20 4e 65 78 74 3b 0d 0a 09 09 57  ENTRY Next;....W
138d0 4f 52 44 20 20 20 20 20 20 20 20 44 65 70 74 68  ORD        Depth
138e0 3b 0d 0a 09 09 57 4f 52 44 20 20 20 20 20 20 20  ;....WORD       
138f0 20 53 65 71 75 65 6e 63 65 3b 0d 0a 09 7d 0d 0a   Sequence;...}..
13900 7d 0d 0a 61 6c 69 61 73 20 53 4c 49 53 54 5f 48  }..alias SLIST_H
13910 45 41 44 45 52 2a 20 50 53 4c 49 53 54 5f 48 45  EADER* PSLIST_HE
13920 41 44 45 52 3b 0d 0a 0d 0a 73 74 72 75 63 74 20  ADER;....struct 
13930 52 54 4c 5f 43 52 49 54 49 43 41 4c 5f 53 45 43  RTL_CRITICAL_SEC
13940 54 49 4f 4e 5f 44 45 42 55 47 20 7b 0d 0a 09 57  TION_DEBUG {...W
13950 4f 52 44 20 20 20 20 20 20 20 54 79 70 65 3b 0d  ORD       Type;.
13960 0a 09 57 4f 52 44 20 20 20 20 20 20 20 43 72 65  ..WORD       Cre
13970 61 74 6f 72 42 61 63 6b 54 72 61 63 65 49 6e 64  atorBackTraceInd
13980 65 78 3b 0d 0a 09 52 54 4c 5f 43 52 49 54 49 43  ex;...RTL_CRITIC
13990 41 4c 5f 53 45 43 54 49 4f 4e 2a 20 43 72 69 74  AL_SECTION* Crit
139a0 69 63 61 6c 53 65 63 74 69 6f 6e 3b 0d 0a 09 4c  icalSection;...L
139b0 49 53 54 5f 45 4e 54 52 59 20 50 72 6f 63 65 73  IST_ENTRY Proces
139c0 73 4c 6f 63 6b 73 4c 69 73 74 3b 0d 0a 09 44 57  sLocksList;...DW
139d0 4f 52 44 20 20 20 20 20 20 45 6e 74 72 79 43 6f  ORD      EntryCo
139e0 75 6e 74 3b 0d 0a 09 44 57 4f 52 44 20 20 20 20  unt;...DWORD    
139f0 20 20 43 6f 6e 74 65 6e 74 69 6f 6e 43 6f 75 6e    ContentionCoun
13a00 74 3b 0d 0a 09 44 57 4f 52 44 5b 32 5d 20 20 20  t;...DWORD[2]   
13a10 53 70 61 72 65 3b 0d 0a 7d 0d 0a 61 6c 69 61 73  Spare;..}..alias
13a20 20 52 54 4c 5f 43 52 49 54 49 43 41 4c 5f 53 45   RTL_CRITICAL_SE
13a30 43 54 49 4f 4e 5f 44 45 42 55 47 2a 20 50 52 54  CTION_DEBUG* PRT
13a40 4c 5f 43 52 49 54 49 43 41 4c 5f 53 45 43 54 49  L_CRITICAL_SECTI
13a50 4f 4e 5f 44 45 42 55 47 3b 0d 0a 0d 0a 73 74 72  ON_DEBUG;....str
13a60 75 63 74 20 52 54 4c 5f 43 52 49 54 49 43 41 4c  uct RTL_CRITICAL
13a70 5f 53 45 43 54 49 4f 4e 20 7b 0d 0a 09 50 52 54  _SECTION {...PRT
13a80 4c 5f 43 52 49 54 49 43 41 4c 5f 53 45 43 54 49  L_CRITICAL_SECTI
13a90 4f 4e 5f 44 45 42 55 47 20 44 65 62 75 67 49 6e  ON_DEBUG DebugIn
13aa0 66 6f 3b 0d 0a 09 4c 4f 4e 47 20 20 20 4c 6f 63  fo;...LONG   Loc
13ab0 6b 43 6f 75 6e 74 3b 0d 0a 09 4c 4f 4e 47 20 20  kCount;...LONG  
13ac0 20 52 65 63 75 72 73 69 6f 6e 43 6f 75 6e 74 3b   RecursionCount;
13ad0 0d 0a 09 48 41 4e 44 4c 45 20 4f 77 6e 69 6e 67  ...HANDLE Owning
13ae0 54 68 72 65 61 64 3b 0d 0a 09 48 41 4e 44 4c 45  Thread;...HANDLE
13af0 20 4c 6f 63 6b 53 65 6d 61 70 68 6f 72 65 3b 0d   LockSemaphore;.
13b00 0a 09 44 57 4f 52 44 20 20 52 65 73 65 72 76 65  ..DWORD  Reserve
13b10 64 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 52 54 4c  d;..}..alias RTL
13b20 5f 43 52 49 54 49 43 41 4c 5f 53 45 43 54 49 4f  _CRITICAL_SECTIO
13b30 4e 2a 20 50 52 54 4c 5f 43 52 49 54 49 43 41 4c  N* PRTL_CRITICAL
13b40 5f 53 45 43 54 49 4f 4e 3b 0d 0a 0d 0a 73 74 72  _SECTION;....str
13b50 75 63 74 20 45 56 45 4e 54 4c 4f 47 52 45 43 4f  uct EVENTLOGRECO
13b60 52 44 20 7b 0d 0a 09 44 57 4f 52 44 20 4c 65 6e  RD {...DWORD Len
13b70 67 74 68 3b 0d 0a 09 44 57 4f 52 44 20 52 65 73  gth;...DWORD Res
13b80 65 72 76 65 64 3b 0d 0a 09 44 57 4f 52 44 20 52  erved;...DWORD R
13b90 65 63 6f 72 64 4e 75 6d 62 65 72 3b 0d 0a 09 44  ecordNumber;...D
13ba0 57 4f 52 44 20 54 69 6d 65 47 65 6e 65 72 61 74  WORD TimeGenerat
13bb0 65 64 3b 0d 0a 09 44 57 4f 52 44 20 54 69 6d 65  ed;...DWORD Time
13bc0 57 72 69 74 74 65 6e 3b 0d 0a 09 44 57 4f 52 44  Written;...DWORD
13bd0 20 45 76 65 6e 74 49 44 3b 0d 0a 09 57 4f 52 44   EventID;...WORD
13be0 20 20 45 76 65 6e 74 54 79 70 65 3b 0d 0a 09 57    EventType;...W
13bf0 4f 52 44 20 20 4e 75 6d 53 74 72 69 6e 67 73 3b  ORD  NumStrings;
13c00 0d 0a 09 57 4f 52 44 20 20 45 76 65 6e 74 43 61  ...WORD  EventCa
13c10 74 65 67 6f 72 79 3b 0d 0a 09 57 4f 52 44 20 20  tegory;...WORD  
13c20 52 65 73 65 72 76 65 64 46 6c 61 67 73 3b 0d 0a  ReservedFlags;..
13c30 09 44 57 4f 52 44 20 43 6c 6f 73 69 6e 67 52 65  .DWORD ClosingRe
13c40 63 6f 72 64 4e 75 6d 62 65 72 3b 0d 0a 09 44 57  cordNumber;...DW
13c50 4f 52 44 20 53 74 72 69 6e 67 4f 66 66 73 65 74  ORD StringOffset
13c60 3b 0d 0a 09 44 57 4f 52 44 20 55 73 65 72 53 69  ;...DWORD UserSi
13c70 64 4c 65 6e 67 74 68 3b 0d 0a 09 44 57 4f 52 44  dLength;...DWORD
13c80 20 55 73 65 72 53 69 64 4f 66 66 73 65 74 3b 0d   UserSidOffset;.
13c90 0a 09 44 57 4f 52 44 20 44 61 74 61 4c 65 6e 67  ..DWORD DataLeng
13ca0 74 68 3b 0d 0a 09 44 57 4f 52 44 20 44 61 74 61  th;...DWORD Data
13cb0 4f 66 66 73 65 74 3b 0d 0a 7d 0d 0a 61 6c 69 61  Offset;..}..alia
13cc0 73 20 45 56 45 4e 54 4c 4f 47 52 45 43 4f 52 44  s EVENTLOGRECORD
13cd0 2a 20 50 45 56 45 4e 54 4c 4f 47 52 45 43 4f 52  * PEVENTLOGRECOR
13ce0 44 3b 0d 0a 0d 0a 73 74 72 75 63 74 20 4f 53 56  D;....struct OSV
13cf0 45 52 53 49 4f 4e 49 4e 46 4f 41 20 7b 0d 0a 09  ERSIONINFOA {...
13d00 44 57 4f 52 44 20 20 20 20 20 64 77 4f 53 56 65  DWORD     dwOSVe
13d10 72 73 69 6f 6e 49 6e 66 6f 53 69 7a 65 3b 0d 0a  rsionInfoSize;..
13d20 09 44 57 4f 52 44 20 20 20 20 20 64 77 4d 61 6a  .DWORD     dwMaj
13d30 6f 72 56 65 72 73 69 6f 6e 3b 0d 0a 09 44 57 4f  orVersion;...DWO
13d40 52 44 20 20 20 20 20 64 77 4d 69 6e 6f 72 56 65  RD     dwMinorVe
13d50 72 73 69 6f 6e 3b 0d 0a 09 44 57 4f 52 44 20 20  rsion;...DWORD  
13d60 20 20 20 64 77 42 75 69 6c 64 4e 75 6d 62 65 72     dwBuildNumber
13d70 3b 0d 0a 09 44 57 4f 52 44 20 20 20 20 20 64 77  ;...DWORD     dw
13d80 50 6c 61 74 66 6f 72 6d 49 64 3b 0d 0a 09 43 48  PlatformId;...CH
13d90 41 52 5b 31 32 38 5d 20 73 7a 43 53 44 56 65 72  AR[128] szCSDVer
13da0 73 69 6f 6e 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20  sion;..}..alias 
13db0 4f 53 56 45 52 53 49 4f 4e 49 4e 46 4f 41 2a 20  OSVERSIONINFOA* 
13dc0 50 4f 53 56 45 52 53 49 4f 4e 49 4e 46 4f 41 2c  POSVERSIONINFOA,
13dd0 20 4c 50 4f 53 56 45 52 53 49 4f 4e 49 4e 46 4f   LPOSVERSIONINFO
13de0 41 3b 0d 0a 0d 0a 73 74 72 75 63 74 20 4f 53 56  A;....struct OSV
13df0 45 52 53 49 4f 4e 49 4e 46 4f 57 20 7b 0d 0a 09  ERSIONINFOW {...
13e00 44 57 4f 52 44 20 20 20 20 20 20 64 77 4f 53 56  DWORD      dwOSV
13e10 65 72 73 69 6f 6e 49 6e 66 6f 53 69 7a 65 3b 0d  ersionInfoSize;.
13e20 0a 09 44 57 4f 52 44 20 20 20 20 20 20 64 77 4d  ..DWORD      dwM
13e30 61 6a 6f 72 56 65 72 73 69 6f 6e 3b 0d 0a 09 44  ajorVersion;...D
13e40 57 4f 52 44 20 20 20 20 20 20 64 77 4d 69 6e 6f  WORD      dwMino
13e50 72 56 65 72 73 69 6f 6e 3b 0d 0a 09 44 57 4f 52  rVersion;...DWOR
13e60 44 20 20 20 20 20 20 64 77 42 75 69 6c 64 4e 75  D      dwBuildNu
13e70 6d 62 65 72 3b 0d 0a 09 44 57 4f 52 44 20 20 20  mber;...DWORD   
13e80 20 20 20 64 77 50 6c 61 74 66 6f 72 6d 49 64 3b     dwPlatformId;
13e90 0d 0a 09 57 43 48 41 52 5b 31 32 38 5d 20 73 7a  ...WCHAR[128] sz
13ea0 43 53 44 56 65 72 73 69 6f 6e 3b 0d 0a 7d 0d 0a  CSDVersion;..}..
13eb0 61 6c 69 61 73 20 4f 53 56 45 52 53 49 4f 4e 49  alias OSVERSIONI
13ec0 4e 46 4f 57 2a 20 50 4f 53 56 45 52 53 49 4f 4e  NFOW* POSVERSION
13ed0 49 4e 46 4f 57 2c 20 4c 50 4f 53 56 45 52 53 49  INFOW, LPOSVERSI
13ee0 4f 4e 49 4e 46 4f 57 3b 0d 0a 0d 0a 73 74 72 75  ONINFOW;....stru
13ef0 63 74 20 4f 53 56 45 52 53 49 4f 4e 49 4e 46 4f  ct OSVERSIONINFO
13f00 45 58 41 20 7b 0d 0a 09 44 57 4f 52 44 20 20 20  EXA {...DWORD   
13f10 20 20 64 77 4f 53 56 65 72 73 69 6f 6e 49 6e 66    dwOSVersionInf
13f20 6f 53 69 7a 65 3b 0d 0a 09 44 57 4f 52 44 20 20  oSize;...DWORD  
13f30 20 20 20 64 77 4d 61 6a 6f 72 56 65 72 73 69 6f     dwMajorVersio
13f40 6e 3b 0d 0a 09 44 57 4f 52 44 20 20 20 20 20 64  n;...DWORD     d
13f50 77 4d 69 6e 6f 72 56 65 72 73 69 6f 6e 3b 0d 0a  wMinorVersion;..
13f60 09 44 57 4f 52 44 20 20 20 20 20 64 77 42 75 69  .DWORD     dwBui
13f70 6c 64 4e 75 6d 62 65 72 3b 0d 0a 09 44 57 4f 52  ldNumber;...DWOR
13f80 44 20 20 20 20 20 64 77 50 6c 61 74 66 6f 72 6d  D     dwPlatform
13f90 49 64 3b 0d 0a 09 43 48 41 52 5b 31 32 38 5d 20  Id;...CHAR[128] 
13fa0 73 7a 43 53 44 56 65 72 73 69 6f 6e 3b 0d 0a 09  szCSDVersion;...
13fb0 57 4f 52 44 20 20 20 20 20 20 77 53 65 72 76 69  WORD      wServi
13fc0 63 65 50 61 63 6b 4d 61 6a 6f 72 3b 0d 0a 09 57  cePackMajor;...W
13fd0 4f 52 44 20 20 20 20 20 20 77 53 65 72 76 69 63  ORD      wServic
13fe0 65 50 61 63 6b 4d 69 6e 6f 72 3b 0d 0a 09 57 4f  ePackMinor;...WO
13ff0 52 44 20 20 20 20 20 20 77 53 75 69 74 65 4d 61  RD      wSuiteMa
14000 73 6b 3b 0d 0a 09 42 59 54 45 20 20 20 20 20 20  sk;...BYTE      
14010 77 50 72 6f 64 75 63 74 54 79 70 65 3b 0d 0a 09  wProductType;...
14020 42 59 54 45 20 20 20 20 20 20 77 52 65 73 65 72  BYTE      wReser
14030 76 65 64 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 4f  ved;..}..alias O
14040 53 56 45 52 53 49 4f 4e 49 4e 46 4f 45 58 41 2a  SVERSIONINFOEXA*
14050 20 50 4f 53 56 45 52 53 49 4f 4e 49 4e 46 4f 45   POSVERSIONINFOE
14060 58 41 2c 20 4c 50 4f 53 56 45 52 53 49 4f 4e 49  XA, LPOSVERSIONI
14070 4e 46 4f 45 58 41 3b 0d 0a 0d 0a 73 74 72 75 63  NFOEXA;....struc
14080 74 20 4f 53 56 45 52 53 49 4f 4e 49 4e 46 4f 45  t OSVERSIONINFOE
14090 58 57 20 7b 0d 0a 09 44 57 4f 52 44 20 20 20 20  XW {...DWORD    
140a0 20 20 64 77 4f 53 56 65 72 73 69 6f 6e 49 6e 66    dwOSVersionInf
140b0 6f 53 69 7a 65 3b 0d 0a 09 44 57 4f 52 44 20 20  oSize;...DWORD  
140c0 20 20 20 20 64 77 4d 61 6a 6f 72 56 65 72 73 69      dwMajorVersi
140d0 6f 6e 3b 0d 0a 09 44 57 4f 52 44 20 20 20 20 20  on;...DWORD     
140e0 20 64 77 4d 69 6e 6f 72 56 65 72 73 69 6f 6e 3b   dwMinorVersion;
140f0 0d 0a 09 44 57 4f 52 44 20 20 20 20 20 20 64 77  ...DWORD      dw
14100 42 75 69 6c 64 4e 75 6d 62 65 72 3b 0d 0a 09 44  BuildNumber;...D
14110 57 4f 52 44 20 20 20 20 20 20 64 77 50 6c 61 74  WORD      dwPlat
14120 66 6f 72 6d 49 64 3b 0d 0a 09 57 43 48 41 52 5b  formId;...WCHAR[
14130 31 32 38 5d 20 73 7a 43 53 44 56 65 72 73 69 6f  128] szCSDVersio
14140 6e 3b 0d 0a 09 57 4f 52 44 20 20 20 20 20 20 20  n;...WORD       
14150 77 53 65 72 76 69 63 65 50 61 63 6b 4d 61 6a 6f  wServicePackMajo
14160 72 3b 0d 0a 09 57 4f 52 44 20 20 20 20 20 20 20  r;...WORD       
14170 77 53 65 72 76 69 63 65 50 61 63 6b 4d 69 6e 6f  wServicePackMino
14180 72 3b 0d 0a 09 57 4f 52 44 20 20 20 20 20 20 20  r;...WORD       
14190 77 53 75 69 74 65 4d 61 73 6b 3b 0d 0a 09 42 59  wSuiteMask;...BY
141a0 54 45 20 20 20 20 20 20 20 77 50 72 6f 64 75 63  TE       wProduc
141b0 74 54 79 70 65 3b 0d 0a 09 42 59 54 45 20 20 20  tType;...BYTE   
141c0 20 20 20 20 77 52 65 73 65 72 76 65 64 3b 0d 0a      wReserved;..
141d0 7d 0d 0a 61 6c 69 61 73 20 4f 53 56 45 52 53 49  }..alias OSVERSI
141e0 4f 4e 49 4e 46 4f 45 58 57 2a 20 50 4f 53 56 45  ONINFOEXW* POSVE
141f0 52 53 49 4f 4e 49 4e 46 4f 45 58 57 2c 20 4c 50  RSIONINFOEXW, LP
14200 4f 53 56 45 52 53 49 4f 4e 49 4e 46 4f 45 58 57  OSVERSIONINFOEXW
14210 3b 0d 0a 0d 0a 61 6c 69 67 6e 28 32 29 20 73 74  ;....align(2) st
14220 72 75 63 74 20 49 4d 41 47 45 5f 56 58 44 5f 48  ruct IMAGE_VXD_H
14230 45 41 44 45 52 20 7b 0d 0a 09 57 4f 52 44 20 20  EADER {...WORD  
14240 20 20 20 65 33 32 5f 6d 61 67 69 63 3b 0d 0a 09     e32_magic;...
14250 42 59 54 45 20 20 20 20 20 65 33 32 5f 62 6f 72  BYTE     e32_bor
14260 64 65 72 3b 0d 0a 09 42 59 54 45 20 20 20 20 20  der;...BYTE     
14270 65 33 32 5f 77 6f 72 64 65 72 3b 0d 0a 09 44 57  e32_worder;...DW
14280 4f 52 44 20 20 20 20 65 33 32 5f 6c 65 76 65 6c  ORD    e32_level
14290 3b 0d 0a 09 57 4f 52 44 20 20 20 20 20 65 33 32  ;...WORD     e32
142a0 5f 63 70 75 3b 0d 0a 09 57 4f 52 44 20 20 20 20  _cpu;...WORD    
142b0 20 65 33 32 5f 6f 73 3b 0d 0a 09 44 57 4f 52 44   e32_os;...DWORD
142c0 20 20 20 20 65 33 32 5f 76 65 72 3b 0d 0a 09 44      e32_ver;...D
142d0 57 4f 52 44 20 20 20 20 65 33 32 5f 6d 66 6c 61  WORD    e32_mfla
142e0 67 73 3b 0d 0a 09 44 57 4f 52 44 20 20 20 20 65  gs;...DWORD    e
142f0 33 32 5f 6d 70 61 67 65 73 3b 0d 0a 09 44 57 4f  32_mpages;...DWO
14300 52 44 20 20 20 20 65 33 32 5f 73 74 61 72 74 6f  RD    e32_starto
14310 62 6a 3b 0d 0a 09 44 57 4f 52 44 20 20 20 20 65  bj;...DWORD    e
14320 33 32 5f 65 69 70 3b 0d 0a 09 44 57 4f 52 44 20  32_eip;...DWORD 
14330 20 20 20 65 33 32 5f 73 74 61 63 6b 6f 62 6a 3b     e32_stackobj;
14340 0d 0a 09 44 57 4f 52 44 20 20 20 20 65 33 32 5f  ...DWORD    e32_
14350 65 73 70 3b 0d 0a 09 44 57 4f 52 44 20 20 20 20  esp;...DWORD    
14360 65 33 32 5f 70 61 67 65 73 69 7a 65 3b 0d 0a 09  e32_pagesize;...
14370 44 57 4f 52 44 20 20 20 20 65 33 32 5f 6c 61 73  DWORD    e32_las
14380 74 70 61 67 65 73 69 7a 65 3b 0d 0a 09 44 57 4f  tpagesize;...DWO
14390 52 44 20 20 20 20 65 33 32 5f 66 69 78 75 70 73  RD    e32_fixups
143a0 69 7a 65 3b 0d 0a 09 44 57 4f 52 44 20 20 20 20  ize;...DWORD    
143b0 65 33 32 5f 66 69 78 75 70 73 75 6d 3b 0d 0a 09  e32_fixupsum;...
143c0 44 57 4f 52 44 20 20 20 20 65 33 32 5f 6c 64 72  DWORD    e32_ldr
143d0 73 69 7a 65 3b 0d 0a 09 44 57 4f 52 44 20 20 20  size;...DWORD   
143e0 20 65 33 32 5f 6c 64 72 73 75 6d 3b 0d 0a 09 44   e32_ldrsum;...D
143f0 57 4f 52 44 20 20 20 20 65 33 32 5f 6f 62 6a 74  WORD    e32_objt
14400 61 62 3b 0d 0a 09 44 57 4f 52 44 20 20 20 20 65  ab;...DWORD    e
14410 33 32 5f 6f 62 6a 63 6e 74 3b 0d 0a 09 44 57 4f  32_objcnt;...DWO
14420 52 44 20 20 20 20 65 33 32 5f 6f 62 6a 6d 61 70  RD    e32_objmap
14430 3b 0d 0a 09 44 57 4f 52 44 20 20 20 20 65 33 32  ;...DWORD    e32
14440 5f 69 74 65 72 6d 61 70 3b 0d 0a 09 44 57 4f 52  _itermap;...DWOR
14450 44 20 20 20 20 65 33 32 5f 72 73 72 63 74 61 62  D    e32_rsrctab
14460 3b 0d 0a 09 44 57 4f 52 44 20 20 20 20 65 33 32  ;...DWORD    e32
14470 5f 72 73 72 63 63 6e 74 3b 0d 0a 09 44 57 4f 52  _rsrccnt;...DWOR
14480 44 20 20 20 20 65 33 32 5f 72 65 73 74 61 62 3b  D    e32_restab;
14490 0d 0a 09 44 57 4f 52 44 20 20 20 20 65 33 32 5f  ...DWORD    e32_
144a0 65 6e 74 74 61 62 3b 0d 0a 09 44 57 4f 52 44 20  enttab;...DWORD 
144b0 20 20 20 65 33 32 5f 64 69 72 74 61 62 3b 0d 0a     e32_dirtab;..
144c0 09 44 57 4f 52 44 20 20 20 20 65 33 32 5f 64 69  .DWORD    e32_di
144d0 72 63 6e 74 3b 0d 0a 09 44 57 4f 52 44 20 20 20  rcnt;...DWORD   
144e0 20 65 33 32 5f 66 70 61 67 65 74 61 62 3b 0d 0a   e32_fpagetab;..
144f0 09 44 57 4f 52 44 20 20 20 20 65 33 32 5f 66 72  .DWORD    e32_fr
14500 65 63 74 61 62 3b 0d 0a 09 44 57 4f 52 44 20 20  ectab;...DWORD  
14510 20 20 65 33 32 5f 69 6d 70 6d 6f 64 3b 0d 0a 09    e32_impmod;...
14520 44 57 4f 52 44 20 20 20 20 65 33 32 5f 69 6d 70  DWORD    e32_imp
14530 6d 6f 64 63 6e 74 3b 0d 0a 09 44 57 4f 52 44 20  modcnt;...DWORD 
14540 20 20 20 65 33 32 5f 69 6d 70 70 72 6f 63 3b 0d     e32_impproc;.
14550 0a 09 44 57 4f 52 44 20 20 20 20 65 33 32 5f 70  ..DWORD    e32_p
14560 61 67 65 73 75 6d 3b 0d 0a 09 44 57 4f 52 44 20  agesum;...DWORD 
14570 20 20 20 65 33 32 5f 64 61 74 61 70 61 67 65 3b     e32_datapage;
14580 0d 0a 09 44 57 4f 52 44 20 20 20 20 65 33 32 5f  ...DWORD    e32_
14590 70 72 65 6c 6f 61 64 3b 0d 0a 09 44 57 4f 52 44  preload;...DWORD
145a0 20 20 20 20 65 33 32 5f 6e 72 65 73 74 61 62 3b      e32_nrestab;
145b0 0d 0a 09 44 57 4f 52 44 20 20 20 20 65 33 32 5f  ...DWORD    e32_
145c0 63 62 6e 72 65 73 74 61 62 3b 0d 0a 09 44 57 4f  cbnrestab;...DWO
145d0 52 44 20 20 20 20 65 33 32 5f 6e 72 65 73 73 75  RD    e32_nressu
145e0 6d 3b 0d 0a 09 44 57 4f 52 44 20 20 20 20 65 33  m;...DWORD    e3
145f0 32 5f 61 75 74 6f 64 61 74 61 3b 0d 0a 09 44 57  2_autodata;...DW
14600 4f 52 44 20 20 20 20 65 33 32 5f 64 65 62 75 67  ORD    e32_debug
14610 69 6e 66 6f 3b 0d 0a 09 44 57 4f 52 44 20 20 20  info;...DWORD   
14620 20 65 33 32 5f 64 65 62 75 67 6c 65 6e 3b 0d 0a   e32_debuglen;..
14630 09 44 57 4f 52 44 20 20 20 20 65 33 32 5f 69 6e  .DWORD    e32_in
14640 73 74 70 72 65 6c 6f 61 64 3b 0d 0a 09 44 57 4f  stpreload;...DWO
14650 52 44 20 20 20 20 65 33 32 5f 69 6e 73 74 64 65  RD    e32_instde
14660 6d 61 6e 64 3b 0d 0a 09 44 57 4f 52 44 20 20 20  mand;...DWORD   
14670 20 65 33 32 5f 68 65 61 70 73 69 7a 65 3b 0d 0a   e32_heapsize;..
14680 09 42 59 54 45 5b 31 32 5d 20 65 33 32 5f 72 65  .BYTE[12] e32_re
14690 73 33 3b 0d 0a 09 44 57 4f 52 44 20 20 20 20 65  s3;...DWORD    e
146a0 33 32 5f 77 69 6e 72 65 73 6f 66 66 3b 0d 0a 09  32_winresoff;...
146b0 44 57 4f 52 44 20 20 20 20 65 33 32 5f 77 69 6e  DWORD    e32_win
146c0 72 65 73 6c 65 6e 3b 0d 0a 09 57 4f 52 44 20 20  reslen;...WORD  
146d0 20 20 20 65 33 32 5f 64 65 76 69 64 3b 0d 0a 09     e32_devid;...
146e0 57 4f 52 44 20 20 20 20 20 65 33 32 5f 64 64 6b  WORD     e32_ddk
146f0 76 65 72 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 49  ver;..}..alias I
14700 4d 41 47 45 5f 56 58 44 5f 48 45 41 44 45 52 2a  MAGE_VXD_HEADER*
14710 20 50 49 4d 41 47 45 5f 56 58 44 5f 48 45 41 44   PIMAGE_VXD_HEAD
14720 45 52 3b 0d 0a 0d 0a 61 6c 69 67 6e 28 34 29 3a  ER;....align(4):
14730 0d 0a 73 74 72 75 63 74 20 49 4d 41 47 45 5f 46  ..struct IMAGE_F
14740 49 4c 45 5f 48 45 41 44 45 52 20 7b 0d 0a 09 57  ILE_HEADER {...W
14750 4f 52 44 20 20 4d 61 63 68 69 6e 65 3b 0d 0a 09  ORD  Machine;...
14760 57 4f 52 44 20 20 4e 75 6d 62 65 72 4f 66 53 65  WORD  NumberOfSe
14770 63 74 69 6f 6e 73 3b 0d 0a 09 44 57 4f 52 44 20  ctions;...DWORD 
14780 54 69 6d 65 44 61 74 65 53 74 61 6d 70 3b 0d 0a  TimeDateStamp;..
14790 09 44 57 4f 52 44 20 50 6f 69 6e 74 65 72 54 6f  .DWORD PointerTo
147a0 53 79 6d 62 6f 6c 54 61 62 6c 65 3b 0d 0a 09 44  SymbolTable;...D
147b0 57 4f 52 44 20 4e 75 6d 62 65 72 4f 66 53 79 6d  WORD NumberOfSym
147c0 62 6f 6c 73 3b 0d 0a 09 57 4f 52 44 20 20 53 69  bols;...WORD  Si
147d0 7a 65 4f 66 4f 70 74 69 6f 6e 61 6c 48 65 61 64  zeOfOptionalHead
147e0 65 72 3b 0d 0a 09 57 4f 52 44 20 20 43 68 61 72  er;...WORD  Char
147f0 61 63 74 65 72 69 73 74 69 63 73 3b 0d 0a 7d 0d  acteristics;..}.
14800 0a 61 6c 69 61 73 20 49 4d 41 47 45 5f 46 49 4c  .alias IMAGE_FIL
14810 45 5f 48 45 41 44 45 52 2a 20 50 49 4d 41 47 45  E_HEADER* PIMAGE
14820 5f 46 49 4c 45 5f 48 45 41 44 45 52 3b 0d 0a 2f  _FILE_HEADER;../
14830 2f 20 63 6f 6e 73 74 20 49 4d 41 47 45 5f 53 49  / const IMAGE_SI
14840 5a 45 4f 46 5f 46 49 4c 45 5f 48 45 41 44 45 52  ZEOF_FILE_HEADER
14850 20 3d 20 49 4d 41 47 45 5f 46 49 4c 45 5f 48 45   = IMAGE_FILE_HE
14860 41 44 45 52 2e 73 69 7a 65 6f 66 3b 0d 0a 0d 0a  ADER.sizeof;....
14870 73 74 72 75 63 74 20 49 4d 41 47 45 5f 44 41 54  struct IMAGE_DAT
14880 41 5f 44 49 52 45 43 54 4f 52 59 20 7b 0d 0a 09  A_DIRECTORY {...
14890 44 57 4f 52 44 20 56 69 72 74 75 61 6c 41 64 64  DWORD VirtualAdd
148a0 72 65 73 73 3b 0d 0a 09 44 57 4f 52 44 20 53 69  ress;...DWORD Si
148b0 7a 65 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 49 4d  ze;..}..alias IM
148c0 41 47 45 5f 44 41 54 41 5f 44 49 52 45 43 54 4f  AGE_DATA_DIRECTO
148d0 52 59 2a 20 50 49 4d 41 47 45 5f 44 41 54 41 5f  RY* PIMAGE_DATA_
148e0 44 49 52 45 43 54 4f 52 59 3b 0d 0a 0d 0a 73 74  DIRECTORY;....st
148f0 72 75 63 74 20 49 4d 41 47 45 5f 4f 50 54 49 4f  ruct IMAGE_OPTIO
14900 4e 41 4c 5f 48 45 41 44 45 52 33 32 20 7b 0d 0a  NAL_HEADER32 {..
14910 09 57 4f 52 44 20 20 4d 61 67 69 63 3b 0d 0a 09  .WORD  Magic;...
14920 42 59 54 45 20 20 4d 61 6a 6f 72 4c 69 6e 6b 65  BYTE  MajorLinke
14930 72 56 65 72 73 69 6f 6e 3b 0d 0a 09 42 59 54 45  rVersion;...BYTE
14940 20 20 4d 69 6e 6f 72 4c 69 6e 6b 65 72 56 65 72    MinorLinkerVer
14950 73 69 6f 6e 3b 0d 0a 09 44 57 4f 52 44 20 53 69  sion;...DWORD Si
14960 7a 65 4f 66 43 6f 64 65 3b 0d 0a 09 44 57 4f 52  zeOfCode;...DWOR
14970 44 20 53 69 7a 65 4f 66 49 6e 69 74 69 61 6c 69  D SizeOfInitiali
14980 7a 65 64 44 61 74 61 3b 0d 0a 09 44 57 4f 52 44  zedData;...DWORD
14990 20 53 69 7a 65 4f 66 55 6e 69 6e 69 74 69 61 6c   SizeOfUninitial
149a0 69 7a 65 64 44 61 74 61 3b 0d 0a 09 44 57 4f 52  izedData;...DWOR
149b0 44 20 41 64 64 72 65 73 73 4f 66 45 6e 74 72 79  D AddressOfEntry
149c0 50 6f 69 6e 74 3b 0d 0a 09 44 57 4f 52 44 20 42  Point;...DWORD B
149d0 61 73 65 4f 66 43 6f 64 65 3b 0d 0a 09 44 57 4f  aseOfCode;...DWO
149e0 52 44 20 42 61 73 65 4f 66 44 61 74 61 3b 0d 0a  RD BaseOfData;..
149f0 09 44 57 4f 52 44 20 49 6d 61 67 65 42 61 73 65  .DWORD ImageBase
14a00 3b 0d 0a 09 44 57 4f 52 44 20 53 65 63 74 69 6f  ;...DWORD Sectio
14a10 6e 41 6c 69 67 6e 6d 65 6e 74 3b 0d 0a 09 44 57  nAlignment;...DW
14a20 4f 52 44 20 46 69 6c 65 41 6c 69 67 6e 6d 65 6e  ORD FileAlignmen
14a30 74 3b 0d 0a 09 57 4f 52 44 20 20 4d 61 6a 6f 72  t;...WORD  Major
14a40 4f 70 65 72 61 74 69 6e 67 53 79 73 74 65 6d 56  OperatingSystemV
14a50 65 72 73 69 6f 6e 3b 0d 0a 09 57 4f 52 44 20 20  ersion;...WORD  
14a60 4d 69 6e 6f 72 4f 70 65 72 61 74 69 6e 67 53 79  MinorOperatingSy
14a70 73 74 65 6d 56 65 72 73 69 6f 6e 3b 0d 0a 09 57  stemVersion;...W
14a80 4f 52 44 20 20 4d 61 6a 6f 72 49 6d 61 67 65 56  ORD  MajorImageV
14a90 65 72 73 69 6f 6e 3b 0d 0a 09 57 4f 52 44 20 20  ersion;...WORD  
14aa0 4d 69 6e 6f 72 49 6d 61 67 65 56 65 72 73 69 6f  MinorImageVersio
14ab0 6e 3b 0d 0a 09 57 4f 52 44 20 20 4d 61 6a 6f 72  n;...WORD  Major
14ac0 53 75 62 73 79 73 74 65 6d 56 65 72 73 69 6f 6e  SubsystemVersion
14ad0 3b 0d 0a 09 57 4f 52 44 20 20 4d 69 6e 6f 72 53  ;...WORD  MinorS
14ae0 75 62 73 79 73 74 65 6d 56 65 72 73 69 6f 6e 3b  ubsystemVersion;
14af0 0d 0a 09 44 57 4f 52 44 20 57 69 6e 33 32 56 65  ...DWORD Win32Ve
14b00 72 73 69 6f 6e 56 61 6c 75 65 3b 0d 0a 09 44 57  rsionValue;...DW
14b10 4f 52 44 20 53 69 7a 65 4f 66 49 6d 61 67 65 3b  ORD SizeOfImage;
14b20 0d 0a 09 44 57 4f 52 44 20 53 69 7a 65 4f 66 48  ...DWORD SizeOfH
14b30 65 61 64 65 72 73 3b 0d 0a 09 44 57 4f 52 44 20  eaders;...DWORD 
14b40 43 68 65 63 6b 53 75 6d 3b 0d 0a 09 57 4f 52 44  CheckSum;...WORD
14b50 20 20 53 75 62 73 79 73 74 65 6d 3b 0d 0a 09 57    Subsystem;...W
14b60 4f 52 44 20 20 44 6c 6c 43 68 61 72 61 63 74 65  ORD  DllCharacte
14b70 72 69 73 74 69 63 73 3b 0d 0a 09 44 57 4f 52 44  ristics;...DWORD
14b80 20 53 69 7a 65 4f 66 53 74 61 63 6b 52 65 73 65   SizeOfStackRese
14b90 72 76 65 3b 0d 0a 09 44 57 4f 52 44 20 53 69 7a  rve;...DWORD Siz
14ba0 65 4f 66 53 74 61 63 6b 43 6f 6d 6d 69 74 3b 0d  eOfStackCommit;.
14bb0 0a 09 44 57 4f 52 44 20 53 69 7a 65 4f 66 48 65  ..DWORD SizeOfHe
14bc0 61 70 52 65 73 65 72 76 65 3b 0d 0a 09 44 57 4f  apReserve;...DWO
14bd0 52 44 20 53 69 7a 65 4f 66 48 65 61 70 43 6f 6d  RD SizeOfHeapCom
14be0 6d 69 74 3b 0d 0a 09 44 57 4f 52 44 20 4c 6f 61  mit;...DWORD Loa
14bf0 64 65 72 46 6c 61 67 73 3b 0d 0a 09 44 57 4f 52  derFlags;...DWOR
14c00 44 20 4e 75 6d 62 65 72 4f 66 52 76 61 41 6e 64  D NumberOfRvaAnd
14c10 53 69 7a 65 73 3b 0d 0a 09 49 4d 41 47 45 5f 44  Sizes;...IMAGE_D
14c20 41 54 41 5f 44 49 52 45 43 54 4f 52 59 5b 49 4d  ATA_DIRECTORY[IM
14c30 41 47 45 5f 4e 55 4d 42 45 52 4f 46 5f 44 49 52  AGE_NUMBEROF_DIR
14c40 45 43 54 4f 52 59 5f 45 4e 54 52 49 45 53 5d 20  ECTORY_ENTRIES] 
14c50 44 61 74 61 44 69 72 65 63 74 6f 72 79 3b 0d 0a  DataDirectory;..
14c60 7d 0d 0a 61 6c 69 61 73 20 49 4d 41 47 45 5f 4f  }..alias IMAGE_O
14c70 50 54 49 4f 4e 41 4c 5f 48 45 41 44 45 52 33 32  PTIONAL_HEADER32
14c80 2a 20 50 49 4d 41 47 45 5f 4f 50 54 49 4f 4e 41  * PIMAGE_OPTIONA
14c90 4c 5f 48 45 41 44 45 52 33 32 3b 0d 0a 0d 0a 73  L_HEADER32;....s
14ca0 74 72 75 63 74 20 49 4d 41 47 45 5f 4f 50 54 49  truct IMAGE_OPTI
14cb0 4f 4e 41 4c 5f 48 45 41 44 45 52 36 34 20 7b 0d  ONAL_HEADER64 {.
14cc0 0a 09 57 4f 52 44 20 20 20 20 20 20 4d 61 67 69  ..WORD      Magi
14cd0 63 3b 0d 0a 09 42 59 54 45 20 20 20 20 20 20 4d  c;...BYTE      M
14ce0 61 6a 6f 72 4c 69 6e 6b 65 72 56 65 72 73 69 6f  ajorLinkerVersio
14cf0 6e 3b 0d 0a 09 42 59 54 45 20 20 20 20 20 20 4d  n;...BYTE      M
14d00 69 6e 6f 72 4c 69 6e 6b 65 72 56 65 72 73 69 6f  inorLinkerVersio
14d10 6e 3b 0d 0a 09 44 57 4f 52 44 20 20 20 20 20 53  n;...DWORD     S
14d20 69 7a 65 4f 66 43 6f 64 65 3b 0d 0a 09 44 57 4f  izeOfCode;...DWO
14d30 52 44 20 20 20 20 20 53 69 7a 65 4f 66 49 6e 69  RD     SizeOfIni
14d40 74 69 61 6c 69 7a 65 64 44 61 74 61 3b 0d 0a 09  tializedData;...
14d50 44 57 4f 52 44 20 20 20 20 20 53 69 7a 65 4f 66  DWORD     SizeOf
14d60 55 6e 69 6e 69 74 69 61 6c 69 7a 65 64 44 61 74  UninitializedDat
14d70 61 3b 0d 0a 09 44 57 4f 52 44 20 20 20 20 20 41  a;...DWORD     A
14d80 64 64 72 65 73 73 4f 66 45 6e 74 72 79 50 6f 69  ddressOfEntryPoi
14d90 6e 74 3b 0d 0a 09 44 57 4f 52 44 20 20 20 20 20  nt;...DWORD     
14da0 42 61 73 65 4f 66 43 6f 64 65 3b 0d 0a 09 55 4c  BaseOfCode;...UL
14db0 4f 4e 47 4c 4f 4e 47 20 49 6d 61 67 65 42 61 73  ONGLONG ImageBas
14dc0 65 3b 0d 0a 09 44 57 4f 52 44 20 20 20 20 20 53  e;...DWORD     S
14dd0 65 63 74 69 6f 6e 41 6c 69 67 6e 6d 65 6e 74 3b  ectionAlignment;
14de0 0d 0a 09 44 57 4f 52 44 20 20 20 20 20 46 69 6c  ...DWORD     Fil
14df0 65 41 6c 69 67 6e 6d 65 6e 74 3b 0d 0a 09 57 4f  eAlignment;...WO
14e00 52 44 20 20 20 20 20 20 4d 61 6a 6f 72 4f 70 65  RD      MajorOpe
14e10 72 61 74 69 6e 67 53 79 73 74 65 6d 56 65 72 73  ratingSystemVers
14e20 69 6f 6e 3b 0d 0a 09 57 4f 52 44 20 20 20 20 20  ion;...WORD     
14e30 20 4d 69 6e 6f 72 4f 70 65 72 61 74 69 6e 67 53   MinorOperatingS
14e40 79 73 74 65 6d 56 65 72 73 69 6f 6e 3b 0d 0a 09  ystemVersion;...
14e50 57 4f 52 44 20 20 20 20 20 20 4d 61 6a 6f 72 49  WORD      MajorI
14e60 6d 61 67 65 56 65 72 73 69 6f 6e 3b 0d 0a 09 57  mageVersion;...W
14e70 4f 52 44 20 20 20 20 20 20 4d 69 6e 6f 72 49 6d  ORD      MinorIm
14e80 61 67 65 56 65 72 73 69 6f 6e 3b 0d 0a 09 57 4f  ageVersion;...WO
14e90 52 44 20 20 20 20 20 20 4d 61 6a 6f 72 53 75 62  RD      MajorSub
14ea0 73 79 73 74 65 6d 56 65 72 73 69 6f 6e 3b 0d 0a  systemVersion;..
14eb0 09 57 4f 52 44 20 20 20 20 20 20 4d 69 6e 6f 72  .WORD      Minor
14ec0 53 75 62 73 79 73 74 65 6d 56 65 72 73 69 6f 6e  SubsystemVersion
14ed0 3b 0d 0a 09 44 57 4f 52 44 20 20 20 20 20 57 69  ;...DWORD     Wi
14ee0 6e 33 32 56 65 72 73 69 6f 6e 56 61 6c 75 65 3b  n32VersionValue;
14ef0 0d 0a 09 44 57 4f 52 44 20 20 20 20 20 53 69 7a  ...DWORD     Siz
14f00 65 4f 66 49 6d 61 67 65 3b 0d 0a 09 44 57 4f 52  eOfImage;...DWOR
14f10 44 20 20 20 20 20 53 69 7a 65 4f 66 48 65 61 64  D     SizeOfHead
14f20 65 72 73 3b 0d 0a 09 44 57 4f 52 44 20 20 20 20  ers;...DWORD    
14f30 20 43 68 65 63 6b 53 75 6d 3b 0d 0a 09 57 4f 52   CheckSum;...WOR
14f40 44 20 20 20 20 20 20 53 75 62 73 79 73 74 65 6d  D      Subsystem
14f50 3b 0d 0a 09 57 4f 52 44 20 20 20 20 20 20 44 6c  ;...WORD      Dl
14f60 6c 43 68 61 72 61 63 74 65 72 69 73 74 69 63 73  lCharacteristics
14f70 3b 0d 0a 09 55 4c 4f 4e 47 4c 4f 4e 47 20 53 69  ;...ULONGLONG Si
14f80 7a 65 4f 66 53 74 61 63 6b 52 65 73 65 72 76 65  zeOfStackReserve
14f90 3b 0d 0a 09 55 4c 4f 4e 47 4c 4f 4e 47 20 53 69  ;...ULONGLONG Si
14fa0 7a 65 4f 66 53 74 61 63 6b 43 6f 6d 6d 69 74 3b  zeOfStackCommit;
14fb0 0d 0a 09 55 4c 4f 4e 47 4c 4f 4e 47 20 53 69 7a  ...ULONGLONG Siz
14fc0 65 4f 66 48 65 61 70 52 65 73 65 72 76 65 3b 0d  eOfHeapReserve;.
14fd0 0a 09 55 4c 4f 4e 47 4c 4f 4e 47 20 53 69 7a 65  ..ULONGLONG Size
14fe0 4f 66 48 65 61 70 43 6f 6d 6d 69 74 3b 0d 0a 09  OfHeapCommit;...
14ff0 44 57 4f 52 44 20 20 20 20 20 4c 6f 61 64 65 72  DWORD     Loader
15000 46 6c 61 67 73 3b 0d 0a 09 44 57 4f 52 44 20 20  Flags;...DWORD  
15010 20 20 20 4e 75 6d 62 65 72 4f 66 52 76 61 41 6e     NumberOfRvaAn
15020 64 53 69 7a 65 73 3b 0d 0a 09 49 4d 41 47 45 5f  dSizes;...IMAGE_
15030 44 41 54 41 5f 44 49 52 45 43 54 4f 52 59 5b 49  DATA_DIRECTORY[I
15040 4d 41 47 45 5f 4e 55 4d 42 45 52 4f 46 5f 44 49  MAGE_NUMBEROF_DI
15050 52 45 43 54 4f 52 59 5f 45 4e 54 52 49 45 53 5d  RECTORY_ENTRIES]
15060 20 44 61 74 61 44 69 72 65 63 74 6f 72 79 3b 0d   DataDirectory;.
15070 0a 7d 0d 0a 61 6c 69 61 73 20 49 4d 41 47 45 5f  .}..alias IMAGE_
15080 4f 50 54 49 4f 4e 41 4c 5f 48 45 41 44 45 52 36  OPTIONAL_HEADER6
15090 34 2a 20 50 49 4d 41 47 45 5f 4f 50 54 49 4f 4e  4* PIMAGE_OPTION
150a0 41 4c 5f 48 45 41 44 45 52 36 34 3b 0d 0a 0d 0a  AL_HEADER64;....
150b0 73 74 72 75 63 74 20 49 4d 41 47 45 5f 52 4f 4d  struct IMAGE_ROM
150c0 5f 4f 50 54 49 4f 4e 41 4c 5f 48 45 41 44 45 52  _OPTIONAL_HEADER
150d0 20 7b 0d 0a 09 57 4f 52 44 20 20 20 20 20 4d 61   {...WORD     Ma
150e0 67 69 63 3b 0d 0a 09 42 59 54 45 20 20 20 20 20  gic;...BYTE     
150f0 4d 61 6a 6f 72 4c 69 6e 6b 65 72 56 65 72 73 69  MajorLinkerVersi
15100 6f 6e 3b 0d 0a 09 42 59 54 45 20 20 20 20 20 4d  on;...BYTE     M
15110 69 6e 6f 72 4c 69 6e 6b 65 72 56 65 72 73 69 6f  inorLinkerVersio
15120 6e 3b 0d 0a 09 44 57 4f 52 44 20 20 20 20 53 69  n;...DWORD    Si
15130 7a 65 4f 66 43 6f 64 65 3b 0d 0a 09 44 57 4f 52  zeOfCode;...DWOR
15140 44 20 20 20 20 53 69 7a 65 4f 66 49 6e 69 74 69  D    SizeOfIniti
15150 61 6c 69 7a 65 64 44 61 74 61 3b 0d 0a 09 44 57  alizedData;...DW
15160 4f 52 44 20 20 20 20 53 69 7a 65 4f 66 55 6e 69  ORD    SizeOfUni
15170 6e 69 74 69 61 6c 69 7a 65 64 44 61 74 61 3b 0d  nitializedData;.
15180 0a 09 44 57 4f 52 44 20 20 20 20 41 64 64 72 65  ..DWORD    Addre
15190 73 73 4f 66 45 6e 74 72 79 50 6f 69 6e 74 3b 0d  ssOfEntryPoint;.
151a0 0a 09 44 57 4f 52 44 20 20 20 20 42 61 73 65 4f  ..DWORD    BaseO
151b0 66 43 6f 64 65 3b 0d 0a 09 44 57 4f 52 44 20 20  fCode;...DWORD  
151c0 20 20 42 61 73 65 4f 66 44 61 74 61 3b 0d 0a 09    BaseOfData;...
151d0 44 57 4f 52 44 20 20 20 20 42 61 73 65 4f 66 42  DWORD    BaseOfB
151e0 73 73 3b 0d 0a 09 44 57 4f 52 44 20 20 20 20 47  ss;...DWORD    G
151f0 70 72 4d 61 73 6b 3b 0d 0a 09 44 57 4f 52 44 5b  prMask;...DWORD[
15200 34 5d 20 43 70 72 4d 61 73 6b 3b 0d 0a 09 44 57  4] CprMask;...DW
15210 4f 52 44 20 20 20 20 47 70 56 61 6c 75 65 3b 0d  ORD    GpValue;.
15220 0a 7d 0d 0a 61 6c 69 61 73 20 49 4d 41 47 45 5f  .}..alias IMAGE_
15230 52 4f 4d 5f 4f 50 54 49 4f 4e 41 4c 5f 48 45 41  ROM_OPTIONAL_HEA
15240 44 45 52 2a 20 50 49 4d 41 47 45 5f 52 4f 4d 5f  DER* PIMAGE_ROM_
15250 4f 50 54 49 4f 4e 41 4c 5f 48 45 41 44 45 52 3b  OPTIONAL_HEADER;
15260 0d 0a 0d 0a 61 6c 69 67 6e 28 32 29 3a 0d 0a 73  ....align(2):..s
15270 74 72 75 63 74 20 49 4d 41 47 45 5f 44 4f 53 5f  truct IMAGE_DOS_
15280 48 45 41 44 45 52 20 7b 0d 0a 09 57 4f 52 44 20  HEADER {...WORD 
15290 20 20 20 20 65 5f 6d 61 67 69 63 3b 0d 0a 09 57      e_magic;...W
152a0 4f 52 44 20 20 20 20 20 65 5f 63 62 6c 70 3b 0d  ORD     e_cblp;.
152b0 0a 09 57 4f 52 44 20 20 20 20 20 65 5f 63 70 3b  ..WORD     e_cp;
152c0 0d 0a 09 57 4f 52 44 20 20 20 20 20 65 5f 63 72  ...WORD     e_cr
152d0 6c 63 3b 0d 0a 09 57 4f 52 44 20 20 20 20 20 65  lc;...WORD     e
152e0 5f 63 70 61 72 68 64 72 3b 0d 0a 09 57 4f 52 44  _cparhdr;...WORD
152f0 20 20 20 20 20 65 5f 6d 69 6e 61 6c 6c 6f 63 3b       e_minalloc;
15300 0d 0a 09 57 4f 52 44 20 20 20 20 20 65 5f 6d 61  ...WORD     e_ma
15310 78 61 6c 6c 6f 63 3b 0d 0a 09 57 4f 52 44 20 20  xalloc;...WORD  
15320 20 20 20 65 5f 73 73 3b 0d 0a 09 57 4f 52 44 20     e_ss;...WORD 
15330 20 20 20 20 65 5f 73 70 3b 0d 0a 09 57 4f 52 44      e_sp;...WORD
15340 20 20 20 20 20 65 5f 63 73 75 6d 3b 0d 0a 09 57       e_csum;...W
15350 4f 52 44 20 20 20 20 20 65 5f 69 70 3b 0d 0a 09  ORD     e_ip;...
15360 57 4f 52 44 20 20 20 20 20 65 5f 63 73 3b 0d 0a  WORD     e_cs;..
15370 09 57 4f 52 44 20 20 20 20 20 65 5f 6c 66 61 72  .WORD     e_lfar
15380 6c 63 3b 0d 0a 09 57 4f 52 44 20 20 20 20 20 65  lc;...WORD     e
15390 5f 6f 76 6e 6f 3b 0d 0a 09 57 4f 52 44 5b 34 5d  _ovno;...WORD[4]
153a0 20 65 5f 72 65 73 3b 0d 0a 09 57 4f 52 44 20 20   e_res;...WORD  
153b0 20 20 20 65 5f 6f 65 6d 69 64 3b 0d 0a 09 57 4f     e_oemid;...WO
153c0 52 44 20 20 20 20 20 65 5f 6f 65 6d 69 6e 66 6f  RD     e_oeminfo
153d0 3b 0d 0a 09 57 4f 52 44 5b 31 30 5d 20 65 5f 72  ;...WORD[10] e_r
153e0 65 73 32 3b 0d 0a 09 4c 4f 4e 47 20 20 20 20 20  es2;...LONG     
153f0 65 5f 6c 66 61 6e 65 77 3b 0d 0a 7d 0d 0a 61 6c  e_lfanew;..}..al
15400 69 61 73 20 49 4d 41 47 45 5f 44 4f 53 5f 48 45  ias IMAGE_DOS_HE
15410 41 44 45 52 2a 20 50 49 4d 41 47 45 5f 44 4f 53  ADER* PIMAGE_DOS
15420 5f 48 45 41 44 45 52 3b 0d 0a 0d 0a 73 74 72 75  _HEADER;....stru
15430 63 74 20 49 4d 41 47 45 5f 4f 53 32 5f 48 45 41  ct IMAGE_OS2_HEA
15440 44 45 52 20 7b 0d 0a 09 57 4f 52 44 20 6e 65 5f  DER {...WORD ne_
15450 6d 61 67 69 63 3b 0d 0a 09 43 48 41 52 20 6e 65  magic;...CHAR ne
15460 5f 76 65 72 3b 0d 0a 09 43 48 41 52 20 6e 65 5f  _ver;...CHAR ne_
15470 72 65 76 3b 0d 0a 09 57 4f 52 44 20 6e 65 5f 65  rev;...WORD ne_e
15480 6e 74 74 61 62 3b 0d 0a 09 57 4f 52 44 20 6e 65  nttab;...WORD ne
15490 5f 63 62 65 6e 74 74 61 62 3b 0d 0a 09 4c 4f 4e  _cbenttab;...LON
154a0 47 20 6e 65 5f 63 72 63 3b 0d 0a 09 57 4f 52 44  G ne_crc;...WORD
154b0 20 6e 65 5f 66 6c 61 67 73 3b 0d 0a 09 57 4f 52   ne_flags;...WOR
154c0 44 20 6e 65 5f 61 75 74 6f 64 61 74 61 3b 0d 0a  D ne_autodata;..
154d0 09 57 4f 52 44 20 6e 65 5f 68 65 61 70 3b 0d 0a  .WORD ne_heap;..
154e0 09 57 4f 52 44 20 6e 65 5f 73 74 61 63 6b 3b 0d  .WORD ne_stack;.
154f0 0a 09 4c 4f 4e 47 20 6e 65 5f 63 73 69 70 3b 0d  ..LONG ne_csip;.
15500 0a 09 4c 4f 4e 47 20 6e 65 5f 73 73 73 70 3b 0d  ..LONG ne_sssp;.
15510 0a 09 57 4f 52 44 20 6e 65 5f 63 73 65 67 3b 0d  ..WORD ne_cseg;.
15520 0a 09 57 4f 52 44 20 6e 65 5f 63 6d 6f 64 3b 0d  ..WORD ne_cmod;.
15530 0a 09 57 4f 52 44 20 6e 65 5f 63 62 6e 72 65 73  ..WORD ne_cbnres
15540 74 61 62 3b 0d 0a 09 57 4f 52 44 20 6e 65 5f 73  tab;...WORD ne_s
15550 65 67 74 61 62 3b 0d 0a 09 57 4f 52 44 20 6e 65  egtab;...WORD ne
15560 5f 72 73 72 63 74 61 62 3b 0d 0a 09 57 4f 52 44  _rsrctab;...WORD
15570 20 6e 65 5f 72 65 73 74 61 62 3b 0d 0a 09 57 4f   ne_restab;...WO
15580 52 44 20 6e 65 5f 6d 6f 64 74 61 62 3b 0d 0a 09  RD ne_modtab;...
15590 57 4f 52 44 20 6e 65 5f 69 6d 70 74 61 62 3b 0d  WORD ne_imptab;.
155a0 0a 09 4c 4f 4e 47 20 6e 65 5f 6e 72 65 73 74 61  ..LONG ne_nresta
155b0 62 3b 0d 0a 09 57 4f 52 44 20 6e 65 5f 63 6d 6f  b;...WORD ne_cmo
155c0 76 65 6e 74 3b 0d 0a 09 57 4f 52 44 20 6e 65 5f  vent;...WORD ne_
155d0 61 6c 69 67 6e 3b 0d 0a 09 57 4f 52 44 20 6e 65  align;...WORD ne
155e0 5f 63 72 65 73 3b 0d 0a 09 42 59 54 45 20 6e 65  _cres;...BYTE ne
155f0 5f 65 78 65 74 79 70 3b 0d 0a 09 42 59 54 45 20  _exetyp;...BYTE 
15600 6e 65 5f 66 6c 61 67 73 6f 74 68 65 72 73 3b 0d  ne_flagsothers;.
15610 0a 09 57 4f 52 44 20 6e 65 5f 70 72 65 74 74 68  ..WORD ne_pretth
15620 75 6e 6b 73 3b 0d 0a 09 57 4f 52 44 20 6e 65 5f  unks;...WORD ne_
15630 70 73 65 67 72 65 66 62 79 74 65 73 3b 0d 0a 09  psegrefbytes;...
15640 57 4f 52 44 20 6e 65 5f 73 77 61 70 61 72 65 61  WORD ne_swaparea
15650 3b 0d 0a 09 57 4f 52 44 20 6e 65 5f 65 78 70 76  ;...WORD ne_expv
15660 65 72 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 49 4d  er;..}..alias IM
15670 41 47 45 5f 4f 53 32 5f 48 45 41 44 45 52 2a 20  AGE_OS2_HEADER* 
15680 50 49 4d 41 47 45 5f 4f 53 32 5f 48 45 41 44 45  PIMAGE_OS2_HEADE
15690 52 3b 0d 0a 0d 0a 61 6c 69 67 6e 28 34 29 20 73  R;....align(4) s
156a0 74 72 75 63 74 20 49 4d 41 47 45 5f 4e 54 5f 48  truct IMAGE_NT_H
156b0 45 41 44 45 52 53 33 32 20 7b 0d 0a 09 44 57 4f  EADERS32 {...DWO
156c0 52 44 20 20 20 20 20 20 20 20 20 20 20 20 20 20  RD              
156d0 20 20 20 53 69 67 6e 61 74 75 72 65 3b 0d 0a 09     Signature;...
156e0 49 4d 41 47 45 5f 46 49 4c 45 5f 48 45 41 44 45  IMAGE_FILE_HEADE
156f0 52 20 20 20 20 20 46 69 6c 65 48 65 61 64 65 72  R     FileHeader
15700 3b 0d 0a 09 49 4d 41 47 45 5f 4f 50 54 49 4f 4e  ;...IMAGE_OPTION
15710 41 4c 5f 48 45 41 44 45 52 20 4f 70 74 69 6f 6e  AL_HEADER Option
15720 61 6c 48 65 61 64 65 72 3b 0d 0a 7d 0d 0a 61 6c  alHeader;..}..al
15730 69 61 73 20 49 4d 41 47 45 5f 4e 54 5f 48 45 41  ias IMAGE_NT_HEA
15740 44 45 52 53 33 32 2a 20 50 49 4d 41 47 45 5f 4e  DERS32* PIMAGE_N
15750 54 5f 48 45 41 44 45 52 53 33 32 3b 0d 0a 0d 0a  T_HEADERS32;....
15760 61 6c 69 67 6e 28 34 29 20 73 74 72 75 63 74 20  align(4) struct 
15770 49 4d 41 47 45 5f 4e 54 5f 48 45 41 44 45 52 53  IMAGE_NT_HEADERS
15780 36 34 20 7b 0d 0a 09 44 57 4f 52 44 20 20 20 20  64 {...DWORD    
15790 20 20 20 20 20 20 20 20 20 20 20 20 20 53 69 67               Sig
157a0 6e 61 74 75 72 65 3b 0d 0a 09 49 4d 41 47 45 5f  nature;...IMAGE_
157b0 46 49 4c 45 5f 48 45 41 44 45 52 20 20 20 20 20  FILE_HEADER     
157c0 46 69 6c 65 48 65 61 64 65 72 3b 0d 0a 09 49 4d  FileHeader;...IM
157d0 41 47 45 5f 4f 50 54 49 4f 4e 41 4c 5f 48 45 41  AGE_OPTIONAL_HEA
157e0 44 45 52 20 4f 70 74 69 6f 6e 61 6c 48 65 61 64  DER OptionalHead
157f0 65 72 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 49 4d  er;..}..alias IM
15800 41 47 45 5f 4e 54 5f 48 45 41 44 45 52 53 36 34  AGE_NT_HEADERS64
15810 2a 20 50 49 4d 41 47 45 5f 4e 54 5f 48 45 41 44  * PIMAGE_NT_HEAD
15820 45 52 53 36 34 3b 0d 0a 0d 0a 73 74 72 75 63 74  ERS64;....struct
15830 20 49 4d 41 47 45 5f 52 4f 4d 5f 48 45 41 44 45   IMAGE_ROM_HEADE
15840 52 53 20 7b 0d 0a 09 49 4d 41 47 45 5f 46 49 4c  RS {...IMAGE_FIL
15850 45 5f 48 45 41 44 45 52 20 20 20 20 20 20 20 20  E_HEADER        
15860 20 46 69 6c 65 48 65 61 64 65 72 3b 0d 0a 09 49   FileHeader;...I
15870 4d 41 47 45 5f 52 4f 4d 5f 4f 50 54 49 4f 4e 41  MAGE_ROM_OPTIONA
15880 4c 5f 48 45 41 44 45 52 20 4f 70 74 69 6f 6e 61  L_HEADER Optiona
15890 6c 48 65 61 64 65 72 3b 0d 0a 7d 0d 0a 61 6c 69  lHeader;..}..ali
158a0 61 73 20 49 4d 41 47 45 5f 52 4f 4d 5f 48 45 41  as IMAGE_ROM_HEA
158b0 44 45 52 53 2a 20 50 49 4d 41 47 45 5f 52 4f 4d  DERS* PIMAGE_ROM
158c0 5f 48 45 41 44 45 52 53 3b 0d 0a 0d 0a 73 74 72  _HEADERS;....str
158d0 75 63 74 20 49 4d 41 47 45 5f 53 45 43 54 49 4f  uct IMAGE_SECTIO
158e0 4e 5f 48 45 41 44 45 52 20 7b 0d 0a 09 42 59 54  N_HEADER {...BYT
158f0 45 5b 49 4d 41 47 45 5f 53 49 5a 45 4f 46 5f 53  E[IMAGE_SIZEOF_S
15900 48 4f 52 54 5f 4e 41 4d 45 5d 20 4e 61 6d 65 3b  HORT_NAME] Name;
15910 0d 0a 09 75 6e 69 6f 6e 20 5f 4d 69 73 63 20 7b  ...union _Misc {
15920 0d 0a 09 09 44 57 4f 52 44 20 50 68 79 73 69 63  ....DWORD Physic
15930 61 6c 41 64 64 72 65 73 73 3b 0d 0a 09 09 44 57  alAddress;....DW
15940 4f 52 44 20 56 69 72 74 75 61 6c 53 69 7a 65 3b  ORD VirtualSize;
15950 0d 0a 09 7d 0d 0a 09 5f 4d 69 73 63 20 4d 69 73  ...}..._Misc Mis
15960 63 3b 0d 0a 09 44 57 4f 52 44 20 56 69 72 74 75  c;...DWORD Virtu
15970 61 6c 41 64 64 72 65 73 73 3b 0d 0a 09 44 57 4f  alAddress;...DWO
15980 52 44 20 53 69 7a 65 4f 66 52 61 77 44 61 74 61  RD SizeOfRawData
15990 3b 0d 0a 09 44 57 4f 52 44 20 50 6f 69 6e 74 65  ;...DWORD Pointe
159a0 72 54 6f 52 61 77 44 61 74 61 3b 0d 0a 09 44 57  rToRawData;...DW
159b0 4f 52 44 20 50 6f 69 6e 74 65 72 54 6f 52 65 6c  ORD PointerToRel
159c0 6f 63 61 74 69 6f 6e 73 3b 0d 0a 09 44 57 4f 52  ocations;...DWOR
159d0 44 20 50 6f 69 6e 74 65 72 54 6f 4c 69 6e 65 6e  D PointerToLinen
159e0 75 6d 62 65 72 73 3b 0d 0a 09 57 4f 52 44 20 20  umbers;...WORD  
159f0 4e 75 6d 62 65 72 4f 66 52 65 6c 6f 63 61 74 69  NumberOfRelocati
15a00 6f 6e 73 3b 0d 0a 09 57 4f 52 44 20 20 4e 75 6d  ons;...WORD  Num
15a10 62 65 72 4f 66 4c 69 6e 65 6e 75 6d 62 65 72 73  berOfLinenumbers
15a20 3b 0d 0a 09 44 57 4f 52 44 20 43 68 61 72 61 63  ;...DWORD Charac
15a30 74 65 72 69 73 74 69 63 73 3b 0d 0a 7d 0d 0a 61  teristics;..}..a
15a40 6c 69 61 73 20 49 4d 41 47 45 5f 53 45 43 54 49  lias IMAGE_SECTI
15a50 4f 4e 5f 48 45 41 44 45 52 2a 20 50 49 4d 41 47  ON_HEADER* PIMAG
15a60 45 5f 53 45 43 54 49 4f 4e 5f 48 45 41 44 45 52  E_SECTION_HEADER
15a70 3b 0d 0a 0d 0a 73 74 72 75 63 74 20 49 4d 41 47  ;....struct IMAG
15a80 45 5f 53 59 4d 42 4f 4c 20 7b 0d 0a 09 75 6e 69  E_SYMBOL {...uni
15a90 6f 6e 20 5f 4e 20 7b 0d 0a 09 09 42 59 54 45 5b  on _N {....BYTE[
15aa0 38 5d 20 20 20 53 68 6f 72 74 4e 61 6d 65 3b 0d  8]   ShortName;.
15ab0 0a 09 09 73 74 72 75 63 74 20 4e 61 6d 65 20 7b  ...struct Name {
15ac0 0d 0a 09 09 09 44 57 4f 52 44 20 53 68 6f 72 74  .....DWORD Short
15ad0 3b 0d 0a 09 09 09 44 57 4f 52 44 20 4c 6f 6e 67  ;.....DWORD Long
15ae0 3b 0d 0a 09 09 7d 0d 0a 09 09 50 42 59 54 45 5b  ;....}....PBYTE[
15af0 32 5d 20 20 4c 6f 6e 67 4e 61 6d 65 3b 0d 0a 09  2]  LongName;...
15b00 7d 0d 0a 09 5f 4e 20 20 20 20 4e 3b 0d 0a 09 44  }..._N    N;...D
15b10 57 4f 52 44 20 56 61 6c 75 65 3b 0d 0a 09 53 48  WORD Value;...SH
15b20 4f 52 54 20 53 65 63 74 69 6f 6e 4e 75 6d 62 65  ORT SectionNumbe
15b30 72 3b 0d 0a 09 57 4f 52 44 20 20 54 79 70 65 3b  r;...WORD  Type;
15b40 0d 0a 09 42 59 54 45 20 20 53 74 6f 72 61 67 65  ...BYTE  Storage
15b50 43 6c 61 73 73 3b 0d 0a 09 42 59 54 45 20 20 4e  Class;...BYTE  N
15b60 75 6d 62 65 72 4f 66 41 75 78 53 79 6d 62 6f 6c  umberOfAuxSymbol
15b70 73 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 49 4d 41  s;..}..alias IMA
15b80 47 45 5f 53 59 4d 42 4f 4c 2a 20 50 49 4d 41 47  GE_SYMBOL* PIMAG
15b90 45 5f 53 59 4d 42 4f 4c 3b 0d 0a 0d 0a 75 6e 69  E_SYMBOL;....uni
15ba0 6f 6e 20 49 4d 41 47 45 5f 41 55 58 5f 53 59 4d  on IMAGE_AUX_SYM
15bb0 42 4f 4c 20 7b 0d 0a 09 73 74 72 75 63 74 20 5f  BOL {...struct _
15bc0 53 79 6d 20 7b 0d 0a 09 09 44 57 4f 52 44 20 20  Sym {....DWORD  
15bd0 20 20 20 20 20 20 20 20 20 54 61 67 49 6e 64 65           TagInde
15be0 78 3b 0d 0a 09 09 75 6e 69 6f 6e 20 5f 4d 69 73  x;....union _Mis
15bf0 63 20 7b 0d 0a 09 09 09 73 74 72 75 63 74 20 5f  c {.....struct _
15c00 4c 6e 53 7a 20 7b 0d 0a 09 09 09 09 57 4f 52 44  LnSz {......WORD
15c10 20 20 20 20 4c 69 6e 65 6e 75 6d 62 65 72 3b 0d      Linenumber;.
15c20 0a 09 09 09 09 57 4f 52 44 20 20 20 20 53 69 7a  .....WORD    Siz
15c30 65 3b 0d 0a 09 09 09 7d 0d 0a 09 09 09 5f 4c 6e  e;.....}....._Ln
15c40 53 7a 20 20 20 20 20 20 20 4c 6e 53 7a 3b 0d 0a  Sz       LnSz;..
15c50 09 09 09 44 57 4f 52 44 20 20 20 20 20 20 20 54  ...DWORD       T
15c60 6f 74 61 6c 53 69 7a 65 3b 0d 0a 09 09 7d 0d 0a  otalSize;....}..
15c70 09 09 5f 4d 69 73 63 20 4d 69 73 63 3b 0d 0a 09  .._Misc Misc;...
15c80 09 75 6e 69 6f 6e 20 5f 46 63 6e 41 72 79 20 7b  .union _FcnAry {
15c90 0d 0a 09 09 09 73 74 72 75 63 74 20 5f 46 75 6e  .....struct _Fun
15ca0 63 74 69 6f 6e 20 7b 0d 0a 09 09 09 09 44 57 4f  ction {......DWO
15cb0 52 44 20 20 20 50 6f 69 6e 74 65 72 54 6f 4c 69  RD   PointerToLi
15cc0 6e 65 6e 75 6d 62 65 72 3b 0d 0a 09 09 09 09 44  nenumber;......D
15cd0 57 4f 52 44 20 20 20 50 6f 69 6e 74 65 72 54 6f  WORD   PointerTo
15ce0 4e 65 78 74 46 75 6e 63 74 69 6f 6e 3b 0d 0a 09  NextFunction;...
15cf0 09 09 7d 0d 0a 09 09 09 5f 46 75 6e 63 74 69 6f  ..}....._Functio
15d00 6e 20 20 20 46 75 6e 63 74 69 6f 6e 3b 0d 0a 09  n   Function;...
15d10 09 09 73 74 72 75 63 74 20 5f 41 72 72 61 79 20  ..struct _Array 
15d20 7b 0d 0a 09 09 09 09 57 4f 52 44 5b 34 5d 20 44  {......WORD[4] D
15d30 69 6d 65 6e 73 69 6f 6e 3b 0d 0a 09 09 09 7d 0d  imension;.....}.
15d40 0a 09 09 09 5f 41 72 72 61 79 20 20 20 20 20 20  ...._Array      
15d50 41 72 72 61 79 3b 0d 0a 09 09 7d 0d 0a 09 09 5f  Array;....}...._
15d60 46 63 6e 41 72 79 20 20 20 20 20 20 20 20 20 46  FcnAry         F
15d70 63 6e 41 72 79 3b 0d 0a 09 09 57 4f 52 44 20 20  cnAry;....WORD  
15d80 20 20 20 20 20 20 20 20 20 20 54 76 49 6e 64 65            TvInde
15d90 78 3b 0d 0a 09 7d 0d 0a 09 5f 53 79 6d 20 20 20  x;...}..._Sym   
15da0 20 20 20 20 20 20 20 20 20 20 20 20 20 53 79 6d               Sym
15db0 3b 0d 0a 09 73 74 72 75 63 74 20 5f 46 69 6c 65  ;...struct _File
15dc0 20 7b 0d 0a 09 09 42 59 54 45 5b 49 4d 41 47 45   {....BYTE[IMAGE
15dd0 5f 53 49 5a 45 4f 46 5f 53 59 4d 42 4f 4c 5d 20  _SIZEOF_SYMBOL] 
15de0 4e 61 6d 65 3b 0d 0a 09 7d 0d 0a 09 5f 46 69 6c  Name;...}..._Fil
15df0 65 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  e               
15e00 46 69 6c 65 3b 0d 0a 09 73 74 72 75 63 74 20 5f  File;...struct _
15e10 53 65 63 74 69 6f 6e 20 7b 0d 0a 09 09 44 57 4f  Section {....DWO
15e20 52 44 20 20 20 20 20 20 20 20 20 20 20 4c 65 6e  RD           Len
15e30 67 74 68 3b 0d 0a 09 09 57 4f 52 44 20 20 20 20  gth;....WORD    
15e40 20 20 20 20 20 20 20 20 4e 75 6d 62 65 72 4f 66          NumberOf
15e50 52 65 6c 6f 63 61 74 69 6f 6e 73 3b 0d 0a 09 09  Relocations;....
15e60 57 4f 52 44 20 20 20 20 20 20 20 20 20 20 20 20  WORD            
15e70 4e 75 6d 62 65 72 4f 66 4c 69 6e 65 6e 75 6d 62  NumberOfLinenumb
15e80 65 72 73 3b 0d 0a 09 09 44 57 4f 52 44 20 20 20  ers;....DWORD   
15e90 20 20 20 20 20 20 20 20 43 68 65 63 6b 53 75 6d          CheckSum
15ea0 3b 0d 0a 09 09 53 48 4f 52 54 20 20 20 20 20 20  ;....SHORT      
15eb0 20 20 20 20 20 4e 75 6d 62 65 72 3b 0d 0a 09 09       Number;....
15ec0 42 59 54 45 20 20 20 20 20 20 20 20 20 20 20 20  BYTE            
15ed0 53 65 6c 65 63 74 69 6f 6e 3b 0d 0a 09 7d 0d 0a  Selection;...}..
15ee0 09 5f 53 65 63 74 69 6f 6e 20 20 20 20 20 20 20  ._Section       
15ef0 20 20 20 20 20 53 65 63 74 69 6f 6e 3b 0d 0a 7d       Section;..}
15f00 0d 0a 61 6c 69 61 73 20 49 4d 41 47 45 5f 41 55  ..alias IMAGE_AU
15f10 58 5f 53 59 4d 42 4f 4c 2a 20 50 49 4d 41 47 45  X_SYMBOL* PIMAGE
15f20 5f 41 55 58 5f 53 59 4d 42 4f 4c 3b 0d 0a 0d 0a  _AUX_SYMBOL;....
15f30 73 74 72 75 63 74 20 49 4d 41 47 45 5f 43 4f 46  struct IMAGE_COF
15f40 46 5f 53 59 4d 42 4f 4c 53 5f 48 45 41 44 45 52  F_SYMBOLS_HEADER
15f50 20 7b 0d 0a 09 44 57 4f 52 44 20 4e 75 6d 62 65   {...DWORD Numbe
15f60 72 4f 66 53 79 6d 62 6f 6c 73 3b 0d 0a 09 44 57  rOfSymbols;...DW
15f70 4f 52 44 20 4c 76 61 54 6f 46 69 72 73 74 53 79  ORD LvaToFirstSy
15f80 6d 62 6f 6c 3b 0d 0a 09 44 57 4f 52 44 20 4e 75  mbol;...DWORD Nu
15f90 6d 62 65 72 4f 66 4c 69 6e 65 6e 75 6d 62 65 72  mberOfLinenumber
15fa0 73 3b 0d 0a 09 44 57 4f 52 44 20 4c 76 61 54 6f  s;...DWORD LvaTo
15fb0 46 69 72 73 74 4c 69 6e 65 6e 75 6d 62 65 72 3b  FirstLinenumber;
15fc0 0d 0a 09 44 57 4f 52 44 20 52 76 61 54 6f 46 69  ...DWORD RvaToFi
15fd0 72 73 74 42 79 74 65 4f 66 43 6f 64 65 3b 0d 0a  rstByteOfCode;..
15fe0 09 44 57 4f 52 44 20 52 76 61 54 6f 4c 61 73 74  .DWORD RvaToLast
15ff0 42 79 74 65 4f 66 43 6f 64 65 3b 0d 0a 09 44 57  ByteOfCode;...DW
16000 4f 52 44 20 52 76 61 54 6f 46 69 72 73 74 42 79  ORD RvaToFirstBy
16010 74 65 4f 66 44 61 74 61 3b 0d 0a 09 44 57 4f 52  teOfData;...DWOR
16020 44 20 52 76 61 54 6f 4c 61 73 74 42 79 74 65 4f  D RvaToLastByteO
16030 66 44 61 74 61 3b 0d 0a 7d 0d 0a 61 6c 69 61 73  fData;..}..alias
16040 20 49 4d 41 47 45 5f 43 4f 46 46 5f 53 59 4d 42   IMAGE_COFF_SYMB
16050 4f 4c 53 5f 48 45 41 44 45 52 2a 20 50 49 4d 41  OLS_HEADER* PIMA
16060 47 45 5f 43 4f 46 46 5f 53 59 4d 42 4f 4c 53 5f  GE_COFF_SYMBOLS_
16070 48 45 41 44 45 52 3b 0d 0a 0d 0a 73 74 72 75 63  HEADER;....struc
16080 74 20 49 4d 41 47 45 5f 52 45 4c 4f 43 41 54 49  t IMAGE_RELOCATI
16090 4f 4e 20 7b 0d 0a 09 75 6e 69 6f 6e 20 7b 0d 0a  ON {...union {..
160a0 09 09 44 57 4f 52 44 20 56 69 72 74 75 61 6c 41  ..DWORD VirtualA
160b0 64 64 72 65 73 73 3b 0d 0a 09 09 44 57 4f 52 44  ddress;....DWORD
160c0 20 52 65 6c 6f 63 43 6f 75 6e 74 3b 0d 0a 09 7d   RelocCount;...}
160d0 0d 0a 09 44 57 4f 52 44 20 20 20 20 20 53 79 6d  ...DWORD     Sym
160e0 62 6f 6c 54 61 62 6c 65 49 6e 64 65 78 3b 0d 0a  bolTableIndex;..
160f0 09 57 4f 52 44 20 20 20 20 20 20 54 79 70 65 3b  .WORD      Type;
16100 0d 0a 7d 0d 0a 61 6c 69 61 73 20 49 4d 41 47 45  ..}..alias IMAGE
16110 5f 52 45 4c 4f 43 41 54 49 4f 4e 2a 20 50 49 4d  _RELOCATION* PIM
16120 41 47 45 5f 52 45 4c 4f 43 41 54 49 4f 4e 3b 0d  AGE_RELOCATION;.
16130 0a 0d 0a 61 6c 69 67 6e 28 34 29 20 73 74 72 75  ...align(4) stru
16140 63 74 20 49 4d 41 47 45 5f 42 41 53 45 5f 52 45  ct IMAGE_BASE_RE
16150 4c 4f 43 41 54 49 4f 4e 20 7b 0d 0a 09 44 57 4f  LOCATION {...DWO
16160 52 44 20 56 69 72 74 75 61 6c 41 64 64 72 65 73  RD VirtualAddres
16170 73 3b 0d 0a 09 44 57 4f 52 44 20 53 69 7a 65 4f  s;...DWORD SizeO
16180 66 42 6c 6f 63 6b 3b 0d 0a 7d 0d 0a 61 6c 69 61  fBlock;..}..alia
16190 73 20 49 4d 41 47 45 5f 42 41 53 45 5f 52 45 4c  s IMAGE_BASE_REL
161a0 4f 43 41 54 49 4f 4e 2a 20 50 49 4d 41 47 45 5f  OCATION* PIMAGE_
161b0 42 41 53 45 5f 52 45 4c 4f 43 41 54 49 4f 4e 3b  BASE_RELOCATION;
161c0 0d 0a 0d 0a 61 6c 69 67 6e 28 32 29 20 73 74 72  ....align(2) str
161d0 75 63 74 20 49 4d 41 47 45 5f 4c 49 4e 45 4e 55  uct IMAGE_LINENU
161e0 4d 42 45 52 20 7b 0d 0a 09 75 6e 69 6f 6e 20 5f  MBER {...union _
161f0 54 79 70 65 20 7b 0d 0a 09 09 44 57 4f 52 44 20  Type {....DWORD 
16200 53 79 6d 62 6f 6c 54 61 62 6c 65 49 6e 64 65 78  SymbolTableIndex
16210 3b 0d 0a 09 09 44 57 4f 52 44 20 56 69 72 74 75  ;....DWORD Virtu
16220 61 6c 41 64 64 72 65 73 73 3b 0d 0a 09 7d 0d 0a  alAddress;...}..
16230 09 5f 54 79 70 65 20 54 79 70 65 3b 0d 0a 09 57  ._Type Type;...W
16240 4f 52 44 20 20 4c 69 6e 65 6e 75 6d 62 65 72 3b  ORD  Linenumber;
16250 0d 0a 7d 0d 0a 61 6c 69 61 73 20 49 4d 41 47 45  ..}..alias IMAGE
16260 5f 4c 49 4e 45 4e 55 4d 42 45 52 2a 20 50 49 4d  _LINENUMBER* PIM
16270 41 47 45 5f 4c 49 4e 45 4e 55 4d 42 45 52 3b 0d  AGE_LINENUMBER;.
16280 0a 0d 0a 61 6c 69 67 6e 28 34 29 3a 0d 0a 73 74  ...align(4):..st
16290 72 75 63 74 20 49 4d 41 47 45 5f 41 52 43 48 49  ruct IMAGE_ARCHI
162a0 56 45 5f 4d 45 4d 42 45 52 5f 48 45 41 44 45 52  VE_MEMBER_HEADER
162b0 20 7b 0d 0a 09 42 59 54 45 5b 31 36 5d 20 4e 61   {...BYTE[16] Na
162c0 6d 65 3b 0d 0a 09 42 59 54 45 5b 31 32 5d 20 44  me;...BYTE[12] D
162d0 61 74 65 3b 0d 0a 09 42 59 54 45 5b 36 5d 20 20  ate;...BYTE[6]  
162e0 55 73 65 72 49 44 3b 0d 0a 09 42 59 54 45 5b 36  UserID;...BYTE[6
162f0 5d 20 20 47 72 6f 75 70 49 44 3b 0d 0a 09 42 59  ]  GroupID;...BY
16300 54 45 5b 38 5d 20 20 4d 6f 64 65 3b 0d 0a 09 42  TE[8]  Mode;...B
16310 59 54 45 5b 31 30 5d 20 53 69 7a 65 3b 0d 0a 09  YTE[10] Size;...
16320 42 59 54 45 5b 32 5d 20 20 45 6e 64 48 65 61 64  BYTE[2]  EndHead
16330 65 72 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 49 4d  er;..}..alias IM
16340 41 47 45 5f 41 52 43 48 49 56 45 5f 4d 45 4d 42  AGE_ARCHIVE_MEMB
16350 45 52 5f 48 45 41 44 45 52 2a 20 50 49 4d 41 47  ER_HEADER* PIMAG
16360 45 5f 41 52 43 48 49 56 45 5f 4d 45 4d 42 45 52  E_ARCHIVE_MEMBER
16370 5f 48 45 41 44 45 52 3b 0d 0a 0d 0a 73 74 72 75  _HEADER;....stru
16380 63 74 20 49 4d 41 47 45 5f 45 58 50 4f 52 54 5f  ct IMAGE_EXPORT_
16390 44 49 52 45 43 54 4f 52 59 20 7b 0d 0a 09 44 57  DIRECTORY {...DW
163a0 4f 52 44 20 43 68 61 72 61 63 74 65 72 69 73 74  ORD Characterist
163b0 69 63 73 3b 0d 0a 09 44 57 4f 52 44 20 54 69 6d  ics;...DWORD Tim
163c0 65 44 61 74 65 53 74 61 6d 70 3b 0d 0a 09 57 4f  eDateStamp;...WO
163d0 52 44 20 20 4d 61 6a 6f 72 56 65 72 73 69 6f 6e  RD  MajorVersion
163e0 3b 0d 0a 09 57 4f 52 44 20 20 4d 69 6e 6f 72 56  ;...WORD  MinorV
163f0 65 72 73 69 6f 6e 3b 0d 0a 09 44 57 4f 52 44 20  ersion;...DWORD 
16400 4e 61 6d 65 3b 0d 0a 09 44 57 4f 52 44 20 42 61  Name;...DWORD Ba
16410 73 65 3b 0d 0a 09 44 57 4f 52 44 20 4e 75 6d 62  se;...DWORD Numb
16420 65 72 4f 66 46 75 6e 63 74 69 6f 6e 73 3b 0d 0a  erOfFunctions;..
16430 09 44 57 4f 52 44 20 4e 75 6d 62 65 72 4f 66 4e  .DWORD NumberOfN
16440 61 6d 65 73 3b 0d 0a 09 44 57 4f 52 44 20 41 64  ames;...DWORD Ad
16450 64 72 65 73 73 4f 66 46 75 6e 63 74 69 6f 6e 73  dressOfFunctions
16460 3b 0d 0a 09 44 57 4f 52 44 20 41 64 64 72 65 73  ;...DWORD Addres
16470 73 4f 66 4e 61 6d 65 73 3b 0d 0a 09 44 57 4f 52  sOfNames;...DWOR
16480 44 20 41 64 64 72 65 73 73 4f 66 4e 61 6d 65 4f  D AddressOfNameO
16490 72 64 69 6e 61 6c 73 3b 0d 0a 7d 0d 0a 61 6c 69  rdinals;..}..ali
164a0 61 73 20 49 4d 41 47 45 5f 45 58 50 4f 52 54 5f  as IMAGE_EXPORT_
164b0 44 49 52 45 43 54 4f 52 59 2a 20 50 49 4d 41 47  DIRECTORY* PIMAG
164c0 45 5f 45 58 50 4f 52 54 5f 44 49 52 45 43 54 4f  E_EXPORT_DIRECTO
164d0 52 59 3b 0d 0a 0d 0a 73 74 72 75 63 74 20 49 4d  RY;....struct IM
164e0 41 47 45 5f 49 4d 50 4f 52 54 5f 42 59 5f 4e 41  AGE_IMPORT_BY_NA
164f0 4d 45 20 7b 0d 0a 09 57 4f 52 44 20 48 69 6e 74  ME {...WORD Hint
16500 3b 0d 0a 09 42 59 54 45 20 5f 4e 61 6d 65 3b 0d  ;...BYTE _Name;.
16510 0a 0d 0a 09 42 59 54 45 2a 20 4e 61 6d 65 28 29  ....BYTE* Name()
16520 20 7b 0d 0a 09 09 72 65 74 75 72 6e 20 26 5f 4e   {....return &_N
16530 61 6d 65 3b 0d 0a 09 7d 0d 0a 7d 0d 0a 61 6c 69  ame;...}..}..ali
16540 61 73 20 49 4d 41 47 45 5f 49 4d 50 4f 52 54 5f  as IMAGE_IMPORT_
16550 42 59 5f 4e 41 4d 45 2a 20 50 49 4d 41 47 45 5f  BY_NAME* PIMAGE_
16560 49 4d 50 4f 52 54 5f 42 59 5f 4e 41 4d 45 3b 0d  IMPORT_BY_NAME;.
16570 0a 0d 0a 73 74 72 75 63 74 20 49 4d 41 47 45 5f  ...struct IMAGE_
16580 54 48 55 4e 4b 5f 44 41 54 41 33 32 20 7b 0d 0a  THUNK_DATA32 {..
16590 09 75 6e 69 6f 6e 20 5f 75 31 20 7b 0d 0a 09 09  .union _u1 {....
165a0 44 57 4f 52 44 20 46 6f 72 77 61 72 64 65 72 53  DWORD ForwarderS
165b0 74 72 69 6e 67 3b 0d 0a 09 09 44 57 4f 52 44 20  tring;....DWORD 
165c0 46 75 6e 63 74 69 6f 6e 3b 0d 0a 09 09 44 57 4f  Function;....DWO
165d0 52 44 20 4f 72 64 69 6e 61 6c 3b 0d 0a 09 09 44  RD Ordinal;....D
165e0 57 4f 52 44 20 41 64 64 72 65 73 73 4f 66 44 61  WORD AddressOfDa
165f0 74 61 3b 0d 0a 09 7d 0d 0a 09 5f 75 31 20 75 31  ta;...}..._u1 u1
16600 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 49 4d 41 47  ;..}..alias IMAG
16610 45 5f 54 48 55 4e 4b 5f 44 41 54 41 33 32 2a 20  E_THUNK_DATA32* 
16620 50 49 4d 41 47 45 5f 54 48 55 4e 4b 5f 44 41 54  PIMAGE_THUNK_DAT
16630 41 33 32 3b 0d 0a 0d 0a 73 74 72 75 63 74 20 49  A32;....struct I
16640 4d 41 47 45 5f 54 48 55 4e 4b 5f 44 41 54 41 36  MAGE_THUNK_DATA6
16650 34 20 7b 0d 0a 09 75 6e 69 6f 6e 20 5f 75 31 20  4 {...union _u1 
16660 7b 0d 0a 09 09 55 4c 4f 4e 47 4c 4f 4e 47 20 46  {....ULONGLONG F
16670 6f 72 77 61 72 64 65 72 53 74 72 69 6e 67 3b 0d  orwarderString;.
16680 0a 09 09 55 4c 4f 4e 47 4c 4f 4e 47 20 46 75 6e  ...ULONGLONG Fun
16690 63 74 69 6f 6e 3b 0d 0a 09 09 55 4c 4f 4e 47 4c  ction;....ULONGL
166a0 4f 4e 47 20 4f 72 64 69 6e 61 6c 3b 0d 0a 09 09  ONG Ordinal;....
166b0 55 4c 4f 4e 47 4c 4f 4e 47 20 41 64 64 72 65 73  ULONGLONG Addres
166c0 73 4f 66 44 61 74 61 3b 0d 0a 09 7d 0d 0a 09 5f  sOfData;...}..._
166d0 75 31 20 75 31 3b 0d 0a 7d 0d 0a 61 6c 69 61 73  u1 u1;..}..alias
166e0 20 49 4d 41 47 45 5f 54 48 55 4e 4b 5f 44 41 54   IMAGE_THUNK_DAT
166f0 41 36 34 2a 20 50 49 4d 41 47 45 5f 54 48 55 4e  A64* PIMAGE_THUN
16700 4b 5f 44 41 54 41 36 34 3b 0d 0a 0d 0a 73 74 72  K_DATA64;....str
16710 75 63 74 20 49 4d 41 47 45 5f 49 4d 50 4f 52 54  uct IMAGE_IMPORT
16720 5f 44 45 53 43 52 49 50 54 4f 52 20 7b 0d 0a 09  _DESCRIPTOR {...
16730 75 6e 69 6f 6e 20 7b 0d 0a 09 09 44 57 4f 52 44  union {....DWORD
16740 20 43 68 61 72 61 63 74 65 72 69 73 74 69 63 73   Characteristics
16750 3b 0d 0a 09 09 44 57 4f 52 44 20 4f 72 69 67 69  ;....DWORD Origi
16760 6e 61 6c 46 69 72 73 74 54 68 75 6e 6b 3b 0d 0a  nalFirstThunk;..
16770 09 7d 0d 0a 09 44 57 4f 52 44 20 54 69 6d 65 44  .}...DWORD TimeD
16780 61 74 65 53 74 61 6d 70 3b 0d 0a 09 44 57 4f 52  ateStamp;...DWOR
16790 44 20 46 6f 72 77 61 72 64 65 72 43 68 61 69 6e  D ForwarderChain
167a0 3b 0d 0a 09 44 57 4f 52 44 20 4e 61 6d 65 3b 0d  ;...DWORD Name;.
167b0 0a 09 44 57 4f 52 44 20 46 69 72 73 74 54 68 75  ..DWORD FirstThu
167c0 6e 6b 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 49 4d  nk;..}..alias IM
167d0 41 47 45 5f 49 4d 50 4f 52 54 5f 44 45 53 43 52  AGE_IMPORT_DESCR
167e0 49 50 54 4f 52 2a 20 50 49 4d 41 47 45 5f 49 4d  IPTOR* PIMAGE_IM
167f0 50 4f 52 54 5f 44 45 53 43 52 49 50 54 4f 52 3b  PORT_DESCRIPTOR;
16800 0d 0a 0d 0a 73 74 72 75 63 74 20 49 4d 41 47 45  ....struct IMAGE
16810 5f 42 4f 55 4e 44 5f 49 4d 50 4f 52 54 5f 44 45  _BOUND_IMPORT_DE
16820 53 43 52 49 50 54 4f 52 20 7b 0d 0a 09 44 57 4f  SCRIPTOR {...DWO
16830 52 44 20 54 69 6d 65 44 61 74 65 53 74 61 6d 70  RD TimeDateStamp
16840 3b 0d 0a 09 57 4f 52 44 20 20 4f 66 66 73 65 74  ;...WORD  Offset
16850 4d 6f 64 75 6c 65 4e 61 6d 65 3b 0d 0a 09 57 4f  ModuleName;...WO
16860 52 44 20 20 4e 75 6d 62 65 72 4f 66 4d 6f 64 75  RD  NumberOfModu
16870 6c 65 46 6f 72 77 61 72 64 65 72 52 65 66 73 3b  leForwarderRefs;
16880 0d 0a 7d 0d 0a 61 6c 69 61 73 20 49 4d 41 47 45  ..}..alias IMAGE
16890 5f 42 4f 55 4e 44 5f 49 4d 50 4f 52 54 5f 44 45  _BOUND_IMPORT_DE
168a0 53 43 52 49 50 54 4f 52 2a 20 50 49 4d 41 47 45  SCRIPTOR* PIMAGE
168b0 5f 42 4f 55 4e 44 5f 49 4d 50 4f 52 54 5f 44 45  _BOUND_IMPORT_DE
168c0 53 43 52 49 50 54 4f 52 3b 0d 0a 0d 0a 73 74 72  SCRIPTOR;....str
168d0 75 63 74 20 49 4d 41 47 45 5f 42 4f 55 4e 44 5f  uct IMAGE_BOUND_
168e0 46 4f 52 57 41 52 44 45 52 5f 52 45 46 20 7b 0d  FORWARDER_REF {.
168f0 0a 09 44 57 4f 52 44 20 54 69 6d 65 44 61 74 65  ..DWORD TimeDate
16900 53 74 61 6d 70 3b 0d 0a 09 57 4f 52 44 20 20 4f  Stamp;...WORD  O
16910 66 66 73 65 74 4d 6f 64 75 6c 65 4e 61 6d 65 3b  ffsetModuleName;
16920 0d 0a 09 57 4f 52 44 20 20 52 65 73 65 72 76 65  ...WORD  Reserve
16930 64 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 49 4d 41  d;..}..alias IMA
16940 47 45 5f 42 4f 55 4e 44 5f 46 4f 52 57 41 52 44  GE_BOUND_FORWARD
16950 45 52 5f 52 45 46 2a 20 50 49 4d 41 47 45 5f 42  ER_REF* PIMAGE_B
16960 4f 55 4e 44 5f 46 4f 52 57 41 52 44 45 52 5f 52  OUND_FORWARDER_R
16970 45 46 3b 0d 0a 0d 0a 73 74 72 75 63 74 20 49 4d  EF;....struct IM
16980 41 47 45 5f 54 4c 53 5f 44 49 52 45 43 54 4f 52  AGE_TLS_DIRECTOR
16990 59 33 32 20 7b 0d 0a 09 44 57 4f 52 44 20 53 74  Y32 {...DWORD St
169a0 61 72 74 41 64 64 72 65 73 73 4f 66 52 61 77 44  artAddressOfRawD
169b0 61 74 61 3b 0d 0a 09 44 57 4f 52 44 20 45 6e 64  ata;...DWORD End
169c0 41 64 64 72 65 73 73 4f 66 52 61 77 44 61 74 61  AddressOfRawData
169d0 3b 0d 0a 09 44 57 4f 52 44 20 41 64 64 72 65 73  ;...DWORD Addres
169e0 73 4f 66 49 6e 64 65 78 3b 0d 0a 09 44 57 4f 52  sOfIndex;...DWOR
169f0 44 20 41 64 64 72 65 73 73 4f 66 43 61 6c 6c 42  D AddressOfCallB
16a00 61 63 6b 73 3b 0d 0a 09 44 57 4f 52 44 20 53 69  acks;...DWORD Si
16a10 7a 65 4f 66 5a 65 72 6f 46 69 6c 6c 3b 0d 0a 09  zeOfZeroFill;...
16a20 44 57 4f 52 44 20 43 68 61 72 61 63 74 65 72 69  DWORD Characteri
16a30 73 74 69 63 73 3b 0d 0a 7d 0d 0a 61 6c 69 61 73  stics;..}..alias
16a40 20 49 4d 41 47 45 5f 54 4c 53 5f 44 49 52 45 43   IMAGE_TLS_DIREC
16a50 54 4f 52 59 33 32 2a 20 50 49 4d 41 47 45 5f 54  TORY32* PIMAGE_T
16a60 4c 53 5f 44 49 52 45 43 54 4f 52 59 33 32 3b 0d  LS_DIRECTORY32;.
16a70 0a 0d 0a 73 74 72 75 63 74 20 49 4d 41 47 45 5f  ...struct IMAGE_
16a80 54 4c 53 5f 44 49 52 45 43 54 4f 52 59 36 34 20  TLS_DIRECTORY64 
16a90 7b 0d 0a 09 55 4c 4f 4e 47 4c 4f 4e 47 20 53 74  {...ULONGLONG St
16aa0 61 72 74 41 64 64 72 65 73 73 4f 66 52 61 77 44  artAddressOfRawD
16ab0 61 74 61 3b 0d 0a 09 55 4c 4f 4e 47 4c 4f 4e 47  ata;...ULONGLONG
16ac0 20 45 6e 64 41 64 64 72 65 73 73 4f 66 52 61 77   EndAddressOfRaw
16ad0 44 61 74 61 3b 0d 0a 09 55 4c 4f 4e 47 4c 4f 4e  Data;...ULONGLON
16ae0 47 20 41 64 64 72 65 73 73 4f 66 49 6e 64 65 78  G AddressOfIndex
16af0 3b 0d 0a 09 55 4c 4f 4e 47 4c 4f 4e 47 20 41 64  ;...ULONGLONG Ad
16b00 64 72 65 73 73 4f 66 43 61 6c 6c 42 61 63 6b 73  dressOfCallBacks
16b10 3b 0d 0a 09 44 57 4f 52 44 20 20 20 20 20 53 69  ;...DWORD     Si
16b20 7a 65 4f 66 5a 65 72 6f 46 69 6c 6c 3b 0d 0a 09  zeOfZeroFill;...
16b30 44 57 4f 52 44 20 20 20 20 20 43 68 61 72 61 63  DWORD     Charac
16b40 74 65 72 69 73 74 69 63 73 3b 0d 0a 7d 0d 0a 61  teristics;..}..a
16b50 6c 69 61 73 20 49 4d 41 47 45 5f 54 4c 53 5f 44  lias IMAGE_TLS_D
16b60 49 52 45 43 54 4f 52 59 36 34 2a 20 50 49 4d 41  IRECTORY64* PIMA
16b70 47 45 5f 54 4c 53 5f 44 49 52 45 43 54 4f 52 59  GE_TLS_DIRECTORY
16b80 36 34 3b 0d 0a 0d 0a 73 74 72 75 63 74 20 49 4d  64;....struct IM
16b90 41 47 45 5f 52 45 53 4f 55 52 43 45 5f 44 49 52  AGE_RESOURCE_DIR
16ba0 45 43 54 4f 52 59 20 7b 0d 0a 09 44 57 4f 52 44  ECTORY {...DWORD
16bb0 20 43 68 61 72 61 63 74 65 72 69 73 74 69 63 73   Characteristics
16bc0 3b 0d 0a 09 44 57 4f 52 44 20 54 69 6d 65 44 61  ;...DWORD TimeDa
16bd0 74 65 53 74 61 6d 70 3b 0d 0a 09 57 4f 52 44 20  teStamp;...WORD 
16be0 20 4d 61 6a 6f 72 56 65 72 73 69 6f 6e 3b 0d 0a   MajorVersion;..
16bf0 09 57 4f 52 44 20 20 4d 69 6e 6f 72 56 65 72 73  .WORD  MinorVers
16c00 69 6f 6e 3b 0d 0a 09 57 4f 52 44 20 20 4e 75 6d  ion;...WORD  Num
16c10 62 65 72 4f 66 4e 61 6d 65 64 45 6e 74 72 69 65  berOfNamedEntrie
16c20 73 3b 0d 0a 09 57 4f 52 44 20 20 4e 75 6d 62 65  s;...WORD  Numbe
16c30 72 4f 66 49 64 45 6e 74 72 69 65 73 3b 0d 0a 7d  rOfIdEntries;..}
16c40 0d 0a 61 6c 69 61 73 20 49 4d 41 47 45 5f 52 45  ..alias IMAGE_RE
16c50 53 4f 55 52 43 45 5f 44 49 52 45 43 54 4f 52 59  SOURCE_DIRECTORY
16c60 2a 20 50 49 4d 41 47 45 5f 52 45 53 4f 55 52 43  * PIMAGE_RESOURC
16c70 45 5f 44 49 52 45 43 54 4f 52 59 3b 0d 0a 0d 0a  E_DIRECTORY;....
16c80 73 74 72 75 63 74 20 49 4d 41 47 45 5f 52 45 53  struct IMAGE_RES
16c90 4f 55 52 43 45 5f 44 49 52 45 43 54 4f 52 59 5f  OURCE_DIRECTORY_
16ca0 45 4e 54 52 59 20 7b 0d 0a 09 75 6e 69 6f 6e 20  ENTRY {...union 
16cb0 7b 0d 0a 09 09 2f 2b 73 74 72 75 63 74 20 7b 0d  {..../+struct {.
16cc0 0a 09 09 09 44 57 4f 52 44 20 4e 61 6d 65 4f 66  ....DWORD NameOf
16cd0 66 73 65 74 3a 33 31 3b 0d 0a 09 09 09 44 57 4f  fset:31;.....DWO
16ce0 52 44 20 4e 61 6d 65 49 73 53 74 72 69 6e 67 3a  RD NameIsString:
16cf0 31 3b 0d 0a 09 09 7d 2b 2f 0d 0a 09 09 44 57 4f  1;....}+/....DWO
16d00 52 44 20 4e 61 6d 65 3b 0d 0a 09 09 57 4f 52 44  RD Name;....WORD
16d10 20 49 64 3b 0d 0a 09 7d 0d 0a 09 44 57 4f 52 44   Id;...}...DWORD
16d20 20 4f 66 66 73 65 74 54 6f 44 61 74 61 3b 0d 0a   OffsetToData;..
16d30 09 09 2f 2b 73 74 72 75 63 74 20 7b 0d 0a 09 09  ../+struct {....
16d40 09 44 57 4f 52 44 20 4f 66 66 73 65 74 54 6f 44  .DWORD OffsetToD
16d50 69 72 65 63 74 6f 72 79 3a 33 31 3b 0d 0a 09 09  irectory:31;....
16d60 09 44 57 4f 52 44 20 44 61 74 61 49 73 44 69 72  .DWORD DataIsDir
16d70 65 63 74 6f 72 79 3a 31 3b 0d 0a 09 09 7d 2b 2f  ectory:1;....}+/
16d80 0d 0a 0d 0a 09 75 69 6e 74 20 4e 61 6d 65 4f 66  .....uint NameOf
16d90 66 73 65 74 28 29 20 20 20 20 20 20 20 20 7b 20  fset()        { 
16da0 72 65 74 75 72 6e 20 4e 61 6d 65 20 26 20 30 78  return Name & 0x
16db0 37 46 46 46 46 46 46 46 3b 20 7d 0d 0a 09 62 6f  7FFFFFFF; }...bo
16dc0 6f 6c 20 4e 61 6d 65 49 73 53 74 72 69 6e 67 28  ol NameIsString(
16dd0 29 20 20 20 20 20 20 7b 20 72 65 74 75 72 6e 20  )      { return 
16de0 63 61 73 74 28 62 6f 6f 6c 29 28 4e 61 6d 65 20  cast(bool)(Name 
16df0 26 20 30 78 38 30 30 30 30 30 30 30 29 3b 20 7d  & 0x80000000); }
16e00 0d 0a 09 75 69 6e 74 20 4f 66 66 73 65 74 54 6f  ...uint OffsetTo
16e10 44 69 72 65 63 74 6f 72 79 28 29 20 7b 20 72 65  Directory() { re
16e20 74 75 72 6e 20 4f 66 66 73 65 74 54 6f 44 61 74  turn OffsetToDat
16e30 61 20 26 20 30 78 37 46 46 46 46 46 46 46 3b 20  a & 0x7FFFFFFF; 
16e40 7d 0d 0a 09 62 6f 6f 6c 20 44 61 74 61 49 73 44  }...bool DataIsD
16e50 69 72 65 63 74 6f 72 79 28 29 20 20 20 7b 20 72  irectory()   { r
16e60 65 74 75 72 6e 20 63 61 73 74 28 62 6f 6f 6c 29  eturn cast(bool)
16e70 28 4f 66 66 73 65 74 54 6f 44 61 74 61 20 26 20  (OffsetToData & 
16e80 30 78 38 30 30 30 30 30 30 30 29 3b 20 7d 0d 0a  0x80000000); }..
16e90 0d 0a 09 75 69 6e 74 20 4e 61 6d 65 4f 66 66 73  ...uint NameOffs
16ea0 65 74 28 75 69 6e 74 20 6e 29 20 7b 0d 0a 09 09  et(uint n) {....
16eb0 4e 61 6d 65 20 3d 20 28 4e 61 6d 65 20 26 20 30  Name = (Name & 0
16ec0 78 38 30 30 30 30 30 30 30 29 20 7c 20 28 6e 20  x80000000) | (n 
16ed0 26 20 30 78 37 46 46 46 46 46 46 46 29 3b 0d 0a  & 0x7FFFFFFF);..
16ee0 09 09 72 65 74 75 72 6e 20 6e 20 26 20 30 78 37  ..return n & 0x7
16ef0 46 46 46 46 46 46 46 3b 0d 0a 09 7d 0d 0a 0d 0a  FFFFFFF;...}....
16f00 09 62 6f 6f 6c 20 4e 61 6d 65 49 73 53 74 72 69  .bool NameIsStri
16f10 6e 67 28 62 6f 6f 6c 20 6e 29 20 7b 0d 0a 09 09  ng(bool n) {....
16f20 4e 61 6d 65 20 3d 20 28 4e 61 6d 65 20 26 20 30  Name = (Name & 0
16f30 78 37 46 46 46 46 46 46 46 29 20 7c 20 28 6e 20  x7FFFFFFF) | (n 
16f40 3c 3c 20 33 31 29 3b 20 72 65 74 75 72 6e 20 6e  << 31); return n
16f50 3b 0d 0a 09 7d 0d 0a 0d 0a 09 75 69 6e 74 20 4f  ;...}.....uint O
16f60 66 66 73 65 74 54 6f 44 69 72 65 63 74 6f 72 79  ffsetToDirectory
16f70 28 75 69 6e 74 20 6f 29 20 7b 0d 0a 09 09 4f 66  (uint o) {....Of
16f80 66 73 65 74 54 6f 44 61 74 61 20 3d 20 28 4f 66  fsetToData = (Of
16f90 66 73 65 74 54 6f 44 61 74 61 20 26 20 30 78 38  fsetToData & 0x8
16fa0 30 30 30 30 30 30 30 29 20 7c 20 28 6f 20 26 20  0000000) | (o & 
16fb0 30 78 37 46 46 46 46 46 46 46 29 3b 0d 0a 09 09  0x7FFFFFFF);....
16fc0 72 65 74 75 72 6e 20 6f 20 26 20 30 78 37 46 46  return o & 0x7FF
16fd0 46 46 46 46 46 3b 0d 0a 09 7d 0d 0a 0d 0a 09 62  FFFFF;...}.....b
16fe0 6f 6f 6c 20 44 61 74 61 49 73 44 69 72 65 63 74  ool DataIsDirect
16ff0 6f 72 79 28 62 6f 6f 6c 20 64 29 20 7b 0d 0a 09  ory(bool d) {...
17000 09 4f 66 66 73 65 74 54 6f 44 61 74 61 20 3d 20  .OffsetToData = 
17010 28 4f 66 66 73 65 74 54 6f 44 61 74 61 20 26 20  (OffsetToData & 
17020 30 78 37 46 46 46 46 46 46 46 29 20 7c 20 28 64  0x7FFFFFFF) | (d
17030 20 3c 3c 20 33 31 29 3b 20 72 65 74 75 72 6e 20   << 31); return 
17040 64 3b 0d 0a 09 7d 0d 0a 7d 0d 0a 61 6c 69 61 73  d;...}..}..alias
17050 20 49 4d 41 47 45 5f 52 45 53 4f 55 52 43 45 5f   IMAGE_RESOURCE_
17060 44 49 52 45 43 54 4f 52 59 5f 45 4e 54 52 59 2a  DIRECTORY_ENTRY*
17070 20 50 49 4d 41 47 45 5f 52 45 53 4f 55 52 43 45   PIMAGE_RESOURCE
17080 5f 44 49 52 45 43 54 4f 52 59 5f 45 4e 54 52 59  _DIRECTORY_ENTRY
17090 3b 0d 0a 0d 0a 73 74 72 75 63 74 20 49 4d 41 47  ;....struct IMAG
170a0 45 5f 52 45 53 4f 55 52 43 45 5f 44 49 52 45 43  E_RESOURCE_DIREC
170b0 54 4f 52 59 5f 53 54 52 49 4e 47 20 7b 0d 0a 09  TORY_STRING {...
170c0 57 4f 52 44 20 4c 65 6e 67 74 68 3b 0d 0a 09 43  WORD Length;...C
170d0 48 41 52 20 5f 4e 61 6d 65 53 74 72 69 6e 67 3b  HAR _NameString;
170e0 0d 0a 0d 0a 09 43 48 41 52 2a 20 4e 61 6d 65 53  .....CHAR* NameS
170f0 74 72 69 6e 67 28 29 20 7b 20 72 65 74 75 72 6e  tring() { return
17100 20 26 5f 4e 61 6d 65 53 74 72 69 6e 67 3b 20 7d   &_NameString; }
17110 0d 0a 7d 0d 0a 61 6c 69 61 73 20 49 4d 41 47 45  ..}..alias IMAGE
17120 5f 52 45 53 4f 55 52 43 45 5f 44 49 52 45 43 54  _RESOURCE_DIRECT
17130 4f 52 59 5f 53 54 52 49 4e 47 2a 20 50 49 4d 41  ORY_STRING* PIMA
17140 47 45 5f 52 45 53 4f 55 52 43 45 5f 44 49 52 45  GE_RESOURCE_DIRE
17150 43 54 4f 52 59 5f 53 54 52 49 4e 47 3b 0d 0a 0d  CTORY_STRING;...
17160 0a 73 74 72 75 63 74 20 49 4d 41 47 45 5f 52 45  .struct IMAGE_RE
17170 53 4f 55 52 43 45 5f 44 49 52 5f 53 54 52 49 4e  SOURCE_DIR_STRIN
17180 47 5f 55 20 7b 0d 0a 09 57 4f 52 44 20 20 4c 65  G_U {...WORD  Le
17190 6e 67 74 68 3b 0d 0a 09 57 43 48 41 52 20 5f 4e  ngth;...WCHAR _N
171a0 61 6d 65 53 74 72 69 6e 67 3b 0d 0a 0d 0a 09 57  ameString;.....W
171b0 43 48 41 52 2a 20 4e 61 6d 65 53 74 72 69 6e 67  CHAR* NameString
171c0 28 29 20 7b 20 72 65 74 75 72 6e 20 26 5f 4e 61  () { return &_Na
171d0 6d 65 53 74 72 69 6e 67 3b 20 7d 0d 0a 7d 0d 0a  meString; }..}..
171e0 61 6c 69 61 73 20 49 4d 41 47 45 5f 52 45 53 4f  alias IMAGE_RESO
171f0 55 52 43 45 5f 44 49 52 5f 53 54 52 49 4e 47 5f  URCE_DIR_STRING_
17200 55 2a 20 50 49 4d 41 47 45 5f 52 45 53 4f 55 52  U* PIMAGE_RESOUR
17210 43 45 5f 44 49 52 5f 53 54 52 49 4e 47 5f 55 3b  CE_DIR_STRING_U;
17220 0d 0a 0d 0a 73 74 72 75 63 74 20 49 4d 41 47 45  ....struct IMAGE
17230 5f 52 45 53 4f 55 52 43 45 5f 44 41 54 41 5f 45  _RESOURCE_DATA_E
17240 4e 54 52 59 20 7b 0d 0a 09 44 57 4f 52 44 20 4f  NTRY {...DWORD O
17250 66 66 73 65 74 54 6f 44 61 74 61 3b 0d 0a 09 44  ffsetToData;...D
17260 57 4f 52 44 20 53 69 7a 65 3b 0d 0a 09 44 57 4f  WORD Size;...DWO
17270 52 44 20 43 6f 64 65 50 61 67 65 3b 0d 0a 09 44  RD CodePage;...D
17280 57 4f 52 44 20 52 65 73 65 72 76 65 64 3b 0d 0a  WORD Reserved;..
17290 7d 0d 0a 61 6c 69 61 73 20 49 4d 41 47 45 5f 52  }..alias IMAGE_R
172a0 45 53 4f 55 52 43 45 5f 44 41 54 41 5f 45 4e 54  ESOURCE_DATA_ENT
172b0 52 59 2a 20 50 49 4d 41 47 45 5f 52 45 53 4f 55  RY* PIMAGE_RESOU
172c0 52 43 45 5f 44 41 54 41 5f 45 4e 54 52 59 3b 0d  RCE_DATA_ENTRY;.
172d0 0a 0d 0a 73 74 72 75 63 74 20 49 4d 41 47 45 5f  ...struct IMAGE_
172e0 4c 4f 41 44 5f 43 4f 4e 46 49 47 5f 44 49 52 45  LOAD_CONFIG_DIRE
172f0 43 54 4f 52 59 20 7b 0d 0a 09 44 57 4f 52 44 20  CTORY {...DWORD 
17300 20 20 20 43 68 61 72 61 63 74 65 72 69 73 74 69     Characteristi
17310 63 73 3b 0d 0a 09 44 57 4f 52 44 20 20 20 20 54  cs;...DWORD    T
17320 69 6d 65 44 61 74 65 53 74 61 6d 70 3b 0d 0a 09  imeDateStamp;...
17330 57 4f 52 44 20 20 20 20 20 4d 61 6a 6f 72 56 65  WORD     MajorVe
17340 72 73 69 6f 6e 3b 0d 0a 09 57 4f 52 44 20 20 20  rsion;...WORD   
17350 20 20 4d 69 6e 6f 72 56 65 72 73 69 6f 6e 3b 0d    MinorVersion;.
17360 0a 09 44 57 4f 52 44 20 20 20 20 47 6c 6f 62 61  ..DWORD    Globa
17370 6c 46 6c 61 67 73 43 6c 65 61 72 3b 0d 0a 09 44  lFlagsClear;...D
17380 57 4f 52 44 20 20 20 20 47 6c 6f 62 61 6c 46 6c  WORD    GlobalFl
17390 61 67 73 53 65 74 3b 0d 0a 09 44 57 4f 52 44 20  agsSet;...DWORD 
173a0 20 20 20 43 72 69 74 69 63 61 6c 53 65 63 74 69     CriticalSecti
173b0 6f 6e 44 65 66 61 75 6c 74 54 69 6d 65 6f 75 74  onDefaultTimeout
173c0 3b 0d 0a 09 44 57 4f 52 44 20 20 20 20 44 65 43  ;...DWORD    DeC
173d0 6f 6d 6d 69 74 46 72 65 65 42 6c 6f 63 6b 54 68  ommitFreeBlockTh
173e0 72 65 73 68 6f 6c 64 3b 0d 0a 09 44 57 4f 52 44  reshold;...DWORD
173f0 20 20 20 20 44 65 43 6f 6d 6d 69 74 54 6f 74 61      DeCommitTota
17400 6c 46 72 65 65 54 68 72 65 73 68 6f 6c 64 3b 0d  lFreeThreshold;.
17410 0a 09 50 56 4f 49 44 20 20 20 20 4c 6f 63 6b 50  ..PVOID    LockP
17420 72 65 66 69 78 54 61 62 6c 65 3b 0d 0a 09 44 57  refixTable;...DW
17430 4f 52 44 20 20 20 20 4d 61 78 69 6d 75 6d 41 6c  ORD    MaximumAl
17440 6c 6f 63 61 74 69 6f 6e 53 69 7a 65 3b 0d 0a 09  locationSize;...
17450 44 57 4f 52 44 20 20 20 20 56 69 72 74 75 61 6c  DWORD    Virtual
17460 4d 65 6d 6f 72 79 54 68 72 65 73 68 6f 6c 64 3b  MemoryThreshold;
17470 0d 0a 09 44 57 4f 52 44 20 20 20 20 50 72 6f 63  ...DWORD    Proc
17480 65 73 73 48 65 61 70 46 6c 61 67 73 3b 0d 0a 09  essHeapFlags;...
17490 44 57 4f 52 44 5b 34 5d 20 52 65 73 65 72 76 65  DWORD[4] Reserve
174a0 64 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 49 4d 41  d;..}..alias IMA
174b0 47 45 5f 4c 4f 41 44 5f 43 4f 4e 46 49 47 5f 44  GE_LOAD_CONFIG_D
174c0 49 52 45 43 54 4f 52 59 2a 20 50 49 4d 41 47 45  IRECTORY* PIMAGE
174d0 5f 4c 4f 41 44 5f 43 4f 4e 46 49 47 5f 44 49 52  _LOAD_CONFIG_DIR
174e0 45 43 54 4f 52 59 3b 0d 0a 0d 0a 73 74 72 75 63  ECTORY;....struc
174f0 74 20 49 4d 41 47 45 5f 4c 4f 41 44 5f 43 4f 4e  t IMAGE_LOAD_CON
17500 46 49 47 5f 44 49 52 45 43 54 4f 52 59 36 34 20  FIG_DIRECTORY64 
17510 7b 0d 0a 09 44 57 4f 52 44 20 20 20 20 20 43 68  {...DWORD     Ch
17520 61 72 61 63 74 65 72 69 73 74 69 63 73 3b 0d 0a  aracteristics;..
17530 09 44 57 4f 52 44 20 20 20 20 20 54 69 6d 65 44  .DWORD     TimeD
17540 61 74 65 53 74 61 6d 70 3b 0d 0a 09 57 4f 52 44  ateStamp;...WORD
17550 20 20 20 20 20 20 4d 61 6a 6f 72 56 65 72 73 69        MajorVersi
17560 6f 6e 3b 0d 0a 09 57 4f 52 44 20 20 20 20 20 20  on;...WORD      
17570 4d 69 6e 6f 72 56 65 72 73 69 6f 6e 3b 0d 0a 09  MinorVersion;...
17580 44 57 4f 52 44 20 20 20 20 20 47 6c 6f 62 61 6c  DWORD     Global
17590 46 6c 61 67 73 43 6c 65 61 72 3b 0d 0a 09 44 57  FlagsClear;...DW
175a0 4f 52 44 20 20 20 20 20 47 6c 6f 62 61 6c 46 6c  ORD     GlobalFl
175b0 61 67 73 53 65 74 3b 0d 0a 09 44 57 4f 52 44 20  agsSet;...DWORD 
175c0 20 20 20 20 43 72 69 74 69 63 61 6c 53 65 63 74      CriticalSect
175d0 69 6f 6e 44 65 66 61 75 6c 74 54 69 6d 65 6f 75  ionDefaultTimeou
175e0 74 3b 0d 0a 09 55 4c 4f 4e 47 4c 4f 4e 47 20 44  t;...ULONGLONG D
175f0 65 43 6f 6d 6d 69 74 46 72 65 65 42 6c 6f 63 6b  eCommitFreeBlock
17600 54 68 72 65 73 68 6f 6c 64 3b 0d 0a 09 55 4c 4f  Threshold;...ULO
17610 4e 47 4c 4f 4e 47 20 44 65 43 6f 6d 6d 69 74 54  NGLONG DeCommitT
17620 6f 74 61 6c 46 72 65 65 54 68 72 65 73 68 6f 6c  otalFreeThreshol
17630 64 3b 0d 0a 09 55 4c 4f 4e 47 4c 4f 4e 47 20 4c  d;...ULONGLONG L
17640 6f 63 6b 50 72 65 66 69 78 54 61 62 6c 65 3b 0d  ockPrefixTable;.
17650 0a 09 55 4c 4f 4e 47 4c 4f 4e 47 20 4d 61 78 69  ..ULONGLONG Maxi
17660 6d 75 6d 41 6c 6c 6f 63 61 74 69 6f 6e 53 69 7a  mumAllocationSiz
17670 65 3b 0d 0a 09 55 4c 4f 4e 47 4c 4f 4e 47 20 56  e;...ULONGLONG V
17680 69 72 74 75 61 6c 4d 65 6d 6f 72 79 54 68 72 65  irtualMemoryThre
17690 73 68 6f 6c 64 3b 0d 0a 09 55 4c 4f 4e 47 4c 4f  shold;...ULONGLO
176a0 4e 47 20 50 72 6f 63 65 73 73 41 66 66 69 6e 69  NG ProcessAffini
176b0 74 79 4d 61 73 6b 3b 0d 0a 09 44 57 4f 52 44 20  tyMask;...DWORD 
176c0 20 20 20 20 50 72 6f 63 65 73 73 48 65 61 70 46      ProcessHeapF
176d0 6c 61 67 73 3b 0d 0a 09 57 4f 52 44 20 20 20 20  lags;...WORD    
176e0 20 20 43 53 44 46 6c 61 67 73 3b 0d 0a 09 57 4f    CSDFlags;...WO
176f0 52 44 20 20 20 20 20 20 52 65 73 65 72 76 65 64  RD      Reserved
17700 31 3b 0d 0a 09 55 4c 4f 4e 47 4c 4f 4e 47 20 45  1;...ULONGLONG E
17710 64 69 74 4c 69 73 74 3b 0d 0a 09 44 57 4f 52 44  ditList;...DWORD
17720 5b 32 5d 20 20 52 65 73 65 72 76 65 64 3b 0d 0a  [2]  Reserved;..
17730 7d 0d 0a 61 6c 69 61 73 20 49 4d 41 47 45 5f 4c  }..alias IMAGE_L
17740 4f 41 44 5f 43 4f 4e 46 49 47 5f 44 49 52 45 43  OAD_CONFIG_DIREC
17750 54 4f 52 59 36 34 2a 20 50 49 4d 41 47 45 5f 4c  TORY64* PIMAGE_L
17760 4f 41 44 5f 43 4f 4e 46 49 47 5f 44 49 52 45 43  OAD_CONFIG_DIREC
17770 54 4f 52 59 36 34 3b 0d 0a 0d 0a 73 74 72 75 63  TORY64;....struc
17780 74 20 49 4d 41 47 45 5f 52 55 4e 54 49 4d 45 5f  t IMAGE_RUNTIME_
17790 46 55 4e 43 54 49 4f 4e 5f 45 4e 54 52 59 20 7b  FUNCTION_ENTRY {
177a0 0d 0a 09 44 57 4f 52 44 20 42 65 67 69 6e 41 64  ...DWORD BeginAd
177b0 64 72 65 73 73 3b 0d 0a 09 44 57 4f 52 44 20 45  dress;...DWORD E
177c0 6e 64 41 64 64 72 65 73 73 3b 0d 0a 09 50 56 4f  ndAddress;...PVO
177d0 49 44 20 45 78 63 65 70 74 69 6f 6e 48 61 6e 64  ID ExceptionHand
177e0 6c 65 72 3b 0d 0a 09 50 56 4f 49 44 20 48 61 6e  ler;...PVOID Han
177f0 64 6c 65 72 44 61 74 61 3b 0d 0a 09 44 57 4f 52  dlerData;...DWOR
17800 44 20 50 72 6f 6c 6f 67 45 6e 64 41 64 64 72 65  D PrologEndAddre
17810 73 73 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 49 4d  ss;..}..alias IM
17820 41 47 45 5f 52 55 4e 54 49 4d 45 5f 46 55 4e 43  AGE_RUNTIME_FUNC
17830 54 49 4f 4e 5f 45 4e 54 52 59 2a 20 50 49 4d 41  TION_ENTRY* PIMA
17840 47 45 5f 52 55 4e 54 49 4d 45 5f 46 55 4e 43 54  GE_RUNTIME_FUNCT
17850 49 4f 4e 5f 45 4e 54 52 59 3b 0d 0a 0d 0a 73 74  ION_ENTRY;....st
17860 72 75 63 74 20 49 4d 41 47 45 5f 43 45 5f 52 55  ruct IMAGE_CE_RU
17870 4e 54 49 4d 45 5f 46 55 4e 43 54 49 4f 4e 5f 45  NTIME_FUNCTION_E
17880 4e 54 52 59 20 7b 0d 0a 09 75 69 6e 74 20 20 20  NTRY {...uint   
17890 20 20 20 46 75 6e 63 53 74 61 72 74 3b 0d 0a 09     FuncStart;...
178a0 75 6e 69 6f 6e 20 7b 0d 0a 09 09 75 62 79 74 65  union {....ubyte
178b0 20 50 72 6f 6c 6f 67 4c 65 6e 3b 0d 0a 09 09 75   PrologLen;....u
178c0 69 6e 74 20 20 5f 62 66 3b 0d 0a 09 7d 0d 0a 2f  int  _bf;...}../
178d0 2b 0d 0a 09 75 6e 73 69 67 6e 65 64 20 69 6e 74  +...unsigned int
178e0 20 46 75 6e 63 4c 65 6e 3a 32 32 3b 0d 0a 09 75   FuncLen:22;...u
178f0 6e 73 69 67 6e 65 64 20 69 6e 74 20 54 68 69 72  nsigned int Thir
17900 74 79 54 77 6f 42 69 74 3a 31 3b 0d 0a 09 75 6e  tyTwoBit:1;...un
17910 73 69 67 6e 65 64 20 69 6e 74 20 45 78 63 65 70  signed int Excep
17920 74 69 6f 6e 46 6c 61 67 3a 31 3b 0d 0a 2b 2f 0d  tionFlag:1;..+/.
17930 0a 09 75 69 6e 74 20 46 75 6e 63 4c 65 6e 28 29  ..uint FuncLen()
17940 20 20 20 20 20 20 20 7b 20 72 65 74 75 72 6e 20         { return 
17950 28 5f 62 66 20 3e 3e 20 38 29 20 26 20 30 78 33  (_bf >> 8) & 0x3
17960 46 46 46 46 46 3b 20 7d 0d 0a 09 62 6f 6f 6c 20  FFFFF; }...bool 
17970 54 68 69 72 74 79 54 77 6f 42 69 74 28 29 20 20  ThirtyTwoBit()  
17980 7b 20 72 65 74 75 72 6e 20 63 61 73 74 28 62 6f  { return cast(bo
17990 6f 6c 29 28 5f 62 66 20 26 20 30 78 34 30 30 30  ol)(_bf & 0x4000
179a0 30 30 30 30 29 3b 20 7d 0d 0a 09 62 6f 6f 6c 20  0000); }...bool 
179b0 45 78 63 65 70 74 69 6f 6e 46 6c 61 67 28 29 20  ExceptionFlag() 
179c0 7b 20 72 65 74 75 72 6e 20 63 61 73 74 28 62 6f  { return cast(bo
179d0 6f 6c 29 28 5f 62 66 20 26 20 30 78 38 30 30 30  ol)(_bf & 0x8000
179e0 30 30 30 30 29 3b 20 7d 0d 0a 0d 0a 09 75 69 6e  0000); }.....uin
179f0 74 20 46 75 6e 63 4c 65 6e 28 75 69 6e 74 20 66  t FuncLen(uint f
17a00 29 20 7b 0d 0a 09 09 5f 62 66 20 3d 20 28 5f 62  ) {...._bf = (_b
17a10 66 20 26 20 7e 30 78 33 46 46 46 46 46 30 30 29  f & ~0x3FFFFF00)
17a20 20 7c 20 28 28 66 20 26 20 30 78 33 46 46 46 46   | ((f & 0x3FFFF
17a30 46 29 20 3c 3c 20 38 29 3b 20 72 65 74 75 72 6e  F) << 8); return
17a40 20 66 20 26 20 30 78 33 46 46 46 46 46 3b 0d 0a   f & 0x3FFFFF;..
17a50 09 7d 0d 0a 0d 0a 09 62 6f 6f 6c 20 54 68 69 72  .}.....bool Thir
17a60 74 79 54 77 6f 42 69 74 28 62 6f 6f 6c 20 74 29  tyTwoBit(bool t)
17a70 20 7b 0d 0a 09 09 5f 62 66 20 3d 20 28 5f 62 66   {...._bf = (_bf
17a80 20 26 20 7e 30 78 34 30 30 30 30 30 30 30 29 20   & ~0x40000000) 
17a90 7c 20 28 74 20 3c 3c 20 33 30 29 3b 20 72 65 74  | (t << 30); ret
17aa0 75 72 6e 20 74 3b 0d 0a 09 7d 0d 0a 0d 0a 09 62  urn t;...}.....b
17ab0 6f 6f 6c 20 45 78 63 65 70 74 69 6f 6e 46 6c 61  ool ExceptionFla
17ac0 67 28 62 6f 6f 6c 20 65 29 20 7b 0d 0a 09 09 5f  g(bool e) {...._
17ad0 62 66 20 3d 20 28 5f 62 66 20 26 20 7e 30 78 38  bf = (_bf & ~0x8
17ae0 30 30 30 30 30 30 30 29 20 7c 20 28 65 20 3c 3c  0000000) | (e <<
17af0 20 33 31 29 3b 20 72 65 74 75 72 6e 20 65 3b 0d   31); return e;.
17b00 0a 09 7d 0d 0a 7d 0d 0a 61 6c 69 61 73 20 49 4d  ..}..}..alias IM
17b10 41 47 45 5f 43 45 5f 52 55 4e 54 49 4d 45 5f 46  AGE_CE_RUNTIME_F
17b20 55 4e 43 54 49 4f 4e 5f 45 4e 54 52 59 2a 20 50  UNCTION_ENTRY* P
17b30 49 4d 41 47 45 5f 43 45 5f 52 55 4e 54 49 4d 45  IMAGE_CE_RUNTIME
17b40 5f 46 55 4e 43 54 49 4f 4e 5f 45 4e 54 52 59 3b  _FUNCTION_ENTRY;
17b50 0d 0a 0d 0a 73 74 72 75 63 74 20 49 4d 41 47 45  ....struct IMAGE
17b60 5f 44 45 42 55 47 5f 44 49 52 45 43 54 4f 52 59  _DEBUG_DIRECTORY
17b70 20 7b 0d 0a 09 44 57 4f 52 44 20 43 68 61 72 61   {...DWORD Chara
17b80 63 74 65 72 69 73 74 69 63 73 3b 0d 0a 09 44 57  cteristics;...DW
17b90 4f 52 44 20 54 69 6d 65 44 61 74 65 53 74 61 6d  ORD TimeDateStam
17ba0 70 3b 0d 0a 09 57 4f 52 44 20 20 4d 61 6a 6f 72  p;...WORD  Major
17bb0 56 65 72 73 69 6f 6e 3b 0d 0a 09 57 4f 52 44 20  Version;...WORD 
17bc0 20 4d 69 6e 6f 72 56 65 72 73 69 6f 6e 3b 0d 0a   MinorVersion;..
17bd0 09 44 57 4f 52 44 20 54 79 70 65 3b 0d 0a 09 44  .DWORD Type;...D
17be0 57 4f 52 44 20 53 69 7a 65 4f 66 44 61 74 61 3b  WORD SizeOfData;
17bf0 0d 0a 09 44 57 4f 52 44 20 41 64 64 72 65 73 73  ...DWORD Address
17c00 4f 66 52 61 77 44 61 74 61 3b 0d 0a 09 44 57 4f  OfRawData;...DWO
17c10 52 44 20 50 6f 69 6e 74 65 72 54 6f 52 61 77 44  RD PointerToRawD
17c20 61 74 61 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 49  ata;..}..alias I
17c30 4d 41 47 45 5f 44 45 42 55 47 5f 44 49 52 45 43  MAGE_DEBUG_DIREC
17c40 54 4f 52 59 2a 20 50 49 4d 41 47 45 5f 44 45 42  TORY* PIMAGE_DEB
17c50 55 47 5f 44 49 52 45 43 54 4f 52 59 3b 0d 0a 0d  UG_DIRECTORY;...
17c60 0a 73 74 72 75 63 74 20 46 50 4f 5f 44 41 54 41  .struct FPO_DATA
17c70 20 7b 0d 0a 09 44 57 4f 52 44 20 20 75 6c 4f 66   {...DWORD  ulOf
17c80 66 53 74 61 72 74 3b 0d 0a 09 44 57 4f 52 44 20  fStart;...DWORD 
17c90 20 63 62 50 72 6f 63 53 69 7a 65 3b 0d 0a 09 44   cbProcSize;...D
17ca0 57 4f 52 44 20 20 63 64 77 4c 6f 63 61 6c 73 3b  WORD  cdwLocals;
17cb0 0d 0a 09 57 4f 52 44 20 20 20 63 64 77 50 61 72  ...WORD   cdwPar
17cc0 61 6d 73 3b 0d 0a 09 75 62 79 74 65 20 20 63 62  ams;...ubyte  cb
17cd0 50 72 6f 6c 6f 67 3b 0d 0a 09 75 62 79 74 65 20  Prolog;...ubyte 
17ce0 20 5f 62 66 3b 0d 0a 2f 2b 0d 0a 09 57 4f 52 44   _bf;../+...WORD
17cf0 20 63 62 52 65 67 73 3a 33 3b 0d 0a 09 57 4f 52   cbRegs:3;...WOR
17d00 44 20 66 48 61 73 53 45 48 3a 31 3b 0d 0a 09 57  D fHasSEH:1;...W
17d10 4f 52 44 20 66 55 73 65 42 50 3a 31 3b 0d 0a 09  ORD fUseBP:1;...
17d20 57 4f 52 44 20 72 65 73 65 72 76 65 64 3a 31 3b  WORD reserved:1;
17d30 0d 0a 09 57 4f 52 44 20 63 62 46 72 61 6d 65 3a  ...WORD cbFrame:
17d40 32 3b 0d 0a 2b 2f 0d 0a 09 75 62 79 74 65 20 63  2;..+/...ubyte c
17d50 62 52 65 67 73 28 29 20 20 7b 20 72 65 74 75 72  bRegs()  { retur
17d60 6e 20 63 61 73 74 28 75 62 79 74 65 29 28 5f 62  n cast(ubyte)(_b
17d70 66 20 26 20 30 78 30 37 29 3b 20 7d 0d 0a 09 62  f & 0x07); }...b
17d80 6f 6f 6c 20 66 48 61 73 53 45 48 28 29 20 20 7b  ool fHasSEH()  {
17d90 20 72 65 74 75 72 6e 20 63 61 73 74 28 62 6f 6f   return cast(boo
17da0 6c 29 28 5f 62 66 20 26 20 30 78 30 38 29 3b 20  l)(_bf & 0x08); 
17db0 7d 0d 0a 09 62 6f 6f 6c 20 66 55 73 65 42 50 28  }...bool fUseBP(
17dc0 29 20 20 20 7b 20 72 65 74 75 72 6e 20 63 61 73  )   { return cas
17dd0 74 28 62 6f 6f 6c 29 28 5f 62 66 20 26 20 30 78  t(bool)(_bf & 0x
17de0 31 30 29 3b 20 7d 0d 0a 09 62 6f 6f 6c 20 72 65  10); }...bool re
17df0 73 65 72 76 65 64 28 29 20 7b 20 72 65 74 75 72  served() { retur
17e00 6e 20 63 61 73 74 28 62 6f 6f 6c 29 28 5f 62 66  n cast(bool)(_bf
17e10 20 26 20 30 78 32 30 29 3b 20 7d 0d 0a 09 75 62   & 0x20); }...ub
17e20 79 74 65 20 63 62 46 72 61 6d 65 28 29 20 7b 20  yte cbFrame() { 
17e30 72 65 74 75 72 6e 20 63 61 73 74 28 75 62 79 74  return cast(ubyt
17e40 65 29 28 5f 62 66 20 3e 3e 20 36 29 3b 20 7d 0d  e)(_bf >> 6); }.
17e50 0a 0d 0a 09 75 62 79 74 65 20 63 62 52 65 67 73  ....ubyte cbRegs
17e60 28 75 62 79 74 65 20 63 29 20 7b 0d 0a 09 09 5f  (ubyte c) {...._
17e70 62 66 20 3d 20 63 61 73 74 28 75 62 79 74 65 29  bf = cast(ubyte)
17e80 20 28 28 5f 62 66 20 26 20 7e 30 78 30 37 29 20   ((_bf & ~0x07) 
17e90 7c 20 28 63 20 26 20 30 78 30 37 29 29 3b 0d 0a  | (c & 0x07));..
17ea0 09 09 72 65 74 75 72 6e 20 63 61 73 74 28 75 62  ..return cast(ub
17eb0 79 74 65 29 28 63 20 26 20 30 78 30 37 29 3b 0d  yte)(c & 0x07);.
17ec0 0a 09 7d 0d 0a 0d 0a 09 62 6f 6f 6c 20 66 48 61  ..}.....bool fHa
17ed0 73 53 45 48 28 62 6f 6f 6c 20 66 29 20 20 7b 20  sSEH(bool f)  { 
17ee0 5f 62 66 20 3d 20 63 61 73 74 28 75 62 79 74 65  _bf = cast(ubyte
17ef0 29 28 28 5f 62 66 20 26 20 7e 30 78 30 38 29 20  )((_bf & ~0x08) 
17f00 7c 20 28 66 20 3c 3c 20 33 29 29 3b 20 72 65 74  | (f << 3)); ret
17f10 75 72 6e 20 66 3b 20 7d 0d 0a 09 62 6f 6f 6c 20  urn f; }...bool 
17f20 66 55 73 65 42 50 28 62 6f 6f 6c 20 66 29 20 20  fUseBP(bool f)  
17f30 20 7b 20 5f 62 66 20 3d 20 63 61 73 74 28 75 62   { _bf = cast(ub
17f40 79 74 65 29 28 28 5f 62 66 20 26 20 7e 30 78 31  yte)((_bf & ~0x1
17f50 30 29 20 7c 20 28 66 20 3c 3c 20 34 29 29 3b 20  0) | (f << 4)); 
17f60 72 65 74 75 72 6e 20 66 3b 20 7d 0d 0a 09 62 6f  return f; }...bo
17f70 6f 6c 20 72 65 73 65 72 76 65 64 28 62 6f 6f 6c  ol reserved(bool
17f80 20 72 29 20 7b 20 5f 62 66 20 3d 20 63 61 73 74   r) { _bf = cast
17f90 28 75 62 79 74 65 29 28 28 5f 62 66 20 26 20 7e  (ubyte)((_bf & ~
17fa0 30 78 32 30 29 20 7c 20 28 72 20 3c 3c 20 35 29  0x20) | (r << 5)
17fb0 29 3b 20 72 65 74 75 72 6e 20 72 3b 20 7d 0d 0a  ); return r; }..
17fc0 0d 0a 09 75 62 79 74 65 20 63 62 46 72 61 6d 65  ...ubyte cbFrame
17fd0 28 75 62 79 74 65 20 63 29 20 7b 0d 0a 09 09 5f  (ubyte c) {...._
17fe0 62 66 20 3d 20 63 61 73 74 28 75 62 79 74 65 29  bf = cast(ubyte)
17ff0 20 28 28 5f 62 66 20 26 20 7e 30 78 43 30 29 20   ((_bf & ~0xC0) 
18000 7c 20 28 28 63 20 26 20 30 78 30 33 29 20 3c 3c  | ((c & 0x03) <<
18010 20 36 29 29 3b 0d 0a 09 09 72 65 74 75 72 6e 20   6));....return 
18020 63 61 73 74 28 75 62 79 74 65 29 28 63 20 26 20  cast(ubyte)(c & 
18030 30 78 30 33 29 3b 0d 0a 09 7d 0d 0a 7d 0d 0a 61  0x03);...}..}..a
18040 6c 69 61 73 20 46 50 4f 5f 44 41 54 41 2a 20 50  lias FPO_DATA* P
18050 46 50 4f 5f 44 41 54 41 3b 0d 0a 0d 0a 73 74 72  FPO_DATA;....str
18060 75 63 74 20 49 4d 41 47 45 5f 44 45 42 55 47 5f  uct IMAGE_DEBUG_
18070 4d 49 53 43 20 7b 0d 0a 09 44 57 4f 52 44 20 20  MISC {...DWORD  
18080 20 44 61 74 61 54 79 70 65 3b 0d 0a 09 44 57 4f   DataType;...DWO
18090 52 44 20 20 20 4c 65 6e 67 74 68 3b 0d 0a 09 42  RD   Length;...B
180a0 4f 4f 4c 45 41 4e 20 55 6e 69 63 6f 64 65 3b 0d  OOLEAN Unicode;.
180b0 0a 09 42 59 54 45 5b 33 5d 20 52 65 73 65 72 76  ..BYTE[3] Reserv
180c0 65 64 3b 0d 0a 09 42 59 54 45 20 20 20 20 5f 44  ed;...BYTE    _D
180d0 61 74 61 3b 0d 0a 0d 0a 09 42 59 54 45 2a 20 20  ata;.....BYTE*  
180e0 20 44 61 74 61 28 29 20 7b 20 72 65 74 75 72 6e   Data() { return
180f0 20 26 5f 44 61 74 61 3b 20 7d 0d 0a 7d 0d 0a 61   &_Data; }..}..a
18100 6c 69 61 73 20 49 4d 41 47 45 5f 44 45 42 55 47  lias IMAGE_DEBUG
18110 5f 4d 49 53 43 2a 20 50 49 4d 41 47 45 5f 44 45  _MISC* PIMAGE_DE
18120 42 55 47 5f 4d 49 53 43 3b 0d 0a 0d 0a 73 74 72  BUG_MISC;....str
18130 75 63 74 20 49 4d 41 47 45 5f 46 55 4e 43 54 49  uct IMAGE_FUNCTI
18140 4f 4e 5f 45 4e 54 52 59 20 7b 0d 0a 09 44 57 4f  ON_ENTRY {...DWO
18150 52 44 20 53 74 61 72 74 69 6e 67 41 64 64 72 65  RD StartingAddre
18160 73 73 3b 0d 0a 09 44 57 4f 52 44 20 45 6e 64 69  ss;...DWORD Endi
18170 6e 67 41 64 64 72 65 73 73 3b 0d 0a 09 44 57 4f  ngAddress;...DWO
18180 52 44 20 45 6e 64 4f 66 50 72 6f 6c 6f 67 75 65  RD EndOfPrologue
18190 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 49 4d 41 47  ;..}..alias IMAG
181a0 45 5f 46 55 4e 43 54 49 4f 4e 5f 45 4e 54 52 59  E_FUNCTION_ENTRY
181b0 2a 20 50 49 4d 41 47 45 5f 46 55 4e 43 54 49 4f  * PIMAGE_FUNCTIO
181c0 4e 5f 45 4e 54 52 59 3b 0d 0a 0d 0a 73 74 72 75  N_ENTRY;....stru
181d0 63 74 20 49 4d 41 47 45 5f 46 55 4e 43 54 49 4f  ct IMAGE_FUNCTIO
181e0 4e 5f 45 4e 54 52 59 36 34 20 7b 0d 0a 09 55 4c  N_ENTRY64 {...UL
181f0 4f 4e 47 4c 4f 4e 47 20 20 20 20 20 53 74 61 72  ONGLONG     Star
18200 74 69 6e 67 41 64 64 72 65 73 73 3b 0d 0a 09 55  tingAddress;...U
18210 4c 4f 4e 47 4c 4f 4e 47 20 20 20 20 20 45 6e 64  LONGLONG     End
18220 69 6e 67 41 64 64 72 65 73 73 3b 0d 0a 09 75 6e  ingAddress;...un
18230 69 6f 6e 20 7b 0d 0a 09 09 55 4c 4f 4e 47 4c 4f  ion {....ULONGLO
18240 4e 47 20 45 6e 64 4f 66 50 72 6f 6c 6f 67 75 65  NG EndOfPrologue
18250 3b 0d 0a 09 09 55 4c 4f 4e 47 4c 4f 4e 47 20 55  ;....ULONGLONG U
18260 6e 77 69 6e 64 49 6e 66 6f 41 64 64 72 65 73 73  nwindInfoAddress
18270 3b 0d 0a 09 7d 0d 0a 7d 0d 0a 61 6c 69 61 73 20  ;...}..}..alias 
18280 49 4d 41 47 45 5f 46 55 4e 43 54 49 4f 4e 5f 45  IMAGE_FUNCTION_E
18290 4e 54 52 59 36 34 2a 20 50 49 4d 41 47 45 5f 46  NTRY64* PIMAGE_F
182a0 55 4e 43 54 49 4f 4e 5f 45 4e 54 52 59 36 34 3b  UNCTION_ENTRY64;
182b0 0d 0a 0d 0a 73 74 72 75 63 74 20 49 4d 41 47 45  ....struct IMAGE
182c0 5f 53 45 50 41 52 41 54 45 5f 44 45 42 55 47 5f  _SEPARATE_DEBUG_
182d0 48 45 41 44 45 52 20 7b 0d 0a 09 57 4f 52 44 20  HEADER {...WORD 
182e0 20 20 20 20 53 69 67 6e 61 74 75 72 65 3b 0d 0a      Signature;..
182f0 09 57 4f 52 44 20 20 20 20 20 46 6c 61 67 73 3b  .WORD     Flags;
18300 0d 0a 09 57 4f 52 44 20 20 20 20 20 4d 61 63 68  ...WORD     Mach
18310 69 6e 65 3b 0d 0a 09 57 4f 52 44 20 20 20 20 20  ine;...WORD     
18320 43 68 61 72 61 63 74 65 72 69 73 74 69 63 73 3b  Characteristics;
18330 0d 0a 09 44 57 4f 52 44 20 20 20 20 54 69 6d 65  ...DWORD    Time
18340 44 61 74 65 53 74 61 6d 70 3b 0d 0a 09 44 57 4f  DateStamp;...DWO
18350 52 44 20 20 20 20 43 68 65 63 6b 53 75 6d 3b 0d  RD    CheckSum;.
18360 0a 09 44 57 4f 52 44 20 20 20 20 49 6d 61 67 65  ..DWORD    Image
18370 42 61 73 65 3b 0d 0a 09 44 57 4f 52 44 20 20 20  Base;...DWORD   
18380 20 53 69 7a 65 4f 66 49 6d 61 67 65 3b 0d 0a 09   SizeOfImage;...
18390 44 57 4f 52 44 20 20 20 20 4e 75 6d 62 65 72 4f  DWORD    NumberO
183a0 66 53 65 63 74 69 6f 6e 73 3b 0d 0a 09 44 57 4f  fSections;...DWO
183b0 52 44 20 20 20 20 45 78 70 6f 72 74 65 64 4e 61  RD    ExportedNa
183c0 6d 65 73 53 69 7a 65 3b 0d 0a 09 44 57 4f 52 44  mesSize;...DWORD
183d0 20 20 20 20 44 65 62 75 67 44 69 72 65 63 74 6f      DebugDirecto
183e0 72 79 53 69 7a 65 3b 0d 0a 09 44 57 4f 52 44 20  rySize;...DWORD 
183f0 20 20 20 53 65 63 74 69 6f 6e 41 6c 69 67 6e 6d     SectionAlignm
18400 65 6e 74 3b 0d 0a 09 44 57 4f 52 44 5b 32 5d 20  ent;...DWORD[2] 
18410 52 65 73 65 72 76 65 64 3b 0d 0a 7d 0d 0a 61 6c  Reserved;..}..al
18420 69 61 73 20 49 4d 41 47 45 5f 53 45 50 41 52 41  ias IMAGE_SEPARA
18430 54 45 5f 44 45 42 55 47 5f 48 45 41 44 45 52 2a  TE_DEBUG_HEADER*
18440 20 50 49 4d 41 47 45 5f 53 45 50 41 52 41 54 45   PIMAGE_SEPARATE
18450 5f 44 45 42 55 47 5f 48 45 41 44 45 52 3b 0d 0a  _DEBUG_HEADER;..
18460 0d 0a 65 6e 75 6d 20 53 45 52 56 49 43 45 5f 4e  ..enum SERVICE_N
18470 4f 44 45 5f 54 59 50 45 20 7b 0d 0a 09 44 72 69  ODE_TYPE {...Dri
18480 76 65 72 54 79 70 65 20 20 20 20 20 20 20 20 20  verType         
18490 20 20 20 20 20 20 3d 20 53 45 52 56 49 43 45 5f        = SERVICE_
184a0 4b 45 52 4e 45 4c 5f 44 52 49 56 45 52 2c 0d 0a  KERNEL_DRIVER,..
184b0 09 46 69 6c 65 53 79 73 74 65 6d 54 79 70 65 20  .FileSystemType 
184c0 20 20 20 20 20 20 20 20 20 20 3d 20 53 45 52 56            = SERV
184d0 49 43 45 5f 46 49 4c 45 5f 53 59 53 54 45 4d 5f  ICE_FILE_SYSTEM_
184e0 44 52 49 56 45 52 2c 0d 0a 09 57 69 6e 33 32 53  DRIVER,...Win32S
184f0 65 72 76 69 63 65 4f 77 6e 50 72 6f 63 65 73 73  erviceOwnProcess
18500 20 20 20 3d 20 53 45 52 56 49 43 45 5f 57 49 4e     = SERVICE_WIN
18510 33 32 5f 4f 57 4e 5f 50 52 4f 43 45 53 53 2c 0d  32_OWN_PROCESS,.
18520 0a 09 57 69 6e 33 32 53 65 72 76 69 63 65 53 68  ..Win32ServiceSh
18530 61 72 65 50 72 6f 63 65 73 73 20 3d 20 53 45 52  areProcess = SER
18540 56 49 43 45 5f 57 49 4e 33 32 5f 53 48 41 52 45  VICE_WIN32_SHARE
18550 5f 50 52 4f 43 45 53 53 2c 0d 0a 09 41 64 61 70  _PROCESS,...Adap
18560 74 65 72 54 79 70 65 20 20 20 20 20 20 20 20 20  terType         
18570 20 20 20 20 20 3d 20 53 45 52 56 49 43 45 5f 41       = SERVICE_A
18580 44 41 50 54 45 52 2c 0d 0a 09 52 65 63 6f 67 6e  DAPTER,...Recogn
18590 69 7a 65 72 54 79 70 65 20 20 20 20 20 20 20 20  izerType        
185a0 20 20 20 3d 20 53 45 52 56 49 43 45 5f 52 45 43     = SERVICE_REC
185b0 4f 47 4e 49 5a 45 52 5f 44 52 49 56 45 52 0d 0a  OGNIZER_DRIVER..
185c0 7d 0d 0a 0d 0a 65 6e 75 6d 20 53 45 52 56 49 43  }....enum SERVIC
185d0 45 5f 4c 4f 41 44 5f 54 59 50 45 20 7b 0d 0a 09  E_LOAD_TYPE {...
185e0 42 6f 6f 74 4c 6f 61 64 20 20 20 20 3d 20 53 45  BootLoad    = SE
185f0 52 56 49 43 45 5f 42 4f 4f 54 5f 53 54 41 52 54  RVICE_BOOT_START
18600 2c 0d 0a 09 53 79 73 74 65 6d 4c 6f 61 64 20 20  ,...SystemLoad  
18610 3d 20 53 45 52 56 49 43 45 5f 53 59 53 54 45 4d  = SERVICE_SYSTEM
18620 5f 53 54 41 52 54 2c 0d 0a 09 41 75 74 6f 4c 6f  _START,...AutoLo
18630 61 64 20 20 20 20 3d 20 53 45 52 56 49 43 45 5f  ad    = SERVICE_
18640 41 55 54 4f 5f 53 54 41 52 54 2c 0d 0a 09 44 65  AUTO_START,...De
18650 6d 61 6e 64 4c 6f 61 64 20 20 3d 20 53 45 52 56  mandLoad  = SERV
18660 49 43 45 5f 44 45 4d 41 4e 44 5f 53 54 41 52 54  ICE_DEMAND_START
18670 2c 0d 0a 09 44 69 73 61 62 6c 65 4c 6f 61 64 20  ,...DisableLoad 
18680 3d 20 53 45 52 56 49 43 45 5f 44 49 53 41 42 4c  = SERVICE_DISABL
18690 45 44 0d 0a 7d 0d 0a 0d 0a 65 6e 75 6d 20 53 45  ED..}....enum SE
186a0 52 56 49 43 45 5f 45 52 52 4f 52 5f 54 59 50 45  RVICE_ERROR_TYPE
186b0 20 7b 0d 0a 09 49 67 6e 6f 72 65 45 72 72 6f 72   {...IgnoreError
186c0 20 20 20 3d 20 53 45 52 56 49 43 45 5f 45 52 52     = SERVICE_ERR
186d0 4f 52 5f 49 47 4e 4f 52 45 2c 0d 0a 09 4e 6f 72  OR_IGNORE,...Nor
186e0 6d 61 6c 45 72 72 6f 72 20 20 20 3d 20 53 45 52  malError   = SER
186f0 56 49 43 45 5f 45 52 52 4f 52 5f 4e 4f 52 4d 41  VICE_ERROR_NORMA
18700 4c 2c 0d 0a 09 53 65 76 65 72 65 45 72 72 6f 72  L,...SevereError
18710 20 20 20 3d 20 53 45 52 56 49 43 45 5f 45 52 52     = SERVICE_ERR
18720 4f 52 5f 53 45 56 45 52 45 2c 0d 0a 09 43 72 69  OR_SEVERE,...Cri
18730 74 69 63 61 6c 45 72 72 6f 72 20 3d 20 53 45 52  ticalError = SER
18740 56 49 43 45 5f 45 52 52 4f 52 5f 43 52 49 54 49  VICE_ERROR_CRITI
18750 43 41 4c 0d 0a 7d 0d 0a 61 6c 69 61 73 20 53 45  CAL..}..alias SE
18760 52 56 49 43 45 5f 45 52 52 4f 52 5f 54 59 50 45  RVICE_ERROR_TYPE
18770 20 5f 43 4d 5f 45 52 52 4f 52 5f 43 4f 4e 54 52   _CM_ERROR_CONTR
18780 4f 4c 5f 54 59 50 45 3b 0d 0a 0d 0a 2f 2f 44 41  OL_TYPE;....//DA
18790 43 3a 20 41 63 63 6f 72 64 69 6e 67 20 74 6f 20  C: According to 
187a0 4d 53 4a 2c 20 27 55 6e 64 65 72 54 68 65 48 6f  MSJ, 'UnderTheHo
187b0 6f 64 27 2c 20 4d 61 79 20 31 39 39 36 2c 20 74  od', May 1996, t
187c0 68 69 73 0d 0a 2f 2f 20 73 74 72 75 63 74 75 72  his..// structur
187d0 65 20 69 73 20 6e 6f 74 20 64 6f 63 75 6d 65 6e  e is not documen
187e0 74 65 64 20 69 6e 20 61 6e 79 20 6f 66 66 69 63  ted in any offic
187f0 69 61 6c 20 4d 69 63 72 6f 73 6f 66 74 20 68 65  ial Microsoft he
18800 61 64 65 72 20 66 69 6c 65 2e 0d 0a 61 6c 69 61  ader file...alia
18810 73 20 76 6f 69 64 20 45 58 43 45 50 54 49 4f 4e  s void EXCEPTION
18820 5f 52 45 47 49 53 54 52 41 54 49 4f 4e 5f 52 45  _REGISTRATION_RE
18830 43 4f 52 44 3b 0d 0a 0d 0a 61 6c 69 67 6e 3a 0d  CORD;....align:.
18840 0a 73 74 72 75 63 74 20 4e 54 5f 54 49 42 20 7b  .struct NT_TIB {
18850 0d 0a 09 45 58 43 45 50 54 49 4f 4e 5f 52 45 47  ...EXCEPTION_REG
18860 49 53 54 52 41 54 49 4f 4e 5f 52 45 43 4f 52 44  ISTRATION_RECORD
18870 20 2a 45 78 63 65 70 74 69 6f 6e 4c 69 73 74 3b   *ExceptionList;
18880 0d 0a 09 50 56 4f 49 44 20 53 74 61 63 6b 42 61  ...PVOID StackBa
18890 73 65 3b 0d 0a 09 50 56 4f 49 44 20 53 74 61 63  se;...PVOID Stac
188a0 6b 4c 69 6d 69 74 3b 0d 0a 09 50 56 4f 49 44 20  kLimit;...PVOID 
188b0 53 75 62 53 79 73 74 65 6d 54 69 62 3b 0d 0a 09  SubSystemTib;...
188c0 75 6e 69 6f 6e 20 7b 0d 0a 09 09 50 56 4f 49 44  union {....PVOID
188d0 20 46 69 62 65 72 44 61 74 61 3b 0d 0a 09 09 44   FiberData;....D
188e0 57 4f 52 44 20 56 65 72 73 69 6f 6e 3b 0d 0a 09  WORD Version;...
188f0 7d 0d 0a 09 50 56 4f 49 44 20 41 72 62 69 74 72  }...PVOID Arbitr
18900 61 72 79 55 73 65 72 50 6f 69 6e 74 65 72 3b 0d  aryUserPointer;.
18910 0a 09 4e 54 5f 54 49 42 20 2a 53 65 6c 66 3b 0d  ..NT_TIB *Self;.
18920 0a 7d 0d 0a 61 6c 69 61 73 20 4e 54 5f 54 49 42  .}..alias NT_TIB
18930 2a 20 50 4e 54 5f 54 49 42 3b 0d 0a 0d 0a 73 74  * PNT_TIB;....st
18940 72 75 63 74 20 52 45 50 41 52 53 45 5f 44 41 54  ruct REPARSE_DAT
18950 41 5f 42 55 46 46 45 52 20 7b 0d 0a 09 44 57 4f  A_BUFFER {...DWO
18960 52 44 20 20 52 65 70 61 72 73 65 54 61 67 3b 0d  RD  ReparseTag;.
18970 0a 09 57 4f 52 44 20 20 20 52 65 70 61 72 73 65  ..WORD   Reparse
18980 44 61 74 61 4c 65 6e 67 74 68 3b 0d 0a 09 57 4f  DataLength;...WO
18990 52 44 20 20 20 52 65 73 65 72 76 65 64 3b 0d 0a  RD   Reserved;..
189a0 09 75 6e 69 6f 6e 20 7b 0d 0a 09 09 73 74 72 75  .union {....stru
189b0 63 74 20 5f 47 65 6e 65 72 69 63 52 65 70 61 72  ct _GenericRepar
189c0 73 65 42 75 66 66 65 72 20 7b 0d 0a 09 09 09 42  seBuffer {.....B
189d0 59 54 45 20 20 5f 44 61 74 61 42 75 66 66 65 72  YTE  _DataBuffer
189e0 3b 0d 0a 0d 0a 09 09 09 42 59 54 45 2a 20 44 61  ;.......BYTE* Da
189f0 74 61 42 75 66 66 65 72 28 29 20 7b 20 72 65 74  taBuffer() { ret
18a00 75 72 6e 20 26 5f 44 61 74 61 42 75 66 66 65 72  urn &_DataBuffer
18a10 3b 20 7d 0d 0a 09 09 7d 0d 0a 09 09 5f 47 65 6e  ; }....}...._Gen
18a20 65 72 69 63 52 65 70 61 72 73 65 42 75 66 66 65  ericReparseBuffe
18a30 72 20 47 65 6e 65 72 69 63 52 65 70 61 72 73 65  r GenericReparse
18a40 42 75 66 66 65 72 3b 0d 0a 09 09 73 74 72 75 63  Buffer;....struc
18a50 74 20 5f 53 79 6d 62 6f 6c 69 63 4c 69 6e 6b 52  t _SymbolicLinkR
18a60 65 70 61 72 73 65 42 75 66 66 65 72 20 7b 0d 0a  eparseBuffer {..
18a70 09 09 09 57 4f 52 44 20 20 53 75 62 73 74 69 74  ...WORD  Substit
18a80 75 74 65 4e 61 6d 65 4f 66 66 73 65 74 3b 0d 0a  uteNameOffset;..
18a90 09 09 09 57 4f 52 44 20 20 53 75 62 73 74 69 74  ...WORD  Substit
18aa0 75 74 65 4e 61 6d 65 4c 65 6e 67 74 68 3b 0d 0a  uteNameLength;..
18ab0 09 09 09 57 4f 52 44 20 20 50 72 69 6e 74 4e 61  ...WORD  PrintNa
18ac0 6d 65 4f 66 66 73 65 74 3b 0d 0a 09 09 09 57 4f  meOffset;.....WO
18ad0 52 44 20 20 50 72 69 6e 74 4e 61 6d 65 4c 65 6e  RD  PrintNameLen
18ae0 67 74 68 3b 0d 0a 09 09 09 2f 2f 20 3f 3f 3f 20  gth;.....// ??? 
18af0 54 68 69 73 20 69 73 20 69 6e 20 4d 69 6e 47 57  This is in MinGW
18b00 2c 20 62 75 74 20 61 62 73 65 6e 74 20 69 6e 20  , but absent in 
18b10 4d 53 44 4e 20 64 6f 63 73 0d 0a 09 09 09 55 4c  MSDN docs.....UL
18b20 4f 4e 47 20 46 6c 61 67 73 3b 0d 0a 09 09 09 57  ONG Flags;.....W
18b30 43 48 41 52 20 5f 50 61 74 68 42 75 66 66 65 72  CHAR _PathBuffer
18b40 3b 0d 0a 0d 0a 09 09 09 57 43 48 41 52 2a 20 50  ;.......WCHAR* P
18b50 61 74 68 42 75 66 66 65 72 28 29 20 7b 20 72 65  athBuffer() { re
18b60 74 75 72 6e 20 26 5f 50 61 74 68 42 75 66 66 65  turn &_PathBuffe
18b70 72 3b 20 7d 0d 0a 09 09 7d 0d 0a 09 09 5f 53 79  r; }....}...._Sy
18b80 6d 62 6f 6c 69 63 4c 69 6e 6b 52 65 70 61 72 73  mbolicLinkRepars
18b90 65 42 75 66 66 65 72 20 53 79 6d 62 6f 6c 69 63  eBuffer Symbolic
18ba0 4c 69 6e 6b 52 65 70 61 72 73 65 42 75 66 66 65  LinkReparseBuffe
18bb0 72 3b 0d 0a 09 09 73 74 72 75 63 74 20 5f 4d 6f  r;....struct _Mo
18bc0 75 6e 74 50 6f 69 6e 74 52 65 70 61 72 73 65 42  untPointReparseB
18bd0 75 66 66 65 72 20 7b 0d 0a 09 09 09 57 4f 52 44  uffer {.....WORD
18be0 20 20 53 75 62 73 74 69 74 75 74 65 4e 61 6d 65    SubstituteName
18bf0 4f 66 66 73 65 74 3b 0d 0a 09 09 09 57 4f 52 44  Offset;.....WORD
18c00 20 20 53 75 62 73 74 69 74 75 74 65 4e 61 6d 65    SubstituteName
18c10 4c 65 6e 67 74 68 3b 0d 0a 09 09 09 57 4f 52 44  Length;.....WORD
18c20 20 20 50 72 69 6e 74 4e 61 6d 65 4f 66 66 73 65    PrintNameOffse
18c30 74 3b 0d 0a 09 09 09 57 4f 52 44 20 20 50 72 69  t;.....WORD  Pri
18c40 6e 74 4e 61 6d 65 4c 65 6e 67 74 68 3b 0d 0a 09  ntNameLength;...
18c50 09 09 57 43 48 41 52 20 5f 50 61 74 68 42 75 66  ..WCHAR _PathBuf
18c60 66 65 72 3b 0d 0a 0d 0a 09 09 09 57 43 48 41 52  fer;.......WCHAR
18c70 2a 20 50 61 74 68 42 75 66 66 65 72 28 29 20 7b  * PathBuffer() {
18c80 20 72 65 74 75 72 6e 20 26 5f 50 61 74 68 42 75   return &_PathBu
18c90 66 66 65 72 3b 20 7d 0d 0a 09 09 7d 0d 0a 09 09  ffer; }....}....
18ca0 5f 4d 6f 75 6e 74 50 6f 69 6e 74 52 65 70 61 72  _MountPointRepar
18cb0 73 65 42 75 66 66 65 72 20 4d 6f 75 6e 74 50 6f  seBuffer MountPo
18cc0 69 6e 74 52 65 70 61 72 73 65 42 75 66 66 65 72  intReparseBuffer
18cd0 3b 0d 0a 09 7d 0d 0a 7d 0d 0a 61 6c 69 61 73 20  ;...}..}..alias 
18ce0 52 45 50 41 52 53 45 5f 44 41 54 41 5f 42 55 46  REPARSE_DATA_BUF
18cf0 46 45 52 20 2a 50 52 45 50 41 52 53 45 5f 44 41  FER *PREPARSE_DA
18d00 54 41 5f 42 55 46 46 45 52 3b 0d 0a 0d 0a 73 74  TA_BUFFER;....st
18d10 72 75 63 74 20 52 45 50 41 52 53 45 5f 47 55 49  ruct REPARSE_GUI
18d20 44 5f 44 41 54 41 5f 42 55 46 46 45 52 20 7b 0d  D_DATA_BUFFER {.
18d30 0a 09 44 57 4f 52 44 20 20 20 20 52 65 70 61 72  ..DWORD    Repar
18d40 73 65 54 61 67 3b 0d 0a 09 57 4f 52 44 20 20 20  seTag;...WORD   
18d50 20 20 52 65 70 61 72 73 65 44 61 74 61 4c 65 6e    ReparseDataLen
18d60 67 74 68 3b 0d 0a 09 57 4f 52 44 20 20 20 20 20  gth;...WORD     
18d70 52 65 73 65 72 76 65 64 3b 0d 0a 09 47 55 49 44  Reserved;...GUID
18d80 20 20 20 20 20 52 65 70 61 72 73 65 47 75 69 64       ReparseGuid
18d90 3b 0d 0a 09 73 74 72 75 63 74 20 5f 47 65 6e 65  ;...struct _Gene
18da0 72 69 63 52 65 70 61 72 73 65 42 75 66 66 65 72  ricReparseBuffer
18db0 20 7b 0d 0a 09 09 42 59 54 45 20 5f 44 61 74 61   {....BYTE _Data
18dc0 42 75 66 66 65 72 3b 0d 0a 0d 0a 09 09 42 59 54  Buffer;......BYT
18dd0 45 2a 20 44 61 74 61 42 75 66 66 65 72 28 29 20  E* DataBuffer() 
18de0 7b 20 72 65 74 75 72 6e 20 26 5f 44 61 74 61 42  { return &_DataB
18df0 75 66 66 65 72 3b 20 7d 0d 0a 09 7d 0d 0a 09 5f  uffer; }...}..._
18e00 47 65 6e 65 72 69 63 52 65 70 61 72 73 65 42 75  GenericReparseBu
18e10 66 66 65 72 20 47 65 6e 65 72 69 63 52 65 70 61  ffer GenericRepa
18e20 72 73 65 42 75 66 66 65 72 3b 0d 0a 7d 0d 0a 61  rseBuffer;..}..a
18e30 6c 69 61 73 20 52 45 50 41 52 53 45 5f 47 55 49  lias REPARSE_GUI
18e40 44 5f 44 41 54 41 5f 42 55 46 46 45 52 2a 20 50  D_DATA_BUFFER* P
18e50 52 45 50 41 52 53 45 5f 47 55 49 44 5f 44 41 54  REPARSE_GUID_DAT
18e60 41 5f 42 55 46 46 45 52 3b 0d 0a 0d 0a 63 6f 6e  A_BUFFER;....con
18e70 73 74 20 73 69 7a 65 5f 74 0d 0a 09 52 45 50 41  st size_t...REPA
18e80 52 53 45 5f 44 41 54 41 5f 42 55 46 46 45 52 5f  RSE_DATA_BUFFER_
18e90 48 45 41 44 45 52 5f 53 49 5a 45 20 3d 20 52 45  HEADER_SIZE = RE
18ea0 50 41 52 53 45 5f 44 41 54 41 5f 42 55 46 46 45  PARSE_DATA_BUFFE
18eb0 52 2e 47 65 6e 65 72 69 63 52 65 70 61 72 73 65  R.GenericReparse
18ec0 42 75 66 66 65 72 2e 6f 66 66 73 65 74 6f 66 2c  Buffer.offsetof,
18ed0 0d 0a 09 52 45 50 41 52 53 45 5f 47 55 49 44 5f  ...REPARSE_GUID_
18ee0 44 41 54 41 5f 42 55 46 46 45 52 5f 48 45 41 44  DATA_BUFFER_HEAD
18ef0 45 52 5f 53 49 5a 45 20 3d 20 52 45 50 41 52 53  ER_SIZE = REPARS
18f00 45 5f 47 55 49 44 5f 44 41 54 41 5f 42 55 46 46  E_GUID_DATA_BUFF
18f10 45 52 2e 47 65 6e 65 72 69 63 52 65 70 61 72 73  ER.GenericRepars
18f20 65 42 75 66 66 65 72 2e 6f 66 66 73 65 74 6f 66  eBuffer.offsetof
18f30 2c 0d 0a 09 4d 41 58 49 4d 55 4d 5f 52 45 50 41  ,...MAXIMUM_REPA
18f40 52 53 45 5f 44 41 54 41 5f 42 55 46 46 45 52 5f  RSE_DATA_BUFFER_
18f50 53 49 5a 45 20 3d 20 31 36 33 38 34 3b 0d 0a 0d  SIZE = 16384;...
18f60 0a 0d 0a 73 74 72 75 63 74 20 52 45 50 41 52 53  ...struct REPARS
18f70 45 5f 50 4f 49 4e 54 5f 49 4e 46 4f 52 4d 41 54  E_POINT_INFORMAT
18f80 49 4f 4e 20 7b 0d 0a 09 57 4f 52 44 20 52 65 70  ION {...WORD Rep
18f90 61 72 73 65 44 61 74 61 4c 65 6e 67 74 68 3b 0d  arseDataLength;.
18fa0 0a 09 57 4f 52 44 20 55 6e 70 61 72 73 65 64 4e  ..WORD UnparsedN
18fb0 61 6d 65 4c 65 6e 67 74 68 3b 0d 0a 7d 0d 0a 61  ameLength;..}..a
18fc0 6c 69 61 73 20 52 45 50 41 52 53 45 5f 50 4f 49  lias REPARSE_POI
18fd0 4e 54 5f 49 4e 46 4f 52 4d 41 54 49 4f 4e 2a 20  NT_INFORMATION* 
18fe0 50 52 45 50 41 52 53 45 5f 50 4f 49 4e 54 5f 49  PREPARSE_POINT_I
18ff0 4e 46 4f 52 4d 41 54 49 4f 4e 3b 0d 0a 0d 0a 75  NFORMATION;....u
19000 6e 69 6f 6e 20 46 49 4c 45 5f 53 45 47 4d 45 4e  nion FILE_SEGMEN
19010 54 5f 45 4c 45 4d 45 4e 54 20 7b 0d 0a 09 50 56  T_ELEMENT {...PV
19020 4f 49 44 36 34 20 20 20 42 75 66 66 65 72 3b 0d  OID64   Buffer;.
19030 0a 09 55 4c 4f 4e 47 4c 4f 4e 47 20 41 6c 69 67  ..ULONGLONG Alig
19040 6e 6d 65 6e 74 3b 0d 0a 7d 0d 0a 61 6c 69 61 73  nment;..}..alias
19050 20 46 49 4c 45 5f 53 45 47 4d 45 4e 54 5f 45 4c   FILE_SEGMENT_EL
19060 45 4d 45 4e 54 2a 20 50 46 49 4c 45 5f 53 45 47  EMENT* PFILE_SEG
19070 4d 45 4e 54 5f 45 4c 45 4d 45 4e 54 3b 0d 0a 0d  MENT_ELEMENT;...
19080 0a 2f 2f 20 4a 4f 42 4f 42 4a 45 43 54 5f 42 41  .// JOBOBJECT_BA
19090 53 49 43 5f 4c 49 4d 49 54 5f 49 4e 46 4f 52 4d  SIC_LIMIT_INFORM
190a0 41 54 49 4f 4e 2e 4c 69 6d 69 74 46 6c 61 67 73  ATION.LimitFlags
190b0 20 63 6f 6e 73 74 61 6e 74 73 0d 0a 63 6f 6e 73   constants..cons
190c0 74 20 44 57 4f 52 44 0d 0a 09 4a 4f 42 5f 4f 42  t DWORD...JOB_OB
190d0 4a 45 43 54 5f 4c 49 4d 49 54 5f 57 4f 52 4b 49  JECT_LIMIT_WORKI
190e0 4e 47 53 45 54 20 20 20 20 20 20 20 20 20 20 20  NGSET           
190f0 20 20 20 20 20 20 3d 20 30 78 30 30 30 31 2c 0d        = 0x0001,.
19100 0a 09 4a 4f 42 5f 4f 42 4a 45 43 54 5f 4c 49 4d  ..JOB_OBJECT_LIM
19110 49 54 5f 50 52 4f 43 45 53 53 5f 54 49 4d 45 20  IT_PROCESS_TIME 
19120 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3d 20                = 
19130 30 78 30 30 30 32 2c 0d 0a 09 4a 4f 42 5f 4f 42  0x0002,...JOB_OB
19140 4a 45 43 54 5f 4c 49 4d 49 54 5f 4a 4f 42 5f 54  JECT_LIMIT_JOB_T
19150 49 4d 45 20 20 20 20 20 20 20 20 20 20 20 20 20  IME             
19160 20 20 20 20 20 20 3d 20 30 78 30 30 30 34 2c 0d        = 0x0004,.
19170 0a 09 4a 4f 42 5f 4f 42 4a 45 43 54 5f 4c 49 4d  ..JOB_OBJECT_LIM
19180 49 54 5f 41 43 54 49 56 45 5f 50 52 4f 43 45 53  IT_ACTIVE_PROCES
19190 53 20 20 20 20 20 20 20 20 20 20 20 20 20 3d 20  S             = 
191a0 30 78 30 30 30 38 2c 0d 0a 09 4a 4f 42 5f 4f 42  0x0008,...JOB_OB
191b0 4a 45 43 54 5f 4c 49 4d 49 54 5f 41 46 46 49 4e  JECT_LIMIT_AFFIN
191c0 49 54 59 20 20 20 20 20 20 20 20 20 20 20 20 20  ITY             
191d0 20 20 20 20 20 20 3d 20 30 78 30 30 31 30 2c 0d        = 0x0010,.
191e0 0a 09 4a 4f 42 5f 4f 42 4a 45 43 54 5f 4c 49 4d  ..JOB_OBJECT_LIM
191f0 49 54 5f 50 52 49 4f 52 49 54 59 5f 43 4c 41 53  IT_PRIORITY_CLAS
19200 53 20 20 20 20 20 20 20 20 20 20 20 20 20 3d 20  S             = 
19210 30 78 30 30 32 30 2c 0d 0a 09 4a 4f 42 5f 4f 42  0x0020,...JOB_OB
19220 4a 45 43 54 5f 4c 49 4d 49 54 5f 50 52 45 53 45  JECT_LIMIT_PRESE
19230 52 56 45 5f 4a 4f 42 5f 54 49 4d 45 20 20 20 20  RVE_JOB_TIME    
19240 20 20 20 20 20 20 3d 20 30 78 30 30 34 30 2c 0d        = 0x0040,.
19250 0a 09 4a 4f 42 5f 4f 42 4a 45 43 54 5f 4c 49 4d  ..JOB_OBJECT_LIM
19260 49 54 5f 53 43 48 45 44 55 4c 49 4e 47 5f 43 4c  IT_SCHEDULING_CL
19270 41 53 53 20 20 20 20 20 20 20 20 20 20 20 3d 20  ASS           = 
19280 30 78 30 30 38 30 2c 0d 0a 09 4a 4f 42 5f 4f 42  0x0080,...JOB_OB
19290 4a 45 43 54 5f 4c 49 4d 49 54 5f 50 52 4f 43 45  JECT_LIMIT_PROCE
192a0 53 53 5f 4d 45 4d 4f 52 59 20 20 20 20 20 20 20  SS_MEMORY       
192b0 20 20 20 20 20 20 3d 20 30 78 30 31 30 30 2c 0d        = 0x0100,.
192c0 0a 09 4a 4f 42 5f 4f 42 4a 45 43 54 5f 4c 49 4d  ..JOB_OBJECT_LIM
192d0 49 54 5f 4a 4f 42 5f 4d 45 4d 4f 52 59 20 20 20  IT_JOB_MEMORY   
192e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3d 20                = 
192f0 30 78 30 32 30 30 2c 0d 0a 09 4a 4f 42 5f 4f 42  0x0200,...JOB_OB
19300 4a 45 43 54 5f 4c 49 4d 49 54 5f 44 49 45 5f 4f  JECT_LIMIT_DIE_O
19310 4e 5f 55 4e 48 41 4e 44 4c 45 44 5f 45 58 43 45  N_UNHANDLED_EXCE
19320 50 54 49 4f 4e 20 3d 20 30 78 30 34 30 30 2c 0d  PTION = 0x0400,.
19330 0a 09 4a 4f 42 5f 4f 42 4a 45 43 54 5f 42 52 45  ..JOB_OBJECT_BRE
19340 41 4b 41 57 41 59 5f 4f 4b 20 20 20 20 20 20 20  AKAWAY_OK       
19350 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3d 20                = 
19360 30 78 30 38 30 30 2c 0d 0a 09 4a 4f 42 5f 4f 42  0x0800,...JOB_OB
19370 4a 45 43 54 5f 53 49 4c 45 4e 54 5f 42 52 45 41  JECT_SILENT_BREA
19380 4b 41 57 41 59 20 20 20 20 20 20 20 20 20 20 20  KAWAY           
19390 20 20 20 20 20 20 3d 20 30 78 31 30 30 30 3b 0d        = 0x1000;.
193a0 0a 0d 0a 2f 2f 20 4a 4f 42 4f 42 4a 45 43 54 5f  ...// JOBOBJECT_
193b0 42 41 53 49 43 5f 55 49 5f 52 45 53 54 52 49 43  BASIC_UI_RESTRIC
193c0 54 49 4f 4e 53 2e 55 49 52 65 73 74 72 69 63 74  TIONS.UIRestrict
193d0 69 6f 6e 73 43 6c 61 73 73 20 63 6f 6e 73 74 61  ionsClass consta
193e0 6e 74 73 0d 0a 63 6f 6e 73 74 20 44 57 4f 52 44  nts..const DWORD
193f0 0d 0a 09 4a 4f 42 5f 4f 42 4a 45 43 54 5f 55 49  ...JOB_OBJECT_UI
19400 4c 49 4d 49 54 5f 48 41 4e 44 4c 45 53 20 20 20  LIMIT_HANDLES   
19410 20 20 20 20 20 20 20 3d 20 30 78 30 30 30 31 2c         = 0x0001,
19420 0d 0a 09 4a 4f 42 5f 4f 42 4a 45 43 54 5f 55 49  ...JOB_OBJECT_UI
19430 4c 49 4d 49 54 5f 52 45 41 44 43 4c 49 50 42 4f  LIMIT_READCLIPBO
19440 41 52 44 20 20 20 20 3d 20 30 78 30 30 30 32 2c  ARD    = 0x0002,
19450 0d 0a 09 4a 4f 42 5f 4f 42 4a 45 43 54 5f 55 49  ...JOB_OBJECT_UI
19460 4c 49 4d 49 54 5f 57 52 49 54 45 43 4c 49 50 42  LIMIT_WRITECLIPB
19470 4f 41 52 44 20 20 20 3d 20 30 78 30 30 30 34 2c  OARD   = 0x0004,
19480 0d 0a 09 4a 4f 42 5f 4f 42 4a 45 43 54 5f 55 49  ...JOB_OBJECT_UI
19490 4c 49 4d 49 54 5f 53 59 53 54 45 4d 50 41 52 41  LIMIT_SYSTEMPARA
194a0 4d 45 54 45 52 53 20 3d 20 30 78 30 30 30 38 2c  METERS = 0x0008,
194b0 0d 0a 09 4a 4f 42 5f 4f 42 4a 45 43 54 5f 55 49  ...JOB_OBJECT_UI
194c0 4c 49 4d 49 54 5f 44 49 53 50 4c 41 59 53 45 54  LIMIT_DISPLAYSET
194d0 54 49 4e 47 53 20 20 3d 20 30 78 30 30 31 30 2c  TINGS  = 0x0010,
194e0 0d 0a 09 4a 4f 42 5f 4f 42 4a 45 43 54 5f 55 49  ...JOB_OBJECT_UI
194f0 4c 49 4d 49 54 5f 47 4c 4f 42 41 4c 41 54 4f 4d  LIMIT_GLOBALATOM
19500 53 20 20 20 20 20 20 3d 20 30 78 30 30 32 30 2c  S      = 0x0020,
19510 0d 0a 09 4a 4f 42 5f 4f 42 4a 45 43 54 5f 55 49  ...JOB_OBJECT_UI
19520 4c 49 4d 49 54 5f 44 45 53 4b 54 4f 50 20 20 20  LIMIT_DESKTOP   
19530 20 20 20 20 20 20 20 3d 20 30 78 30 30 34 30 2c         = 0x0040,
19540 0d 0a 09 4a 4f 42 5f 4f 42 4a 45 43 54 5f 55 49  ...JOB_OBJECT_UI
19550 4c 49 4d 49 54 5f 45 58 49 54 57 49 4e 44 4f 57  LIMIT_EXITWINDOW
19560 53 20 20 20 20 20 20 3d 20 30 78 30 30 38 30 3b  S      = 0x0080;
19570 0d 0a 0d 0a 2f 2f 20 4a 4f 42 4f 42 4a 45 43 54  ....// JOBOBJECT
19580 5f 53 45 43 55 52 49 54 59 5f 4c 49 4d 49 54 5f  _SECURITY_LIMIT_
19590 49 4e 46 4f 52 4d 41 54 49 4f 4e 2e 53 65 63 75  INFORMATION.Secu
195a0 72 69 74 79 4c 69 6d 69 74 46 6c 61 67 73 20 63  rityLimitFlags c
195b0 6f 6e 73 74 61 6e 74 73 0d 0a 63 6f 6e 73 74 20  onstants..const 
195c0 44 57 4f 52 44 0d 0a 09 4a 4f 42 5f 4f 42 4a 45  DWORD...JOB_OBJE
195d0 43 54 5f 53 45 43 55 52 49 54 59 5f 4e 4f 5f 41  CT_SECURITY_NO_A
195e0 44 4d 49 4e 20 20 20 20 20 20 20 20 20 3d 20 30  DMIN         = 0
195f0 78 30 30 30 31 2c 0d 0a 09 4a 4f 42 5f 4f 42 4a  x0001,...JOB_OBJ
19600 45 43 54 5f 53 45 43 55 52 49 54 59 5f 52 45 53  ECT_SECURITY_RES
19610 54 52 49 43 54 45 44 5f 54 4f 4b 45 4e 20 3d 20  TRICTED_TOKEN = 
19620 30 78 30 30 30 32 2c 0d 0a 09 4a 4f 42 5f 4f 42  0x0002,...JOB_OB
19630 4a 45 43 54 5f 53 45 43 55 52 49 54 59 5f 4f 4e  JECT_SECURITY_ON
19640 4c 59 5f 54 4f 4b 45 4e 20 20 20 20 20 20 20 3d  LY_TOKEN       =
19650 20 30 78 30 30 30 34 2c 0d 0a 09 4a 4f 42 5f 4f   0x0004,...JOB_O
19660 42 4a 45 43 54 5f 53 45 43 55 52 49 54 59 5f 46  BJECT_SECURITY_F
19670 49 4c 54 45 52 5f 54 4f 4b 45 4e 53 20 20 20 20  ILTER_TOKENS    
19680 3d 20 30 78 30 30 30 38 3b 0d 0a 0d 0a 2f 2f 20  = 0x0008;....// 
19690 4a 4f 42 4f 42 4a 45 43 54 5f 45 4e 44 5f 4f 46  JOBOBJECT_END_OF
196a0 5f 4a 4f 42 5f 54 49 4d 45 5f 49 4e 46 4f 52 4d  _JOB_TIME_INFORM
196b0 41 54 49 4f 4e 2e 45 6e 64 4f 66 4a 6f 62 54 69  ATION.EndOfJobTi
196c0 6d 65 41 63 74 69 6f 6e 20 63 6f 6e 73 74 61 6e  meAction constan
196d0 74 73 0d 0a 65 6e 75 6d 20 3a 20 44 57 4f 52 44  ts..enum : DWORD
196e0 20 7b 0d 0a 09 4a 4f 42 5f 4f 42 4a 45 43 54 5f   {...JOB_OBJECT_
196f0 54 45 52 4d 49 4e 41 54 45 5f 41 54 5f 45 4e 44  TERMINATE_AT_END
19700 5f 4f 46 5f 4a 4f 42 2c 0d 0a 09 4a 4f 42 5f 4f  _OF_JOB,...JOB_O
19710 42 4a 45 43 54 5f 50 4f 53 54 5f 41 54 5f 45 4e  BJECT_POST_AT_EN
19720 44 5f 4f 46 5f 4a 4f 42 0d 0a 7d 0d 0a 0d 0a 65  D_OF_JOB..}....e
19730 6e 75 6d 20 3a 20 44 57 4f 52 44 20 7b 0d 0a 09  num : DWORD {...
19740 4a 4f 42 5f 4f 42 4a 45 43 54 5f 4d 53 47 5f 45  JOB_OBJECT_MSG_E
19750 4e 44 5f 4f 46 5f 4a 4f 42 5f 54 49 4d 45 20 3d  ND_OF_JOB_TIME =
19760 20 31 2c 0d 0a 09 4a 4f 42 5f 4f 42 4a 45 43 54   1,...JOB_OBJECT
19770 5f 4d 53 47 5f 45 4e 44 5f 4f 46 5f 50 52 4f 43  _MSG_END_OF_PROC
19780 45 53 53 5f 54 49 4d 45 2c 0d 0a 09 4a 4f 42 5f  ESS_TIME,...JOB_
19790 4f 42 4a 45 43 54 5f 4d 53 47 5f 41 43 54 49 56  OBJECT_MSG_ACTIV
197a0 45 5f 50 52 4f 43 45 53 53 5f 4c 49 4d 49 54 2c  E_PROCESS_LIMIT,
197b0 0d 0a 09 4a 4f 42 5f 4f 42 4a 45 43 54 5f 4d 53  ...JOB_OBJECT_MS
197c0 47 5f 41 43 54 49 56 45 5f 50 52 4f 43 45 53 53  G_ACTIVE_PROCESS
197d0 5f 5a 45 52 4f 2c 0d 0a 09 4a 4f 42 5f 4f 42 4a  _ZERO,...JOB_OBJ
197e0 45 43 54 5f 4d 53 47 5f 4e 45 57 5f 50 52 4f 43  ECT_MSG_NEW_PROC
197f0 45 53 53 2c 0d 0a 09 4a 4f 42 5f 4f 42 4a 45 43  ESS,...JOB_OBJEC
19800 54 5f 4d 53 47 5f 45 58 49 54 5f 50 52 4f 43 45  T_MSG_EXIT_PROCE
19810 53 53 2c 0d 0a 09 4a 4f 42 5f 4f 42 4a 45 43 54  SS,...JOB_OBJECT
19820 5f 4d 53 47 5f 41 42 4e 4f 52 4d 41 4c 5f 45 58  _MSG_ABNORMAL_EX
19830 49 54 5f 50 52 4f 43 45 53 53 2c 0d 0a 09 4a 4f  IT_PROCESS,...JO
19840 42 5f 4f 42 4a 45 43 54 5f 4d 53 47 5f 50 52 4f  B_OBJECT_MSG_PRO
19850 43 45 53 53 5f 4d 45 4d 4f 52 59 5f 4c 49 4d 49  CESS_MEMORY_LIMI
19860 54 2c 0d 0a 09 4a 4f 42 5f 4f 42 4a 45 43 54 5f  T,...JOB_OBJECT_
19870 4d 53 47 5f 4a 4f 42 5f 4d 45 4d 4f 52 59 5f 4c  MSG_JOB_MEMORY_L
19880 49 4d 49 54 0d 0a 7d 0d 0a 0d 0a 65 6e 75 6d 20  IMIT..}....enum 
19890 4a 4f 42 4f 42 4a 45 43 54 49 4e 46 4f 43 4c 41  JOBOBJECTINFOCLA
198a0 53 53 20 7b 0d 0a 09 4a 6f 62 4f 62 6a 65 63 74  SS {...JobObject
198b0 42 61 73 69 63 41 63 63 6f 75 6e 74 69 6e 67 49  BasicAccountingI
198c0 6e 66 6f 72 6d 61 74 69 6f 6e 20 3d 20 31 2c 0d  nformation = 1,.
198d0 0a 09 4a 6f 62 4f 62 6a 65 63 74 42 61 73 69 63  ..JobObjectBasic
198e0 4c 69 6d 69 74 49 6e 66 6f 72 6d 61 74 69 6f 6e  LimitInformation
198f0 2c 0d 0a 09 4a 6f 62 4f 62 6a 65 63 74 42 61 73  ,...JobObjectBas
19900 69 63 50 72 6f 63 65 73 73 49 64 4c 69 73 74 2c  icProcessIdList,
19910 0d 0a 09 4a 6f 62 4f 62 6a 65 63 74 42 61 73 69  ...JobObjectBasi
19920 63 55 49 52 65 73 74 72 69 63 74 69 6f 6e 73 2c  cUIRestrictions,
19930 0d 0a 09 4a 6f 62 4f 62 6a 65 63 74 53 65 63 75  ...JobObjectSecu
19940 72 69 74 79 4c 69 6d 69 74 49 6e 66 6f 72 6d 61  rityLimitInforma
19950 74 69 6f 6e 2c 0d 0a 09 4a 6f 62 4f 62 6a 65 63  tion,...JobObjec
19960 74 45 6e 64 4f 66 4a 6f 62 54 69 6d 65 49 6e 66  tEndOfJobTimeInf
19970 6f 72 6d 61 74 69 6f 6e 2c 0d 0a 09 4a 6f 62 4f  ormation,...JobO
19980 62 6a 65 63 74 41 73 73 6f 63 69 61 74 65 43 6f  bjectAssociateCo
19990 6d 70 6c 65 74 69 6f 6e 50 6f 72 74 49 6e 66 6f  mpletionPortInfo
199a0 72 6d 61 74 69 6f 6e 2c 0d 0a 09 4a 6f 62 4f 62  rmation,...JobOb
199b0 6a 65 63 74 42 61 73 69 63 41 6e 64 49 6f 41 63  jectBasicAndIoAc
199c0 63 6f 75 6e 74 69 6e 67 49 6e 66 6f 72 6d 61 74  countingInformat
199d0 69 6f 6e 2c 0d 0a 09 4a 6f 62 4f 62 6a 65 63 74  ion,...JobObject
199e0 45 78 74 65 6e 64 65 64 4c 69 6d 69 74 49 6e 66  ExtendedLimitInf
199f0 6f 72 6d 61 74 69 6f 6e 2c 0d 0a 09 4a 6f 62 4f  ormation,...JobO
19a00 62 6a 65 63 74 4a 6f 62 53 65 74 49 6e 66 6f 72  bjectJobSetInfor
19a10 6d 61 74 69 6f 6e 2c 0d 0a 09 4d 61 78 4a 6f 62  mation,...MaxJob
19a20 4f 62 6a 65 63 74 49 6e 66 6f 43 6c 61 73 73 0d  ObjectInfoClass.
19a30 0a 7d 0d 0a 0d 0a 73 74 72 75 63 74 20 4a 4f 42  .}....struct JOB
19a40 4f 42 4a 45 43 54 5f 42 41 53 49 43 5f 41 43 43  OBJECT_BASIC_ACC
19a50 4f 55 4e 54 49 4e 47 5f 49 4e 46 4f 52 4d 41 54  OUNTING_INFORMAT
19a60 49 4f 4e 20 7b 0d 0a 09 4c 41 52 47 45 5f 49 4e  ION {...LARGE_IN
19a70 54 45 47 45 52 20 54 6f 74 61 6c 55 73 65 72 54  TEGER TotalUserT
19a80 69 6d 65 3b 0d 0a 09 4c 41 52 47 45 5f 49 4e 54  ime;...LARGE_INT
19a90 45 47 45 52 20 54 6f 74 61 6c 4b 65 72 6e 65 6c  EGER TotalKernel
19aa0 54 69 6d 65 3b 0d 0a 09 4c 41 52 47 45 5f 49 4e  Time;...LARGE_IN
19ab0 54 45 47 45 52 20 54 68 69 73 50 65 72 69 6f 64  TEGER ThisPeriod
19ac0 54 6f 74 61 6c 55 73 65 72 54 69 6d 65 3b 0d 0a  TotalUserTime;..
19ad0 09 4c 41 52 47 45 5f 49 4e 54 45 47 45 52 20 54  .LARGE_INTEGER T
19ae0 68 69 73 50 65 72 69 6f 64 54 6f 74 61 6c 4b 65  hisPeriodTotalKe
19af0 72 6e 65 6c 54 69 6d 65 3b 0d 0a 09 44 57 4f 52  rnelTime;...DWOR
19b00 44 20 20 20 20 20 20 20 20 20 54 6f 74 61 6c 50  D         TotalP
19b10 61 67 65 46 61 75 6c 74 43 6f 75 6e 74 3b 0d 0a  ageFaultCount;..
19b20 09 44 57 4f 52 44 20 20 20 20 20 20 20 20 20 54  .DWORD         T
19b30 6f 74 61 6c 50 72 6f 63 65 73 73 65 73 3b 0d 0a  otalProcesses;..
19b40 09 44 57 4f 52 44 20 20 20 20 20 20 20 20 20 41  .DWORD         A
19b50 63 74 69 76 65 50 72 6f 63 65 73 73 65 73 3b 0d  ctiveProcesses;.
19b60 0a 09 44 57 4f 52 44 20 20 20 20 20 20 20 20 20  ..DWORD         
19b70 54 6f 74 61 6c 54 65 72 6d 69 6e 61 74 65 64 50  TotalTerminatedP
19b80 72 6f 63 65 73 73 65 73 3b 0d 0a 7d 0d 0a 61 6c  rocesses;..}..al
19b90 69 61 73 20 4a 4f 42 4f 42 4a 45 43 54 5f 42 41  ias JOBOBJECT_BA
19ba0 53 49 43 5f 41 43 43 4f 55 4e 54 49 4e 47 5f 49  SIC_ACCOUNTING_I
19bb0 4e 46 4f 52 4d 41 54 49 4f 4e 2a 20 50 4a 4f 42  NFORMATION* PJOB
19bc0 4f 42 4a 45 43 54 5f 42 41 53 49 43 5f 41 43 43  OBJECT_BASIC_ACC
19bd0 4f 55 4e 54 49 4e 47 5f 49 4e 46 4f 52 4d 41 54  OUNTING_INFORMAT
19be0 49 4f 4e 3b 0d 0a 0d 0a 73 74 72 75 63 74 20 4a  ION;....struct J
19bf0 4f 42 4f 42 4a 45 43 54 5f 42 41 53 49 43 5f 4c  OBOBJECT_BASIC_L
19c00 49 4d 49 54 5f 49 4e 46 4f 52 4d 41 54 49 4f 4e  IMIT_INFORMATION
19c10 20 7b 0d 0a 09 4c 41 52 47 45 5f 49 4e 54 45 47   {...LARGE_INTEG
19c20 45 52 20 50 65 72 50 72 6f 63 65 73 73 55 73 65  ER PerProcessUse
19c30 72 54 69 6d 65 4c 69 6d 69 74 3b 0d 0a 09 4c 41  rTimeLimit;...LA
19c40 52 47 45 5f 49 4e 54 45 47 45 52 20 50 65 72 4a  RGE_INTEGER PerJ
19c50 6f 62 55 73 65 72 54 69 6d 65 4c 69 6d 69 74 3b  obUserTimeLimit;
19c60 0d 0a 09 44 57 4f 52 44 20 20 20 20 20 20 20 20  ...DWORD        
19c70 20 4c 69 6d 69 74 46 6c 61 67 73 3b 0d 0a 09 53   LimitFlags;...S
19c80 49 5a 45 5f 54 20 20 20 20 20 20 20 20 4d 69 6e  IZE_T        Min
19c90 69 6d 75 6d 57 6f 72 6b 69 6e 67 53 65 74 53 69  imumWorkingSetSi
19ca0 7a 65 3b 0d 0a 09 53 49 5a 45 5f 54 20 20 20 20  ze;...SIZE_T    
19cb0 20 20 20 20 4d 61 78 69 6d 75 6d 57 6f 72 6b 69      MaximumWorki
19cc0 6e 67 53 65 74 53 69 7a 65 3b 0d 0a 09 44 57 4f  ngSetSize;...DWO
19cd0 52 44 20 20 20 20 20 20 20 20 20 41 63 74 69 76  RD         Activ
19ce0 65 50 72 6f 63 65 73 73 4c 69 6d 69 74 3b 0d 0a  eProcessLimit;..
19cf0 09 55 4c 4f 4e 47 5f 50 54 52 20 20 20 20 20 41  .ULONG_PTR     A
19d00 66 66 69 6e 69 74 79 3b 0d 0a 09 44 57 4f 52 44  ffinity;...DWORD
19d10 20 20 20 20 20 20 20 20 20 50 72 69 6f 72 69 74           Priorit
19d20 79 43 6c 61 73 73 3b 0d 0a 09 44 57 4f 52 44 20  yClass;...DWORD 
19d30 20 20 20 20 20 20 20 20 53 63 68 65 64 75 6c 69          Scheduli
19d40 6e 67 43 6c 61 73 73 3b 0d 0a 7d 0d 0a 61 6c 69  ngClass;..}..ali
19d50 61 73 20 4a 4f 42 4f 42 4a 45 43 54 5f 42 41 53  as JOBOBJECT_BAS
19d60 49 43 5f 4c 49 4d 49 54 5f 49 4e 46 4f 52 4d 41  IC_LIMIT_INFORMA
19d70 54 49 4f 4e 2a 20 50 4a 4f 42 4f 42 4a 45 43 54  TION* PJOBOBJECT
19d80 5f 42 41 53 49 43 5f 4c 49 4d 49 54 5f 49 4e 46  _BASIC_LIMIT_INF
19d90 4f 52 4d 41 54 49 4f 4e 3b 0d 0a 0d 0a 73 74 72  ORMATION;....str
19da0 75 63 74 20 4a 4f 42 4f 42 4a 45 43 54 5f 42 41  uct JOBOBJECT_BA
19db0 53 49 43 5f 50 52 4f 43 45 53 53 5f 49 44 5f 4c  SIC_PROCESS_ID_L
19dc0 49 53 54 20 7b 0d 0a 09 44 57 4f 52 44 20 20 20  IST {...DWORD   
19dd0 20 20 4e 75 6d 62 65 72 4f 66 41 73 73 69 67 6e    NumberOfAssign
19de0 65 64 50 72 6f 63 65 73 73 65 73 3b 0d 0a 09 44  edProcesses;...D
19df0 57 4f 52 44 20 20 20 20 20 4e 75 6d 62 65 72 4f  WORD     NumberO
19e00 66 50 72 6f 63 65 73 73 49 64 73 49 6e 4c 69 73  fProcessIdsInLis
19e10 74 3b 0d 0a 09 55 4c 4f 4e 47 5f 50 54 52 20 5f  t;...ULONG_PTR _
19e20 50 72 6f 63 65 73 73 49 64 4c 69 73 74 3b 0d 0a  ProcessIdList;..
19e30 0d 0a 09 55 4c 4f 4e 47 5f 50 54 52 2a 20 50 72  ...ULONG_PTR* Pr
19e40 6f 63 65 73 73 49 64 4c 69 73 74 28 29 20 7b 20  ocessIdList() { 
19e50 72 65 74 75 72 6e 20 26 5f 50 72 6f 63 65 73 73  return &_Process
19e60 49 64 4c 69 73 74 3b 20 7d 0d 0a 7d 0d 0a 61 6c  IdList; }..}..al
19e70 69 61 73 20 4a 4f 42 4f 42 4a 45 43 54 5f 42 41  ias JOBOBJECT_BA
19e80 53 49 43 5f 50 52 4f 43 45 53 53 5f 49 44 5f 4c  SIC_PROCESS_ID_L
19e90 49 53 54 2a 20 50 4a 4f 42 4f 42 4a 45 43 54 5f  IST* PJOBOBJECT_
19ea0 42 41 53 49 43 5f 50 52 4f 43 45 53 53 5f 49 44  BASIC_PROCESS_ID
19eb0 5f 4c 49 53 54 3b 0d 0a 0d 0a 73 74 72 75 63 74  _LIST;....struct
19ec0 20 4a 4f 42 4f 42 4a 45 43 54 5f 42 41 53 49 43   JOBOBJECT_BASIC
19ed0 5f 55 49 5f 52 45 53 54 52 49 43 54 49 4f 4e 53  _UI_RESTRICTIONS
19ee0 20 7b 0d 0a 09 44 57 4f 52 44 20 55 49 52 65 73   {...DWORD UIRes
19ef0 74 72 69 63 74 69 6f 6e 73 43 6c 61 73 73 3b 0d  trictionsClass;.
19f00 0a 7d 0d 0a 61 6c 69 61 73 20 4a 4f 42 4f 42 4a  .}..alias JOBOBJ
19f10 45 43 54 5f 42 41 53 49 43 5f 55 49 5f 52 45 53  ECT_BASIC_UI_RES
19f20 54 52 49 43 54 49 4f 4e 53 2a 20 50 4a 4f 42 4f  TRICTIONS* PJOBO
19f30 42 4a 45 43 54 5f 42 41 53 49 43 5f 55 49 5f 52  BJECT_BASIC_UI_R
19f40 45 53 54 52 49 43 54 49 4f 4e 53 3b 0d 0a 0d 0a  ESTRICTIONS;....
19f50 73 74 72 75 63 74 20 4a 4f 42 4f 42 4a 45 43 54  struct JOBOBJECT
19f60 5f 53 45 43 55 52 49 54 59 5f 4c 49 4d 49 54 5f  _SECURITY_LIMIT_
19f70 49 4e 46 4f 52 4d 41 54 49 4f 4e 20 7b 0d 0a 09  INFORMATION {...
19f80 44 57 4f 52 44 20 20 20 20 20 20 20 20 20 20 20  DWORD           
19f90 20 20 53 65 63 75 72 69 74 79 4c 69 6d 69 74 46    SecurityLimitF
19fa0 6c 61 67 73 3b 0d 0a 09 48 41 4e 44 4c 45 20 20  lags;...HANDLE  
19fb0 20 20 20 20 20 20 20 20 20 20 4a 6f 62 54 6f 6b            JobTok
19fc0 65 6e 3b 0d 0a 09 50 54 4f 4b 45 4e 5f 47 52 4f  en;...PTOKEN_GRO
19fd0 55 50 53 20 20 20 20 20 53 69 64 73 54 6f 44 69  UPS     SidsToDi
19fe0 73 61 62 6c 65 3b 0d 0a 09 50 54 4f 4b 45 4e 5f  sable;...PTOKEN_
19ff0 50 52 49 56 49 4c 45 47 45 53 20 50 72 69 76 69  PRIVILEGES Privi
1a000 6c 65 67 65 73 54 6f 44 65 6c 65 74 65 3b 0d 0a  legesToDelete;..
1a010 09 50 54 4f 4b 45 4e 5f 47 52 4f 55 50 53 20 20  .PTOKEN_GROUPS  
1a020 20 20 20 52 65 73 74 72 69 63 74 65 64 53 69 64     RestrictedSid
1a030 73 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 4a 4f 42  s;..}..alias JOB
1a040 4f 42 4a 45 43 54 5f 53 45 43 55 52 49 54 59 5f  OBJECT_SECURITY_
1a050 4c 49 4d 49 54 5f 49 4e 46 4f 52 4d 41 54 49 4f  LIMIT_INFORMATIO
1a060 4e 2a 20 50 4a 4f 42 4f 42 4a 45 43 54 5f 53 45  N* PJOBOBJECT_SE
1a070 43 55 52 49 54 59 5f 4c 49 4d 49 54 5f 49 4e 46  CURITY_LIMIT_INF
1a080 4f 52 4d 41 54 49 4f 4e 3b 0d 0a 0d 0a 73 74 72  ORMATION;....str
1a090 75 63 74 20 4a 4f 42 4f 42 4a 45 43 54 5f 45 4e  uct JOBOBJECT_EN
1a0a0 44 5f 4f 46 5f 4a 4f 42 5f 54 49 4d 45 5f 49 4e  D_OF_JOB_TIME_IN
1a0b0 46 4f 52 4d 41 54 49 4f 4e 20 7b 0d 0a 09 44 57  FORMATION {...DW
1a0c0 4f 52 44 20 45 6e 64 4f 66 4a 6f 62 54 69 6d 65  ORD EndOfJobTime
1a0d0 41 63 74 69 6f 6e 3b 0d 0a 7d 0d 0a 61 6c 69 61  Action;..}..alia
1a0e0 73 20 4a 4f 42 4f 42 4a 45 43 54 5f 45 4e 44 5f  s JOBOBJECT_END_
1a0f0 4f 46 5f 4a 4f 42 5f 54 49 4d 45 5f 49 4e 46 4f  OF_JOB_TIME_INFO
1a100 52 4d 41 54 49 4f 4e 2a 20 50 4a 4f 42 4f 42 4a  RMATION* PJOBOBJ
1a110 45 43 54 5f 45 4e 44 5f 4f 46 5f 4a 4f 42 5f 54  ECT_END_OF_JOB_T
1a120 49 4d 45 5f 49 4e 46 4f 52 4d 41 54 49 4f 4e 3b  IME_INFORMATION;
1a130 0d 0a 0d 0a 73 74 72 75 63 74 20 4a 4f 42 4f 42  ....struct JOBOB
1a140 4a 45 43 54 5f 41 53 53 4f 43 49 41 54 45 5f 43  JECT_ASSOCIATE_C
1a150 4f 4d 50 4c 45 54 49 4f 4e 5f 50 4f 52 54 20 7b  OMPLETION_PORT {
1a160 0d 0a 09 50 56 4f 49 44 20 20 43 6f 6d 70 6c 65  ...PVOID  Comple
1a170 74 69 6f 6e 4b 65 79 3b 0d 0a 09 48 41 4e 44 4c  tionKey;...HANDL
1a180 45 20 43 6f 6d 70 6c 65 74 69 6f 6e 50 6f 72 74  E CompletionPort
1a190 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 4a 4f 42 4f  ;..}..alias JOBO
1a1a0 42 4a 45 43 54 5f 41 53 53 4f 43 49 41 54 45 5f  BJECT_ASSOCIATE_
1a1b0 43 4f 4d 50 4c 45 54 49 4f 4e 5f 50 4f 52 54 2a  COMPLETION_PORT*
1a1c0 20 50 4a 4f 42 4f 42 4a 45 43 54 5f 41 53 53 4f   PJOBOBJECT_ASSO
1a1d0 43 49 41 54 45 5f 43 4f 4d 50 4c 45 54 49 4f 4e  CIATE_COMPLETION
1a1e0 5f 50 4f 52 54 3b 0d 0a 0d 0a 73 74 72 75 63 74  _PORT;....struct
1a1f0 20 4a 4f 42 4f 42 4a 45 43 54 5f 42 41 53 49 43   JOBOBJECT_BASIC
1a200 5f 41 4e 44 5f 49 4f 5f 41 43 43 4f 55 4e 54 49  _AND_IO_ACCOUNTI
1a210 4e 47 5f 49 4e 46 4f 52 4d 41 54 49 4f 4e 20 7b  NG_INFORMATION {
1a220 0d 0a 09 4a 4f 42 4f 42 4a 45 43 54 5f 42 41 53  ...JOBOBJECT_BAS
1a230 49 43 5f 41 43 43 4f 55 4e 54 49 4e 47 5f 49 4e  IC_ACCOUNTING_IN
1a240 46 4f 52 4d 41 54 49 4f 4e 20 42 61 73 69 63 49  FORMATION BasicI
1a250 6e 66 6f 3b 0d 0a 09 49 4f 5f 43 4f 55 4e 54 45  nfo;...IO_COUNTE
1a260 52 53 20 49 6f 49 6e 66 6f 3b 0d 0a 7d 0d 0a 61  RS IoInfo;..}..a
1a270 6c 69 61 73 20 4a 4f 42 4f 42 4a 45 43 54 5f 42  lias JOBOBJECT_B
1a280 41 53 49 43 5f 41 4e 44 5f 49 4f 5f 41 43 43 4f  ASIC_AND_IO_ACCO
1a290 55 4e 54 49 4e 47 5f 49 4e 46 4f 52 4d 41 54 49  UNTING_INFORMATI
1a2a0 4f 4e 20 2a 50 4a 4f 42 4f 42 4a 45 43 54 5f 42  ON *PJOBOBJECT_B
1a2b0 41 53 49 43 5f 41 4e 44 5f 49 4f 5f 41 43 43 4f  ASIC_AND_IO_ACCO
1a2c0 55 4e 54 49 4e 47 5f 49 4e 46 4f 52 4d 41 54 49  UNTING_INFORMATI
1a2d0 4f 4e 3b 0d 0a 0d 0a 73 74 72 75 63 74 20 4a 4f  ON;....struct JO
1a2e0 42 4f 42 4a 45 43 54 5f 45 58 54 45 4e 44 45 44  BOBJECT_EXTENDED
1a2f0 5f 4c 49 4d 49 54 5f 49 4e 46 4f 52 4d 41 54 49  _LIMIT_INFORMATI
1a300 4f 4e 20 7b 0d 0a 09 4a 4f 42 4f 42 4a 45 43 54  ON {...JOBOBJECT
1a310 5f 42 41 53 49 43 5f 4c 49 4d 49 54 5f 49 4e 46  _BASIC_LIMIT_INF
1a320 4f 52 4d 41 54 49 4f 4e 20 42 61 73 69 63 4c 69  ORMATION BasicLi
1a330 6d 69 74 49 6e 66 6f 72 6d 61 74 69 6f 6e 3b 0d  mitInformation;.
1a340 0a 09 49 4f 5f 43 4f 55 4e 54 45 52 53 20 49 6f  ..IO_COUNTERS Io
1a350 49 6e 66 6f 3b 0d 0a 09 53 49 5a 45 5f 54 20 20  Info;...SIZE_T  
1a360 20 20 20 20 50 72 6f 63 65 73 73 4d 65 6d 6f 72      ProcessMemor
1a370 79 4c 69 6d 69 74 3b 0d 0a 09 53 49 5a 45 5f 54  yLimit;...SIZE_T
1a380 20 20 20 20 20 20 4a 6f 62 4d 65 6d 6f 72 79 4c        JobMemoryL
1a390 69 6d 69 74 3b 0d 0a 09 53 49 5a 45 5f 54 20 20  imit;...SIZE_T  
1a3a0 20 20 20 20 50 65 61 6b 50 72 6f 63 65 73 73 4d      PeakProcessM
1a3b0 65 6d 6f 72 79 55 73 65 64 3b 0d 0a 09 53 49 5a  emoryUsed;...SIZ
1a3c0 45 5f 54 20 20 20 20 20 20 50 65 61 6b 4a 6f 62  E_T      PeakJob
1a3d0 4d 65 6d 6f 72 79 55 73 65 64 3b 0d 0a 7d 0d 0a  MemoryUsed;..}..
1a3e0 61 6c 69 61 73 20 4a 4f 42 4f 42 4a 45 43 54 5f  alias JOBOBJECT_
1a3f0 45 58 54 45 4e 44 45 44 5f 4c 49 4d 49 54 5f 49  EXTENDED_LIMIT_I
1a400 4e 46 4f 52 4d 41 54 49 4f 4e 2a 20 50 4a 4f 42  NFORMATION* PJOB
1a410 4f 42 4a 45 43 54 5f 45 58 54 45 4e 44 45 44 5f  OBJECT_EXTENDED_
1a420 4c 49 4d 49 54 5f 49 4e 46 4f 52 4d 41 54 49 4f  LIMIT_INFORMATIO
1a430 4e 3b 0d 0a 0d 0a 73 74 72 75 63 74 20 4a 4f 42  N;....struct JOB
1a440 4f 42 4a 45 43 54 5f 4a 4f 42 53 45 54 5f 49 4e  OBJECT_JOBSET_IN
1a450 46 4f 52 4d 41 54 49 4f 4e 20 7b 0d 0a 09 44 57  FORMATION {...DW
1a460 4f 52 44 20 4d 65 6d 62 65 72 4c 65 76 65 6c 3b  ORD MemberLevel;
1a470 0d 0a 7d 0d 0a 61 6c 69 61 73 20 4a 4f 42 4f 42  ..}..alias JOBOB
1a480 4a 45 43 54 5f 4a 4f 42 53 45 54 5f 49 4e 46 4f  JECT_JOBSET_INFO
1a490 52 4d 41 54 49 4f 4e 2a 20 50 4a 4f 42 4f 42 4a  RMATION* PJOBOBJ
1a4a0 45 43 54 5f 4a 4f 42 53 45 54 5f 49 4e 46 4f 52  ECT_JOBSET_INFOR
1a4b0 4d 41 54 49 4f 4e 3b 0d 0a 0d 0a 2f 2f 20 4d 69  MATION;....// Mi
1a4c0 6e 47 57 3a 20 4d 61 6b 69 6e 67 20 74 68 65 73  nGW: Making thes
1a4d0 65 20 64 65 66 69 6e 65 73 20 63 6f 6e 64 69 74  e defines condit
1a4e0 69 6f 6e 61 6c 20 6f 6e 20 5f 57 49 4e 33 32 5f  ional on _WIN32_
1a4f0 57 49 4e 4e 54 20 77 69 6c 6c 20 62 72 65 61 6b  WINNT will break
1a500 20 64 64 6b 20 69 6e 63 6c 75 64 65 73 0d 0a 2f   ddk includes../
1a510 2f 73 74 61 74 69 63 20 69 66 20 28 5f 57 49 4e  /static if (_WIN
1a520 33 32 5f 57 49 4e 4e 54 20 3e 3d 20 30 78 35 30  32_WINNT >= 0x50
1a530 30 29 20 7b 0d 0a 0d 0a 63 6f 6e 73 74 20 44 57  0) {....const DW
1a540 4f 52 44 0d 0a 09 45 53 5f 53 59 53 54 45 4d 5f  ORD...ES_SYSTEM_
1a550 52 45 51 55 49 52 45 44 20 20 3d 20 30 78 30 30  REQUIRED  = 0x00
1a560 30 30 30 30 30 31 2c 0d 0a 09 45 53 5f 44 49 53  000001,...ES_DIS
1a570 50 4c 41 59 5f 52 45 51 55 49 52 45 44 20 3d 20  PLAY_REQUIRED = 
1a580 30 78 30 30 30 30 30 30 30 32 2c 0d 0a 09 45 53  0x00000002,...ES
1a590 5f 55 53 45 52 5f 50 52 45 53 45 4e 54 20 20 20  _USER_PRESENT   
1a5a0 20 20 3d 20 30 78 30 30 30 30 30 30 30 34 2c 0d    = 0x00000004,.
1a5b0 0a 09 45 53 5f 43 4f 4e 54 49 4e 55 4f 55 53 20  ..ES_CONTINUOUS 
1a5c0 20 20 20 20 20 20 3d 20 30 78 38 30 30 30 30 30        = 0x800000
1a5d0 30 30 3b 0d 0a 0d 0a 65 6e 75 6d 20 4c 41 54 45  00;....enum LATE
1a5e0 4e 43 59 5f 54 49 4d 45 20 7b 0d 0a 09 4c 54 5f  NCY_TIME {...LT_
1a5f0 44 4f 4e 54 5f 43 41 52 45 2c 0d 0a 09 4c 54 5f  DONT_CARE,...LT_
1a600 4c 4f 57 45 53 54 5f 4c 41 54 45 4e 43 59 0d 0a  LOWEST_LATENCY..
1a610 7d 0d 0a 61 6c 69 61 73 20 4c 41 54 45 4e 43 59  }..alias LATENCY
1a620 5f 54 49 4d 45 2a 20 50 4c 41 54 45 4e 43 59 5f  _TIME* PLATENCY_
1a630 54 49 4d 45 3b 0d 0a 0d 0a 65 6e 75 6d 20 53 59  TIME;....enum SY
1a640 53 54 45 4d 5f 50 4f 57 45 52 5f 53 54 41 54 45  STEM_POWER_STATE
1a650 20 7b 0d 0a 09 50 6f 77 65 72 53 79 73 74 65 6d   {...PowerSystem
1a660 55 6e 73 70 65 63 69 66 69 65 64 2c 0d 0a 09 50  Unspecified,...P
1a670 6f 77 65 72 53 79 73 74 65 6d 57 6f 72 6b 69 6e  owerSystemWorkin
1a680 67 2c 0d 0a 09 50 6f 77 65 72 53 79 73 74 65 6d  g,...PowerSystem
1a690 53 6c 65 65 70 69 6e 67 31 2c 0d 0a 09 50 6f 77  Sleeping1,...Pow
1a6a0 65 72 53 79 73 74 65 6d 53 6c 65 65 70 69 6e 67  erSystemSleeping
1a6b0 32 2c 0d 0a 09 50 6f 77 65 72 53 79 73 74 65 6d  2,...PowerSystem
1a6c0 53 6c 65 65 70 69 6e 67 33 2c 0d 0a 09 50 6f 77  Sleeping3,...Pow
1a6d0 65 72 53 79 73 74 65 6d 48 69 62 65 72 6e 61 74  erSystemHibernat
1a6e0 65 2c 0d 0a 09 50 6f 77 65 72 53 79 73 74 65 6d  e,...PowerSystem
1a6f0 53 68 75 74 64 6f 77 6e 2c 0d 0a 09 50 6f 77 65  Shutdown,...Powe
1a700 72 53 79 73 74 65 6d 4d 61 78 69 6d 75 6d 0d 0a  rSystemMaximum..
1a710 7d 0d 0a 61 6c 69 61 73 20 53 59 53 54 45 4d 5f  }..alias SYSTEM_
1a720 50 4f 57 45 52 5f 53 54 41 54 45 2a 20 50 53 59  POWER_STATE* PSY
1a730 53 54 45 4d 5f 50 4f 57 45 52 5f 53 54 41 54 45  STEM_POWER_STATE
1a740 3b 0d 0a 0d 0a 63 6f 6e 73 74 20 50 4f 57 45 52  ;....const POWER
1a750 5f 53 59 53 54 45 4d 5f 4d 41 58 49 4d 55 4d 20  _SYSTEM_MAXIMUM 
1a760 3d 20 53 59 53 54 45 4d 5f 50 4f 57 45 52 5f 53  = SYSTEM_POWER_S
1a770 54 41 54 45 2e 50 6f 77 65 72 53 79 73 74 65 6d  TATE.PowerSystem
1a780 4d 61 78 69 6d 75 6d 3b 0d 0a 0d 0a 65 6e 75 6d  Maximum;....enum
1a790 20 50 4f 57 45 52 5f 41 43 54 49 4f 4e 20 7b 0d   POWER_ACTION {.
1a7a0 0a 09 50 6f 77 65 72 41 63 74 69 6f 6e 4e 6f 6e  ..PowerActionNon
1a7b0 65 2c 0d 0a 09 50 6f 77 65 72 41 63 74 69 6f 6e  e,...PowerAction
1a7c0 52 65 73 65 72 76 65 64 2c 0d 0a 09 50 6f 77 65  Reserved,...Powe
1a7d0 72 41 63 74 69 6f 6e 53 6c 65 65 70 2c 0d 0a 09  rActionSleep,...
1a7e0 50 6f 77 65 72 41 63 74 69 6f 6e 48 69 62 65 72  PowerActionHiber
1a7f0 6e 61 74 65 2c 0d 0a 09 50 6f 77 65 72 41 63 74  nate,...PowerAct
1a800 69 6f 6e 53 68 75 74 64 6f 77 6e 2c 0d 0a 09 50  ionShutdown,...P
1a810 6f 77 65 72 41 63 74 69 6f 6e 53 68 75 74 64 6f  owerActionShutdo
1a820 77 6e 52 65 73 65 74 2c 0d 0a 09 50 6f 77 65 72  wnReset,...Power
1a830 41 63 74 69 6f 6e 53 68 75 74 64 6f 77 6e 4f 66  ActionShutdownOf
1a840 66 2c 0d 0a 09 50 6f 77 65 72 41 63 74 69 6f 6e  f,...PowerAction
1a850 57 61 72 6d 45 6a 65 63 74 0d 0a 7d 0d 0a 61 6c  WarmEject..}..al
1a860 69 61 73 20 50 4f 57 45 52 5f 41 43 54 49 4f 4e  ias POWER_ACTION
1a870 2a 20 50 50 4f 57 45 52 5f 41 43 54 49 4f 4e 3b  * PPOWER_ACTION;
1a880 0d 0a 0d 0a 73 74 61 74 69 63 20 69 66 20 28 5f  ....static if (_
1a890 57 49 4e 33 32 5f 57 49 4e 4e 54 20 3e 3d 20 30  WIN32_WINNT >= 0
1a8a0 78 36 30 30 29 20 7b 0d 0a 09 65 6e 75 6d 20 53  x600) {...enum S
1a8b0 59 53 54 45 4d 5f 50 4f 57 45 52 5f 43 4f 4e 44  YSTEM_POWER_COND
1a8c0 49 54 49 4f 4e 20 7b 0d 0a 09 09 50 6f 41 63 2c  ITION {....PoAc,
1a8d0 0d 0a 09 09 50 6f 44 63 2c 0d 0a 09 09 50 6f 48  ....PoDc,....PoH
1a8e0 6f 74 2c 0d 0a 09 09 50 6f 43 6f 6e 64 69 74 69  ot,....PoConditi
1a8f0 6f 6e 4d 61 78 69 6d 75 6d 0d 0a 09 7d 0d 0a 09  onMaximum...}...
1a900 61 6c 69 61 73 20 53 59 53 54 45 4d 5f 50 4f 57  alias SYSTEM_POW
1a910 45 52 5f 43 4f 4e 44 49 54 49 4f 4e 2a 20 50 53  ER_CONDITION* PS
1a920 59 53 54 45 4d 5f 50 4f 57 45 52 5f 43 4f 4e 44  YSTEM_POWER_COND
1a930 49 54 49 4f 4e 3b 0d 0a 7d 0d 0a 0d 0a 65 6e 75  ITION;..}....enu
1a940 6d 20 44 45 56 49 43 45 5f 50 4f 57 45 52 5f 53  m DEVICE_POWER_S
1a950 54 41 54 45 20 7b 0d 0a 09 50 6f 77 65 72 44 65  TATE {...PowerDe
1a960 76 69 63 65 55 6e 73 70 65 63 69 66 69 65 64 2c  viceUnspecified,
1a970 0d 0a 09 50 6f 77 65 72 44 65 76 69 63 65 44 30  ...PowerDeviceD0
1a980 2c 0d 0a 09 50 6f 77 65 72 44 65 76 69 63 65 44  ,...PowerDeviceD
1a990 31 2c 0d 0a 09 50 6f 77 65 72 44 65 76 69 63 65  1,...PowerDevice
1a9a0 44 32 2c 0d 0a 09 50 6f 77 65 72 44 65 76 69 63  D2,...PowerDevic
1a9b0 65 44 33 2c 0d 0a 09 50 6f 77 65 72 44 65 76 69  eD3,...PowerDevi
1a9c0 63 65 4d 61 78 69 6d 75 6d 0d 0a 7d 0d 0a 61 6c  ceMaximum..}..al
1a9d0 69 61 73 20 44 45 56 49 43 45 5f 50 4f 57 45 52  ias DEVICE_POWER
1a9e0 5f 53 54 41 54 45 2a 20 50 44 45 56 49 43 45 5f  _STATE* PDEVICE_
1a9f0 50 4f 57 45 52 5f 53 54 41 54 45 3b 0d 0a 0d 0a  POWER_STATE;....
1aa00 61 6c 69 67 6e 28 34 29 3a 0d 0a 73 74 72 75 63  align(4):..struc
1aa10 74 20 42 41 54 54 45 52 59 5f 52 45 50 4f 52 54  t BATTERY_REPORT
1aa20 49 4e 47 5f 53 43 41 4c 45 20 7b 0d 0a 09 44 57  ING_SCALE {...DW
1aa30 4f 52 44 20 47 72 61 6e 75 6c 61 72 69 74 79 3b  ORD Granularity;
1aa40 0d 0a 09 44 57 4f 52 44 20 43 61 70 61 63 69 74  ...DWORD Capacit
1aa50 79 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 42 41 54  y;..}..alias BAT
1aa60 54 45 52 59 5f 52 45 50 4f 52 54 49 4e 47 5f 53  TERY_REPORTING_S
1aa70 43 41 4c 45 2a 20 50 42 41 54 54 45 52 59 5f 52  CALE* PBATTERY_R
1aa80 45 50 4f 52 54 49 4e 47 5f 53 43 41 4c 45 3b 0d  EPORTING_SCALE;.
1aa90 0a 0d 0a 73 74 72 75 63 74 20 50 4f 57 45 52 5f  ...struct POWER_
1aaa0 41 43 54 49 4f 4e 5f 50 4f 4c 49 43 59 20 7b 0d  ACTION_POLICY {.
1aab0 0a 09 50 4f 57 45 52 5f 41 43 54 49 4f 4e 20 41  ..POWER_ACTION A
1aac0 63 74 69 6f 6e 3b 0d 0a 09 55 4c 4f 4e 47 20 20  ction;...ULONG  
1aad0 20 20 20 20 20 20 46 6c 61 67 73 3b 0d 0a 09 55        Flags;...U
1aae0 4c 4f 4e 47 20 20 20 20 20 20 20 20 45 76 65 6e  LONG        Even
1aaf0 74 43 6f 64 65 3b 0d 0a 7d 0d 0a 61 6c 69 61 73  tCode;..}..alias
1ab00 20 50 4f 57 45 52 5f 41 43 54 49 4f 4e 5f 50 4f   POWER_ACTION_PO
1ab10 4c 49 43 59 2a 20 50 50 4f 57 45 52 5f 41 43 54  LICY* PPOWER_ACT
1ab20 49 4f 4e 5f 50 4f 4c 49 43 59 3b 0d 0a 0d 0a 2f  ION_POLICY;..../
1ab30 2f 20 50 4f 57 45 52 5f 41 43 54 49 4f 4e 5f 50  / POWER_ACTION_P
1ab40 4f 4c 49 43 59 2e 46 6c 61 67 73 20 63 6f 6e 73  OLICY.Flags cons
1ab50 74 61 6e 74 73 0d 0a 63 6f 6e 73 74 20 55 4c 4f  tants..const ULO
1ab60 4e 47 0d 0a 09 50 4f 57 45 52 5f 41 43 54 49 4f  NG...POWER_ACTIO
1ab70 4e 5f 51 55 45 52 59 5f 41 4c 4c 4f 57 45 44 20  N_QUERY_ALLOWED 
1ab80 20 3d 20 30 78 30 30 30 30 30 30 30 31 2c 0d 0a   = 0x00000001,..
1ab90 09 50 4f 57 45 52 5f 41 43 54 49 4f 4e 5f 55 49  .POWER_ACTION_UI
1aba0 5f 41 4c 4c 4f 57 45 44 20 20 20 20 20 3d 20 30  _ALLOWED     = 0
1abb0 78 30 30 30 30 30 30 30 32 2c 0d 0a 09 50 4f 57  x00000002,...POW
1abc0 45 52 5f 41 43 54 49 4f 4e 5f 4f 56 45 52 52 49  ER_ACTION_OVERRI
1abd0 44 45 5f 41 50 50 53 20 20 3d 20 30 78 30 30 30  DE_APPS  = 0x000
1abe0 30 30 30 30 34 2c 0d 0a 09 50 4f 57 45 52 5f 41  00004,...POWER_A
1abf0 43 54 49 4f 4e 5f 4c 49 47 48 54 45 53 54 5f 46  CTION_LIGHTEST_F
1ac00 49 52 53 54 20 3d 20 30 78 31 30 30 30 30 30 30  IRST = 0x1000000
1ac10 30 2c 0d 0a 09 50 4f 57 45 52 5f 41 43 54 49 4f  0,...POWER_ACTIO
1ac20 4e 5f 4c 4f 43 4b 5f 43 4f 4e 53 4f 4c 45 20 20  N_LOCK_CONSOLE  
1ac30 20 3d 20 30 78 32 30 30 30 30 30 30 30 2c 0d 0a   = 0x20000000,..
1ac40 09 50 4f 57 45 52 5f 41 43 54 49 4f 4e 5f 44 49  .POWER_ACTION_DI
1ac50 53 41 42 4c 45 5f 57 41 4b 45 53 20 20 3d 20 30  SABLE_WAKES  = 0
1ac60 78 34 30 30 30 30 30 30 30 2c 0d 0a 09 50 4f 57  x40000000,...POW
1ac70 45 52 5f 41 43 54 49 4f 4e 5f 43 52 49 54 49 43  ER_ACTION_CRITIC
1ac80 41 4c 20 20 20 20 20 20 20 3d 20 30 78 38 30 30  AL       = 0x800
1ac90 30 30 30 30 30 3b 0d 0a 0d 0a 2f 2f 20 50 4f 57  00000;....// POW
1aca0 45 52 5f 41 43 54 49 4f 4e 5f 50 4f 4c 49 43 59  ER_ACTION_POLICY
1acb0 2e 45 76 65 6e 74 43 6f 64 65 20 63 6f 6e 73 74  .EventCode const
1acc0 61 6e 74 73 0d 0a 63 6f 6e 73 74 20 55 4c 4f 4e  ants..const ULON
1acd0 47 0d 0a 09 50 4f 57 45 52 5f 4c 45 56 45 4c 5f  G...POWER_LEVEL_
1ace0 55 53 45 52 5f 4e 4f 54 49 46 59 5f 54 45 58 54  USER_NOTIFY_TEXT
1acf0 20 20 3d 20 30 78 30 30 30 30 30 30 30 31 2c 0d    = 0x00000001,.
1ad00 0a 09 50 4f 57 45 52 5f 4c 45 56 45 4c 5f 55 53  ..POWER_LEVEL_US
1ad10 45 52 5f 4e 4f 54 49 46 59 5f 53 4f 55 4e 44 20  ER_NOTIFY_SOUND 
1ad20 3d 20 30 78 30 30 30 30 30 30 30 32 2c 0d 0a 09  = 0x00000002,...
1ad30 50 4f 57 45 52 5f 4c 45 56 45 4c 5f 55 53 45 52  POWER_LEVEL_USER
1ad40 5f 4e 4f 54 49 46 59 5f 45 58 45 43 20 20 3d 20  _NOTIFY_EXEC  = 
1ad50 30 78 30 30 30 30 30 30 30 34 2c 0d 0a 09 50 4f  0x00000004,...PO
1ad60 57 45 52 5f 55 53 45 52 5f 4e 4f 54 49 46 59 5f  WER_USER_NOTIFY_
1ad70 42 55 54 54 4f 4e 20 20 20 20 20 20 3d 20 30 78  BUTTON      = 0x
1ad80 30 30 30 30 30 30 30 38 2c 0d 0a 09 50 4f 57 45  00000008,...POWE
1ad90 52 5f 55 53 45 52 5f 4e 4f 54 49 46 59 5f 53 48  R_USER_NOTIFY_SH
1ada0 55 54 44 4f 57 4e 20 20 20 20 3d 20 30 78 30 30  UTDOWN    = 0x00
1adb0 30 30 30 30 31 30 2c 0d 0a 09 50 4f 57 45 52 5f  000010,...POWER_
1adc0 46 4f 52 43 45 5f 54 52 49 47 47 45 52 5f 52 45  FORCE_TRIGGER_RE
1add0 53 45 54 20 20 20 20 20 3d 20 30 78 38 30 30 30  SET     = 0x8000
1ade0 30 30 30 30 3b 0d 0a 0d 0a 63 6f 6e 73 74 20 73  0000;....const s
1adf0 69 7a 65 5f 74 0d 0a 09 44 49 53 43 48 41 52 47  ize_t...DISCHARG
1ae00 45 5f 50 4f 4c 49 43 59 5f 43 52 49 54 49 43 41  E_POLICY_CRITICA
1ae10 4c 20 3d 20 30 2c 0d 0a 09 44 49 53 43 48 41 52  L = 0,...DISCHAR
1ae20 47 45 5f 50 4f 4c 49 43 59 5f 4c 4f 57 20 20 20  GE_POLICY_LOW   
1ae30 20 20 20 3d 20 31 2c 0d 0a 09 4e 55 4d 5f 44 49     = 1,...NUM_DI
1ae40 53 43 48 41 52 47 45 5f 50 4f 4c 49 43 49 45 53  SCHARGE_POLICIES
1ae50 20 20 20 20 3d 20 34 3b 0d 0a 0d 0a 65 6e 75 6d      = 4;....enum
1ae60 20 3a 20 42 59 54 45 20 7b 0d 0a 09 50 4f 5f 54   : BYTE {...PO_T
1ae70 48 52 4f 54 54 4c 45 5f 4e 4f 4e 45 2c 0d 0a 09  HROTTLE_NONE,...
1ae80 50 4f 5f 54 48 52 4f 54 54 4c 45 5f 43 4f 4e 53  PO_THROTTLE_CONS
1ae90 54 41 4e 54 2c 0d 0a 09 50 4f 5f 54 48 52 4f 54  TANT,...PO_THROT
1aea0 54 4c 45 5f 44 45 47 52 41 44 45 2c 0d 0a 09 50  TLE_DEGRADE,...P
1aeb0 4f 5f 54 48 52 4f 54 54 4c 45 5f 41 44 41 50 54  O_THROTTLE_ADAPT
1aec0 49 56 45 2c 0d 0a 09 50 4f 5f 54 48 52 4f 54 54  IVE,...PO_THROTT
1aed0 4c 45 5f 4d 41 58 49 4d 55 4d 0d 0a 7d 0d 0a 0d  LE_MAXIMUM..}...
1aee0 0a 73 74 72 75 63 74 20 53 59 53 54 45 4d 5f 50  .struct SYSTEM_P
1aef0 4f 57 45 52 5f 4c 45 56 45 4c 20 7b 0d 0a 09 42  OWER_LEVEL {...B
1af00 4f 4f 4c 45 41 4e 20 20 20 20 20 20 20 20 20 20  OOLEAN          
1af10 20 20 20 45 6e 61 62 6c 65 3b 0d 0a 09 55 43 48     Enable;...UCH
1af20 41 52 5b 33 5d 20 20 20 20 20 20 20 20 20 20 20  AR[3]           
1af30 20 53 70 61 72 65 3b 0d 0a 09 55 4c 4f 4e 47 20   Spare;...ULONG 
1af40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 42 61                Ba
1af50 74 74 65 72 79 4c 65 76 65 6c 3b 0d 0a 09 50 4f  tteryLevel;...PO
1af60 57 45 52 5f 41 43 54 49 4f 4e 5f 50 4f 4c 49 43  WER_ACTION_POLIC
1af70 59 20 50 6f 77 65 72 50 6f 6c 69 63 79 3b 0d 0a  Y PowerPolicy;..
1af80 09 53 59 53 54 45 4d 5f 50 4f 57 45 52 5f 53 54  .SYSTEM_POWER_ST
1af90 41 54 45 20 20 4d 69 6e 53 79 73 74 65 6d 53 74  ATE  MinSystemSt
1afa0 61 74 65 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 53  ate;..}..alias S
1afb0 59 53 54 45 4d 5f 50 4f 57 45 52 5f 4c 45 56 45  YSTEM_POWER_LEVE
1afc0 4c 2a 20 50 53 59 53 54 45 4d 5f 50 4f 57 45 52  L* PSYSTEM_POWER
1afd0 5f 4c 45 56 45 4c 3b 0d 0a 0d 0a 73 74 72 75 63  _LEVEL;....struc
1afe0 74 20 53 59 53 54 45 4d 5f 50 4f 57 45 52 5f 50  t SYSTEM_POWER_P
1aff0 4f 4c 49 43 59 20 7b 0d 0a 09 55 4c 4f 4e 47 20  OLICY {...ULONG 
1b000 20 20 20 20 20 20 20 20 20 20 20 20 20 20 52 65                Re
1b010 76 69 73 69 6f 6e 3b 0d 0a 09 50 4f 57 45 52 5f  vision;...POWER_
1b020 41 43 54 49 4f 4e 5f 50 4f 4c 49 43 59 20 50 6f  ACTION_POLICY Po
1b030 77 65 72 42 75 74 74 6f 6e 3b 0d 0a 09 50 4f 57  werButton;...POW
1b040 45 52 5f 41 43 54 49 4f 4e 5f 50 4f 4c 49 43 59  ER_ACTION_POLICY
1b050 20 53 6c 65 65 70 42 75 74 74 6f 6e 3b 0d 0a 09   SleepButton;...
1b060 50 4f 57 45 52 5f 41 43 54 49 4f 4e 5f 50 4f 4c  POWER_ACTION_POL
1b070 49 43 59 20 4c 69 64 43 6c 6f 73 65 3b 0d 0a 09  ICY LidClose;...
1b080 53 59 53 54 45 4d 5f 50 4f 57 45 52 5f 53 54 41  SYSTEM_POWER_STA
1b090 54 45 20 20 4c 69 64 4f 70 65 6e 57 61 6b 65 3b  TE  LidOpenWake;
1b0a0 0d 0a 09 55 4c 4f 4e 47 20 20 20 20 20 20 20 20  ...ULONG        
1b0b0 20 20 20 20 20 20 20 52 65 73 65 72 76 65 64 3b         Reserved;
1b0c0 0d 0a 09 50 4f 57 45 52 5f 41 43 54 49 4f 4e 5f  ...POWER_ACTION_
1b0d0 50 4f 4c 49 43 59 20 49 64 6c 65 3b 0d 0a 09 55  POLICY Idle;...U
1b0e0 4c 4f 4e 47 20 20 20 20 20 20 20 20 20 20 20 20  LONG            
1b0f0 20 20 20 49 64 6c 65 54 69 6d 65 6f 75 74 3b 0d     IdleTimeout;.
1b100 0a 09 55 43 48 41 52 20 20 20 20 20 20 20 20 20  ..UCHAR         
1b110 20 20 20 20 20 20 49 64 6c 65 53 65 6e 73 69 74        IdleSensit
1b120 69 76 69 74 79 3b 0d 0a 09 55 43 48 41 52 20 20  ivity;...UCHAR  
1b130 20 20 20 20 20 20 20 20 20 20 20 20 20 44 79 6e               Dyn
1b140 61 6d 69 63 54 68 72 6f 74 74 6c 65 3b 0d 0a 09  amicThrottle;...
1b150 55 43 48 41 52 5b 32 5d 20 20 20 20 20 20 20 20  UCHAR[2]        
1b160 20 20 20 20 53 70 61 72 65 32 3b 0d 0a 09 53 59      Spare2;...SY
1b170 53 54 45 4d 5f 50 4f 57 45 52 5f 53 54 41 54 45  STEM_POWER_STATE
1b180 20 20 4d 69 6e 53 6c 65 65 70 3b 0d 0a 09 53 59    MinSleep;...SY
1b190 53 54 45 4d 5f 50 4f 57 45 52 5f 53 54 41 54 45  STEM_POWER_STATE
1b1a0 20 20 4d 61 78 53 6c 65 65 70 3b 0d 0a 09 53 59    MaxSleep;...SY
1b1b0 53 54 45 4d 5f 50 4f 57 45 52 5f 53 54 41 54 45  STEM_POWER_STATE
1b1c0 20 20 52 65 64 75 63 65 64 4c 61 74 65 6e 63 79    ReducedLatency
1b1d0 53 6c 65 65 70 3b 0d 0a 09 55 4c 4f 4e 47 20 20  Sleep;...ULONG  
1b1e0 20 20 20 20 20 20 20 20 20 20 20 20 20 57 69 6e               Win
1b1f0 4c 6f 67 6f 6e 46 6c 61 67 73 3b 0d 0a 09 55 4c  LogonFlags;...UL
1b200 4f 4e 47 20 20 20 20 20 20 20 20 20 20 20 20 20  ONG             
1b210 20 20 53 70 61 72 65 33 3b 0d 0a 09 55 4c 4f 4e    Spare3;...ULON
1b220 47 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  G               
1b230 44 6f 7a 65 53 34 54 69 6d 65 6f 75 74 3b 0d 0a  DozeS4Timeout;..
1b240 09 55 4c 4f 4e 47 20 20 20 20 20 20 20 20 20 20  .ULONG          
1b250 20 20 20 20 20 42 72 6f 61 64 63 61 73 74 43 61       BroadcastCa
1b260 70 61 63 69 74 79 52 65 73 6f 6c 75 74 69 6f 6e  pacityResolution
1b270 3b 0d 0a 09 53 59 53 54 45 4d 5f 50 4f 57 45 52  ;...SYSTEM_POWER
1b280 5f 4c 45 56 45 4c 5b 4e 55 4d 5f 44 49 53 43 48  _LEVEL[NUM_DISCH
1b290 41 52 47 45 5f 50 4f 4c 49 43 49 45 53 5d 20 44  ARGE_POLICIES] D
1b2a0 69 73 63 68 61 72 67 65 50 6f 6c 69 63 79 3b 0d  ischargePolicy;.
1b2b0 0a 09 55 4c 4f 4e 47 20 20 20 20 20 20 20 20 20  ..ULONG         
1b2c0 20 20 20 20 20 20 56 69 64 65 6f 54 69 6d 65 6f        VideoTimeo
1b2d0 75 74 3b 0d 0a 09 42 4f 4f 4c 45 41 4e 20 20 20  ut;...BOOLEAN   
1b2e0 20 20 20 20 20 20 20 20 20 20 56 69 64 65 6f 44            VideoD
1b2f0 69 6d 44 69 73 70 6c 61 79 3b 0d 0a 09 55 4c 4f  imDisplay;...ULO
1b300 4e 47 5b 33 5d 20 20 20 20 20 20 20 20 20 20 20  NG[3]           
1b310 20 56 69 64 65 6f 52 65 73 65 72 76 65 64 3b 0d   VideoReserved;.
1b320 0a 09 55 4c 4f 4e 47 20 20 20 20 20 20 20 20 20  ..ULONG         
1b330 20 20 20 20 20 20 53 70 69 6e 64 6f 77 6e 54 69        SpindownTi
1b340 6d 65 6f 75 74 3b 0d 0a 09 42 4f 4f 4c 45 41 4e  meout;...BOOLEAN
1b350 20 20 20 20 20 20 20 20 20 20 20 20 20 4f 70 74               Opt
1b360 69 6d 69 7a 65 46 6f 72 50 6f 77 65 72 3b 0d 0a  imizeForPower;..
1b370 09 55 43 48 41 52 20 20 20 20 20 20 20 20 20 20  .UCHAR          
1b380 20 20 20 20 20 46 61 6e 54 68 72 6f 74 74 6c 65       FanThrottle
1b390 54 6f 6c 65 72 61 6e 63 65 3b 0d 0a 09 55 43 48  Tolerance;...UCH
1b3a0 41 52 20 20 20 20 20 20 20 20 20 20 20 20 20 20  AR              
1b3b0 20 46 6f 72 63 65 64 54 68 72 6f 74 74 6c 65 3b   ForcedThrottle;
1b3c0 0d 0a 09 55 43 48 41 52 20 20 20 20 20 20 20 20  ...UCHAR        
1b3d0 20 20 20 20 20 20 20 4d 69 6e 54 68 72 6f 74 74         MinThrott
1b3e0 6c 65 3b 0d 0a 09 50 4f 57 45 52 5f 41 43 54 49  le;...POWER_ACTI
1b3f0 4f 4e 5f 50 4f 4c 49 43 59 20 4f 76 65 72 54 68  ON_POLICY OverTh
1b400 72 6f 74 74 6c 65 64 3b 0d 0a 7d 0d 0a 61 6c 69  rottled;..}..ali
1b410 61 73 20 53 59 53 54 45 4d 5f 50 4f 57 45 52 5f  as SYSTEM_POWER_
1b420 50 4f 4c 49 43 59 2a 20 50 53 59 53 54 45 4d 5f  POLICY* PSYSTEM_
1b430 50 4f 57 45 52 5f 50 4f 4c 49 43 59 3b 0d 0a 0d  POWER_POLICY;...
1b440 0a 73 74 72 75 63 74 20 53 59 53 54 45 4d 5f 50  .struct SYSTEM_P
1b450 4f 57 45 52 5f 43 41 50 41 42 49 4c 49 54 49 45  OWER_CAPABILITIE
1b460 53 20 7b 0d 0a 09 42 4f 4f 4c 45 41 4e 20 20 20  S {...BOOLEAN   
1b470 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
1b480 20 50 6f 77 65 72 42 75 74 74 6f 6e 50 72 65 73   PowerButtonPres
1b490 65 6e 74 3b 0d 0a 09 42 4f 4f 4c 45 41 4e 20 20  ent;...BOOLEAN  
1b4a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
1b4b0 20 20 53 6c 65 65 70 42 75 74 74 6f 6e 50 72 65    SleepButtonPre
1b4c0 73 65 6e 74 3b 0d 0a 09 42 4f 4f 4c 45 41 4e 20  sent;...BOOLEAN 
1b4d0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
1b4e0 20 20 20 4c 69 64 50 72 65 73 65 6e 74 3b 0d 0a     LidPresent;..
1b4f0 09 42 4f 4f 4c 45 41 4e 20 20 20 20 20 20 20 20  .BOOLEAN        
1b500 20 20 20 20 20 20 20 20 20 20 20 20 53 79 73 74              Syst
1b510 65 6d 53 31 3b 0d 0a 09 42 4f 4f 4c 45 41 4e 20  emS1;...BOOLEAN 
1b520 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
1b530 20 20 20 53 79 73 74 65 6d 53 32 3b 0d 0a 09 42     SystemS2;...B
1b540 4f 4f 4c 45 41 4e 20 20 20 20 20 20 20 20 20 20  OOLEAN          
1b550 20 20 20 20 20 20 20 20 20 20 53 79 73 74 65 6d            System
1b560 53 33 3b 0d 0a 09 42 4f 4f 4c 45 41 4e 20 20 20  S3;...BOOLEAN   
1b570 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
1b580 20 53 79 73 74 65 6d 53 34 3b 0d 0a 09 42 4f 4f   SystemS4;...BOO
1b590 4c 45 41 4e 20 20 20 20 20 20 20 20 20 20 20 20  LEAN            
1b5a0 20 20 20 20 20 20 20 20 53 79 73 74 65 6d 53 35          SystemS5
1b5b0 3b 0d 0a 09 42 4f 4f 4c 45 41 4e 20 20 20 20 20  ;...BOOLEAN     
1b5c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 48                 H
1b5d0 69 62 65 72 46 69 6c 65 50 72 65 73 65 6e 74 3b  iberFilePresent;
1b5e0 0d 0a 09 42 4f 4f 4c 45 41 4e 20 20 20 20 20 20  ...BOOLEAN      
1b5f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 46 75                Fu
1b600 6c 6c 57 61 6b 65 3b 0d 0a 09 42 4f 4f 4c 45 41  llWake;...BOOLEA
1b610 4e 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  N               
1b620 20 20 20 20 20 56 69 64 65 6f 44 69 6d 50 72 65       VideoDimPre
1b630 73 65 6e 74 3b 0d 0a 09 42 4f 4f 4c 45 41 4e 20  sent;...BOOLEAN 
1b640 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
1b650 20 20 20 41 70 6d 50 72 65 73 65 6e 74 3b 0d 0a     ApmPresent;..
1b660 09 42 4f 4f 4c 45 41 4e 20 20 20 20 20 20 20 20  .BOOLEAN        
1b670 20 20 20 20 20 20 20 20 20 20 20 20 55 70 73 50              UpsP
1b680 72 65 73 65 6e 74 3b 0d 0a 09 42 4f 4f 4c 45 41  resent;...BOOLEA
1b690 4e 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  N               
1b6a0 20 20 20 20 20 54 68 65 72 6d 61 6c 43 6f 6e 74       ThermalCont
1b6b0 72 6f 6c 3b 0d 0a 09 42 4f 4f 4c 45 41 4e 20 20  rol;...BOOLEAN  
1b6c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
1b6d0 20 20 50 72 6f 63 65 73 73 6f 72 54 68 72 6f 74    ProcessorThrot
1b6e0 74 6c 65 3b 0d 0a 09 55 43 48 41 52 20 20 20 20  tle;...UCHAR    
1b6f0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
1b700 20 20 50 72 6f 63 65 73 73 6f 72 4d 69 6e 54 68    ProcessorMinTh
1b710 72 6f 74 74 6c 65 3b 0d 0a 09 55 43 48 41 52 20  rottle;...UCHAR 
1b720 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
1b730 20 20 20 20 20 50 72 6f 63 65 73 73 6f 72 4d 61       ProcessorMa
1b740 78 54 68 72 6f 74 74 6c 65 3b 0d 0a 09 55 43 48  xThrottle;...UCH
1b750 41 52 5b 34 5d 20 20 20 20 20 20 20 20 20 20 20  AR[4]           
1b760 20 20 20 20 20 20 20 20 73 70 61 72 65 32 3b 0d          spare2;.
1b770 0a 09 42 4f 4f 4c 45 41 4e 20 20 20 20 20 20 20  ..BOOLEAN       
1b780 20 20 20 20 20 20 20 20 20 20 20 20 20 44 69 73               Dis
1b790 6b 53 70 69 6e 44 6f 77 6e 3b 0d 0a 09 55 43 48  kSpinDown;...UCH
1b7a0 41 52 5b 38 5d 20 20 20 20 20 20 20 20 20 20 20  AR[8]           
1b7b0 20 20 20 20 20 20 20 20 73 70 61 72 65 33 3b 0d          spare3;.
1b7c0 0a 09 42 4f 4f 4c 45 41 4e 20 20 20 20 20 20 20  ..BOOLEAN       
1b7d0 20 20 20 20 20 20 20 20 20 20 20 20 20 53 79 73               Sys
1b7e0 74 65 6d 42 61 74 74 65 72 69 65 73 50 72 65 73  temBatteriesPres
1b7f0 65 6e 74 3b 0d 0a 09 42 4f 4f 4c 45 41 4e 20 20  ent;...BOOLEAN  
1b800 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
1b810 20 20 42 61 74 74 65 72 69 65 73 41 72 65 53 68    BatteriesAreSh
1b820 6f 72 74 54 65 72 6d 3b 0d 0a 09 42 41 54 54 45  ortTerm;...BATTE
1b830 52 59 5f 52 45 50 4f 52 54 49 4e 47 5f 53 43 41  RY_REPORTING_SCA
1b840 4c 45 5b 33 5d 20 42 61 74 74 65 72 79 53 63 61  LE[3] BatterySca
1b850 6c 65 3b 0d 0a 09 53 59 53 54 45 4d 5f 50 4f 57  le;...SYSTEM_POW
1b860 45 52 5f 53 54 41 54 45 20 20 20 20 20 20 20 20  ER_STATE        
1b870 20 41 63 4f 6e 4c 69 6e 65 57 61 6b 65 3b 0d 0a   AcOnLineWake;..
1b880 09 53 59 53 54 45 4d 5f 50 4f 57 45 52 5f 53 54  .SYSTEM_POWER_ST
1b890 41 54 45 20 20 20 20 20 20 20 20 20 53 6f 66 74  ATE         Soft
1b8a0 4c 69 64 57 61 6b 65 3b 0d 0a 09 53 59 53 54 45  LidWake;...SYSTE
1b8b0 4d 5f 50 4f 57 45 52 5f 53 54 41 54 45 20 20 20  M_POWER_STATE   
1b8c0 20 20 20 20 20 20 52 74 63 57 61 6b 65 3b 0d 0a        RtcWake;..
1b8d0 09 53 59 53 54 45 4d 5f 50 4f 57 45 52 5f 53 54  .SYSTEM_POWER_ST
1b8e0 41 54 45 20 20 20 20 20 20 20 20 20 4d 69 6e 44  ATE         MinD
1b8f0 65 76 69 63 65 57 61 6b 65 53 74 61 74 65 3b 0d  eviceWakeState;.
1b900 0a 09 53 59 53 54 45 4d 5f 50 4f 57 45 52 5f 53  ..SYSTEM_POWER_S
1b910 54 41 54 45 20 20 20 20 20 20 20 20 20 44 65 66  TATE         Def
1b920 61 75 6c 74 4c 6f 77 4c 61 74 65 6e 63 79 57 61  aultLowLatencyWa
1b930 6b 65 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 53 59  ke;..}..alias SY
1b940 53 54 45 4d 5f 50 4f 57 45 52 5f 43 41 50 41 42  STEM_POWER_CAPAB
1b950 49 4c 49 54 49 45 53 2a 20 50 53 59 53 54 45 4d  ILITIES* PSYSTEM
1b960 5f 50 4f 57 45 52 5f 43 41 50 41 42 49 4c 49 54  _POWER_CAPABILIT
1b970 49 45 53 3b 0d 0a 0d 0a 73 74 72 75 63 74 20 53  IES;....struct S
1b980 59 53 54 45 4d 5f 42 41 54 54 45 52 59 5f 53 54  YSTEM_BATTERY_ST
1b990 41 54 45 20 7b 0d 0a 09 42 4f 4f 4c 45 41 4e 20  ATE {...BOOLEAN 
1b9a0 20 20 20 41 63 4f 6e 4c 69 6e 65 3b 0d 0a 09 42     AcOnLine;...B
1b9b0 4f 4f 4c 45 41 4e 20 20 20 20 42 61 74 74 65 72  OOLEAN    Batter
1b9c0 79 50 72 65 73 65 6e 74 3b 0d 0a 09 42 4f 4f 4c  yPresent;...BOOL
1b9d0 45 41 4e 20 20 20 20 43 68 61 72 67 69 6e 67 3b  EAN    Charging;
1b9e0 0d 0a 09 42 4f 4f 4c 45 41 4e 20 20 20 20 44 69  ...BOOLEAN    Di
1b9f0 73 63 68 61 72 67 69 6e 67 3b 0d 0a 09 42 4f 4f  scharging;...BOO
1ba00 4c 45 41 4e 5b 34 5d 20 53 70 61 72 65 31 3b 0d  LEAN[4] Spare1;.
1ba10 0a 09 55 4c 4f 4e 47 20 20 20 20 20 20 4d 61 78  ..ULONG      Max
1ba20 43 61 70 61 63 69 74 79 3b 0d 0a 09 55 4c 4f 4e  Capacity;...ULON
1ba30 47 20 20 20 20 20 20 52 65 6d 61 69 6e 69 6e 67  G      Remaining
1ba40 43 61 70 61 63 69 74 79 3b 0d 0a 09 55 4c 4f 4e  Capacity;...ULON
1ba50 47 20 20 20 20 20 20 52 61 74 65 3b 0d 0a 09 55  G      Rate;...U
1ba60 4c 4f 4e 47 20 20 20 20 20 20 45 73 74 69 6d 61  LONG      Estima
1ba70 74 65 64 54 69 6d 65 3b 0d 0a 09 55 4c 4f 4e 47  tedTime;...ULONG
1ba80 20 20 20 20 20 20 44 65 66 61 75 6c 74 41 6c 65        DefaultAle
1ba90 72 74 31 3b 0d 0a 09 55 4c 4f 4e 47 20 20 20 20  rt1;...ULONG    
1baa0 20 20 44 65 66 61 75 6c 74 41 6c 65 72 74 32 3b    DefaultAlert2;
1bab0 0d 0a 7d 0d 0a 61 6c 69 61 73 20 53 59 53 54 45  ..}..alias SYSTE
1bac0 4d 5f 42 41 54 54 45 52 59 5f 53 54 41 54 45 2a  M_BATTERY_STATE*
1bad0 20 50 53 59 53 54 45 4d 5f 42 41 54 54 45 52 59   PSYSTEM_BATTERY
1bae0 5f 53 54 41 54 45 3b 0d 0a 0d 0a 65 6e 75 6d 20  _STATE;....enum 
1baf0 50 4f 57 45 52 5f 49 4e 46 4f 52 4d 41 54 49 4f  POWER_INFORMATIO
1bb00 4e 5f 4c 45 56 45 4c 20 7b 0d 0a 09 53 79 73 74  N_LEVEL {...Syst
1bb10 65 6d 50 6f 77 65 72 50 6f 6c 69 63 79 41 63 2c  emPowerPolicyAc,
1bb20 0d 0a 09 53 79 73 74 65 6d 50 6f 77 65 72 50 6f  ...SystemPowerPo
1bb30 6c 69 63 79 44 63 2c 0d 0a 09 56 65 72 69 66 79  licyDc,...Verify
1bb40 53 79 73 74 65 6d 50 6f 6c 69 63 79 41 63 2c 0d  SystemPolicyAc,.
1bb50 0a 09 56 65 72 69 66 79 53 79 73 74 65 6d 50 6f  ..VerifySystemPo
1bb60 6c 69 63 79 44 63 2c 0d 0a 09 53 79 73 74 65 6d  licyDc,...System
1bb70 50 6f 77 65 72 43 61 70 61 62 69 6c 69 74 69 65  PowerCapabilitie
1bb80 73 2c 0d 0a 09 53 79 73 74 65 6d 42 61 74 74 65  s,...SystemBatte
1bb90 72 79 53 74 61 74 65 2c 0d 0a 09 53 79 73 74 65  ryState,...Syste
1bba0 6d 50 6f 77 65 72 53 74 61 74 65 48 61 6e 64 6c  mPowerStateHandl
1bbb0 65 72 2c 0d 0a 09 50 72 6f 63 65 73 73 6f 72 53  er,...ProcessorS
1bbc0 74 61 74 65 48 61 6e 64 6c 65 72 2c 0d 0a 09 53  tateHandler,...S
1bbd0 79 73 74 65 6d 50 6f 77 65 72 50 6f 6c 69 63 79  ystemPowerPolicy
1bbe0 43 75 72 72 65 6e 74 2c 0d 0a 09 41 64 6d 69 6e  Current,...Admin
1bbf0 69 73 74 72 61 74 6f 72 50 6f 77 65 72 50 6f 6c  istratorPowerPol
1bc00 69 63 79 2c 0d 0a 09 53 79 73 74 65 6d 52 65 73  icy,...SystemRes
1bc10 65 72 76 65 48 69 62 65 72 46 69 6c 65 2c 0d 0a  erveHiberFile,..
1bc20 09 50 72 6f 63 65 73 73 6f 72 49 6e 66 6f 72 6d  .ProcessorInform
1bc30 61 74 69 6f 6e 2c 0d 0a 09 53 79 73 74 65 6d 50  ation,...SystemP
1bc40 6f 77 65 72 49 6e 66 6f 72 6d 61 74 69 6f 6e 2c  owerInformation,
1bc50 0d 0a 09 50 72 6f 63 65 73 73 6f 72 53 74 61 74  ...ProcessorStat
1bc60 65 48 61 6e 64 6c 65 72 32 2c 0d 0a 09 4c 61 73  eHandler2,...Las
1bc70 74 57 61 6b 65 54 69 6d 65 2c 0d 0a 09 4c 61 73  tWakeTime,...Las
1bc80 74 53 6c 65 65 70 54 69 6d 65 2c 0d 0a 09 53 79  tSleepTime,...Sy
1bc90 73 74 65 6d 45 78 65 63 75 74 69 6f 6e 53 74 61  stemExecutionSta
1bca0 74 65 2c 0d 0a 09 53 79 73 74 65 6d 50 6f 77 65  te,...SystemPowe
1bcb0 72 53 74 61 74 65 4e 6f 74 69 66 79 48 61 6e 64  rStateNotifyHand
1bcc0 6c 65 72 2c 0d 0a 09 50 72 6f 63 65 73 73 6f 72  ler,...Processor
1bcd0 50 6f 77 65 72 50 6f 6c 69 63 79 41 63 2c 0d 0a  PowerPolicyAc,..
1bce0 09 50 72 6f 63 65 73 73 6f 72 50 6f 77 65 72 50  .ProcessorPowerP
1bcf0 6f 6c 69 63 79 44 63 2c 0d 0a 09 56 65 72 69 66  olicyDc,...Verif
1bd00 79 50 72 6f 63 65 73 73 6f 72 50 6f 77 65 72 50  yProcessorPowerP
1bd10 6f 6c 69 63 79 41 63 2c 0d 0a 09 56 65 72 69 66  olicyAc,...Verif
1bd20 79 50 72 6f 63 65 73 73 6f 72 50 6f 77 65 72 50  yProcessorPowerP
1bd30 6f 6c 69 63 79 44 63 2c 0d 0a 09 50 72 6f 63 65  olicyDc,...Proce
1bd40 73 73 6f 72 50 6f 77 65 72 50 6f 6c 69 63 79 43  ssorPowerPolicyC
1bd50 75 72 72 65 6e 74 0d 0a 7d 0d 0a 0d 0a 2f 2f 23  urrent..}....//#
1bd60 69 66 20 31 20 2f 2a 20 28 57 49 4e 33 32 5f 57  if 1 /* (WIN32_W
1bd70 49 4e 4e 54 20 3e 3d 20 30 78 30 35 30 30 29 20  INNT >= 0x0500) 
1bd80 2a 2f 0d 0a 73 74 72 75 63 74 20 53 59 53 54 45  */..struct SYSTE
1bd90 4d 5f 50 4f 57 45 52 5f 49 4e 46 4f 52 4d 41 54  M_POWER_INFORMAT
1bda0 49 4f 4e 20 7b 0d 0a 09 55 4c 4f 4e 47 20 4d 61  ION {...ULONG Ma
1bdb0 78 49 64 6c 65 6e 65 73 73 41 6c 6c 6f 77 65 64  xIdlenessAllowed
1bdc0 3b 0d 0a 09 55 4c 4f 4e 47 20 49 64 6c 65 6e 65  ;...ULONG Idlene
1bdd0 73 73 3b 0d 0a 09 55 4c 4f 4e 47 20 54 69 6d 65  ss;...ULONG Time
1bde0 52 65 6d 61 69 6e 69 6e 67 3b 0d 0a 09 55 43 48  Remaining;...UCH
1bdf0 41 52 20 43 6f 6f 6c 69 6e 67 4d 6f 64 65 3b 0d  AR CoolingMode;.
1be00 0a 7d 0d 0a 61 6c 69 61 73 20 53 59 53 54 45 4d  .}..alias SYSTEM
1be10 5f 50 4f 57 45 52 5f 49 4e 46 4f 52 4d 41 54 49  _POWER_INFORMATI
1be20 4f 4e 2a 20 50 53 59 53 54 45 4d 5f 50 4f 57 45  ON* PSYSTEM_POWE
1be30 52 5f 49 4e 46 4f 52 4d 41 54 49 4f 4e 3b 0d 0a  R_INFORMATION;..
1be40 2f 2f 23 65 6e 64 69 66 0d 0a 0d 0a 73 74 72 75  //#endif....stru
1be50 63 74 20 50 52 4f 43 45 53 53 4f 52 5f 50 4f 57  ct PROCESSOR_POW
1be60 45 52 5f 50 4f 4c 49 43 59 5f 49 4e 46 4f 20 7b  ER_POLICY_INFO {
1be70 0d 0a 09 55 4c 4f 4e 47 20 20 20 20 54 69 6d 65  ...ULONG    Time
1be80 43 68 65 63 6b 3b 0d 0a 09 55 4c 4f 4e 47 20 20  Check;...ULONG  
1be90 20 20 44 65 6d 6f 74 65 4c 69 6d 69 74 3b 0d 0a    DemoteLimit;..
1bea0 09 55 4c 4f 4e 47 20 20 20 20 50 72 6f 6d 6f 74  .ULONG    Promot
1beb0 65 4c 69 6d 69 74 3b 0d 0a 09 55 43 48 41 52 20  eLimit;...UCHAR 
1bec0 20 20 20 44 65 6d 6f 74 65 50 65 72 63 65 6e 74     DemotePercent
1bed0 3b 0d 0a 09 55 43 48 41 52 20 20 20 20 50 72 6f  ;...UCHAR    Pro
1bee0 6d 6f 74 65 50 65 72 63 65 6e 74 3b 0d 0a 09 55  motePercent;...U
1bef0 43 48 41 52 5b 32 5d 20 53 70 61 72 65 3b 0d 0a  CHAR[2] Spare;..
1bf00 09 75 69 6e 74 20 20 20 20 20 5f 62 66 3b 0d 0a  .uint     _bf;..
1bf10 0d 0a 09 62 6f 6f 6c 20 41 6c 6c 6f 77 44 65 6d  ...bool AllowDem
1bf20 6f 74 69 6f 6e 28 29 20 20 7b 20 72 65 74 75 72  otion()  { retur
1bf30 6e 20 63 61 73 74 28 62 6f 6f 6c 29 28 5f 62 66  n cast(bool)(_bf
1bf40 20 26 20 31 29 3b 20 7d 0d 0a 09 62 6f 6f 6c 20   & 1); }...bool 
1bf50 41 6c 6c 6f 77 50 72 6f 6d 6f 74 69 6f 6e 28 29  AllowPromotion()
1bf60 20 7b 20 72 65 74 75 72 6e 20 63 61 73 74 28 62   { return cast(b
1bf70 6f 6f 6c 29 28 5f 62 66 20 26 20 32 29 3b 20 7d  ool)(_bf & 2); }
1bf80 0d 0a 0d 0a 09 62 6f 6f 6c 20 41 6c 6c 6f 77 44  .....bool AllowD
1bf90 65 6d 6f 74 69 6f 6e 28 62 6f 6f 6c 20 61 29 20  emotion(bool a) 
1bfa0 20 7b 20 5f 62 66 20 3d 20 28 5f 62 66 20 26 20   { _bf = (_bf & 
1bfb0 7e 31 29 20 7c 20 61 3b 20 72 65 74 75 72 6e 20  ~1) | a; return 
1bfc0 61 3b 20 7d 0d 0a 09 62 6f 6f 6c 20 41 6c 6c 6f  a; }...bool Allo
1bfd0 77 50 72 6f 6d 6f 74 69 6f 6e 28 62 6f 6f 6c 20  wPromotion(bool 
1bfe0 61 29 20 7b 20 5f 62 66 20 3d 20 28 5f 62 66 20  a) { _bf = (_bf 
1bff0 26 20 7e 32 29 20 7c 20 28 61 20 3c 3c 20 31 29  & ~2) | (a << 1)
1c000 3b 20 72 65 74 75 72 6e 20 61 3b 20 7d 0d 0a 2f  ; return a; }../
1c010 2b 0d 0a 09 55 4c 4f 4e 47 20 20 41 6c 6c 6f 77  +...ULONG  Allow
1c020 44 65 6d 6f 74 69 6f 6e 20 3a 20 31 3b 0d 0a 09  Demotion : 1;...
1c030 55 4c 4f 4e 47 20 20 41 6c 6c 6f 77 50 72 6f 6d  ULONG  AllowProm
1c040 6f 74 69 6f 6e 20 3a 20 31 3b 0d 0a 09 55 4c 4f  otion : 1;...ULO
1c050 4e 47 20 20 52 65 73 65 72 76 65 64 20 3a 20 33  NG  Reserved : 3
1c060 30 3b 0d 0a 2b 2f 0d 0a 7d 0d 0a 61 6c 69 61 73  0;..+/..}..alias
1c070 20 50 52 4f 43 45 53 53 4f 52 5f 50 4f 57 45 52   PROCESSOR_POWER
1c080 5f 50 4f 4c 49 43 59 5f 49 4e 46 4f 2a 20 50 50  _POLICY_INFO* PP
1c090 52 4f 43 45 53 53 4f 52 5f 50 4f 57 45 52 5f 50  ROCESSOR_POWER_P
1c0a0 4f 4c 49 43 59 5f 49 4e 46 4f 3b 0d 0a 0d 0a 73  OLICY_INFO;....s
1c0b0 74 72 75 63 74 20 50 52 4f 43 45 53 53 4f 52 5f  truct PROCESSOR_
1c0c0 50 4f 57 45 52 5f 50 4f 4c 49 43 59 20 7b 0d 0a  POWER_POLICY {..
1c0d0 09 55 4c 4f 4e 47 20 20 20 20 52 65 76 69 73 69  .ULONG    Revisi
1c0e0 6f 6e 3b 0d 0a 09 55 43 48 41 52 20 20 20 20 44  on;...UCHAR    D
1c0f0 79 6e 61 6d 69 63 54 68 72 6f 74 74 6c 65 3b 0d  ynamicThrottle;.
1c100 0a 09 55 43 48 41 52 5b 33 5d 20 53 70 61 72 65  ..UCHAR[3] Spare
1c110 3b 0d 0a 09 55 4c 4f 4e 47 20 20 20 20 52 65 73  ;...ULONG    Res
1c120 65 72 76 65 64 3b 0d 0a 09 55 4c 4f 4e 47 20 20  erved;...ULONG  
1c130 20 20 50 6f 6c 69 63 79 43 6f 75 6e 74 3b 0d 0a    PolicyCount;..
1c140 09 50 52 4f 43 45 53 53 4f 52 5f 50 4f 57 45 52  .PROCESSOR_POWER
1c150 5f 50 4f 4c 49 43 59 5f 49 4e 46 4f 5b 33 5d 20  _POLICY_INFO[3] 
1c160 50 6f 6c 69 63 79 3b 0d 0a 7d 0d 0a 61 6c 69 61  Policy;..}..alia
1c170 73 20 50 52 4f 43 45 53 53 4f 52 5f 50 4f 57 45  s PROCESSOR_POWE
1c180 52 5f 50 4f 4c 49 43 59 2a 20 50 50 52 4f 43 45  R_POLICY* PPROCE
1c190 53 53 4f 52 5f 50 4f 57 45 52 5f 50 4f 4c 49 43  SSOR_POWER_POLIC
1c1a0 59 3b 0d 0a 0d 0a 73 74 72 75 63 74 20 41 44 4d  Y;....struct ADM
1c1b0 49 4e 49 53 54 52 41 54 4f 52 5f 50 4f 57 45 52  INISTRATOR_POWER
1c1c0 5f 50 4f 4c 49 43 59 20 7b 0d 0a 09 53 59 53 54  _POLICY {...SYST
1c1d0 45 4d 5f 50 4f 57 45 52 5f 53 54 41 54 45 20 4d  EM_POWER_STATE M
1c1e0 69 6e 53 6c 65 65 70 3b 0d 0a 09 53 59 53 54 45  inSleep;...SYSTE
1c1f0 4d 5f 50 4f 57 45 52 5f 53 54 41 54 45 20 4d 61  M_POWER_STATE Ma
1c200 78 53 6c 65 65 70 3b 0d 0a 09 55 4c 4f 4e 47 20  xSleep;...ULONG 
1c210 20 20 20 20 20 20 20 20 20 20 20 20 20 4d 69 6e               Min
1c220 56 69 64 65 6f 54 69 6d 65 6f 75 74 3b 0d 0a 09  VideoTimeout;...
1c230 55 4c 4f 4e 47 20 20 20 20 20 20 20 20 20 20 20  ULONG           
1c240 20 20 20 4d 61 78 56 69 64 65 6f 54 69 6d 65 6f     MaxVideoTimeo
1c250 75 74 3b 0d 0a 09 55 4c 4f 4e 47 20 20 20 20 20  ut;...ULONG     
1c260 20 20 20 20 20 20 20 20 20 4d 69 6e 53 70 69 6e           MinSpin
1c270 64 6f 77 6e 54 69 6d 65 6f 75 74 3b 0d 0a 09 55  downTimeout;...U
1c280 4c 4f 4e 47 20 20 20 20 20 20 20 20 20 20 20 20  LONG            
1c290 20 20 4d 61 78 53 70 69 6e 64 6f 77 6e 54 69 6d    MaxSpindownTim
1c2a0 65 6f 75 74 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20  eout;..}..alias 
1c2b0 41 44 4d 49 4e 49 53 54 52 41 54 4f 52 5f 50 4f  ADMINISTRATOR_PO
1c2c0 57 45 52 5f 50 4f 4c 49 43 59 2a 20 50 41 44 4d  WER_POLICY* PADM
1c2d0 49 4e 49 53 54 52 41 54 4f 52 5f 50 4f 57 45 52  INISTRATOR_POWER
1c2e0 5f 50 4f 4c 49 43 59 3b 0d 0a 0d 0a 2f 2f 7d 2f  _POLICY;....//}/
1c2f0 2f 23 65 6e 64 69 66 20 2f 2a 20 5f 57 49 4e 33  /#endif /* _WIN3
1c300 32 5f 57 49 4e 4e 54 20 3e 3d 20 30 78 35 30 30  2_WINNT >= 0x500
1c310 20 2a 2f 0d 0a 0d 0a 65 78 74 65 72 6e 20 28 57   */....extern (W
1c320 69 6e 64 6f 77 73 29 20 7b 0d 0a 09 61 6c 69 61  indows) {...alia
1c330 73 20 76 6f 69 64 20 66 75 6e 63 74 69 6f 6e 28  s void function(
1c340 50 56 4f 49 44 2c 20 44 57 4f 52 44 2c 20 50 56  PVOID, DWORD, PV
1c350 4f 49 44 29 20 50 49 4d 41 47 45 5f 54 4c 53 5f  OID) PIMAGE_TLS_
1c360 43 41 4c 4c 42 41 43 4b 3b 0d 0a 0d 0a 09 73 74  CALLBACK;.....st
1c370 61 74 69 63 20 69 66 20 28 5f 57 49 4e 33 32 5f  atic if (_WIN32_
1c380 57 49 4e 4e 54 20 3e 3d 20 30 78 35 30 30 29 20  WINNT >= 0x500) 
1c390 7b 0d 0a 09 09 61 6c 69 61 73 20 4c 4f 4e 47 20  {....alias LONG 
1c3a0 66 75 6e 63 74 69 6f 6e 28 50 45 58 43 45 50 54  function(PEXCEPT
1c3b0 49 4f 4e 5f 50 4f 49 4e 54 45 52 53 29 20 50 56  ION_POINTERS) PV
1c3c0 45 43 54 4f 52 45 44 5f 45 58 43 45 50 54 49 4f  ECTORED_EXCEPTIO
1c3d0 4e 5f 48 41 4e 44 4c 45 52 3b 0d 0a 09 09 61 6c  N_HANDLER;....al
1c3e0 69 61 73 20 76 6f 69 64 20 66 75 6e 63 74 69 6f  ias void functio
1c3f0 6e 28 50 56 4f 49 44 2c 20 42 4f 4f 4c 45 41 4e  n(PVOID, BOOLEAN
1c400 29 20 57 41 49 54 4f 52 54 49 4d 45 52 43 41 4c  ) WAITORTIMERCAL
1c410 4c 42 41 43 4b 46 55 4e 43 3b 0d 0a 09 7d 0d 0a  LBACKFUNC;...}..
1c420 7d 0d 0a 0d 0a 73 74 61 74 69 63 20 69 66 20 28  }....static if (
1c430 5f 57 49 4e 33 32 5f 57 49 4e 4e 54 20 3e 3d 20  _WIN32_WINNT >= 
1c440 30 78 35 30 31 29 20 7b 0d 0a 09 65 6e 75 6d 20  0x501) {...enum 
1c450 48 45 41 50 5f 49 4e 46 4f 52 4d 41 54 49 4f 4e  HEAP_INFORMATION
1c460 5f 43 4c 41 53 53 20 7b 0d 0a 09 09 48 65 61 70  _CLASS {....Heap
1c470 43 6f 6d 70 61 74 69 62 69 6c 69 74 79 49 6e 66  CompatibilityInf
1c480 6f 72 6d 61 74 69 6f 6e 0d 0a 09 7d 0d 0a 0d 0a  ormation...}....
1c490 09 65 6e 75 6d 20 41 43 54 49 56 41 54 49 4f 4e  .enum ACTIVATION
1c4a0 5f 43 4f 4e 54 45 58 54 5f 49 4e 46 4f 5f 43 4c  _CONTEXT_INFO_CL
1c4b0 41 53 53 20 7b 0d 0a 09 09 41 63 74 69 76 61 74  ASS {....Activat
1c4c0 69 6f 6e 43 6f 6e 74 65 78 74 42 61 73 69 63 49  ionContextBasicI
1c4d0 6e 66 6f 72 6d 61 74 69 6f 6e 20 3d 20 31 2c 0d  nformation = 1,.
1c4e0 0a 09 09 41 63 74 69 76 61 74 69 6f 6e 43 6f 6e  ...ActivationCon
1c4f0 74 65 78 74 44 65 74 61 69 6c 65 64 49 6e 66 6f  textDetailedInfo
1c500 72 6d 61 74 69 6f 6e 2c 0d 0a 09 09 41 73 73 65  rmation,....Asse
1c510 6d 62 6c 79 44 65 74 61 69 6c 65 64 49 6e 66 6f  mblyDetailedInfo
1c520 72 6d 61 74 69 6f 6e 49 6e 41 63 74 69 76 61 74  rmationInActivat
1c530 69 6f 6e 43 6f 6e 74 65 78 74 2c 0d 0a 09 09 46  ionContext,....F
1c540 69 6c 65 49 6e 66 6f 72 6d 61 74 69 6f 6e 49 6e  ileInformationIn
1c550 41 73 73 65 6d 62 6c 79 4f 66 41 73 73 65 6d 62  AssemblyOfAssemb
1c560 6c 79 49 6e 41 63 74 69 76 61 74 69 6f 6e 43 6f  lyInActivationCo
1c570 6e 74 65 78 74 0d 0a 09 7d 0d 0a 0d 0a 09 73 74  ntext...}.....st
1c580 72 75 63 74 20 41 43 54 49 56 41 54 49 4f 4e 5f  ruct ACTIVATION_
1c590 43 4f 4e 54 45 58 54 5f 41 53 53 45 4d 42 4c 59  CONTEXT_ASSEMBLY
1c5a0 5f 44 45 54 41 49 4c 45 44 5f 49 4e 46 4f 52 4d  _DETAILED_INFORM
1c5b0 41 54 49 4f 4e 20 7b 0d 0a 09 09 44 57 4f 52 44  ATION {....DWORD
1c5c0 20 20 20 20 20 20 20 20 20 75 6c 46 6c 61 67 73           ulFlags
1c5d0 3b 0d 0a 09 09 44 57 4f 52 44 20 20 20 20 20 20  ;....DWORD      
1c5e0 20 20 20 75 6c 45 6e 63 6f 64 65 64 41 73 73 65     ulEncodedAsse
1c5f0 6d 62 6c 79 49 64 65 6e 74 69 74 79 4c 65 6e 67  mblyIdentityLeng
1c600 74 68 3b 0d 0a 09 09 44 57 4f 52 44 20 20 20 20  th;....DWORD    
1c610 20 20 20 20 20 75 6c 4d 61 6e 69 66 65 73 74 50       ulManifestP
1c620 61 74 68 54 79 70 65 3b 0d 0a 09 09 44 57 4f 52  athType;....DWOR
1c630 44 20 20 20 20 20 20 20 20 20 75 6c 4d 61 6e 69  D         ulMani
1c640 66 65 73 74 50 61 74 68 4c 65 6e 67 74 68 3b 0d  festPathLength;.
1c650 0a 09 09 4c 41 52 47 45 5f 49 4e 54 45 47 45 52  ...LARGE_INTEGER
1c660 20 6c 69 4d 61 6e 69 66 65 73 74 4c 61 73 74 57   liManifestLastW
1c670 72 69 74 65 54 69 6d 65 3b 0d 0a 09 09 44 57 4f  riteTime;....DWO
1c680 52 44 20 20 20 20 20 20 20 20 20 75 6c 50 6f 6c  RD         ulPol
1c690 69 63 79 50 61 74 68 54 79 70 65 3b 0d 0a 09 09  icyPathType;....
1c6a0 44 57 4f 52 44 20 20 20 20 20 20 20 20 20 75 6c  DWORD         ul
1c6b0 50 6f 6c 69 63 79 50 61 74 68 4c 65 6e 67 74 68  PolicyPathLength
1c6c0 3b 0d 0a 09 09 4c 41 52 47 45 5f 49 4e 54 45 47  ;....LARGE_INTEG
1c6d0 45 52 20 6c 69 50 6f 6c 69 63 79 4c 61 73 74 57  ER liPolicyLastW
1c6e0 72 69 74 65 54 69 6d 65 3b 0d 0a 09 09 44 57 4f  riteTime;....DWO
1c6f0 52 44 20 20 20 20 20 20 20 20 20 75 6c 4d 65 74  RD         ulMet
1c700 61 64 61 74 61 53 61 74 65 6c 6c 69 74 65 52 6f  adataSatelliteRo
1c710 73 74 65 72 49 6e 64 65 78 3b 0d 0a 09 09 44 57  sterIndex;....DW
1c720 4f 52 44 20 20 20 20 20 20 20 20 20 75 6c 4d 61  ORD         ulMa
1c730 6e 69 66 65 73 74 56 65 72 73 69 6f 6e 4d 61 6a  nifestVersionMaj
1c740 6f 72 3b 0d 0a 09 09 44 57 4f 52 44 20 20 20 20  or;....DWORD    
1c750 20 20 20 20 20 75 6c 4d 61 6e 69 66 65 73 74 56       ulManifestV
1c760 65 72 73 69 6f 6e 4d 69 6e 6f 72 3b 0d 0a 09 09  ersionMinor;....
1c770 44 57 4f 52 44 20 20 20 20 20 20 20 20 20 75 6c  DWORD         ul
1c780 50 6f 6c 69 63 79 56 65 72 73 69 6f 6e 4d 61 6a  PolicyVersionMaj
1c790 6f 72 3b 0d 0a 09 09 44 57 4f 52 44 20 20 20 20  or;....DWORD    
1c7a0 20 20 20 20 20 75 6c 50 6f 6c 69 63 79 56 65 72       ulPolicyVer
1c7b0 73 69 6f 6e 4d 69 6e 6f 72 3b 0d 0a 09 09 44 57  sionMinor;....DW
1c7c0 4f 52 44 20 20 20 20 20 20 20 20 20 75 6c 41 73  ORD         ulAs
1c7d0 73 65 6d 62 6c 79 44 69 72 65 63 74 6f 72 79 4e  semblyDirectoryN
1c7e0 61 6d 65 4c 65 6e 67 74 68 3b 0d 0a 09 09 50 43  ameLength;....PC
1c7f0 57 53 54 52 20 20 20 20 20 20 20 20 6c 70 41 73  WSTR        lpAs
1c800 73 65 6d 62 6c 79 45 6e 63 6f 64 65 64 41 73 73  semblyEncodedAss
1c810 65 6d 62 6c 79 49 64 65 6e 74 69 74 79 3b 0d 0a  emblyIdentity;..
1c820 09 09 50 43 57 53 54 52 20 20 20 20 20 20 20 20  ..PCWSTR        
1c830 6c 70 41 73 73 65 6d 62 6c 79 4d 61 6e 69 66 65  lpAssemblyManife
1c840 73 74 50 61 74 68 3b 0d 0a 09 09 50 43 57 53 54  stPath;....PCWST
1c850 52 20 20 20 20 20 20 20 20 6c 70 41 73 73 65 6d  R        lpAssem
1c860 62 6c 79 50 6f 6c 69 63 79 50 61 74 68 3b 0d 0a  blyPolicyPath;..
1c870 09 09 50 43 57 53 54 52 20 20 20 20 20 20 20 20  ..PCWSTR        
1c880 6c 70 41 73 73 65 6d 62 6c 79 44 69 72 65 63 74  lpAssemblyDirect
1c890 6f 72 79 4e 61 6d 65 3b 0d 0a 09 7d 0d 0a 09 61  oryName;...}...a
1c8a0 6c 69 61 73 20 41 43 54 49 56 41 54 49 4f 4e 5f  lias ACTIVATION_
1c8b0 43 4f 4e 54 45 58 54 5f 41 53 53 45 4d 42 4c 59  CONTEXT_ASSEMBLY
1c8c0 5f 44 45 54 41 49 4c 45 44 5f 49 4e 46 4f 52 4d  _DETAILED_INFORM
1c8d0 41 54 49 4f 4e 2a 0d 0a 09 20 20 50 41 43 54 49  ATION*...  PACTI
1c8e0 56 41 54 49 4f 4e 5f 43 4f 4e 54 45 58 54 5f 41  VATION_CONTEXT_A
1c8f0 53 53 45 4d 42 4c 59 5f 44 45 54 41 49 4c 45 44  SSEMBLY_DETAILED
1c900 5f 49 4e 46 4f 52 4d 41 54 49 4f 4e 3b 0d 0a 09  _INFORMATION;...
1c910 61 6c 69 61 73 20 63 6f 6e 73 74 28 41 43 54 49  alias const(ACTI
1c920 56 41 54 49 4f 4e 5f 43 4f 4e 54 45 58 54 5f 41  VATION_CONTEXT_A
1c930 53 53 45 4d 42 4c 59 5f 44 45 54 41 49 4c 45 44  SSEMBLY_DETAILED
1c940 5f 49 4e 46 4f 52 4d 41 54 49 4f 4e 29 2a 0d 0a  _INFORMATION)*..
1c950 09 20 20 50 43 41 43 54 49 56 41 54 49 4f 4e 5f  .  PCACTIVATION_
1c960 43 4f 4e 54 45 58 54 5f 41 53 53 45 4d 42 4c 59  CONTEXT_ASSEMBLY
1c970 5f 44 45 54 41 49 4c 45 44 5f 49 4e 46 4f 52 4d  _DETAILED_INFORM
1c980 41 54 49 4f 4e 3b 0d 0a 0d 0a 09 73 74 72 75 63  ATION;.....struc
1c990 74 20 41 43 54 49 56 41 54 49 4f 4e 5f 43 4f 4e  t ACTIVATION_CON
1c9a0 54 45 58 54 5f 44 45 54 41 49 4c 45 44 5f 49 4e  TEXT_DETAILED_IN
1c9b0 46 4f 52 4d 41 54 49 4f 4e 20 7b 0d 0a 09 09 44  FORMATION {....D
1c9c0 57 4f 52 44 20 20 64 77 46 6c 61 67 73 3b 0d 0a  WORD  dwFlags;..
1c9d0 09 09 44 57 4f 52 44 20 20 75 6c 46 6f 72 6d 61  ..DWORD  ulForma
1c9e0 74 56 65 72 73 69 6f 6e 3b 0d 0a 09 09 44 57 4f  tVersion;....DWO
1c9f0 52 44 20 20 75 6c 41 73 73 65 6d 62 6c 79 43 6f  RD  ulAssemblyCo
1ca00 75 6e 74 3b 0d 0a 09 09 44 57 4f 52 44 20 20 75  unt;....DWORD  u
1ca10 6c 52 6f 6f 74 4d 61 6e 69 66 65 73 74 50 61 74  lRootManifestPat
1ca20 68 54 79 70 65 3b 0d 0a 09 09 44 57 4f 52 44 20  hType;....DWORD 
1ca30 20 75 6c 52 6f 6f 74 4d 61 6e 69 66 65 73 74 50   ulRootManifestP
1ca40 61 74 68 43 68 61 72 73 3b 0d 0a 09 09 44 57 4f  athChars;....DWO
1ca50 52 44 20 20 75 6c 52 6f 6f 74 43 6f 6e 66 69 67  RD  ulRootConfig
1ca60 75 72 61 74 69 6f 6e 50 61 74 68 54 79 70 65 3b  urationPathType;
1ca70 0d 0a 09 09 44 57 4f 52 44 20 20 75 6c 52 6f 6f  ....DWORD  ulRoo
1ca80 74 43 6f 6e 66 69 67 75 72 61 74 69 6f 6e 50 61  tConfigurationPa
1ca90 74 68 43 68 61 72 73 3b 0d 0a 09 09 44 57 4f 52  thChars;....DWOR
1caa0 44 20 20 75 6c 41 70 70 44 69 72 50 61 74 68 54  D  ulAppDirPathT
1cab0 79 70 65 3b 0d 0a 09 09 44 57 4f 52 44 20 20 75  ype;....DWORD  u
1cac0 6c 41 70 70 44 69 72 50 61 74 68 43 68 61 72 73  lAppDirPathChars
1cad0 3b 0d 0a 09 09 50 43 57 53 54 52 20 6c 70 52 6f  ;....PCWSTR lpRo
1cae0 6f 74 4d 61 6e 69 66 65 73 74 50 61 74 68 3b 0d  otManifestPath;.
1caf0 0a 09 09 50 43 57 53 54 52 20 6c 70 52 6f 6f 74  ...PCWSTR lpRoot
1cb00 43 6f 6e 66 69 67 75 72 61 74 69 6f 6e 50 61 74  ConfigurationPat
1cb10 68 3b 0d 0a 09 09 50 43 57 53 54 52 20 6c 70 41  h;....PCWSTR lpA
1cb20 70 70 44 69 72 50 61 74 68 3b 0d 0a 09 7d 0d 0a  ppDirPath;...}..
1cb30 09 61 6c 69 61 73 20 41 43 54 49 56 41 54 49 4f  .alias ACTIVATIO
1cb40 4e 5f 43 4f 4e 54 45 58 54 5f 44 45 54 41 49 4c  N_CONTEXT_DETAIL
1cb50 45 44 5f 49 4e 46 4f 52 4d 41 54 49 4f 4e 2a 0d  ED_INFORMATION*.
1cb60 0a 09 20 20 50 41 43 54 49 56 41 54 49 4f 4e 5f  ..  PACTIVATION_
1cb70 43 4f 4e 54 45 58 54 5f 44 45 54 41 49 4c 45 44  CONTEXT_DETAILED
1cb80 5f 49 4e 46 4f 52 4d 41 54 49 4f 4e 3b 0d 0a 09  _INFORMATION;...
1cb90 61 6c 69 61 73 20 63 6f 6e 73 74 28 41 43 54 49  alias const(ACTI
1cba0 56 41 54 49 4f 4e 5f 43 4f 4e 54 45 58 54 5f 44  VATION_CONTEXT_D
1cbb0 45 54 41 49 4c 45 44 5f 49 4e 46 4f 52 4d 41 54  ETAILED_INFORMAT
1cbc0 49 4f 4e 29 2a 0d 0a 09 20 20 50 43 41 43 54 49  ION)*...  PCACTI
1cbd0 56 41 54 49 4f 4e 5f 43 4f 4e 54 45 58 54 5f 44  VATION_CONTEXT_D
1cbe0 45 54 41 49 4c 45 44 5f 49 4e 46 4f 52 4d 41 54  ETAILED_INFORMAT
1cbf0 49 4f 4e 3b 0d 0a 0d 0a 09 73 74 72 75 63 74 20  ION;.....struct 
1cc00 41 43 54 49 56 41 54 49 4f 4e 5f 43 4f 4e 54 45  ACTIVATION_CONTE
1cc10 58 54 5f 51 55 45 52 59 5f 49 4e 44 45 58 20 7b  XT_QUERY_INDEX {
1cc20 0d 0a 09 09 55 4c 4f 4e 47 20 75 6c 41 73 73 65  ....ULONG ulAsse
1cc30 6d 62 6c 79 49 6e 64 65 78 3b 0d 0a 09 09 55 4c  mblyIndex;....UL
1cc40 4f 4e 47 20 75 6c 46 69 6c 65 49 6e 64 65 78 49  ONG ulFileIndexI
1cc50 6e 41 73 73 65 6d 62 6c 79 3b 0d 0a 09 7d 0d 0a  nAssembly;...}..
1cc60 09 61 6c 69 61 73 20 41 43 54 49 56 41 54 49 4f  .alias ACTIVATIO
1cc70 4e 5f 43 4f 4e 54 45 58 54 5f 51 55 45 52 59 5f  N_CONTEXT_QUERY_
1cc80 49 4e 44 45 58 2a 20 20 20 20 20 20 20 20 50 41  INDEX*        PA
1cc90 43 54 49 56 41 54 49 4f 4e 5f 43 4f 4e 54 45 58  CTIVATION_CONTEX
1cca0 54 5f 51 55 45 52 59 5f 49 4e 44 45 58 3b 0d 0a  T_QUERY_INDEX;..
1ccb0 09 61 6c 69 61 73 20 63 6f 6e 73 74 28 41 43 54  .alias const(ACT
1ccc0 49 56 41 54 49 4f 4e 5f 43 4f 4e 54 45 58 54 5f  IVATION_CONTEXT_
1ccd0 51 55 45 52 59 5f 49 4e 44 45 58 29 2a 20 50 43  QUERY_INDEX)* PC
1cce0 41 43 54 49 56 41 54 49 4f 4e 5f 43 4f 4e 54 45  ACTIVATION_CONTE
1ccf0 58 54 5f 51 55 45 52 59 5f 49 4e 44 45 58 3b 0d  XT_QUERY_INDEX;.
1cd00 0a 0d 0a 09 73 74 72 75 63 74 20 41 53 53 45 4d  ....struct ASSEM
1cd10 42 4c 59 5f 46 49 4c 45 5f 44 45 54 41 49 4c 45  BLY_FILE_DETAILE
1cd20 44 5f 49 4e 46 4f 52 4d 41 54 49 4f 4e 20 7b 0d  D_INFORMATION {.
1cd30 0a 09 09 44 57 4f 52 44 20 20 75 6c 46 6c 61 67  ...DWORD  ulFlag
1cd40 73 3b 0d 0a 09 09 44 57 4f 52 44 20 20 75 6c 46  s;....DWORD  ulF
1cd50 69 6c 65 6e 61 6d 65 4c 65 6e 67 74 68 3b 0d 0a  ilenameLength;..
1cd60 09 09 44 57 4f 52 44 20 20 75 6c 50 61 74 68 4c  ..DWORD  ulPathL
1cd70 65 6e 67 74 68 3b 0d 0a 09 09 50 43 57 53 54 52  ength;....PCWSTR
1cd80 20 6c 70 46 69 6c 65 4e 61 6d 65 3b 0d 0a 09 09   lpFileName;....
1cd90 50 43 57 53 54 52 20 6c 70 46 69 6c 65 50 61 74  PCWSTR lpFilePat
1cda0 68 3b 0d 0a 09 7d 0d 0a 09 61 6c 69 61 73 20 41  h;...}...alias A
1cdb0 53 53 45 4d 42 4c 59 5f 46 49 4c 45 5f 44 45 54  SSEMBLY_FILE_DET
1cdc0 41 49 4c 45 44 5f 49 4e 46 4f 52 4d 41 54 49 4f  AILED_INFORMATIO
1cdd0 4e 2a 0d 0a 09 20 20 50 41 53 53 45 4d 42 4c 59  N*...  PASSEMBLY
1cde0 5f 46 49 4c 45 5f 44 45 54 41 49 4c 45 44 5f 49  _FILE_DETAILED_I
1cdf0 4e 46 4f 52 4d 41 54 49 4f 4e 3b 0d 0a 09 61 6c  NFORMATION;...al
1ce00 69 61 73 20 63 6f 6e 73 74 28 41 53 53 45 4d 42  ias const(ASSEMB
1ce10 4c 59 5f 46 49 4c 45 5f 44 45 54 41 49 4c 45 44  LY_FILE_DETAILED
1ce20 5f 49 4e 46 4f 52 4d 41 54 49 4f 4e 29 2a 0d 0a  _INFORMATION)*..
1ce30 09 20 20 50 43 41 53 53 45 4d 42 4c 59 5f 46 49  .  PCASSEMBLY_FI
1ce40 4c 45 5f 44 45 54 41 49 4c 45 44 5f 49 4e 46 4f  LE_DETAILED_INFO
1ce50 52 4d 41 54 49 4f 4e 3b 0d 0a 7d 0d 0a 0d 0a 76  RMATION;..}....v
1ce60 65 72 73 69 6f 6e 20 28 55 6e 69 63 6f 64 65 29  ersion (Unicode)
1ce70 20 7b 0d 0a 09 61 6c 69 61 73 20 4f 53 56 45 52   {...alias OSVER
1ce80 53 49 4f 4e 49 4e 46 4f 57 20 4f 53 56 45 52 53  SIONINFOW OSVERS
1ce90 49 4f 4e 49 4e 46 4f 3b 0d 0a 09 61 6c 69 61 73  IONINFO;...alias
1cea0 20 4f 53 56 45 52 53 49 4f 4e 49 4e 46 4f 45 58   OSVERSIONINFOEX
1ceb0 57 20 4f 53 56 45 52 53 49 4f 4e 49 4e 46 4f 45  W OSVERSIONINFOE
1cec0 58 3b 0d 0a 7d 20 65 6c 73 65 20 7b 0d 0a 09 61  X;..} else {...a
1ced0 6c 69 61 73 20 4f 53 56 45 52 53 49 4f 4e 49 4e  lias OSVERSIONIN
1cee0 46 4f 41 20 4f 53 56 45 52 53 49 4f 4e 49 4e 46  FOA OSVERSIONINF
1cef0 4f 3b 0d 0a 09 61 6c 69 61 73 20 4f 53 56 45 52  O;...alias OSVER
1cf00 53 49 4f 4e 49 4e 46 4f 45 58 41 20 4f 53 56 45  SIONINFOEXA OSVE
1cf10 52 53 49 4f 4e 49 4e 46 4f 45 58 3b 0d 0a 7d 0d  RSIONINFOEX;..}.
1cf20 0a 0d 0a 61 6c 69 61 73 20 4f 53 56 45 52 53 49  ...alias OSVERSI
1cf30 4f 4e 49 4e 46 4f 2a 20 20 20 50 4f 53 56 45 52  ONINFO*   POSVER
1cf40 53 49 4f 4e 49 4e 46 4f 2c 20 20 20 4c 50 4f 53  SIONINFO,   LPOS
1cf50 56 45 52 53 49 4f 4e 49 4e 46 4f 3b 0d 0a 61 6c  VERSIONINFO;..al
1cf60 69 61 73 20 4f 53 56 45 52 53 49 4f 4e 49 4e 46  ias OSVERSIONINF
1cf70 4f 45 58 2a 20 50 4f 53 56 45 52 53 49 4f 4e 49  OEX* POSVERSIONI
1cf80 4e 46 4f 45 58 2c 20 4c 50 4f 53 56 45 52 53 49  NFOEX, LPOSVERSI
1cf90 4f 4e 49 4e 46 4f 45 58 3b 0d 0a 0d 0a 0d 0a 73  ONINFOEX;......s
1cfa0 74 61 74 69 63 20 69 66 20 28 5f 57 49 4e 33 32  tatic if (_WIN32
1cfb0 5f 57 49 4e 4e 54 20 3e 3d 20 30 78 35 30 30 29  _WINNT >= 0x500)
1cfc0 20 7b 0d 0a 09 65 78 74 65 72 6e 20 28 57 69 6e   {...extern (Win
1cfd0 64 6f 77 73 29 20 55 4c 4f 4e 47 4c 4f 4e 47 20  dows) ULONGLONG 
1cfe0 56 65 72 53 65 74 43 6f 6e 64 69 74 69 6f 6e 4d  VerSetConditionM
1cff0 61 73 6b 28 55 4c 4f 4e 47 4c 4f 4e 47 2c 20 44  ask(ULONGLONG, D
1d000 57 4f 52 44 2c 20 42 59 54 45 29 3b 0d 0a 7d 0d  WORD, BYTE);..}.
1d010 0a 0d 0a 76 65 72 73 69 6f 6e 20 28 57 69 6e 36  ...version (Win6
1d020 34 29 20 7b 0d 0a 09 63 6f 6e 73 74 20 57 4f 52  4) {...const WOR
1d030 44 20 49 4d 41 47 45 5f 4e 54 5f 4f 50 54 49 4f  D IMAGE_NT_OPTIO
1d040 4e 41 4c 5f 48 44 52 5f 4d 41 47 49 43 20 3d 20  NAL_HDR_MAGIC = 
1d050 49 4d 41 47 45 5f 4e 54 5f 4f 50 54 49 4f 4e 41  IMAGE_NT_OPTIONA
1d060 4c 5f 48 44 52 36 34 5f 4d 41 47 49 43 3b 0d 0a  L_HDR64_MAGIC;..
1d070 0d 0a 09 61 6c 69 61 73 20 49 4d 41 47 45 5f 4f  ...alias IMAGE_O
1d080 52 44 49 4e 41 4c 5f 46 4c 41 47 36 34 20 49 4d  RDINAL_FLAG64 IM
1d090 41 47 45 5f 4f 52 44 49 4e 41 4c 5f 46 4c 41 47  AGE_ORDINAL_FLAG
1d0a0 3b 0d 0a 09 61 6c 69 61 73 20 49 4d 41 47 45 5f  ;...alias IMAGE_
1d0b0 53 4e 41 50 5f 42 59 5f 4f 52 44 49 4e 41 4c 36  SNAP_BY_ORDINAL6
1d0c0 34 20 49 4d 41 47 45 5f 53 4e 41 50 5f 42 59 5f  4 IMAGE_SNAP_BY_
1d0d0 4f 52 44 49 4e 41 4c 3b 0d 0a 09 61 6c 69 61 73  ORDINAL;...alias
1d0e0 20 49 4d 41 47 45 5f 4f 52 44 49 4e 41 4c 36 34   IMAGE_ORDINAL64
1d0f0 20 49 4d 41 47 45 5f 4f 52 44 49 4e 41 4c 3b 0d   IMAGE_ORDINAL;.
1d100 0a 09 61 6c 69 61 73 20 49 4d 41 47 45 5f 4f 50  ..alias IMAGE_OP
1d110 54 49 4f 4e 41 4c 5f 48 45 41 44 45 52 36 34 20  TIONAL_HEADER64 
1d120 49 4d 41 47 45 5f 4f 50 54 49 4f 4e 41 4c 5f 48  IMAGE_OPTIONAL_H
1d130 45 41 44 45 52 3b 0d 0a 09 61 6c 69 61 73 20 49  EADER;...alias I
1d140 4d 41 47 45 5f 4e 54 5f 48 45 41 44 45 52 53 36  MAGE_NT_HEADERS6
1d150 34 20 49 4d 41 47 45 5f 4e 54 5f 48 45 41 44 45  4 IMAGE_NT_HEADE
1d160 52 53 3b 0d 0a 09 61 6c 69 61 73 20 49 4d 41 47  RS;...alias IMAG
1d170 45 5f 54 48 55 4e 4b 5f 44 41 54 41 36 34 20 49  E_THUNK_DATA64 I
1d180 4d 41 47 45 5f 54 48 55 4e 4b 5f 44 41 54 41 3b  MAGE_THUNK_DATA;
1d190 0d 0a 09 61 6c 69 61 73 20 49 4d 41 47 45 5f 54  ...alias IMAGE_T
1d1a0 4c 53 5f 44 49 52 45 43 54 4f 52 59 36 34 20 49  LS_DIRECTORY64 I
1d1b0 4d 41 47 45 5f 54 4c 53 5f 44 49 52 45 43 54 4f  MAGE_TLS_DIRECTO
1d1c0 52 59 3b 0d 0a 7d 20 65 6c 73 65 20 7b 0d 0a 09  RY;..} else {...
1d1d0 63 6f 6e 73 74 20 57 4f 52 44 20 49 4d 41 47 45  const WORD IMAGE
1d1e0 5f 4e 54 5f 4f 50 54 49 4f 4e 41 4c 5f 48 44 52  _NT_OPTIONAL_HDR
1d1f0 5f 4d 41 47 49 43 20 3d 20 49 4d 41 47 45 5f 4e  _MAGIC = IMAGE_N
1d200 54 5f 4f 50 54 49 4f 4e 41 4c 5f 48 44 52 33 32  T_OPTIONAL_HDR32
1d210 5f 4d 41 47 49 43 3b 0d 0a 0d 0a 09 61 6c 69 61  _MAGIC;.....alia
1d220 73 20 49 4d 41 47 45 5f 4f 52 44 49 4e 41 4c 5f  s IMAGE_ORDINAL_
1d230 46 4c 41 47 33 32 20 49 4d 41 47 45 5f 4f 52 44  FLAG32 IMAGE_ORD
1d240 49 4e 41 4c 5f 46 4c 41 47 3b 0d 0a 09 61 6c 69  INAL_FLAG;...ali
1d250 61 73 20 49 4d 41 47 45 5f 4f 52 44 49 4e 41 4c  as IMAGE_ORDINAL
1d260 33 32 20 49 4d 41 47 45 5f 4f 52 44 49 4e 41 4c  32 IMAGE_ORDINAL
1d270 3b 0d 0a 09 61 6c 69 61 73 20 49 4d 41 47 45 5f  ;...alias IMAGE_
1d280 53 4e 41 50 5f 42 59 5f 4f 52 44 49 4e 41 4c 33  SNAP_BY_ORDINAL3
1d290 32 20 49 4d 41 47 45 5f 53 4e 41 50 5f 42 59 5f  2 IMAGE_SNAP_BY_
1d2a0 4f 52 44 49 4e 41 4c 3b 0d 0a 09 61 6c 69 61 73  ORDINAL;...alias
1d2b0 20 49 4d 41 47 45 5f 4f 50 54 49 4f 4e 41 4c 5f   IMAGE_OPTIONAL_
1d2c0 48 45 41 44 45 52 33 32 20 49 4d 41 47 45 5f 4f  HEADER32 IMAGE_O
1d2d0 50 54 49 4f 4e 41 4c 5f 48 45 41 44 45 52 3b 0d  PTIONAL_HEADER;.
1d2e0 0a 09 61 6c 69 61 73 20 49 4d 41 47 45 5f 4e 54  ..alias IMAGE_NT
1d2f0 5f 48 45 41 44 45 52 53 33 32 20 49 4d 41 47 45  _HEADERS32 IMAGE
1d300 5f 4e 54 5f 48 45 41 44 45 52 53 3b 0d 0a 09 61  _NT_HEADERS;...a
1d310 6c 69 61 73 20 49 4d 41 47 45 5f 54 48 55 4e 4b  lias IMAGE_THUNK
1d320 5f 44 41 54 41 33 32 20 49 4d 41 47 45 5f 54 48  _DATA32 IMAGE_TH
1d330 55 4e 4b 5f 44 41 54 41 3b 0d 0a 09 61 6c 69 61  UNK_DATA;...alia
1d340 73 20 49 4d 41 47 45 5f 54 4c 53 5f 44 49 52 45  s IMAGE_TLS_DIRE
1d350 43 54 4f 52 59 33 32 20 49 4d 41 47 45 5f 54 4c  CTORY32 IMAGE_TL
1d360 53 5f 44 49 52 45 43 54 4f 52 59 3b 0d 0a 7d 0d  S_DIRECTORY;..}.
1d370 0a 0d 0a 61 6c 69 61 73 20 49 4d 41 47 45 5f 4f  ...alias IMAGE_O
1d380 50 54 49 4f 4e 41 4c 5f 48 45 41 44 45 52 2a 20  PTIONAL_HEADER* 
1d390 50 49 4d 41 47 45 5f 4f 50 54 49 4f 4e 41 4c 5f  PIMAGE_OPTIONAL_
1d3a0 48 45 41 44 45 52 3b 0d 0a 61 6c 69 61 73 20 49  HEADER;..alias I
1d3b0 4d 41 47 45 5f 4e 54 5f 48 45 41 44 45 52 53 2a  MAGE_NT_HEADERS*
1d3c0 20 50 49 4d 41 47 45 5f 4e 54 5f 48 45 41 44 45   PIMAGE_NT_HEADE
1d3d0 52 53 3b 0d 0a 61 6c 69 61 73 20 49 4d 41 47 45  RS;..alias IMAGE
1d3e0 5f 54 48 55 4e 4b 5f 44 41 54 41 2a 20 50 49 4d  _THUNK_DATA* PIM
1d3f0 41 47 45 5f 54 48 55 4e 4b 5f 44 41 54 41 3b 0d  AGE_THUNK_DATA;.
1d400 0a 61 6c 69 61 73 20 49 4d 41 47 45 5f 54 4c 53  .alias IMAGE_TLS
1d410 5f 44 49 52 45 43 54 4f 52 59 2a 20 50 49 4d 41  _DIRECTORY* PIMA
1d420 47 45 5f 54 4c 53 5f 44 49 52 45 43 54 4f 52 59  GE_TLS_DIRECTORY
1d430 3b 0d 0a 0d 0a 2f 2f 20 54 4f 44 4f 3a 20 4d 69  ;....// TODO: Mi
1d440 6e 47 57 20 69 6d 70 6c 65 6d 65 6e 74 73 20 74  nGW implements t
1d450 68 65 73 65 20 69 6e 20 61 73 73 65 6d 62 6c 79  hese in assembly
1d460 2e 20 20 48 6f 77 20 74 6f 20 74 72 61 6e 73 6c  .  How to transl
1d470 61 74 65 3f 0d 0a 50 56 4f 49 44 20 47 65 74 43  ate?..PVOID GetC
1d480 75 72 72 65 6e 74 46 69 62 65 72 28 29 3b 0d 0a  urrentFiber();..
1d490 50 56 4f 49 44 20 47 65 74 46 69 62 65 72 44 61  PVOID GetFiberDa
1d4a0 74 61 28 29 3b 0d 0a                             ta();..