PpmPerfProcCapFloorSettingCallback

INT64 __stdcall PpmPerfProcCapFloorSettingCallback(
        const _GUID *SettingGuid,
        UINT64 *NewValue,
        UINT64 ValueLength,
        PVOID Context){
  unsigned int v4; 
  int v5; 
  __int64 v7; 
  _BOOL8 v8; 
  unsigned int v9; 
  __int64 v10; 
  __int64 v11; 
  unsigned int v12; 
  int v14; 
  GUID v15; 
  v4 = SettingGuid->Data4[7];
  v5 = ValueLength;
  v15 = GUID_PROC_CAP_BASE;
  v15.Data4[7] = v4;
  v7 = *(_QWORD *)&GUID_PROC_CAP_BASE.Data1 - *(_QWORD *)&SettingGuid->Data1;
  if( !v7 )
    v7 = *(_QWORD *)v15.Data4 - *(_QWORD *)SettingGuid->Data4;
  v8 = v7 == 0;
  PpmAcquireLock(&PpmPerfPolicyLock);
  if( v5 != 4 || !NewValue )
    goto LABEL_13;
  v9 = *(_DWORD *)NewValue;
  if( v9 > 0x64 )
    v9 = 100;
  KeGetPrcb(v4);
  if( v10 )
  {
    v11 = *(_QWORD *)(v10 + 33136);
    if( v11 )
    {
      if( v8 )
        *(_DWORD *)(v11 + 48) = v9;
      else
        *(_DWORD *)(v11 + 52) = v9;
    }
    v12 = 0;
  }
  else
  {
LABEL_13:
    v12 = -1073741811;
  }
  v14 = 14;
  PpmReapplyPerfPolicy(&v14);
  return v12;
}

Referenced by:

No references.