HvlpFlushRangeListTbEx

VOID __fastcall HvlpFlushRangeListTbEx(INT64 rcx0, INT64 a2, CHAR a3, INT64 a4, CHAR arg20, UINT64 arg28, UINT64 *a6){
  unsigned int v8; 
  __int64 v9; 
  int v10; 
  CHAR v11; 
  int v12; 
  CHAR v13; 
  UINT64 a5; 
  INT64 v15; 
  __int128 a1; 
  __int128 v17; 
  a1 = 0i64;
  v17 = 0i64;
  if( arg20 )
  {
    *(_QWORD *)&a1 = rcx0;
    v8 = a3 == 0 ? 4 : 0;
    v9 = v8 | 2;
    if( rcx0 )
      v9 = v8;
    *((_QWORD *)&a1 + 1) = v9;
  }
  v10 = HvlpCountFlushVaList((unsigned int)arg28, a6);
  if( v10 + (((unsigned int)HvlpFlags >> 8) & 0xF) + 5 <= 0xE && HvlpAllowFastFlushList() )
  {
    LODWORD(v15) = v10;
    LODWORD(a5) = v12;
    HvlpFastFlushListTbEx((INT64 *)&a1, a2, v13, v11, a5, a6, v15);
  }
  else
  {
    LODWORD(v15) = v10;
    LODWORD(a5) = v12;
    HvlpSlowFlushListTbEx(&a1, a2, v13, v11, a5, (INT64)a6, v15);
  }
}

Referenced by:

HvlFlushRangeListTb