Currently when trying to poke code which has breakpoint installed through the LogicalMemoryBuffer will fail. You can only change memory which the core isn't using itself at the moment. When changing memory on which the core has put software breakpoint instructions the set-aside memory of the Instruction should be changed (so that if the breakpoint is removed or stepped the new code is used). This is a little tricky to change. When a Breakpoint is found installed the underlying Instruction class should be altered (but Instruction is currently a immutable class). Care should be taken if the Breakpoint is currently stepped, or if the memory is changed asynchronous from the event thread (which means it could intersect with a breakpoint being placed right at the same time).