RawSetInformation
NTSTATUS __stdcall RawSetInformation(_VCB *Vcb, _IRP *Irp, _IO_STACK_LOCATION *IrpSp){
_CCHAR v6;
int v7;
char v8;
_IRP *MasterIrp;
_FILE_OBJECT *FileObject;
__int64 v11;
RawBeginOperation((INT64)Vcb, (INT64)IrpSp->FileObject);
v7 = 0;
if( v8 )
{
MasterIrp = Irp->AssociatedIrp.MasterIrp;
FileObject = IrpSp->FileObject;
if( IrpSp->Parameters.Options == 14 )
{
LODWORD(v11) = IoGetRelatedDeviceObject((INT64)IrpSp->FileObject);
if( (*(_DWORD *)(v11 + 152) & *(_DWORD *)&MasterIrp->Type) != 0 )
v7 = -1073741811;
else
FileObject->CurrentByteOffset.QuadPart = *(_QWORD *)&MasterIrp->Type;
FileObject = IrpSp->FileObject;
}
else
{
v7 = -1073741808;
}
RawEndOperation(Vcb, FileObject);
}
else
{
v7 = -1073741202;
}
LOBYTE(v6) = 1;
Irp->IoStatus.Status = v7;
IofCompleteRequest(Irp, v6);
return v7;
}Referenced by:
RawDispatch