This is quite a difficult problem to solve, but it is possible. Instructions that use RIP-relative displacements have to be rewritten to equivalent sequences using absolute addresses. The tricky part is picking a volatile scratch register to use in the rewritten code that won't conflict with the original code.
This is quite a difficult problem to solve, but it is possible. Instructions that use RIP-relative displacements have to be rewritten to equivalent sequences using absolute addresses. The tricky part is picking a volatile scratch register to use in the rewritten code that won't conflict with the original code.