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