Executing flat binaries

Question about which tools to use, bugs, the best way to implement a function, etc should go here. Don't forget to see if your question is answered in the wiki first! When in doubt post here.
TheChuckster

Re:Executing flat binaries

Post by TheChuckster »

My hypothesis has been confirmed! I achieved an absolute jump by loading a register with an address and jumping to the location pointed to by that register. Thanks.
proxy

Re:Executing flat binaries

Post by proxy »

just out of curiosity, why use inlie ASM at all? why not just use a function pointer like this:

Code: Select all

typedef void (*func_ptr)(void);
func_ptr f = (func_ptr)0x200000;
f();
this will compile down to:

Code: Select all

call 0x200000
which seems pretty reasonable...

proxy
TheChuckster

Re:Executing flat binaries

Post by TheChuckster »

I knew of no other method at the time. Now that I'm moving onto multitasking, even your function pointer idea will be obsolete because then I'll just have to set the EIP of my processes accordingly.
Post Reply