typedef struct _CM_KEY_CONTROL_BLOCK               // 30 elements, 0x68 bytes (sizeof)
          {
/*0x000*/     ULONG32      RefCount;
              struct                                         // 5 elements, 0x4 bytes (sizeof)
              {
/*0x004*/         ULONG32      ExtFlags : 8;                 // 0 BitPosition
/*0x004*/         ULONG32      PrivateAlloc : 1;             // 8 BitPosition
/*0x004*/         ULONG32      Delete : 1;                   // 9 BitPosition
/*0x004*/         ULONG32      DelayedCloseIndex : 12;       // 10 BitPosition
/*0x004*/         ULONG32      TotalLevels : 10;             // 22 BitPosition
              };
              union                                          // 2 elements, 0x10 bytes (sizeof)
              {
/*0x008*/         struct _CM_KEY_HASH KeyHash;               // 4 elements, 0x10 bytes (sizeof)
                  struct                                     // 4 elements, 0x10 bytes (sizeof)
                  {
/*0x008*/             ULONG32      ConvKey;
/*0x00C*/             struct _CM_KEY_HASH* NextHash;
/*0x010*/             struct _HHIVE* KeyHive;
/*0x014*/             ULONG32      KeyCell;
                  };
              };
/*0x018*/     struct _CM_KEY_CONTROL_BLOCK* ParentKcb;
/*0x01C*/     struct _CM_NAME_CONTROL_BLOCK* NameBlock;
/*0x020*/     struct _CM_KEY_SECURITY_CACHE* CachedSecurity;
/*0x024*/     struct _CACHED_CHILD_LIST ValueCache;          // 3 elements, 0x8 bytes (sizeof)
              union                                          // 3 elements, 0x4 bytes (sizeof)
              {
/*0x02C*/         struct _CM_INDEX_HINT_BLOCK* IndexHint;
/*0x02C*/         ULONG32      HashKey;
/*0x02C*/         ULONG32      SubKeyCount;
              };
              union                                          // 2 elements, 0x8 bytes (sizeof)
              {
/*0x030*/         struct _LIST_ENTRY KeyBodyListHead;        // 2 elements, 0x8 bytes (sizeof)
/*0x030*/         struct _LIST_ENTRY FreeListEntry;          // 2 elements, 0x8 bytes (sizeof)
              };
/*0x038*/     struct _CM_KEY_BODY* KeyBodyArray[4];
/*0x048*/     VOID*        DelayCloseEntry;
/*0x04C*/     UINT8        _PADDING0_[0x4];
/*0x050*/     union _LARGE_INTEGER KcbLastWriteTime;         // 4 elements, 0x8 bytes (sizeof)
/*0x058*/     UINT16       KcbMaxNameLen;
/*0x05A*/     UINT16       KcbMaxValueNameLen;
/*0x05C*/     ULONG32      KcbMaxValueDataLen;
              struct                                         // 4 elements, 0x4 bytes (sizeof)
              {
/*0x060*/         ULONG32      KcbUserFlags : 4;             // 0 BitPosition
/*0x060*/         ULONG32      KcbVirtControlFlags : 4;      // 4 BitPosition
/*0x060*/         ULONG32      KcbDebug : 8;                 // 8 BitPosition
/*0x060*/         ULONG32      Flags : 16;                   // 16 BitPosition
              };
          }CM_KEY_CONTROL_BLOCK, *PCM_KEY_CONTROL_BLOCK;
Return to structures/enums list.
Return to O.S. version list.

(c) MoonSols 2010.