堆栈图,主要目的就是练习一下JCC指令的熟练度,供参考

版权声明:本文为博主原创文章,转载请附上原文出处链接和本声明。2019-09-10,23:41:41。
作者By-----溺心与沉浮----博客园

堆栈完整代码:

 0040118E  |.  6A          PUSH
|. 6A 0C PUSH 0C
|. 6A PUSH
|. E8 85FEFFFF CALL HelloWor.0040101E
|. 83C4 0C ADD ESP,0C /> \ PUSH EBP
|. 8BEC MOV EBP,ESP
|. 83EC SUB ESP,
|. PUSH EBX
|. PUSH ESI
|. PUSH EDI
|. 8D7D C0 LEA EDI,DWORD PTR SS:[EBP-]
0040110C |. B9 MOV ECX,
|. B8 CCCCCCCC MOV EAX,CCCCCCCC
|. F3:AB REP STOS DWORD PTR ES:[EDI]
|. 8B45 MOV EAX,DWORD PTR SS:[EBP+]
0040111B |. 3B45 0C CMP EAX,DWORD PTR SS:[EBP+C]
0040111E |. 7E JLE SHORT HelloWor.
|. 8B4D MOV ECX,DWORD PTR SS:[EBP+]
|. 3B4D CMP ECX,DWORD PTR SS:[EBP+]
|. 7E JLE SHORT HelloWor.0040112D
|. 8B45 MOV EAX,DWORD PTR SS:[EBP+]
0040112B |. EB JMP SHORT HelloWor.
0040112D |> 8B45 MOV EAX,DWORD PTR SS:[EBP+]
|. EB JMP SHORT HelloWor.
|> 8B55 0C MOV EDX,DWORD PTR SS:[EBP+C]
|. 3B55 CMP EDX,DWORD PTR SS:[EBP+]
|. 7E JLE SHORT HelloWor.0040113F
0040113A |. 8B45 0C MOV EAX,DWORD PTR SS:[EBP+C]
0040113D |. EB JMP SHORT HelloWor.
0040113F |> 8B45 MOV EAX,DWORD PTR SS:[EBP+]
|> 5F POP EDI
|. 5E POP ESI
|. 5B POP EBX
|. 8BE5 MOV ESP,EBP
|. 5D POP EBP
\. C3 RETN

 核心功能块,真正代码块

核心功能块:

   |.  8B45        MOV EAX,DWORD PTR SS:[EBP+]
0040111B |. 3B45 0C CMP EAX,DWORD PTR SS:[EBP+C]
0040111E |. 7E JLE SHORT HelloWor.
|. 8B4D MOV ECX,DWORD PTR SS:[EBP+]
|. 3B4D CMP ECX,DWORD PTR SS:[EBP+]
|. 7E JLE SHORT HelloWor.0040112D
|. 8B45 MOV EAX,DWORD PTR SS:[EBP+]
0040112B |. EB JMP SHORT HelloWor.
0040112D |> 8B45 MOV EAX,DWORD PTR SS:[EBP+]
|. EB JMP SHORT HelloWor.
|> 8B55 0C MOV EDX,DWORD PTR SS:[EBP+C]
|. 3B55 CMP EDX,DWORD PTR SS:[EBP+]
|. 7E JLE SHORT HelloWor.0040113F
0040113A |. 8B45 0C MOV EAX,DWORD PTR SS:[EBP+C]
0040113D |. EB JMP SHORT HelloWor.
0040113F |> 8B45 MOV EAX,DWORD PTR SS:[EBP+]

版权声明:本文为博主原创文章,转载请附上原文出处链接和本声明。2019-09-10,23:41:41。
作者By-----溺心与沉浮----博客园

堆栈图这一块内容写的不好,后面我再想办法尽量把每一步骤都写明白整理上来,这是我自己做的练习,都在EXCEL上,贴上来,方便自己参考

