堆栈图,主要目的就是练习一下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. 论文学习-wlg-基于二维材料的肖特基异质结构的通用尺度定律

    目录 主要公式: 各个段落的内容 第一页 第二页 第三页 名词的含义 功函数: 电子亲和力 肖特基势垒 肖特基二极管的原理 非相对论性电子气:未知 Rashba自旋电子系统: 参考链接: 主要公式: ...

  2. MySQL日常使用遵循的规范建议

    一 . 基础规范 1.必须使用InnoDB存储引擎 解读:支持事务:支持行级锁:支持MVCC多版本控制:支持外键:死锁自动检测:并发性能更好.CPU及内存缓存页优化使得资源利用率更高. 2.  表字符 ...

  3. Mysql—数据导入与导出

    数据导入 作用:把文件系统里的内容导入到数据库表中. 语法: mysql> load data infile "文件名" into table 表名 fields termi ...

  4. .Net Core使用Swagger来对接口文档化

    参考文档来源:https://www.cnblogs.com/yilezhu/p/9241261.html 官方地址 https://swagger.io/ 代码即接口文档,接口文档即代码 使用.ne ...

  5. 8.Java基础_if-else和switch选择语句

    /* 选择语句(基本与C++相同) if-else语句: 格式一: if(关系式){ 语句体; } 格式二: if(关系式){ 语句体; } else{ 语句体; } 格式三: if(关系式){ 语句 ...

  6. 【Spring JDBC】JdbcTemplate(三)

    传统Jdbc API与Spring jdbcTemplate比较 //JDBC API Statement statement = conn.createStatement(); ResultSet ...

  7. LG3119 「USACO2015JAN」Grass Cownoisseur

    问题描述 LG3119 题解 显然,如果有个环,一定是全部走完的. 所以缩点,缩出一个 \(\mathrm{DAG}\) . 只能走一次反向,于是在正图和反图上各跑一次,枚举边,取 \(\mathrm ...

  8. wcf callback在主线程被调用

    记得当时往wcf迁移了部分service以后,tester发现有时候系统会没有任何反应,cpu占用倒是没有问题,可就是做不了事情. 感觉是哪里死锁了,但也不是每次都能再现,后来发现如果把callbac ...

  9. vue使用--saas的引入与使用

     什么是saas.scss? saas是一种动态样式语言,属于CSS预处理器,为CSS增加了一些编程特性,比如变量.嵌套.函数.继承.运算等等.开发人员可以像使用js等语言一样使用saas进行css的 ...

  10. 爬虫——爬取Ajax动态加载网页

    常见的反爬机制及处理方式 1.Headers反爬虫 :Cookie.Referer.User-Agent 解决方案: 通过F12获取headers,传给requests.get()方法 2.IP限制 ...