PnpDiagnosticTraceDeviceOperation

NTSTATUS __fastcall PnpDiagnosticTraceDeviceOperation(
        PCEVENT_DESCRIPTOR EventDescriptor,
        unsigned __int16 *a2,
        int a3,
        __int64 a4,
        char a5){
  unsigned __int16 v6; 
  unsigned __int16 v7; 
  __int64 v8; 
  __int16 v10; 
  unsigned __int16 v11; 
  _EVENT_DATA_DESCRIPTOR UserData; 
  __int64 v13; 
  int v14; 
  int v15; 
  int *v16; 
  __int64 v17; 
  __int16 *v18; 
  __int64 v19; 
  __int64 v20; 
  int v21; 
  int v22; 
  char *v23; 
  __int64 v24; 
  int v25; 

  v25 = a3;
  *(_QWORD *)&UserData.Size = 2i64;
  v15 = 0;
  v6 = *a2;
  v14 = *a2;
  v10 = v6 >> 1;
  UserData.Ptr = (unsigned __int64)&v10;
  v13 = *((_QWORD *)a2 + 1);
  v16 = &v25;
  v17 = 4i64;
  if( a4 )
    v7 = *(_WORD *)a4 >> 1;
  else
    v7 = 0;
  v11 = v7;
  v18 = (__int16 *)&v11;
  v19 = 2i64;
  if( a4 )
    v8 = *(_QWORD *)(a4 + 8);
  else
    v8 = 0i64;
  v20 = v8;
  v21 = 2 * v7;
  v22 = 0;
  v23 = &a5;
  v24 = 4i64;
  return PnpDiagnosticTrace(EventDescriptor, 6u, &UserData);
}

Referenced by:

PipCallDriverAddDeviceQueryRoutine
PnpQueueQueryAndRemoveEvent
PnpTraceStartDevice