public Encode ( Engine engine, string target ) : bool | ||
engine | Engine | The engine. |
target | string | The target. |
return | bool |
public void AAD_imm8 () { // AAD 0xd // AAD (0xd) MemoryStream memoryStream = new MemoryStream (); Assembly asm = new Assembly (); asm.AAD (0xd); asm.Encode (memoryStream); byte [] target = new byte [] { 0xd5, 0xd }; Assert.IsTrue (CompareData (memoryStream, target), "'AAD 0xd' failed."); }
public void AAA () { // AAA // AAA () MemoryStream memoryStream = new MemoryStream (); Assembly asm = new Assembly (); asm.AAA (); asm.Encode (memoryStream); byte [] target = new byte [] { 0x37 }; Assert.IsTrue (CompareData (memoryStream, target), "'AAA' failed."); }
public void OR_mem32_imm32 () { // OR DWord [CS:EBP + EAX*8], 0xbeab706 // OR (new DWordMemory(Seg.CS, R32.EBP, R32.EAX, 3), 0xbeab706) MemoryStream memoryStream = new MemoryStream (); Assembly asm = new Assembly (); asm.OR (new DWordMemory (Seg.CS, R32.EBP, R32.EAX, 3), 0xbeab706); asm.Encode (memoryStream); byte [] target = new byte [] { 0x2e, 0x81, 0x4c, 0xc5, 0x0, 0x6, 0xb7, 0xea, 0xb }; Assert.IsTrue (CompareData (memoryStream, target), "'OR DWord [CS:EBP + EAX*8], 0xbeab706' failed."); }
public void OR_mem8_imm8 () { // OR Byte [SS:0x12345678], 0x7 // OR (new ByteMemory(Seg.SS, null, null, 0, 0x12345678), 0x7) MemoryStream memoryStream = new MemoryStream (); Assembly asm = new Assembly (); asm.OR (new ByteMemory (Seg.SS, null, null, 0, 0x12345678), 0x7); asm.Encode (memoryStream); byte [] target = new byte [] { 0x36, 0x80, 0xd, 0x78, 0x56, 0x34, 0x12, 0x7 }; Assert.IsTrue (CompareData (memoryStream, target), "'OR Byte [SS:0x12345678], 0x7' failed."); }
public void OR_reg16_mem16 () { // OR DX, [EDI + 0x12345678] // OR (R16.DX, new WordMemory(null, R32.EDI, null, 0, 0x12345678)) MemoryStream memoryStream = new MemoryStream (); Assembly asm = new Assembly (); asm.OR (R16.DX, new WordMemory (null, R32.EDI, null, 0, 0x12345678)); asm.Encode (memoryStream); byte [] target = new byte [] { 0x66, 0xb, 0x97, 0x78, 0x56, 0x34, 0x12 }; Assert.IsTrue (CompareData (memoryStream, target), "'OR DX, [EDI + 0x12345678]' failed."); }
public void OR_mem32_reg32 () { // OR [CS:EAX + EBX*2], EDI // OR (new DWordMemory(Seg.CS, R32.EAX, R32.EBX, 1), R32.EDI) MemoryStream memoryStream = new MemoryStream (); Assembly asm = new Assembly (); asm.OR (new DWordMemory (Seg.CS, R32.EAX, R32.EBX, 1), R32.EDI); asm.Encode (memoryStream); byte [] target = new byte [] { 0x2e, 0x9, 0x3c, 0x58 }; Assert.IsTrue (CompareData (memoryStream, target), "'OR [CS:EAX + EBX*2], EDI' failed."); }
public void OR_mem16_reg16 () { // OR [ES:EDI*2], DX // OR (new WordMemory(Seg.ES, null, R32.EDI, 1), R16.DX) MemoryStream memoryStream = new MemoryStream (); Assembly asm = new Assembly (); asm.OR (new WordMemory (Seg.ES, null, R32.EDI, 1), R16.DX); asm.Encode (memoryStream); byte [] target = new byte [] { 0x26, 0x66, 0x9, 0x14, 0x3f }; Assert.IsTrue (CompareData (memoryStream, target), "'OR [ES:EDI*2], DX' failed."); }
public void NOT_rmreg32 () { // NOT EDX // NOT (R32.EDX) MemoryStream memoryStream = new MemoryStream (); Assembly asm = new Assembly (); asm.NOT (R32.EDX); asm.Encode (memoryStream); byte [] target = new byte [] { 0xf7, 0xd2 }; Assert.IsTrue (CompareData (memoryStream, target), "'NOT EDX' failed."); }
public void NEG_rmreg8 () { // NEG AH // NEG (R8.AH) MemoryStream memoryStream = new MemoryStream (); Assembly asm = new Assembly (); asm.NEG (R8.AH); asm.Encode (memoryStream); byte [] target = new byte [] { 0xf6, 0xdc }; Assert.IsTrue (CompareData (memoryStream, target), "'NEG AH' failed."); }
public void NEG_mem32 () { // NEG DWord [CS:0x12345678] // NEG (new DWordMemory(Seg.CS, null, null, 0, 0x12345678)) MemoryStream memoryStream = new MemoryStream (); Assembly asm = new Assembly (); asm.NEG (new DWordMemory (Seg.CS, null, null, 0, 0x12345678)); asm.Encode (memoryStream); byte [] target = new byte [] { 0x2e, 0xf7, 0x1d, 0x78, 0x56, 0x34, 0x12 }; Assert.IsTrue (CompareData (memoryStream, target), "'NEG DWord [CS:0x12345678]' failed."); }
public void NEG_mem16 () { // NEG Word [EDX + EAX*4 + 0x12345678] // NEG (new WordMemory(null, R32.EDX, R32.EAX, 2, 0x12345678)) MemoryStream memoryStream = new MemoryStream (); Assembly asm = new Assembly (); asm.NEG (new WordMemory (null, R32.EDX, R32.EAX, 2, 0x12345678)); asm.Encode (memoryStream); byte [] target = new byte [] { 0x66, 0xf7, 0x9c, 0x82, 0x78, 0x56, 0x34, 0x12 }; Assert.IsTrue (CompareData (memoryStream, target), "'NEG Word [EDX + EAX*4 + 0x12345678]' failed."); }
public void MUL_rmreg32 () { // MUL ECX // MUL (R32.ECX) MemoryStream memoryStream = new MemoryStream (); Assembly asm = new Assembly (); asm.MUL (R32.ECX); asm.Encode (memoryStream); byte [] target = new byte [] { 0xf7, 0xe1 }; Assert.IsTrue (CompareData (memoryStream, target), "'MUL ECX' failed."); }
public void MUL_rmreg16 () { // MUL SI // MUL (R16.SI) MemoryStream memoryStream = new MemoryStream (); Assembly asm = new Assembly (); asm.MUL (R16.SI); asm.Encode (memoryStream); byte [] target = new byte [] { 0x66, 0xf7, 0xe6 }; Assert.IsTrue (CompareData (memoryStream, target), "'MUL SI' failed."); }
public void MUL_rmreg8 () { // MUL AH // MUL (R8.AH) MemoryStream memoryStream = new MemoryStream (); Assembly asm = new Assembly (); asm.MUL (R8.AH); asm.Encode (memoryStream); byte [] target = new byte [] { 0xf6, 0xe4 }; Assert.IsTrue (CompareData (memoryStream, target), "'MUL AH' failed."); }
public void MUL_mem32 () { // MUL DWord [FS:ESI + ESI*8] // MUL (new DWordMemory(Seg.FS, R32.ESI, R32.ESI, 3)) MemoryStream memoryStream = new MemoryStream (); Assembly asm = new Assembly (); asm.MUL (new DWordMemory (Seg.FS, R32.ESI, R32.ESI, 3)); asm.Encode (memoryStream); byte [] target = new byte [] { 0x64, 0xf7, 0x24, 0xf6 }; Assert.IsTrue (CompareData (memoryStream, target), "'MUL DWord [FS:ESI + ESI*8]' failed."); }
public void NOT_rmreg8 () { // NOT CL // NOT (R8.CL) MemoryStream memoryStream = new MemoryStream (); Assembly asm = new Assembly (); asm.NOT (R8.CL); asm.Encode (memoryStream); byte [] target = new byte [] { 0xf6, 0xd1 }; Assert.IsTrue (CompareData (memoryStream, target), "'NOT CL' failed."); }
public void NOT_rmreg16 () { // NOT BX // NOT (R16.BX) MemoryStream memoryStream = new MemoryStream (); Assembly asm = new Assembly (); asm.NOT (R16.BX); asm.Encode (memoryStream); byte [] target = new byte [] { 0x66, 0xf7, 0xd3 }; Assert.IsTrue (CompareData (memoryStream, target), "'NOT BX' failed."); }
public void NEG_rmreg16 () { // NEG SP // NEG (R16.SP) MemoryStream memoryStream = new MemoryStream (); Assembly asm = new Assembly (); asm.NEG (R16.SP); asm.Encode (memoryStream); byte [] target = new byte [] { 0x66, 0xf7, 0xdc }; Assert.IsTrue (CompareData (memoryStream, target), "'NEG SP' failed."); }
public void OR_mem8_reg8 () { // OR [ES:ESI + EDX*1], CL // OR (new ByteMemory(Seg.ES, R32.ESI, R32.EDX, 0), R8.CL) MemoryStream memoryStream = new MemoryStream (); Assembly asm = new Assembly (); asm.OR (new ByteMemory (Seg.ES, R32.ESI, R32.EDX, 0), R8.CL); asm.Encode (memoryStream); byte [] target = new byte [] { 0x26, 0x8, 0xc, 0x16 }; Assert.IsTrue (CompareData (memoryStream, target), "'OR [ES:ESI + EDX*1], CL' failed."); }
public void BSF_reg16_mem16 () { // BSF SI, [ESI + 0x12345678] // BSF (R16.SI, new WordMemory(null, R32.ESI, null, 0, 0x12345678)) MemoryStream memoryStream = new MemoryStream (); Assembly asm = new Assembly (); asm.BSF (R16.SI, new WordMemory (null, R32.ESI, null, 0, 0x12345678)); asm.Encode (memoryStream); byte [] target = new byte [] { 0x66, 0xf, 0xbc, 0xb6, 0x78, 0x56, 0x34, 0x12 }; Assert.IsTrue (CompareData (memoryStream, target), "'BSF SI, [ESI + 0x12345678]' failed."); }
public void BSF_reg32_mem32 () { // BSF ESI, [ES:0x12345678] // BSF (R32.ESI, new DWordMemory(Seg.ES, null, null, 0, 0x12345678)) MemoryStream memoryStream = new MemoryStream (); Assembly asm = new Assembly (); asm.BSF (R32.ESI, new DWordMemory (Seg.ES, null, null, 0, 0x12345678)); asm.Encode (memoryStream); byte [] target = new byte [] { 0x26, 0xf, 0xbc, 0x35, 0x78, 0x56, 0x34, 0x12 }; Assert.IsTrue (CompareData (memoryStream, target), "'BSF ESI, [ES:0x12345678]' failed."); }
public void NEG_rmreg32 () { // NEG ESI // NEG (R32.ESI) MemoryStream memoryStream = new MemoryStream (); Assembly asm = new Assembly (); asm.NEG (R32.ESI); asm.Encode (memoryStream); byte [] target = new byte [] { 0xf7, 0xde }; Assert.IsTrue (CompareData (memoryStream, target), "'NEG ESI' failed."); }
public void OR_reg8_mem8 () { // OR AL, [GS:0x12345678] // OR (R8.AL, new ByteMemory(Seg.GS, null, null, 0, 0x12345678)) MemoryStream memoryStream = new MemoryStream (); Assembly asm = new Assembly (); asm.OR (R8.AL, new ByteMemory (Seg.GS, null, null, 0, 0x12345678)); asm.Encode (memoryStream); byte [] target = new byte [] { 0x65, 0xa, 0x5, 0x78, 0x56, 0x34, 0x12 }; Assert.IsTrue (CompareData (memoryStream, target), "'OR AL, [GS:0x12345678]' failed."); }
public void NOP () { // NOP // NOP () MemoryStream memoryStream = new MemoryStream (); Assembly asm = new Assembly (); asm.NOP (); asm.Encode (memoryStream); byte [] target = new byte [] { 0x90 }; Assert.IsTrue (CompareData (memoryStream, target), "'NOP' failed."); }
public void OR_reg32_mem32 () { // OR EBX, [0x12345678] // OR (R32.EBX, new DWordMemory(null, null, null, 0, 0x12345678)) MemoryStream memoryStream = new MemoryStream (); Assembly asm = new Assembly (); asm.OR (R32.EBX, new DWordMemory (null, null, null, 0, 0x12345678)); asm.Encode (memoryStream); byte [] target = new byte [] { 0xb, 0x1d, 0x78, 0x56, 0x34, 0x12 }; Assert.IsTrue (CompareData (memoryStream, target), "'OR EBX, [0x12345678]' failed."); }
public void NOT_mem8 () { // NOT Byte [ESP + EBP*8] // NOT (new ByteMemory(null, R32.ESP, R32.EBP, 3)) MemoryStream memoryStream = new MemoryStream (); Assembly asm = new Assembly (); asm.NOT (new ByteMemory (null, R32.ESP, R32.EBP, 3)); asm.Encode (memoryStream); byte [] target = new byte [] { 0xf6, 0x14, 0xec }; Assert.IsTrue (CompareData (memoryStream, target), "'NOT Byte [ESP + EBP*8]' failed."); }
public void OR_mem16_imm16 () { // OR Word [CS:0x12345678], 0xe6a // OR (new WordMemory(Seg.CS, null, null, 0, 0x12345678), 0xe6a) MemoryStream memoryStream = new MemoryStream (); Assembly asm = new Assembly (); asm.OR (new WordMemory (Seg.CS, null, null, 0, 0x12345678), 0xe6a); asm.Encode (memoryStream); byte [] target = new byte [] { 0x2e, 0x66, 0x81, 0xd, 0x78, 0x56, 0x34, 0x12, 0x6a, 0xe }; Assert.IsTrue (CompareData (memoryStream, target), "'OR Word [CS:0x12345678], 0xe6a' failed."); }
public void NOT_mem16 () { // NOT Word [DS:EDX*4] // NOT (new WordMemory(Seg.DS, null, R32.EDX, 2)) MemoryStream memoryStream = new MemoryStream (); Assembly asm = new Assembly (); asm.NOT (new WordMemory (Seg.DS, null, R32.EDX, 2)); asm.Encode (memoryStream); byte [] target = new byte [] { 0x3e, 0x66, 0xf7, 0x14, 0x95, 0x0, 0x0, 0x0, 0x0 }; Assert.IsTrue (CompareData (memoryStream, target), "'NOT Word [DS:EDX*4]' failed."); }
public void OR_mem16_imm8 () { // OR Word [EBX + EDI*2], 0x5 // OR (new WordMemory(null, R32.EBX, R32.EDI, 1), 0x5) MemoryStream memoryStream = new MemoryStream (); Assembly asm = new Assembly (); asm.OR (new WordMemory (null, R32.EBX, R32.EDI, 1), 0x5); asm.Encode (memoryStream); byte [] target = new byte [] { 0x66, 0x83, 0xc, 0x7b, 0x5 }; Assert.IsTrue (CompareData (memoryStream, target), "'OR Word [EBX + EDI*2], 0x5' failed."); }
public void NOT_mem32 () { // NOT DWord [FS:EDI*1] // NOT (new DWordMemory(Seg.FS, null, R32.EDI, 0)) MemoryStream memoryStream = new MemoryStream (); Assembly asm = new Assembly (); asm.NOT (new DWordMemory (Seg.FS, null, R32.EDI, 0)); asm.Encode (memoryStream); byte [] target = new byte [] { 0x64, 0xf7, 0x17 }; Assert.IsTrue (CompareData (memoryStream, target), "'NOT DWord [FS:EDI*1]' failed."); }