PpmInfoAdjustSetting

UINT8 __stdcall PpmInfoAdjustSetting(
        _PPM_POLICY_CONFIG_ENTRY *Entry,
        _PPM_ENGINE_SETTINGS *Settings,
        UINT64 MinClass,
        UINT64 MaxClass,
        UINT8 *NewValue,
        UINT64 ValueLength){
  unsigned int v6; 
  unsigned int v7; 
  UINT8 v10; 
  __int64 v11; 

  v6 = MaxClass;
  v7 = MinClass;
  if( (unsigned int)ValueLength < Entry[8] && (*((_BYTE *)Entry + 37) & 8) == 0 )
    return 0;
  v10 = 0;
  v11 = 1i64 << *((_BYTE *)Entry + 36);
  if( (unsigned int)MinClass <= (unsigned int)MaxClass )
  {
    do
    {
      if( PpmInfoWriteData(NewValue, (unsigned int)ValueLength, v7, Entry, Settings) )
        v10 = 1;
      ++v7;
    }
    while( v7 <= v6 );
    if( v10 )
    {
      if( (v11 & 0x200) != 0 )
        Settings->PerfReductionTolerance = PpmPerfComputePerfReductionTolerance(Settings->PerfBoostPolicy);
    }
  }
  return v10;
}

Referenced by:

PpmSetProfilePolicySetting