美文网首页从汇编到C++
6.汇编-修改EIP的指令

6.汇编-修改EIP的指令

作者: Asura_Luo | 来源:发表于2018-05-04 02:54 被阅读0次

6.汇编-修改EIP的指令

EIP寄存器

EIP寄存器表示CPU下次执行的位置

JMP指令

JMP指令相当于给EIP寄存器赋值
JMP后面只能是32位的

指令格式:
MPV EIP,寄存器/立即数/内存
简写:JMP 寄存器/立即数/内存



JMP 0x00FF19    -> MOV EIP,0X00FF19
JMP EAX         -> MOV EIP,EAX
JMP DWORD PTR DS:[0x18ffa0]   ->MOV EIP,DWORD PTR DS:[0x18ffa0]  #这里内存指针只能用32位的 

CALL指令

PUSH下一行地址
MOV EIP,立即数/寄存器/内存
简写 CALL 立即数/寄存器/内存

与JMP唯一区别:
在堆栈中存储CALL指令(当前指令)的下一行地址 (PUSH 到堆栈中)

如果是调试call的汇编指令的时候,要按F7 否则会跳过

RET 指令

从堆栈中pop 出地址,赋值给eip

ADD ESP 4,
MOV EIP,dword ptr ds:[ESP-4]
----------
MOV EIP,dword ptr ds:[ESP]
ADD ESP 4

以上指令简称 RET指令

相关文章

  • 6.汇编-修改EIP的指令

    6.汇编-修改EIP的指令 EIP寄存器 EIP寄存器表示CPU下次执行的位置 JMP指令 JMP指令相当于给EI...

  • 9.汇编-JCC

    9.汇编-JCC 之前可以修改EIP寄存器的指令JMP,CALL,RETN 所有JCC指令的动作->根据标志寄存器...

  • 修改EIP

    JMP指令:修改EIP的值 CALL指令 RET指令:

  • (32位汇编 十一)修改EIP的值

    JMP指令 无条件跳转。修改EIP的值,而且只影响EIP的值。 MOV EIP, 寄存器/立即数 ;不能执行简写为...

  • ARM寄存器

    汇编: 分析和修改汇编指令: 用户模式(usr): ARM处理器:

  • 修改EPI指令

    EIP 寄存器 指向CPU下一次要执行的程序地址。 指令注释用法JMP修改EIP的值JMP r/m/immCALL...

  • 逆向笔记(三)-汇编指令

    汇编指令 针对汇编来说,汇编指令是必须了解的,而且汇编中汇编指令比较多,但是每一个汇编指令对应的机器码是固定不变的...

  • 16位汇编简记

    汇编: 汇编即是机器指令助记符,机器指令让cpu工作。像是mov、jmp、jcxz等汇编指令都有对应的机器指令。有...

  • 逆向学习 持续更新中

    什么是汇编 机器指令能被计算机直接识别 汇编指令需要通过编译器转为机器指令 汇编指令和机器指令的差别在于指令的表示...

  • 学习汇编--写一个完整的汇编(一)

    汇编指令 汇编有两类指令组成汇编指令如move,add,sub等,有对应的机器指令,可以被编译为机器指令最终被CP...

网友评论

    本文标题:6.汇编-修改EIP的指令

    本文链接:https://www.haomeiwen.com/subject/xturrftx.html