public void Fstsw_Setup() { arch = new X86ArchitectureFlat32(); asm = new X86Assembler(null, new DefaultPlatform(null, new X86ArchitectureFlat32()), Address.Ptr32(0x10000), new List <ImageSymbol>()); Procedure proc = new Procedure("test", arch.CreateFrame()); orw = new OperandRewriter32(arch, new ExpressionEmitter(), proc.Frame, null); emitter = new ProcedureBuilder(); }
public void Fstsw_Setup() { arch = new X86ArchitectureFlat32(new ServiceContainer(), "x86-protected-32", new Dictionary <string, object>()); asm = new X86Assembler(arch, Address.Ptr32(0x10000), new List <ImageSymbol>()); Procedure proc = new Procedure(arch, "test", Address.Ptr32(0x00123400), arch.CreateFrame()); orw = new OperandRewriter32(arch, new ExpressionEmitter(), proc.Frame, null); emitter = new ProcedureBuilder(); }
public void Fstsw_Setup() { arch = new IntelArchitecture(ProcessorMode.Protected32); asm = new X86Assembler(arch, Address.Ptr32(0x10000), new List <EntryPoint>()); Procedure proc = new Procedure("test", arch.CreateFrame()); orw = new OperandRewriter32(arch, proc.Frame, null); emitter = new ProcedureBuilder(); }
public void M68korw_MemOp() { var orw = new OperandRewriter( arch, new RtlEmitter(new List <RtlInstruction>()), new Frame(arch.FramePointerType), PrimitiveType.Byte); var exp = orw.RewriteSrc(new MemoryOperand(PrimitiveType.Byte, Registers.a1, Constant.Int16(4)), addrInstr); var ea = (BinaryExpression)((MemoryAccess)exp).EffectiveAddress; Assert.AreEqual(ea.Left.DataType.Size, ea.Right.DataType.Size); }
public void Setup() { prog = new Program(); prog.Image = new LoadedImage(Address.Ptr32(0x10000), new byte[4]); var procAddress = Address.Ptr32(0x10000000); instr = new X86Instruction(Opcode.nop, PrimitiveType.Word32, PrimitiveType.Word32) { Address = procAddress, }; proc = Procedure.Create(procAddress, arch.CreateFrame()); state = (X86State)arch.CreateProcessorState(); orw = new OperandRewriter32(arch, proc.Frame, new FakeRewriterHost(prog)); }
public void Setup() { var mem = new ByteMemoryArea(Address.Ptr32(0x10000), new byte[4]); program = new Program { SegmentMap = new SegmentMap( mem.BaseAddress, new ImageSegment(".text", mem, AccessMode.ReadExecute)) }; var procAddress = Address.Ptr32(0x10000000); instr = new X86Instruction(Mnemonic.nop, InstrClass.Linear, PrimitiveType.Word32, PrimitiveType.Word32) { Address = procAddress, }; proc = Procedure.Create(arch, procAddress, arch.CreateFrame()); orw = new OperandRewriter32(arch, new ExpressionEmitter(), proc.Frame, new FakeRewriterHost(program)); }
public void Setup() { var mem = new MemoryArea(Address.Ptr32(0x10000), new byte[4]); program = new Program { SegmentMap = new SegmentMap( mem.BaseAddress, new ImageSegment(".text", mem, AccessMode.ReadExecute)) }; var procAddress = Address.Ptr32(0x10000000); instr = new X86Instruction(Opcode.nop, PrimitiveType.Word32, PrimitiveType.Word32) { Address = procAddress, }; proc = Procedure.Create(procAddress, arch.CreateFrame()); state = (X86State)arch.CreateProcessorState(); orw = new OperandRewriter32(arch, proc.Frame, new FakeRewriterHost(program)); }
public void Setup() { arch = new IntelArchitecture(ProcessorMode.Real); var image = new LoadedImage(Address.Ptr32(0x10000), new byte[4]); var prog = new Program( image, image.CreateImageMap(), arch, null); var procAddress = Address.Ptr32(0x10000000); instr = new X86Instruction(Opcode.nop, PrimitiveType.Word16, PrimitiveType.Word16) { Address = procAddress, }; proc = Procedure.Create(procAddress, arch.CreateFrame()); orw = new OperandRewriter16(arch, proc.Frame, new FakeRewriterHost(prog)); state = (X86State)arch.CreateProcessorState(); }
public void Setup() { arch = new X86ArchitectureReal("x86-real-16"); var mem = new MemoryArea(Address.Ptr32(0x10000), new byte[4]); var program = new Program( new SegmentMap( mem.BaseAddress, new ImageSegment( "code", mem, AccessMode.ReadWriteExecute)), arch, new DefaultPlatform(null, arch)); var procAddress = Address.Ptr32(0x10000000); instr = new X86Instruction(Mnemonic.nop, InstrClass.Linear, PrimitiveType.Word16, PrimitiveType.Word16) { Address = procAddress, }; proc = Procedure.Create(arch, procAddress, arch.CreateFrame()); orw = new OperandRewriter16(arch, new ExpressionEmitter(), proc.Frame, new FakeRewriterHost(program)); state = (X86State)arch.CreateProcessorState(); }
public StringInstructionRewriter(IntelArchitecture arch, OperandRewriter orw) { this.arch = arch; this.orw = orw; }