On Sat, Dec 16, 2000 at 11:53:39AM +0100, Ramon van Handel wrote:
> No, not necessarily.  What you do is overwrite the next instruction and
> keep the original in a branch table.  You use a call to go to the
> emulation routine; in stead of using ret, however, the emulation routine
> will look in the branch table, which contains (1) the next instructions to
> be executed, and (2) the address of the first instruction that was not
> overwritten.
You'd also need to do a second pass to catch jumps into the overwritten
instruction.  For that matter, that can't catch indirect jumps.

              -=- James Mastros

Reply via email to