鱼C论坛

 找回密码
 立即注册
查看: 4914|回复: 12

[争议讨论] 【悬赏促学习】逆向基础

[复制链接]
发表于 2011-11-26 17:09:40 | 显示全部楼层 |阅读模式
20鱼币
请将下面是这个汇编代码写成C语言的形式(GDB输出):

0x8048430 <fishC>:      push %ebp
0x8048431 <fishC + 1>:  mov %esp, %ebp
0x8048433 <fishC + 3>:  push %edi
0x8048434 <fishC + 4>:  push %esi
0x8048435 <fishC + 5>:  sub $0x30, %esp
0x8048438 <fishC + 8>:  lea 0xffffffd8(%ebp), %edi
0x804843b <fishC + 11>: mov $0x8049508, %esi
0x8048440 <fishC + 16>: cld
0x8048441 <fishC + 17>: mov $0x30, %esp
0x8048446 <fishC + 22>: repz movsl %ds:(%esi), %es:(%edi)
0x8048448 <fishC + 24>: mov 0x8(%ebp), %eax
0x804844b <fishC + 27>: mov %eax, %edx
0x804844d <fishC + 29>: imul 0xc(%ebp), %edx
0x8048451 <fishC + 33>: mov %edx, %eax
0x8048453 <fishC + 35>: sar $0x1f, %eax
0x8048456 <fishC + 38>: shr $0x1f, %eax
0x8048459 <fishC + 41>: lea (%eax, %edx,1), %eax
0x804845c <fishC + 44>: sar %eax
0x804845e <fishC + 46>: mov %eax, oxffffffd4(%ebp)
0x8048461 <fishC + 49>: mov 0xffffffd4(%ebp), %eax
0x8048464 <fishC + 52>: mov %eax, %eax
0x8048466 <fishC + 54>: add $0x30, %esp
0x8048469 <fishC + 57>: pop %esi
0x804846a <fishC + 58>: pop %edi
0x804846b <fishC + 59>: pop %ebp
0x804846c <fishC + 60>: ret


                               
登录/注册后可看大图
该贴已经同步到 小甲鱼的微博

最佳答案

查看完整内容

太简单了这个···来点难一点吧,鱼总!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2011-11-26 17:09:41 | 显示全部楼层
int FishC( int i, int j ) 
{
        int array[5] = { 0,1,2,3,4 };
        int area;
        area = i * j / 2;
        
        return (area);
}
太简单了这个···来点难一点吧,鱼总!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2011-11-26 17:30:40 | 显示全部楼层
:o:o支持下!!!!!!!!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2011-11-26 20:36:52 | 显示全部楼层
:@:@:@不会,还没学你想
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2011-11-26 22:55:11 | 显示全部楼层
不像标准的asm语法。。多了不少东东。。看看先。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2011-11-27 05:57:46 | 显示全部楼层
想学逆向   求小甲鱼老师推荐几本入门的书
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2011-11-27 06:01:06 | 显示全部楼层
还有   即使我弄懂了每一条汇编语句都干了什么还是不知道和c语言这么对应啊
难道是分析出功能在用c实现出来???
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2011-11-28 15:15:46 | 显示全部楼层
寄存器前面的%是啥意思
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2011-11-28 22:25:38 | 显示全部楼层
zgt2008 发表于 2011-11-28 15:15
寄存器前面的%是啥意思

GDB的风格,不用管它的~
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2011-12-1 10:49:26 | 显示全部楼层
明白了,谢谢!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2011-12-1 11:40:38 | 显示全部楼层
linux格式的汇编- -,压力很大
  前6行是子程序国际惯例,保存ebp,和esp,edi,esi,7行是留出空间给局部变量,从第八行到23行是子程序实现内容,后边打扫堆栈返回。


    里边的子程序内容实在不懂,但是好像是将传进来的两个字符串换了个位,还是将一串字符串复制到另一个地方,有点模糊。只能打这么多了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2011-12-6 15:00:49 | 显示全部楼层
学习学习:lol...
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2015-10-8 21:47:48 | 显示全部楼层
感谢楼主谢谢你 学习了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-12-27 00:28

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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