PpmPerfApplyLatencyHint

VOID __stdcall PpmPerfApplyLatencyHint(_KPRCB *Prcb){
  _ETHREAD *CurrentThread; 
  __int64 v2; 
  __int64 v3; 
  __int64 v4; 
  int v5; 
  __int64 v6; 
  unsigned int SListFaultAddress; 

  CurrentThread = Prcb->CurrentThread;
  v2 = *(_QWORD *)&CurrentThread->Tcb.gap0[8];
  v3 = *(&stru_140C00F40 + 365) + 2736i64 * *(&stru_140C23628 + 441);
  v4 = *(unsigned __int8 *)((unsigned __int8)PpmGetPerfPolicyClass(Prcb) + v3 + 117);
  if( ((v5 - 1) & 0xFFFFFFFD) != 0 )
  {
    if( (unsigned int)(v5 - 5) <= 1 || PpmPerfBoostAtGuaranteed )
      SListFaultAddress = (unsigned int)CurrentThread->Tcb.SListFaultAddress;
    else
      SListFaultAddress = 100;
  }
  else
  {
    SListFaultAddress = *(_DWORD *)(v6 + 320);
  }
  if( (unsigned int)v4 >= SListFaultAddress )
    v4 = SListFaultAddress;
  if( (unsigned int)v4 > LODWORD(CurrentThread->Tcb.StackBase) )
    LODWORD(CurrentThread->Tcb.StackBase) = (*(__int64(__fastcall **)(__int64, __int64, _QWORD))(v6 + 280))(
                                              v2,
                                              v4,
                                              *(unsigned int *)(v6 + 328));
}

Referenced by:

PpmPerfApplyLatencyHints