PopEvaluateGlobalUserStatus
VOID __stdcall PopEvaluateGlobalUserStatus(){
int v0;
__int64 v1;
__int64 v2;
UINT64 v3;
UINT64 v4;
int Src[20];
int Data;
int Buffer;
int v8;
if( PopUserPresentOverrideCount || !PopMaximumConnectionSessions )
v0 = 0;
else
v0 = RtlNumberOfSetBits(&PopConnectionBitmap) == 0 ? 2 : 0;
if( v0 != PopGlobalUserPresenceState )
{
Data = v0;
++PopGlobalUserPresenceStateTransitions;
PopGlobalUserPresenceState = v0;
PopPrintUserActivityPresence((_USER_ACTIVITY_PRESENCE)v0);
PopPrintEx(3ui64, (INT8 *)"PopAdaptive: Global user presence/activity state: %S id: %I32u\n");
PopDiagTraceSessionStateCounted(v2, v1, v0);
PopSetPowerSettingValueAcDc((_LPCGUID)&GUID_GLOBAL_USER_PRESENCE, 4ui64, &Data);
if( v0 )
{
Buffer = 1;
memset(Src, 0i64, 0x48u);
Src[2] = 1;
}
else
{
Buffer = 0;
memset(Src, 0i64, 0x48u);
Src[2] = 0;
}
Src[0] = 12;
PopUmpoSendPowerMessage(Src, 0x48u, 0);
LODWORD(v4) = 0;
LODWORD(v3) = 0;
v8 = PopGlobalUserPresenceStateTransitions;
ZwUpdateWnfStateData(&WNF_PO_SLEEP_STUDY_USER_PRESENCE_CHANGED, &Buffer, 8ui64, 0i64, 0i64, v3, v4);
}
}Referenced by:
PopSetSessionUserStatus
PopUserPresentOverride