吾爱汇编

 找回密码
 立即注册

QQ登录

绑定QQ避免忘记帐号

查看: 7876|回复: 53

[汇编] 汇编小知识之【jmp+call】

  [复制链接]
千里冰封 发表于 2016-12-18 23:29 | 显示全部楼层 |阅读模式

本帖最后由 千里冰封 于 2016-12-19 09:58 编辑

大家都知道,在od里能看到很多,汇编指令,比如push 、mov、jmp、call 等等评分甩甩,大步走来,前方高能,花见花开

看具体代码如下:

00401004  /.  55            push    ebp
00401005  |.  8BEC          mov     ebp,esp
00401007  |.  68 02000080   push    0x80000002
0040100C  |.  6A 00         push    0x0
0040100E  |.  68 01000000   push    0x1
00401013  |.  6A 00         push    0x0
00401015  |.  6A 00         push    0x0
00401017  |.  6A 00         push    0x0
00401019  |.  68 01000100   push    0x10001
0040101E  |.  68 05000106   push    0x6010005
00401023  |.  68 06000152   push    0x52010006
00401028  |.  68 03000000   push    0x3
0040102D  |.  BB D0104000   mov     ebx,004010D0
00401032  |.  E8 8E000000   call    004010C5
00401037  |.  83C4 28       add     esp,0x28
0040103A  |.  8BE5          mov     esp,ebp
0040103C  |.  5D            pop     ebp                                       
0040103D  \.  C3            retn
0040103E  /.  55            push    ebp
0040103F  |.  8BEC          mov     ebp,esp
00401041  |.  68 02000080   push    0x80000002
00401046  |.  6A 00         push    0x0
00401048  |.  68 01000000   push    0x1
0040104D  |.  6A 00         push    0x0
0040104F  |.  6A 00         push    0x0
00401051  |.  6A 00         push    0x0
00401053  |.  68 01000100   push    0x10001
00401058  |.  68 0A000106   push    0x601000A
0040105D  |.  68 0B000152   push    0x5201000B
00401062  |.  68 03000000   push    0x3
00401067  |.  BB D0104000   mov     ebx,004010D0
0040106C  |.  E8 54000000   call    004010C5
00401071  |.  83C4 28       add     esp,0x28
00401074  |.  8BE5          mov     esp,ebp
00401076  |.  5D            pop     ebp                                       
00401077  \.  C3            retn
00401078   $  C3            retn
00401079   .  C3            retn
0040107A  /$  B8 06000000   mov     eax,0x6
0040107F  |.  E8 3B000000   call   004010BF
00401084  |.  FC            cld
00401085  |.  DBE3          finit
00401087  |.  E8 ECFFFFFF   call    00401078
0040108C  |.  68 79104000   push    00401079
00401091  |.  B8 03000000   mov     eax,0x3
00401096  |.  E8 24000000   call    004010BF
0040109B  |.  83C4 04       add     esp,0x4
0040109E  |.  68 01000152   push    0x52010001
004010A3  |.  E8 11000000   call    004010B9
004010A8  |.  83C4 04       add     esp,0x4
004010AB  |.  E8 03000000   call    004010B3
004010B0  |.  33C0          xor     eax,eax                                    
004010B2  \.  C3            retn
004010B3   $  FF25 EC784600 jmp     near dword ptr ds:[0x4678EC]              
004010B9   $  FF25 F0784600 jmp     near dword ptr ds:[0x4678F0]               
004010BF   $  FF25 F4784600 jmp     near dword ptr ds:[0x4678F4]               
004010C5   $  FF25 D0784600 jmp     near dword ptr ds:[0x4678D0]              

我们知道,左边的是,内存地址,中间的是十六进制机器码,右边的是汇编代码
那么机器码和汇编代码之间的关系如何?
00401004  /.  55            push    ebp
00401005  |.  8BEC          mov     ebp,esp

