PopEsInStandbyEvaluate
NTSTATUS __stdcall PopEsInStandbyEvaluate(INT64 a1, PWDF_USB_INTERFACE_SELECT_SETTING_PARAMS a2){
_SYSTEM_POWER_CONDITION v2;
int PowerSettingValue;
int v4;
UINT64 v6;
UINT64 v7;
__int64 ChangeStamp[2];
char Buffer;
UINT64 BufferSize;
int v11;
int ReturnedLength;
ReturnedLength = 0;
v11 = 0;
LODWORD(BufferSize) = 0;
Buffer = 0;
PowerSettingValue = PopGetPowerSettingValue(
&GUID_ACDC_POWER_SOURCE,
(_SYSTEM_POWER_CONDITION)a2,
(VOID *)3,
&ReturnedLength,
v6,
&BufferSize);
if( PowerSettingValue >= 0 )
{
PowerSettingValue = PopGetPowerSettingValue(&GUID_LOW_POWER_EPOCH, v2, (VOID *)3, &v11, v7, &BufferSize);
if( PowerSettingValue >= 0 )
{
v4 = 1;
LODWORD(BufferSize) = 1;
PowerSettingValue = ExQueryWnfStateData(
PopEsWnfSubscriptionOpportunisticCs,
(UINT64 *)ChangeStamp,
&Buffer,
&BufferSize);
if( PowerSettingValue >= 0 )
{
if( (_DWORD)BufferSize )
{
if( !v11 || ReturnedLength != 1 || Buffer || (PopAggressiveStandbyAppliedActions & 1) != 0 )
v4 = 0;
if( PopEsBgActivityPolicy != v4 )
{
PopEsBgActivityPolicy = v4;
PopTraceEsBgActivityPolicyUpdate();
PopEsQueueStateEvaluation(0);
}
}
}
}
}
return PowerSettingValue;
}Referenced by:
PopEsInStandbyLowPowerEpochCallback