示例#1
0
 public IntelArchitecture(ProcessorMode mode)
 {
     this.mode = mode;
     this.flagGroups = new List<FlagGroupStorage>();
     this.InstructionBitSize = 8;
     this.CarryFlagMask = (uint)FlagM.CF;
     this.PointerType = mode.PointerType;
     this.WordWidth = mode.WordWidth;
     this.FramePointerType = mode.FramePointerType;
     this.StackRegister = mode.StackRegister;
 }
 public IntelArchitecture(ProcessorMode mode)
 {
     this.mode               = mode;
     this.flagGroups         = new List <FlagGroupStorage>();
     this.InstructionBitSize = 8;
     this.CarryFlagMask      = (uint)FlagM.CF;
     this.PointerType        = mode.PointerType;
     this.WordWidth          = mode.WordWidth;
     this.FramePointerType   = mode.FramePointerType;
     this.StackRegister      = mode.StackRegister;
 }
示例#3
0
 public IntelArchitecture(string archId, ProcessorMode mode) : base(archId)
 {
     this.mode               = mode;
     this.flagGroups         = new List <FlagGroupStorage>();
     this.Endianness         = EndianServices.Little;
     this.InstructionBitSize = 8;
     this.CarryFlagMask      = (uint)FlagM.CF;
     this.PointerType        = mode.PointerType;
     this.WordWidth          = mode.WordWidth;
     this.FramePointerType   = mode.FramePointerType;
     this.StackRegister      = mode.StackRegister;
     this.Options            = new X86Options();
 }
示例#4
0
 /// <summary>
 /// Creates a disassember that uses the specified reader to fetch bytes from the program image.
 /// </summary>
 /// <param name="width">Default address and data widths. PrimitiveType.Word16 for
 /// 16-bit operation, PrimitiveType.Word32 for 32-bit operation.</param>
 public X86Disassembler(
     ProcessorMode mode,
     ImageReader rdr,
     PrimitiveType defaultWordSize,
     PrimitiveType defaultAddressSize,
     bool useRexPrefix)
 {
     this.mode                = mode;
     this.rdr                 = rdr;
     this.defaultDataWidth    = defaultWordSize;
     this.defaultAddressWidth = defaultAddressSize;
     this.useRexPrefix        = useRexPrefix;
 }
示例#5
0
 /// <summary>
 /// Creates a disassembler that uses the specified reader to fetch bytes from the program image.
 /// </summary>
 /// <param name="width">Default address and data widths. PrimitiveType.Word16 for
 /// 16-bit operation, PrimitiveType.Word32 for 32-bit operation.</param>
 public X86Disassembler(
     ProcessorMode mode,
     EndianImageReader rdr,
     PrimitiveType defaultWordSize,
     PrimitiveType defaultAddressSize,
     bool useRexPrefix)
 {
     this.mode                       = mode;
     this.rdr                        = rdr;
     this.defaultDataWidth           = defaultWordSize;
     this.defaultAddressWidth        = defaultAddressSize;
     this.isRegisterExtensionEnabled = useRexPrefix;
     this.currentDecodingContext     = new X86InstructionDecodeInfo();
 }
示例#6
0
 public IntelArchitecture(IServiceProvider services, string archId, ProcessorMode mode) : base(services, archId)
 {
     this.mode               = mode;
     this.flagGroupCache     = new Dictionary <uint, FlagGroupStorage>();
     this.Endianness         = EndianServices.Little;
     this.InstructionBitSize = 8;
     this.CarryFlagMask      = (uint)FlagM.CF;
     this.PointerType        = mode.PointerType;
     this.WordWidth          = mode.WordWidth;
     this.FramePointerType   = mode.FramePointerType;
     this.StackRegister      = mode.StackRegister;
     this.FpuStackRegister   = Registers.Top;
     this.Options            = new X86Options();
 }
示例#7
0
 public IntelArchitecture(IServiceProvider services, string archId, ProcessorMode mode, Dictionary <string, object> options)
     : base(services, archId, options)
 {
     this.mode               = mode;
     this.Endianness         = EndianServices.Little;
     this.InstructionBitSize = 8;
     this.CarryFlagMask      = (uint)FlagM.CF;
     this.PointerType        = mode.PointerType;
     this.WordWidth          = mode.WordWidth;
     this.FramePointerType   = mode.FramePointerType;
     this.StackRegister      = mode.StackRegister;
     this.FpuStackRegister   = Registers.Top;
     this.Options            = options;
     this.LoadUserOptions(options);
 }
		public IntelArchitecture(ProcessorMode mode)
		{
			this.mode = mode;
            this.flagGroups = new List<FlagGroupStorage>();
		}
示例#9
0
 public IntelArchitecture(ProcessorMode mode)
 {
     this.mode       = mode;
     this.flagGroups = new List <FlagGroupStorage>();
 }