_MI_CONTROL_AREA_WAIT_BLOCK *__fastcall MiReferenceActiveControlArea(_DWORD *a1, _CONTROL_AREA *a2){
_MI_CONTROL_AREA_WAIT_BLOCK *v4;
_MI_CONTROL_AREA_WAIT_BLOCK *v5;
v4 = MiBuildWakeList(a2, 4ui64);
++a2->NumberOfSectionReferences;
v5 = v4;
MiRemoveUnusedSegment(a2);
if( (*a1 & 1) != 0 )
a2->u.LongFlags |= 0x8000u;
else
++a2->NumberOfUserReferences;
return v5;
}