ViThunkFindNextSpecialTable

_DRIVER_SPECIFIED_SPECIAL_VERIFIER_THUNKS *__stdcall ViThunkFindNextSpecialTable(
        UINT64 *ImportThunk,
        UINT64 ImportSize,
        _LIST_ENTRY *NextEntry){
  _DRIVER_SPECIFIED_SPECIAL_VERIFIER_THUNKS *v3; 
  int v5; 

  v3 = 0i64;
  if( !NextEntry )
    NextEntry = (_LIST_ENTRY *)ViVerifierDriverAddedSpecialThunkListHead;
  while( NextEntry != (_LIST_ENTRY *)&ViVerifierDriverAddedSpecialThunkListHead )
  {
    v5 = 0;
    if( (_DWORD)ImportSize )
    {
      while( (_LIST_ENTRY *)ImportThunk[v5] != NextEntry[1].Flink )
      {
        if( ++v5 >= (unsigned int)ImportSize )
          goto LABEL_7;
      }
      return(_DRIVER_SPECIFIED_SPECIAL_VERIFIER_THUNKS *)NextEntry;
    }
LABEL_7:
    NextEntry = NextEntry->Flink;
  }
  return v3;
}

Referenced by:

VfThunkAddSpecialDriverThunks
ViThunkFindAllSpecialTables