x86 jump to an address
Probably because it's a jumping to a relative address, and the linker or loader has moved your code. Try putting the address into a variable, and then do:
jmp dword [var]
or alternatively:
push 0xbffff994
ret
It is hard to determine the exact address upon compile time, have you tried using labels? It is much more common to use them with jmp.
example:
start:
jmp exit
exit:
ret