Ejemplo n.º 1
0
 public void IMul16(X86Address dest, X86Register16 src)
 {
     writer.Write(new byte[] { 0x66, 0x01 });
     dest.Emit(writer, src);
 }
Ejemplo n.º 2
0
 public void IMul32(X86Address dest, X86Register32 src)
 {
     writer.Write(new byte[] { 0x01 });
     dest.Emit(writer, src);
 }
Ejemplo n.º 3
0
 public void Mul32(X86Address src)
 {
     writer.Write(new byte[] { 0xF7 });
     src.Emit(writer, (X86Register8)4);
 }
Ejemplo n.º 4
0
 public void IMul8(X86Address dest, X86Register8 src)
 {
     writer.Write(new byte[] { 0x00 });
     dest.Emit(writer, src);
 }
Ejemplo n.º 5
0
 public void IMul8(X86Address dest, Byte value)
 {
     this.writer.Write(new byte[] { 0x80 });
     dest.Emit(writer, X86Register32.None);
     writer.Write(value);
 }
Ejemplo n.º 6
0
 public void IMul32(X86Address dest, Int32 value)
 {
     this.writer.Write(new byte[] { 0x81 });
     dest.Emit(writer, X86Register32.None);
     writer.Write(value);
 }
Ejemplo n.º 7
0
 public void Pop32(X86Address addr)
 {
     writer.Write(new byte[] { 0x8F });
     addr.Emit(writer, (X86Register8)0);
 }
Ejemplo n.º 8
0
 public void Push32(X86Address addr)
 {
     writer.Write(new byte[] { 0xFF });
     addr.Emit(writer, (X86Register8)6);
 }
Ejemplo n.º 9
0
 public void Sub16(X86Address dest, Int16 value)
 {
     this.writer.Write(new byte[] { 0x66, 0x81 });
     dest.Emit(writer, (X86Register32)5);
     writer.Write(value);
 }
Ejemplo n.º 10
0
 public void Not32(X86Address dest)
 {
     writer.Write(new byte[] { 0xF7 });
     dest.Emit(writer, (X86Register8)2);
 }
Ejemplo n.º 11
0
 public void Sub8(X86Address dest, Byte value)
 {
     this.writer.Write(new byte[] { 0x80 });
     dest.Emit(writer, (X86Register32)5);
     writer.Write(value);
 }
Ejemplo n.º 12
0
 public void Sub32(X86Register32 dest, X86Address src)
 {
     writer.Write(new byte[] { 0x2B });
     src.Emit(writer, dest);
 }
Ejemplo n.º 13
0
 public void Sbb32(X86Address dest, Int32 value)
 {
     this.writer.Write(new byte[] { 0x81 });
     dest.Emit(writer, (X86Register32)3);
     writer.Write(value);
 }
Ejemplo n.º 14
0
 public void IMul8(X86Register8 dest, X86Address src)
 {
     writer.Write(new byte[] { 0x02 });
     src.Emit(writer, dest);
 }
Ejemplo n.º 15
0
 public void Call_Far(X86Address address)
 {
     this.writer.Write(new byte[] { 0xFF });
     address.Emit(writer, (X86Register32)0x3);
 }
Ejemplo n.º 16
0
 public void IMul16(X86Register16 dest, X86Address src)
 {
     writer.Write(new byte[] { 0x66, 0x03 });
     src.Emit(writer, dest);
 }
Ejemplo n.º 17
0
 public void CmpXChg32(X86Address dest, X86Register32 src)
 {
     writer.Write(new byte[] { 0x0F, 0xB1 });
     dest.Emit(writer, src);
 }