MiReferenceSubsection
VOID __stdcall MiReferenceSubsection(_SUBSECTION *Subsection, UINT64 Flags){
__int64 v3;
__int64 v4;
v3 = *(_QWORD *)Subsection;
if( *((_QWORD *)Subsection + 1) )
{
v4 = *(_QWORD *)(v3 + 64);
if( (int)MiIncrementSubsectionViewCount((INT64 *)Subsection, Flags) > 1 && v4 && (*(_DWORD *)(v3 + 56) & 0x20) == 0 )
{
if( (*((_BYTE *)Subsection + 34) & 8) != 0 )
MiRemoveUnusedSubsection((_MSUBSECTION *)Subsection);
*((_WORD *)Subsection + 16) |= 1u;
}
}
}Referenced by:
MiComputeDataFlushRange
MiFlushAcquire
MiPreventControlAreaDeletion
MiTrimSection
MiUpdateActiveSubsection