CmpLockHashEntrySharedByKcb

void __fastcall CmpLockHashEntrySharedByKcb(_CM_KEY_CONTROL_BLOCK *Kcb){
  _HHIVE *KeyHive; 
  unsigned __int64 v3; 
  KeyHive = Kcb->KeyHash.KeyHive;
  v3 = 101027 * (Kcb->KeyHash.ConvKey.Hash ^ (Kcb->KeyHash.ConvKey.Hash >> 9));
  ExAcquirePushLockSharedEx(
    *(_QWORD *)&KeyHive[1].DirtyCount + 24 * ((KeyHive[1].UnreconciledVector.SizeOfBitMap - 1) & (v3 ^ (v3 >> 9))),
    0i64);
  if( !CmpReferenceHive((_CMHIVE *)KeyHive) )
    KeBugCheckEx(0x51u, 0x17ui64, (ULONG_PTR)KeyHive, 7ui64, (ULONG_PTR)Kcb);
}

Referenced by:

CmpDoParseKey
CmpPerformCompleteKcbCacheLookup