CmpLightWeightCommitSetUserFlagsUoW
VOID __stdcall CmpLightWeightCommitSetUserFlagsUoW(_CM_KCB_UOW *UoW, _LARGE_INTEGER *CommitTime){
_CM_KEY_CONTROL_BLOCK *KeyControlBlock;
_HHIVE *KeyHive;
__int64 v6;
unsigned int v7;
int v8;
int v9;
v8 = -1;
v9 = 0;
KeyControlBlock = UoW->KeyControlBlock;
KeyHive = KeyControlBlock->KeyHash.KeyHive;
v6 = (__int64)KeyHive->GetCellRoutine(KeyHive, KeyControlBlock->KeyHash.KeyCell, (_HV_GET_CELL_CONTEXT *)&v8);
v7 = *(_DWORD *)(v6 + 52) ^ (*(_DWORD *)(v6 + 52) ^ (UoW->VolatileKeyCell << 16)) & 0xF0000;
*(_DWORD *)(v6 + 52) = v7;
UoW->KeyControlBlock->_bf_b8 ^= (UoW->KeyControlBlock->_bf_b8 ^ HIWORD(v7)) & 0xF;
*(_LARGE_INTEGER *)(v6 + 4) = *CommitTime;
++UoW->KeyControlBlock->SequenceNumber;
KeyHive->ReleaseCellRoutine(KeyHive, (_HV_GET_CELL_CONTEXT *)&v8);
}Referenced by:
CmpProcessLightWeightUOW