Exemple #1
0
        public static void leave(Emulator emu)
        {
            UInt32 ebp = emu.getRegister32((int)Registers.EBP);

            emu.setRegister32((int)Registers.ESP, ebp);
            emu.setRegister32((int)Registers.EBP, emu.pop32());

            emu.eip += 1;
        }
Exemple #2
0
        // opcode 0x58-0x5F
        public static void pop_r32(Emulator emu)
        {
            Byte reg = (Byte)(emu.getCode8(0) - 0x58);

            emu.setRegister32(reg, emu.pop32());
            emu.eip += 1;
        }
Exemple #3
0
 public void set_rm32(Emulator emu, UInt32 value)
 {
     if (mod == 0x03)
     {
         emu.setRegister32(rm, value);
     }
     else
     {
         UInt32 address = calc_memory_address(emu);
         emu.setMemory32(address, value);
     }
 }
Exemple #4
0
 public void set_r32(Emulator emu, UInt32 value)
 {
     emu.setRegister32(regIndex, value);
 }