public void FIST_mem32 () { // FIST DWord [CS:EBP*4 + 0x12345678] // FIST (new DWordMemory(Seg.CS, null, R32.EBP, 2, 0x12345678)) MemoryStream memoryStream = new MemoryStream (); Assembly asm = new Assembly (); asm.FIST (new DWordMemory (Seg.CS, null, R32.EBP, 2, 0x12345678)); asm.Encode (memoryStream); byte [] target = new byte [] { 0x2e, 0xdb, 0x14, 0xad, 0x78, 0x56, 0x34, 0x12 }; Assert.IsTrue (CompareData (memoryStream, target), "'FIST DWord [CS:EBP*4 + 0x12345678]' failed."); }
public void FIST_mem16 () { // FIST Word [ESP + EDI*1] // FIST (new WordMemory(null, R32.ESP, R32.EDI, 0)) MemoryStream memoryStream = new MemoryStream (); Assembly asm = new Assembly (); asm.FIST (new WordMemory (null, R32.ESP, R32.EDI, 0)); asm.Encode (memoryStream); byte [] target = new byte [] { 0xdf, 0x14, 0x3c }; Assert.IsTrue (CompareData (memoryStream, target), "'FIST Word [ESP + EDI*1]' failed."); }