1

我有一些汇编代码,我想汇编它们以注入正在运行的进程中,但它并不总是位于内存中的同一位置。但是,它包含对程序中不会更改的地址的引用。我尝试使用jmp farand call far,但它给了我错误“FAR 引用的值不可重定位”。如何将其设置为在二进制代码中使用绝对地址,以便无论代码在内存中的确切位置,它都会跳转到并调用正确的地址?

4

2 回答 2

3

怎么样:

         mov    reg, <fixed_address>
         call   reg
于 2012-12-13T16:04:40.073 回答
0

“我如何设置它以使用二进制代码中的绝对地址,”自己构造命令:EA + 6 字节用于远跳转或 E9 + 4 用于近跳转。或者:

call 11111111h
m1:
----
mov [m1 - 4], eax

设置外壳时。

于 2012-12-13T17:00:15.413 回答