x64x86arm64ia64 / ntdllntoskrnl

_CM_KEY_CONTROL_BLOCK

← 10.0.18362.1016 20 builds latest →
struct _CM_KEY_CONTROL_BLOCK {
unsigned long RefCount;/* 0x0 4 */
unsigned long ExtFlags : 16;/* 0x4:0 4 */
unsigned long Freed : 1;/* 0x4:16 4 */
unsigned long Discarded : 1;/* 0x4:17 4 */
unsigned long HiveUnloaded : 1;/* 0x4:18 4 */
unsigned long Decommissioned : 1;/* 0x4:19 4 */
unsigned long SpareExtFlag : 1;/* 0x4:20 4 */
unsigned long TotalLevels : 10;/* 0x4:21 4 */
union {
struct {
unsigned long KeyCell;/* 0x14 4 */
};/* 0x8 16 */
};/* 0x8 16 */
union {
long SharedCount;/* 0x1c 4 */
};/* 0x1c 4 */
unsigned char DelayedDeref : 1;/* 0x20:0 1 */
unsigned char DelayedClose : 1;/* 0x20:1 1 */
unsigned char Parking : 1;/* 0x20:2 1 */
unsigned char LayerSemantics;/* 0x21 1 */
short LayerHeight;/* 0x22 2 */
union {
unsigned long HashKey;/* 0x3c 4 */
unsigned long SubKeyCount;/* 0x3c 4 */
};/* 0x3c 4 */
/* ── cacheline 1 boundary (64 bytes) ── */
union {
};/* 0x40 8 */
unsigned short KcbMaxNameLen;/* 0x60 2 */
unsigned short KcbMaxValueNameLen;/* 0x62 2 */
unsigned long KcbMaxValueDataLen;/* 0x64 4 */
unsigned long KcbUserFlags : 4;/* 0x68:0 4 */
unsigned long KcbVirtControlFlags : 4;/* 0x68:4 4 */
unsigned long KcbDebug : 8;/* 0x68:8 4 */
unsigned long Flags : 16;/* 0x68:16 4 */
union {
volatile unsigned char* Stolen;/* 0x78 4 */
};/* 0x78 8 */
/* ── cacheline 2 boundary (128 bytes) ── */
union {
struct {
unsigned long FullKCBNameStale : 1;/* 0xa0:0 4 */
unsigned long Reserved : 31;/* 0xa0:1 4 */
};/* 0xa0 4 */
};/* 0xa0 4 */
/* 4 bytes padding */
unsigned __int64 SequenceNumber;/* 0xa8 8 */
};
size 176 (0xb0)53 members1 hole (4 bytes)padding 03 cachelines
Used in (7)