VfSuspectDriversRemove

NTSTATUS __stdcall VfSuspectDriversRemove(UNICODE_STRING *ImageFileName){
  INT64 v1; 
  INT64 v2; 
  NTSTATUS v4; 
  LIST_ENTRY *v5; 
  LIST_ENTRY *v6; 
  _LIST_ENTRY *Flink; 
  _LIST_ENTRY *Blink; 
  v4 = 0;
  VfDriverLock((INT64)ImageFileName, v1, v2);
  v5 = ViSuspectDriversLookupEntry(ImageFileName);
  v6 = v5;
  if( v5 )
  {
    if( LODWORD(v5[1].Flink) == HIDWORD(v5[1].Flink) )
    {
      Flink = v5->Flink;
      if( v6->Flink->Blink != v6 || (Blink = v6->Blink, Blink->Flink != v6) )
        __fastfail(3u);
      Blink->Flink = Flink;
      Flink->Blink = Blink;
      ExFreePoolWithTag(v6, 0x44536656u);
    }
    else
    {
      v4 = -1073741554;
    }
  }
  ViDriversLoadLockOwner = 0i64;
  KeReleaseMutex(&ViDriversLoadLock, 0);
  return v4;
}

Referenced by:

VfRemoveVerifierEntry