PopDiagTraceFxPerfRequest
char __fastcall PopDiagTraceFxPerfRequest(__int64 *a1, unsigned int a2, __int64 a3){
void **v3;
UINT64 v7;
__int64 v8;
__int64 v9;
UINT64 UserDataCount;
EVENT_DATA_DESCRIPTOR UserData;
__int64 v13;
int v14;
int v15;
unsigned int *v16;
int v17;
int v18;
__int64 v19;
unsigned int v20;
int v21;
void *retaddr;
unsigned int v23;
v3 = &retaddr;
v23 = a2;
if( PopDiagHandleRegistered )
{
v7 = PopDiagHandle;
LOBYTE(v3) = EtwEventEnabled(
PopDiagHandle,
(EVENT_DESCRIPTOR *)&POP_ETW_EVENT_COMPONENT_PERFORMANCE_STATE_INITIATING,
(EVENT_DESCRIPTOR *)a3);
if( (_BYTE)v3 )
{
v8 = *a1;
v9 = *(_QWORD *)(*a1 + 80);
UserData.Reserved = 0;
v15 = 0;
v18 = 0;
UserData.Ptr = v9 + 48;
v13 = v8 + 16;
UserData.Size = 8;
v16 = &v23;
v3 = (void **)(16i64 * a2);
v14 = 4;
v17 = 4;
if( (unsigned __int64)v3 <= 0xFFFFFFFF )
{
v21 = 0;
v20 = 16 * a2;
v19 = a3;
LODWORD(UserDataCount) = 4;
LOBYTE(v3) = EtwWriteEx(
v7,
(EVENT_DESCRIPTOR *)&POP_ETW_EVENT_COMPONENT_PERFORMANCE_STATE_INITIATING,
0i64,
0i64,
0i64,
0i64,
UserDataCount,
&UserData);
}
}
}
return(char)v3;
}Referenced by:
PopFxIssueComponentPerfStateChanges