flat assembler
Message board for the users of flat assembler.
![]() Goto page Previous 1, 2 |
Author |
|
a115433
only me?
os can give you any memory it want when you call allocating function. it can load dll anywere it wants, it can create mapping object anywere, heap anywere, and so on... if range netween ip and this allocated will be > 31 bits - not only me will have a problem. windows/linux/other dont have any rules to stay within 4 GB range, its just unsafe to use jcc in long mode... many legal things wich can be done with code/os may lead to crash. |
|||
![]() |
|
revolution
a115433 wrote: only me? |
|||
![]() |
|
a115433
1. i allocate memory
2. i copy there some code 3. i jump to this code |
|||
![]() |
|
baldr
a115433,
You allocate memory and — surprise! — receive pointer to that memory (not offset from RIP, right?). What is the problem with indirect near jump? And how this situation is different from 32-bit code? |
|||
![]() |
|
LocoDelAssembly
asmcoder wrote: lahf is better than pushf/popf. Intel's documentation of LAHF wrote: This instruction executes as described above in compatibility mode and legacy mode. And even in non 64-bit mode you are still relying in having AH free for that so LAHF/SAHF is far from being a general solution, much less general than using Jcc for conditional branching in 64-bit mode, BTW. |
|||
![]() |
|
Goto page Previous 1, 2 < Last Thread | Next Thread > |
Forum Rules:
|
Copyright © 1999-2020, Tomasz Grysztar. Also on GitHub, YouTube, Twitter.
Website powered by rwasa.