中间的机器码,55 就是汇编代码  push   ebp  , 8BEC 就是汇编代码 mov    ebp,esp 这些都是固定的,一 一对应的,大家可以去实际搜索一下。
0040108C  |.  68 79104000   push    00401079
这个代码 可以看出, 68 就是push的意思。  68后面的 79104000 其实就是00401079。为什么看起来像倒着的呢?
这是因为,在计算机里面,数字是从  低单元  到   高单元   依次写入的。而一个的单元就是1个字节,1个字节就是8位,也就是2个十六进制位。
举个例子 十六进制 23 就是一个字节,08也是一个字节,4532 就是2个字节。那么4532在内存里是怎么存放呢?
遵从,低低高高原则
比如有 10个单元,1  2  3  4  5  6  7  8  9  10   。
4532这个十六进制数,低2位,是32,就放在1单元,高2位是45,就放在2单元。


所以十六进制数4532,在机器看来就是3245

评分

参与人数 12HB +16 THX +5 收起 理由
禽大师 + 1
消逝的过去 + 1
zxjzzh + 1 [吾爱汇编论坛52HB.COM]-学破解防破解,知进攻懂防守!
agan8888 + 1
2323816 + 1
mxjiangqi + 5 + 1 [快捷评语]--吃水不忘打井人,给个评分懂感恩!
bsjasdq20615 + 2 + 1 [快捷评语] - 吃水不忘打井人,给个评分懂感恩!
skyice + 1 [快捷评语] - 2017,让我们17学破解!
oo-fish + 1 [快捷评语] - 2017,让我们17学破解!
星宝 + 1 支持一下
雪花公子 + 1 最好做成一个系列,会帮助很多人
muzi12134 + 2 + 1 附件形式上传教程,为后来学习者保证了资源稳定性,额外+10HB,感谢!

查看全部评分

吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
muzi12134 发表于 2016-12-19 00:31 | 显示全部楼层
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
雪花公子 发表于 2016-12-19 06:13 | 显示全部楼层

感谢分享,这个很有用,支持楼主继续,最好做一个系列,会帮助很多小白的
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
klamathrun 发表于 2016-12-19 09:13 | 显示全部楼层
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
 楼主| 千里冰封 发表于 2016-12-19 09:59 | 显示全部楼层

雪花公子 发表于 2016-12-19 06:13
感谢分享,这个很有用,支持楼主继续,最好做一个系列,会帮助很多小白的

谢谢支持,你说的对,我努力把帖子都写成固定格式的,做系列
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
 楼主| 千里冰封 发表于 2016-12-19 10:01 | 显示全部楼层
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
和天下 发表于 2016-12-25 10:35 来自手机端 | 显示全部楼层

精彩部分要动动手
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
星宝 发表于 2017-1-9 20:05 | 显示全部楼层

感谢分享,这个很有用,支持楼主继续!!!
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
apqy 发表于 2017-1-11 00:23 | 显示全部楼层

学习了,挺详细。谢谢
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
李逍遥hlc 发表于 2017-1-28 22:28 | 显示全部楼层

万分感谢楼主,简直是我等新手菜鸟的福音啊!!!
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

警告:本站严惩灌水回复,尊重自己从尊重他人开始!

1层
2层
3层
4层
5层
6层
7层
8层
9层
10层

免责声明

吾爱汇编(www.52hb.com)所讨论的技术及相关工具仅限用于研究学习,皆在提高软件产品的安全性,严禁用于不良动机。任何个人、团体、组织不得将其用于非法目的,否则,一切后果自行承担。吾爱汇编不承担任何因为技术滥用所产生的连带责任。吾爱汇编内容源于网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除。如有侵权请邮件或微信与我们联系处理。

站长邮箱:SharkHeng@sina.com
站长QQ:1140549900


QQ|RSS|手机版|小黑屋|帮助|吾爱汇编 ( 京公网安备11011502005403号 , 京ICP备20003498号-6 )|网站地图

Powered by Discuz!

吾爱汇编 www.52hb.com

快速回复 返回顶部 返回列表