EtwpTraceOpticalIoInit
VOID __stdcall EtwpTraceOpticalIoInit(_IRP *Irp){
unsigned __int8 MajorFunction;
_CDB *ScsiPassThroughCdb;
char v4;
UINT16 v5;
_ETHREAD *Thread;
int UniqueThread;
_IRP *v8;
int v9;
int v10;
_IRP **v11;
int v12;
int v13;
v10 = 0;
MajorFunction = Irp->Tail.CurrentStackLocation->MajorFunction;
if( MajorFunction == 3 )
goto LABEL_11;
if( MajorFunction == 4 )
goto LABEL_10;
if( MajorFunction != 9 )
{
if( MajorFunction != 14 )
return;
ScsiPassThroughCdb = EtwpGetScsiPassThroughCdb(Irp);
if( !ScsiPassThroughCdb )
return;
v4 = *(_BYTE *)ScsiPassThroughCdb;
if( ((*(_BYTE *)ScsiPassThroughCdb - 40) & 0x7F) != 0 )
{
if( ((v4 - 42) & 0x7F) != 0 )
{
if( v4 != 53 )
return;
goto LABEL_9;
}
LABEL_10:
v5 = 315;
goto LABEL_12;
}
LABEL_11:
v5 = 314;
goto LABEL_12;
}
LABEL_9:
v5 = 316;
LABEL_12:
Thread = Irp->Tail.Thread;
v8 = Irp;
if( Thread )
UniqueThread = (int)Thread->Cid.UniqueThread;
else
UniqueThread = -1;
v13 = 0;
v11 = &v8;
v9 = UniqueThread;
v12 = 12;
EtwTraceKernelEvent((__int64)&v11, 1u, 0x80000002, v5, 0x501903u);
}Referenced by:
No references.