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