a646471969 发表于 2014-9-13 22:01:08

外挂学习之汇编——奇怪的程序

assume cs:codesgcodesg segment    mov ax,4c00h
    int 21h    start: mov ax,0
    s: nop
    nop    mov di,offset s
    mov si,offset s2
    mov ax,cs:
    mov cs:,ax    s0: jmp short s    s1:mov ax,0    int 21h
    mov ax,0    s2: jmp short s1
    nopcodesg ends
end start

编译后程序可以正常执行,使用debug调试可以知道jmp short s1的机器码是EBF6,所以当前的IP=IP-10,将这条指令移动到s:处后,jmp short s1不会指到s1了,而是指到相对当前位置(jmp short s1的下一条指令)的-10的位置(movax,4c00h),所以这个程序可以正常返回。

因陀罗 发表于 2016-8-21 11:43:52

幼幼帝国论坛,幼幼王朝,呦吧,拯救帝国,我愛幼幼,愛又閣 幼幼论坛最新地址

幼幼帝国论坛uudiguo.com (推荐)

?最私密的内容都在幼幼帝国论坛!?

纯粹个人分享.欢迎转发
页: [1]
查看完整版本: 外g学习之汇编——奇怪的程序