struct _CM_KCB_UOW { struct _LIST_ENTRY TransactionListEntry;/* 0x0 8 */ struct _CM_INTENT_LOCK* KCBLock;/* 0x8 4 */ struct _CM_INTENT_LOCK* KeyLock;/* 0xc 4 */ struct _LIST_ENTRY KCBListEntry;/* 0x10 8 */ struct _CM_KEY_CONTROL_BLOCK* KeyControlBlock;/* 0x18 4 */ struct _CM_TRANS* Transaction;/* 0x1c 4 */ unsigned long UoWState;/* 0x20 4 */ enum UoWActionType ActionType;/* 0x24 4 */ enum HSTORAGE_TYPE StorageType;/* 0x28 4 */ struct _CM_KCB_UOW* ParentUoW;/* 0x2c 4 */ union { struct _CM_KEY_CONTROL_BLOCK* ChildKCB;/* 0x30 4 */ unsigned long VolatileKeyCell;/* 0x30 4 */ struct { unsigned long OldValueCell;/* 0x30 4 */ unsigned long NewValueCell;/* 0x34 4 */ };/* 0x30 8 */ unsigned long UserFlags;/* 0x30 4 */ union _LARGE_INTEGER LastWriteTime;/* 0x30 8 */ struct { struct _CM_KEY_SECURITY_CACHE* TxCachedSecurity;/* 0x30 4 */ unsigned long TxSecurityCell;/* 0x34 4 */ };/* 0x30 8 */ struct { struct _CM_KEY_CONTROL_BLOCK* OldChildKCB;/* 0x30 4 */ struct _CM_KEY_CONTROL_BLOCK* NewChildKCB;/* 0x34 4 */ };/* 0x30 8 */ struct { struct _CM_KEY_CONTROL_BLOCK* OtherChildKCB;/* 0x30 4 */ unsigned long ThisVolatileKeyCell;/* 0x34 4 */ };/* 0x30 8 */ };/* 0x30 8 */ union { void* PrepareDataPointer;/* 0x38 4 */ struct _CM_UOW_SET_SD_DATA* SecurityData;/* 0x38 4 */ struct _CM_UOW_KEY_STATE_MODIFICATION* ModifyKeysData;/* 0x38 4 */ struct _CM_UOW_SET_VALUE_LIST_DATA* SetValueData;/* 0x38 4 */ };/* 0x38 4 */ union { struct _CM_UOW_SET_VALUE_KEY_DATA* ValueData;/* 0x3c 4 */ struct _CMP_DISCARD_AND_REPLACE_KCB_CONTEXT* DiscardReplaceContext;/* 0x3c 4 */ };/* 0x3c 4 */};size 64 (0x40)28 members0 holespadding 01 cacheline
Used in (1)