ViGenericVerifyIrpStackUpward
VOID __stdcall ViGenericVerifyIrpStackUpward(
_IOV_REQUEST_PACKET *IovPacket,
_IO_STACK_LOCATION *IrpSp,
_IOV_STACK_LOCATION *RequestHeadLocationData,
_IOV_STACK_LOCATION *StackLocationData,
UINT64 IsNewlyCompleted,
UINT64 RequestFinalized){
_QWORD *v6;
VOID *v9;
unsigned int v10;
_IOV_STACK_LOCATION v11;
_VF_ERROR_ID v12;
v6 = *(_QWORD **)IovPacket;
v9 = (VOID *)*((_QWORD *)StackLocationData + 5);
v10 = *(_DWORD *)(*(_QWORD *)IovPacket + 48i64);
if( (IovPacket[14] & 0x20) != 0 )
{
v11 = RequestHeadLocationData[1];
if( (v11 & 0x1000000) == 0 )
{
if( v10 != RequestHeadLocationData[24] )
{
v12 = 571;
RequestHeadLocationData[1] = v11 | 0x1000000;
if( IrpSp->MinorFunction != 0xFF )
v12 = 531;
ViErrorReport1(v12, v9, v6);
}
if( v6[7] != *((_QWORD *)RequestHeadLocationData + 13) )
{
RequestHeadLocationData[1] |= 0x1000000u;
ViErrorReport1(532, v9, v6);
}
}
}
if( !VfMajorIsValidIrpStatus(IrpSp, v10) )
ViErrorReport6(768, v9, v6, v10);
}Referenced by:
No references.