IoStartIoRateControl

NTSTATUS __fastcall IoStartIoRateControl(__int64 a1, __int64 a2, __int64 a3, __int64 *a4){
  unsigned int v4; 
  UINT64 v7; 
  unsigned __int64 v8; 
  UINT64 RateAmounts[16]; 
  v4 = *(_DWORD *)(a1 + 36);
  RateAmounts[0] = *(_QWORD *)a1;
  RateAmounts[3] = *(_QWORD *)(a1 + 16);
  RateAmounts[6] = *(_QWORD *)(a1 + 48);
  RateAmounts[9] = *(_QWORD *)(a1 + 96);
  RateAmounts[12] = *(_QWORD *)(a1 + 120);
  RateAmounts[1] = *(_QWORD *)(a1 + 8);
  RateAmounts[4] = *(_QWORD *)(a1 + 56);
  RateAmounts[7] = *(_QWORD *)(a1 + 64);
  RateAmounts[10] = *(_QWORD *)(a1 + 104);
  RateAmounts[13] = *(_QWORD *)(a1 + 128);
  RateAmounts[2] = *(_QWORD *)(a1 + 72);
  RateAmounts[5] = *(_QWORD *)(a1 + 80);
  RateAmounts[8] = *(_QWORD *)(a1 + 88);
  RateAmounts[11] = *(_QWORD *)(a1 + 112);
  RateAmounts[14] = *(_QWORD *)(a1 + 136);
  v7 = (v4 >> 1) & 1 | 2;
  if( (v4 & 4) == 0 )
    v7 = (v4 >> 1) & 1;
  v8 = (unsigned int)v7 | 4;
  if( (v4 & 8) == 0 )
    v8 = (unsigned int)v7;
  return IopIoRateStartRateControl(RateAmounts, v7, (PVOID)v8, (PVOID)a2, (PVOID *)a3, (UINT64 *)a4);
}

Referenced by:

PspIoRateEntryActivate