针对JCC指令练习的堆栈图的更多相关文章

  1. 汇编之JCC指令

    版权声明:本文为博主原创文章,转载请附上原文出处链接和本声明.2019-09-06,21:59:16.作者By-----溺心与沉浮----博客园 JCC指令决定它跳不跳转跟别的没关系,只跟EFLAG标 ...

  2. 【reverse】逆向7 堆栈图

    [reverse]逆向7 堆栈图 前言 本章就是开始画堆栈图来打基础拉,堆栈熟悉了之后就可以开始C语言的逆向了. 这一章使用的exe文件,我已经上传到了我的个人网盘中,点击下载 1.准备工作 先看这张 ...

  3. 【 D3.js 高级系列 — 3.0 】 堆栈图

    堆栈图布局(Stack Layout)能够计算二维数组每一数据层的基线,以方便将各数据层叠加起来.本文讲解堆栈图的制作方法. 先说说什么是堆栈图. 例如,有如下情况: 某公司,销售三种产品:个人电脑. ...

  4. JCC 指令

    JCC跳转指令 JCC指条件跳转指令,CC就是指条件码. JCC指令 中文含义 英文原意 检查符号位 典型C应用 JZ/JE 若为0则跳转:若相等则跳转 jump if zero;jump if eq ...

  5. JCC指令

    0.JMP1.JE, JZ 结果为零则跳转(相等时跳转) ZF=12.JNE, JNZ 结果不为零则跳转(不相等时跳转) ZF=03.JS   结果为负则跳转   SF=14.JNS   结果为非负则 ...

  6. angularjs指令实现轮播图----swiper

    'use strict'; angular.module('app').directive('swipersLbt',swipers); swipers.$inject = ['$timeout']; ...

  7. x86汇编指令详解

    80x86指令系统 80x86指令系统,指令按功能可分为以下七个部分. (1) 数据传送指令. (2) 算术运算指令. (3) 逻辑运算指令. (4) 串操作指令. (5) 控制转移指令. (6) 处 ...

  8. x86汇编指令具体解释

    80x86指令系统 80x86指令系统,指令按功能可分为下面七个部分. (1) 数据传送指令. (2) 算术运算指令. (3) 逻辑运算指令. (4) 串操作指令. (5) 控制转移指令. (6) 处 ...

  9. 【reverse】逆向6 JCC

    [reverse]逆向6 JCC 前言 我们之前学习的时候讲了,eip寄存器存储的是当前(即将执行的语句的) 指向地址 而我们之前提到的下断点(F2),就和我们编程中的下断点一样,执行到某句汇编指令然 ...

随机推荐

  1. SRDC - ORA-30036: Checklist of Evidence to Supply (Doc ID 1682700.1)

    SRDC - ORA-30036: Checklist of Evidence to Supply (Doc ID 1682700.1) Action Plan 1. Execute srdc_db_ ...

  2. SRDC - ORA-1552: Checklist of Evidence to Supply (Doc ID 1681333.1)

    SRDC - ORA-1552: Checklist of Evidence to Supply (Doc ID 1681333.1) Action Plan 1. Execute srdc_db_u ...

  3. centos 7下配置阿里yum源

    1.打开centos的yum文件夹 cd /etc/yum.repos.d/ 2.用wget下载repo文件 wget http://mirrors.aliyun.com/repo/Centos-7. ...

  4. CentOS离线安装Rust

    条件所限,无法在线连接外网,或是下载慢,容易中断时,可以采用. 一,下载离线安装包 https://forge.rust-lang.org/other-installation-methods.htm ...

  5. Node.js—基本知识

    一.第一个Node代码 1. 运行Node.js   通过node E:\Node代码\hello.js运行代码:Node.js是服务器的程序,写的js语句都将运行在服务器上.返回给客户的,都是已经处 ...

  6. pycharm 快速启动Django项目和python程序

    Django 设置 *.py

  7. python 生成sql语句

    1. 别名 s = '' name = ['张三', '李四', '王五'] for i in range(len(name)): s += "'" + name[i] + &qu ...

  8. Django2.2报错 AttributeError: 'str' object has no attribute 'decode'

    准备将 Django 连接到 MySQL,在命令行输入命令 python manage.py makemigrations 后报错: AttributeError: 'str' object has ...

  9. Shell编程——运算符

    1.declare命令: 声明变量的类型: -:给变量设定类型属性 +:给变量取消类型属性 -i:将变量声明为整数类型 -x:将变量声明为环境变量 -p:显示变量的类型 其中export是将num变为 ...

  10. guppy

    1.下载 wget https://mirror.oxfordnanoportal.com/software/analysis/ont-guppy-cpu_3.4.1_linux64.tar.gz