PopDiagTraceDeviceAcquireIrp

VOID __stdcall PopDiagTraceDeviceAcquireIrp(_IRP *Irp, _DEVICE_OBJECT *DeviceObject){
  UINT64 v3; 
  NTSTATUS v4; 
  wchar_t *v5; 
  __int64 v6; 
  _DEVICE_OBJECT *v7; 
  _EVENT_DATA_DESCRIPTOR UserData; 
  _DEVICE_OBJECT **v9; 
  __int64 v10; 
  wchar_t *v11; 
  int v12; 
  int v13; 
  wchar_t DriverName[64]; 
  _IRP *v15; 

  v15 = Irp;
  v7 = DeviceObject;
  if( PopDiagHandleRegistered && EtwEventEnabled(PopDiagHandle, &POP_ETW_EVENT_IRP_DRIVERACQUIRE) )
  {
    v4 = PopDiagGetDriverName(DeviceObject, DriverName, v3);
    *(_QWORD *)&UserData.Size = 8i64;
    v10 = 8i64;
    v5 = DriverName;
    if( v4 < 0 )
      v5 = (wchar_t *)&ppszDestEnd;
    UserData.Ptr = (unsigned __int64)&v15;
    v9 = &v7;
    v6 = -1i64;
    v11 = v5;
    do
      ++v6;
    while( v5[v6] );
    v12 = 2 * v6 + 2;
    v13 = 0;
    EtwWriteEx(PopDiagHandle, &POP_ETW_EVENT_IRP_DRIVERACQUIRE, 0i64, 0, 0, 0, 3u, &UserData);
  }
}

Referenced by:

PoDeviceAcquireIrp