PopDirectedDripsSendSuspendResumeNotification
INT64 __fastcall PopDirectedDripsSendSuspendResumeNotification(CHAR a1, INT64 a2, INT64 a3, INT64 a4){
char v4;
INT64 result;
void *i;
INT64 v7;
INT64 v8;
INT64 v9;
INT64 v10;
__int128 a1a;
__int64 v12;
v4 = a2;
if( a1 )
{
for( i = 0i64; ; i = (void *)v10 )
{
LODWORD(result) = MmGetNextSession(i);
v10 = result;
if( !result )
break;
v12 = 0i64;
LODWORD(v12) = MmGetSessionId(result);
BYTE4(v12) = v4;
*(_WORD *)((char *)&v12 + 5) = 1;
PopSuspendResumeInvocation((BYTE *)&v12, v7, v8, v9);
}
}
else
{
v12 = 0i64;
BYTE4(v12) = a2;
PopSuspendResumeInvocation((BYTE *)&v12, a2, a3, a4);
a1a = 0i64;
if( v4 )
{
*(_QWORD *)&a1a = 0x400000000i64;
WORD6(a1a) = 256;
}
else
{
*(_QWORD *)&a1a = 0x1200000003i64;
WORD6(a1a) = 1;
PopUmpoSendLegacyEvent(&a1a);
DWORD1(a1a) = 7;
}
return PopUmpoSendLegacyEvent(&a1a);
}
return result;
}Referenced by:
PopDirectedDripsNotifyAppsAndServices