ViThunkRecoverPristines

VOID __stdcall ViThunkRecoverPristines(_DRIVER_SPECIFIED_VERIFIER_THUNKS *ThunkTableBase){
  unsigned int v1; 
  _DRIVER_SPECIFIED_VERIFIER_THUNKS *i; 
  INT64 **v4; 
  UINT64 v5; 
  INT64 **v6; 
  UINT64 v7; 
  INT64 **v8; 
  UINT64 v9; 
  UINT64 v10; 
  INT64 **v11; 
  UINT64 v12; 
  UINT64 v13; 
  INT64 **v14; 
  VOID *v15; 

  v1 = 0;
  for( i = ThunkTableBase + 8; v1 < ThunkTableBase[6]; ++v1 )
  {
    if( (unsigned int)ViThunkReplaceSpecialPristine(i) != 1
      && ViThunkReplacePristine(&VfRegularThunks, 0x30ui64, (UINT64)i, v4, v15) != 1
      && ViThunkReplacePristine(&VfOrderDependentThunks, 0x38ui64, v5, v6, v15) != 1
      && ViThunkReplacePristine(&VfPoolThunks, 0x30ui64, v7, v8, v15) != 1
      && ViThunkReplacePristine(&VfMandatoryThunks, v9, v10, v11, v15) != 1 )
    {
      ViThunkReplacePristine(&VfXdvThunks, v12, v13, v14, v15);
    }
    i += 4;
  }
}

Referenced by:

VfThunkAddSpecialDriverThunks