public void BTR_rmreg32_reg32 () { // BTR EBX, ECX // BTR (R32.EBX, R32.ECX) MemoryStream memoryStream = new MemoryStream (); Assembly asm = new Assembly (); asm.BTR (R32.EBX, R32.ECX); asm.Encode (memoryStream); byte [] target = new byte [] { 0xf, 0xb3, 0xcb }; Assert.IsTrue (CompareData (memoryStream, target), "'BTR EBX, ECX' failed."); }
public void BTR_rmreg32_imm8 () { // BTR EDI, 0xb // BTR (R32.EDI, 0xb) MemoryStream memoryStream = new MemoryStream (); Assembly asm = new Assembly (); asm.BTR (R32.EDI, 0xb); asm.Encode (memoryStream); byte [] target = new byte [] { 0xf, 0xba, 0xf7, 0xb }; Assert.IsTrue (CompareData (memoryStream, target), "'BTR EDI, 0xb' failed."); }
public void BTR_rmreg16_reg16 () { // BTR BP, SI // BTR (R16.BP, R16.SI) MemoryStream memoryStream = new MemoryStream (); Assembly asm = new Assembly (); asm.BTR (R16.BP, R16.SI); asm.Encode (memoryStream); byte [] target = new byte [] { 0x66, 0xf, 0xb3, 0xf5 }; Assert.IsTrue (CompareData (memoryStream, target), "'BTR BP, SI' failed."); }
public void BTR_mem32_imm8 () { // BTR DWord [SS:EBX + ECX*1 + 0x12345678], 0x0 // BTR (new DWordMemory(Seg.SS, R32.EBX, R32.ECX, 0, 0x12345678), 0x0) MemoryStream memoryStream = new MemoryStream (); Assembly asm = new Assembly (); asm.BTR (new DWordMemory (Seg.SS, R32.EBX, R32.ECX, 0, 0x12345678), 0x0); asm.Encode (memoryStream); byte [] target = new byte [] { 0x36, 0xf, 0xba, 0xb4, 0xb, 0x78, 0x56, 0x34, 0x12, 0x0 }; Assert.IsTrue (CompareData (memoryStream, target), "'BTR DWord [SS:EBX + ECX*1 + 0x12345678], 0x0' failed."); }
public void BTR_mem16_imm8 () { // BTR Word [EDI*4 + 0x12345678], 0xf // BTR (new WordMemory(null, null, R32.EDI, 2, 0x12345678), 0xf) MemoryStream memoryStream = new MemoryStream (); Assembly asm = new Assembly (); asm.BTR (new WordMemory (null, null, R32.EDI, 2, 0x12345678), 0xf); asm.Encode (memoryStream); byte [] target = new byte [] { 0x66, 0xf, 0xba, 0x34, 0xbd, 0x78, 0x56, 0x34, 0x12, 0xf }; Assert.IsTrue (CompareData (memoryStream, target), "'BTR Word [EDI*4 + 0x12345678], 0xf' failed."); }
public void BTR_mem32_reg32 () { // BTR [EBX + 0x12345678], EDX // BTR (new DWordMemory(null, R32.EBX, null, 0, 0x12345678), R32.EDX) MemoryStream memoryStream = new MemoryStream (); Assembly asm = new Assembly (); asm.BTR (new DWordMemory (null, R32.EBX, null, 0, 0x12345678), R32.EDX); asm.Encode (memoryStream); byte [] target = new byte [] { 0xf, 0xb3, 0x93, 0x78, 0x56, 0x34, 0x12 }; Assert.IsTrue (CompareData (memoryStream, target), "'BTR [EBX + 0x12345678], EDX' failed."); }
public void BTR_mem16_reg16 () { // BTR [SS:EAX + 0x12345678], CX // BTR (new WordMemory(Seg.SS, R32.EAX, null, 0, 0x12345678), R16.CX) MemoryStream memoryStream = new MemoryStream (); Assembly asm = new Assembly (); asm.BTR (new WordMemory (Seg.SS, R32.EAX, null, 0, 0x12345678), R16.CX); asm.Encode (memoryStream); byte [] target = new byte [] { 0x36, 0x66, 0xf, 0xb3, 0x88, 0x78, 0x56, 0x34, 0x12 }; Assert.IsTrue (CompareData (memoryStream, target), "'BTR [SS:EAX + 0x12345678], CX' failed."); }