吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 3833|回复: 15
收起左侧

[原创] C语言基础第三课:逆向一个简单C语言函数

[复制链接]
niucaidi 发表于 2021-7-10 16:01
本帖最后由 niucaidi 于 2021-7-10 16:17 编辑

逆向一个简单C语言程序中的函数嵌套调用并观察其调用约定的区别

  • 拖入OD中观察指定函数的汇编代码并逆向出其C语言源码
  • 程序打包在附件中
  • Call的地址:0x00401138
  • 以下是范例:

[C] 纯文本查看 复制代码
#include <stdio.h>
int plus3(int l, int i)
{
        return l + i;
}

int __stdcall plus2(int q, int w, int e)
{
        return q + w + e;
}

int __fastcall plus(int a,int b,int c,int d,int e)
{
        int x = a;          //ebp-0x4
        int y = b;    //ebp-0x8
         int z = plus2(x,y,c);   //ebp-0xc
        int t = plus3(x, y);    //ebp-0x10
        return  plus3(z, t);


}

int main()
{
        int a[] = { 1,3,4,6,7 };
        int b = plus(a[0], a[1], a[2], a[3], a[4]);

        略......
        return 0;
}


CallingConvention.rar (23.12 KB, 下载次数: 30)

求评分求热心!

免费评分

参与人数 7吾爱币 +3 热心值 +7 收起 理由
MrHhy + 1 用心讨论,共获提升!
Agony625 + 1 我很赞同!
道法自然221 + 1 + 1 谢谢@Thanks!
xman100 + 1 我很赞同!
ch0x01e + 1 + 1 谢谢@Thanks!
gxh7506 + 1 谢谢@Thanks!
小菜鸟一枚 + 1 + 1 加油!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

gxhc168 发表于 2021-7-11 13:30
点赞顶贴支持
c00144 发表于 2021-7-11 16:39
不明所以 发表于 2021-7-11 22:05
WangLT 发表于 2021-7-12 08:49

学习学习,,,,
daniel7785 发表于 2021-7-12 09:08
学习学习,,,,
Bruce_HD 发表于 2021-7-12 09:39
加油学习。支持支持。
lwq1213 发表于 2021-7-12 09:50
真是非常感谢老师给个重新学习C的机会!
lanshushu 发表于 2021-7-12 13:22
这是C进阶教程吧
zh190725 发表于 2021-7-12 16:46
学习一下,谢谢分享
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-12-26 01:25

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

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