CmpDelayedDerefKeys
VOID __stdcall CmpDelayedDerefKeys(LIST_ENTRY *DelayedDeref){
_LIST_ENTRY *Flink;
_LIST_ENTRY *v3;
while( 1 )
{
Flink = DelayedDeref->Flink;
if( DelayedDeref->Flink == DelayedDeref )
break;
if( Flink->Blink != DelayedDeref || (v3 = Flink->Flink, Flink->Flink->Blink != Flink) )
__fastfail(3u);
DelayedDeref->Flink = v3;
v3->Blink = DelayedDeref;
ObDereferenceObjectDeferDelete(Flink[1].Flink);
ExFreePoolWithTag(Flink, 0);
}
}Referenced by:
CmpCloseKeyObject
CmpPostNotify
CmpReportNotifyHelper