PopLogNotifyDevice
void __fastcall PopLogNotifyDevice(__int64 a1, __int64 a2, __int64 a3){
__int64 v6;
__int64 v7;
__int64 v8;
__int64 v9;
int v10;
UINT64 Flag;
INT64 result[2];
char v13;
char v14;
char v15;
int v16;
int v17;
WCHAR pszDest[112];
EVENT_DATA_DESCRIPTOR EventData;
memset((INT64)result, 0i64);
if( (*(_WORD *)(&PerfGlobalGroupMask + 2) & 0x8000) != 0 )
{
v6 = *(_QWORD *)(a3 + 184);
v7 = *(_QWORD *)(a1 + 8);
result[0] = a3;
result[1] = *(_QWORD *)(v7 + 24);
v14 = *(_BYTE *)(v6 - 72);
v15 = *(_BYTE *)(v6 - 71);
v16 = *(_DWORD *)(v6 - 56);
v17 = *(_DWORD *)(v6 - 48);
if( a2 )
{
v8 = *(_QWORD *)(a2 + 72);
v13 = *(_BYTE *)(a2 + 56);
if( v8 )
{
v9 = -1i64;
do
++v9;
while( *(_WORD *)(v8 + 2 * v9) );
v10 = v9;
if( (unsigned int)v9 > 0x6C )
v10 = 108;
RtlStringCchCopyW(pszDest, 0x6Dui64, (PWCHAR)(v8 + 2i64 * (unsigned int)(v9 - v10)));
goto LABEL_11;
}
}
else
{
v13 = 0;
}
pszDest[0] = 0;
v10 = 0;
LABEL_11:
EventData.Reserved = 0;
EventData.Ptr = (unsigned __int64)result;
LODWORD(Flag) = 4200450;
EventData.Size = 2 * v10 + 40;
EtwTraceKernelEvent(&EventData, 1ui64, 0x80008000ui64, 0x1226u, Flag);
}
}Referenced by:
PopNotifyDevice
PopRequestPowerIrp