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