和重定位类似的几句取地址的代码
call @F@@:
pop ebx
sub ebx,offset@B
========================
上面应该很熟悉了。
还有个
call @F
@@:
pop edx
mov ebx,dword ptr [edx+(good-@@)]
good是个变量,每次地址都不同,
这个采用类似基址加偏移的方式来取得good的实际地址。
同上个方法一样,POP出标号的实际地址,good-标号的实际
地址,得到good相对于标号的偏移地址,再加上标号的地址,
就得到了good的实际地址 放入ebx中。
相对来讲 第2种使用更广更灵活一些。