CmpDestroyHive
INT64 __stdcall CmpDestroyHive(PVOID P){
struct _PRIVILEGE_SET *v2;
INT64 result;
CmpDestroySecurityCache((__int64)P);
CmpUnJoinClassOfTrust((INT64)P);
CmpVERemoveHiveFromSIDMappingTable((INT64)P);
HvHiveCleanup((INT64)P);
CmpCmdHiveClose((__int64)P);
v2 = (struct _PRIVILEGE_SET *)*((_QWORD *)P + 604);
if( v2 )
CmpVolumeContextDecrementRefCount(v2);
result = (unsigned int)_InterlockedExchangeAdd((volatile signed __int32 *)P + 1068, 0xFFFFFFFF);
if( (_DWORD)result == 1 )
return CmpDeleteHive(P);
return result;
}Referenced by:
CmLoadKey
CmReplaceKey
CmRestoreKey
CmSaveKey
CmSaveMergedKeys
CmpCreateEmptyHiveClone
CmpCreateHive
CmpFlushBackupHive
CmpFreeAllMemory
CmpLoadHiveVolatile
CmpLoadKeyCommon
CmpRefreshHive
CmpReorganizeHive