正版资源迪大学院逆向课程
C 语言底层核心与逆向入门 逆向工程往往被视为黑盒分析,但其根基在于对程序运行环境的深刻理解。本资料聚焦 C 语言这一系统编程基石,旨在填补从“会写代码”到“看懂代码”之间的认知断层。它解决的痛点是:许多开发者能使用高级 API,却对内存分布、调用约定及类型转换缺乏直观感知,导致在调试复杂逻辑或分析
C 语言底层核心与逆向入门
逆向工程往往被视为黑盒分析,但其根基在于对程序运行环境的深刻理解。本资料聚焦 C 语言这一系统编程基石,旨在填补从“会写代码”到“看懂代码”之间的认知断层。它解决的痛点是:许多开发者能使用高级 API,却对内存分布、调用约定及类型转换缺乏直观感知,导致在调试复杂逻辑或分析二进制时无从下手。课程从进制本质、数据类型到存储类型,层层拆解计算机如何表示信息,帮助学习者建立底层的比特级思维,为后续理解汇编和逆向工具打下坚实基础。
指针体系与内存模型深度解析
C 语言的灵魂在于指针,而这部分往往是自学者的最大障碍。本资料并未停留在语法表面,而是深入剖析了一维、二维数组与指针的内存映射关系,区分了数组指针与指针数组的本质差异。特别针对函数调用约定(_cdecl、_stdcall、_fastcall)进行了专项讲解,这是逆向工程中定位函数边界的关键知识。配合结构体、共用体、枚举及 typedef 的内存对齐原则,学习者将清晰掌握数据在内存中的真实布局。这种对内存视图的精准构建能力,是独立分析内存漏洞和数据结构的前提。
工程实践路径与配合建议
适合具备基础编程逻辑、希望向底层技术深入的开发者。建议按顺序先攻克前十二节的基础语法与变量作用域,重点精读第十至十三节的指针与函数专题,这是建立逆向直觉的核心模块。学完本资料后,你将能够独立阅读简单的 C 程序源码并推导其内存状态,具备初步的二进制分析潜力。练习时,请将视频演示的代码在本地编译运行,尝试修改指针操作并观察程序行为,通过“预测-运行-验证”的闭环,将抽象概念转化为肌肉记忆。
课程目录
课程目录214 集
- 001.第一个C项目解析.mp4 388.24M
- 002.进制得本质和计算方式.mp4 235.96M
- 003.C语言基本数据类型.mp4 236.89M
- 004.有无符号和变量常量.mp4 220.07M
- 005.存储类型和类型转换.mp4 165.58M
- 006.运算符和作用域.mp4 161.84M
- 008.循环 跳转 分支语句.mp4 137.12M
- 009.函数基本写法.mp4 74.42M
- 010.局部 全局 静态局部 静态全局变量.mp4 78.43M
- 011.指针类型和引用类型.mp4 108.91M
- 012.函数的参数几种形式.mp4 95.68M
- 013.递归函数和函数指针.mp4 84.15M
- 016.二维数组多维数组.mp4 164.45M
- 017.一维数组跟指针关系.mp4 111.42M
- 018.二维数组和数组指针 行指针 的关系.mp4 63.98M
- 019.二维数组和指针数组的关系.mp4 53.25M
- 020.多字节版本字符串函数调用.mp4 198.48M
- 021.宽字节版本字符串函数调用.mp4 125.72M
- 022.结构体得概念和使用.mp4 214.19M
- 023.共用体的概念和使用.mp4 224.78M
- 024.枚举概念和使用.mp4 139.99M
- 025.typedef和内存对齐原则.mp4 175.43M
- 026.宏的用法和头文件的用法.mp4 157.18M
- 027.申请内存释放内存.mp4 214.01M
- 028.打开文件关闭文件.mp4 155.10M
- 029.游标操作文件结束.mp4 152.58M
- 030.C语言读文件.mp4 356.55M
- 031.C语言写文件.mp4 159.96M
- 032.C项目需求分析和架构设计.mp4 19.25M
- 033.C项目界面的设计和实现.mp4 103.12M
- 034.C项目界面和逻辑的交互.mp4 204.79M
- 035.C项目数据和逻辑处理.mp4 196.64M
- 036.C项目文件保存和总结.mp4 118.99M
- 037.结构体在内存中的排列方式.mp4 154.51M
- 038.结构体数组在内存中的排列方式.mp4 113.66M
- 039.汇编下数组和步长的本质关系.mp4 163.45M
- 040.结构体数组的好处和实现.mp4 144.27M
- 041.从逆向的角度遍历数组.mp4 101.56M
- 042.链表的概念和需求.mp4 90.74M
- 043.链表的初始化和添加.mp4 236.18M
- 044.链表的遍历和删除.mp4 136.98M
- 045.汇编指令lea和mov的区别.mp4 95.43M
- 046.链表在内存中的表现形式.mp4 273.06M
- 047.汇编下遍历链表.mp4 150.65M
- 048.从逆向角度用指针遍历链表.mp4 89.12M
- 049.队列和栈的概念和结构.mp4 69.81M
- 050.选择排序算法的概念和代码实现.mp4 197.70M
- 051.冒泡排序算法的概念和代码实现.mp4 147.44M
- 052.插入排序算法的概念和代码实现.mp4 205.52M
- 053.二叉树的基本概念和结构.mp4 43.87M
- 054.二叉查找树的创建和遍历.mp4 468.57M
- 055.二叉查找树在内存中的表现形式.mp4 76.83M
- 056.从汇编的角度分析游戏二叉树.mp4 243.33M
- 057.如何通过指针去遍历游戏二叉树.mp4 253.59M
- 058.类的概念基本定义.mp4 182.84M
- 059.this指针和构造函数及其初始化列表.mp4 229.29M
- 061.对象的定义和使用.mp4 81.75M
- 063.拷贝构造函数.mp4 95.42M
- 064.浅拷贝和深拷贝的区别mp4.mp4 131.52M
- 065.重载运算符函数.mp4 206.19M
- 066.类型转换函数.mp4 51.97M
- 067.对象的内存和汇编下的this传递.mp4 132.77M
- 067.静态成员变量和静态成员函数-1.mp4 138.61M
- 068.类的静态成员变量和静态成员函数.mp4 236.24M
- 069.继承的概念和使用.mp4 156.49M
- 070.public限制符对继承的影响.mp4 59.86M
- 071.protected限制符对继承的影响.mp4 36.30M
- 072.private限制符对继承的影响.mp4 70.80M
- 073.子类是如何调用父类的构造函数.mp4 85.11M
- 074.继承下构造函数和析构函数的调用顺序.mp4 50.51M
- 075.多继承下的构造析构函数的调用顺序.mp4 71.28M
- 076.多态的概念以及静态多态的使用.mp4 74.42M
- 077.虚函数的概念和使用.mp4 113.33M
- 078.虚函数表的概念和作用.mp4 133.38M
- 079.虚函数表的遍历和查看.mp4 140.50M
- 080.虚函数在汇编下的表现.mp4 105.62M
- 082.C++命名空间及其标准库介绍.mp4 68.47M
- 083.字符串类的常见用法.mp4 177.69M
- 084.字符串之字串的操作.mp4 242.65M
- 085.动态数组之vector容器.mp4 151.29M
- 086.迭代器下的vector容器.mp4 181.12M
- 087.瀹瑰櫒涔媗ist.mp4 121.66M
- 088.瀹瑰櫒涔嬮槦鍒梣ueue.mp4 70.66M
- 089.瀹瑰櫒涔嬫爤stack.mp4 58.28M
- 090.瀹瑰櫒涔媘ap.mp4 184.49M
- 092.C++文件流操作打开和关闭文件.mp4 119.02M
- 093.C++文件流写文本文件.mp4 50.06M
- 094.C++文件流读文本文件.mp4 75.94M
- 095.C++文件流写二进制文件.mp4 68.35M
- 096.C++文件流读二进制文件.mp4 63.00M
- 097.C++申请内存new和释放内存delete.mp4 83.93M
- 098.继承下的虚析构.mp4 95.45M
- 099.C++11下的单例模式.mp4 59.85M
- 101.C++状态机模式.mp4 101.01M
- 102.Win32窗口程序的入口函数.mp4 60.29M
- 104.Win32窗口的创建和显示.mp4 274.83M
- 105.消息循环和窗口过程.mp4 337.60M
- 106.常见的windows消息.mp4 231.85M
- 107.按钮的创建和消息响应.mp4 284.62M
- 108.按钮文本的设置和获取.mp4 110.33M
- 109.获取控件的ID和句柄.mp4 88.96M
- 110.控件的可见和启用.mp4 77.05M
- 111.对话框资源的创建.mp4 51.34M
- 112.单独显示非模态对话框.mp4 185.17M
- 113.父窗口中创建非模态对话框.mp4 71.37M
- 114.单独创建模态对话框.mp4 92.72M
- 115.父窗口中创建模态对话框.mp4 219.03M
- 116.自定义消息和两种发消息方式.mp4 172.79M
- 117.绐楀彛鍧愭爣.mp4 203.62M
- 119.MFC项目的创建和架构介绍.mp4 217.51M
- 120.简单的介绍下MFC封装的一些数据类.mp4 256.92M
- 121.MFC添加消息映射函数.mp4 134.04M
- 122.MFC添加自定义消息映射函数.mp4 168.18M
- 123.MFC创建和初始化的回调函数.mp4 169.32M
- 124.MFC模态对话框和结束流程.mp4 81.17M
- 125.MFC非模态窗口和结束流程-1.mp4 136.11M
- 125.MFC非模态窗口和结束流程-2.mp4 149.74M
- 126.MFC按钮和静态文本的添加和使用.mp4 243.34M
- 127.MFC编辑框和选择框的添加和使用.mp4 206.46M
- 128.MFC组合下拉框的添加和使用.mp4 111.84M
- 129.MFC列表框List的添加和使用.mp4 82.60M
- 130.MFC列表框List Control的添加和使用.mp4 257.75M
- 131.MFC标签Tab Control的添加和使用.mp4 292.37M
- 132.MFC菜单的添加和使用.mp4 171.05M
- 133.MFC文件类CFile的操作.mp4 174.43M
- 134.MFC文件类CStdioFile的使用.mp4 101.55M
- 135.MFC文件对话框CFileDialog的使用.mp4 133.58M
- 136.MFC文件查找类CFileFind的使用.mp4 99.87M
- 137.MFC应用程序类的配置文件.mp4 189.86M
- 138.MFC热键的添加和使用.mp4 122.46M
- 139.win32文件夹对话框.mp4 127.73M
- 140.进程和线程的概念.mp4 89.80M
- 141.如何创建一个线程.mp4 424.38M
- 142.如何终止一个线程.mp4 268.68M
- 143.调试模式下的暂停和恢复线程.mp4 158.91M
- 144.安全的暂停和恢复线程.mp4 141.05M
- 145.如何遍历当前进程的所有线程.mp4 163.58M
- 146.如何创建一个进程.mp4 380.23M
- 147.如何以管理员的方式创建进程.mp4 210.92M
- 148.如何监控一个进程的关闭.mp4 159.69M
- 149.设置和获取进程的命令行参数.mp4 83.50M
- 150.如何打开一个进程去操作.mp4 123.02M
- 151.进程的3种终止方式.mp4 166.78M
- 152.如何遍历所有进程.mp4 198.65M
- 153.模块的概念和获取模块信息.mp4 223.00M
- 154.获取某进程的所有模块信息.mp4 286.60M
- 155.窗口的基本操作和实战小工具.mp4 290.00M
- 156.枚举当前所有顶级窗口和实战小工具.mp4 232.80M
- 157.线程中锁的需求和锁的概念.mp4 99.22M
- 158.临界区的本质和使用.mp4 105.04M
- 159.巧妙运用类封装临界区2种方法.mp4 168.07M
- 160.灵活运用C++互斥量.mp4 89.45M
- 161.事件的概念和使用小案例.mp4 222.10M
- 162.利用事件实现暂停和恢复以及结束线程.mp4 115.33M
- 163.利用事件实现多进程的控制.mp4 74.36M
- 164.利用事件实现进程单开.mp4 47.90M
- 165.互斥体的概念和API介绍.mp4 70.05M
- 166.利用互斥体实现进程同步和单开.mp4 90.38M
- 167.静态链接库和动态链接库的概念和区别.mp4 58.57M
- 168.静态链接库的编译和使用.mp4 56.84M
- 169.动态链接库的编译和使用.mp4 349.01M
- 170.MFC窗口DLL的创建和注意事项.mp4 286.99M
- 171.添加本地资源和释放资源到本地.mp4 341.81M
- 172.解压ZIP文件到指定目录.mp4 255.76M
- 173.递归拷贝和覆盖文件.mp4 280.43M
- 174.递归删除文件.mp4 75.17M
- 175.配置文件ini的读写操作.mp4 119.19M
- 176.获取配置文件中所有的Section.mp4 129.41M
- 177.剪切板的使用和注意事项.mp4 63.95M
- 178.TCP协议 IP 端口的概念.mp4 105.72M
- 179.简易CS架构流程图的介绍.mp4 77.60M
- 180.TCP服务器的代码实现.mp4 428.32M
- 181.TCP客户端的代码实现.mp4 249.78M
- 182.沾包和拆包的概念.mp4 46.23M
- 183.HP网络库的介绍和环境配置.mp4 245.97M
- 184.HP网络库之服务器代码的编写.mp4 371.00M
- 185.HP网络库之服务器拆包逻辑的实现.mp4 175.30M
- 186.HP网络库之客户端类的编写.mp4 208.61M
- 187.HP网络库之服务器类的使用.mp4 111.92M
- 188.HP网络库之客户端类的使用.mp4 225.37M
- 189.聊天软件之服务器的编写.mp4 282.78M
- 190.聊天软件之客户端的编写.mp4 139.27M
- 191.进程通讯之共享内存.mp4 263.79M
- 192.DuiLib界面库的介绍和环境搭建.mp4 153.57M
- 193.DuiLib界面库之一个简单的窗口.mp4 286.78M
- 194.DuiLib界面库之按钮的消息响应.mp4 116.23M
- 195.Duilib界面库之屏蔽标题栏和XML配置.mp4 441.37M
- 196.Duilib界面库之基础类的使用.mp4 123.23M
- 197.Duilib界面库之水平垂直布局和绝对相对定位.mp4 422.02M
- 198.Duilib界面库之自绘标题栏的实现.mp4 203.75M
- 199.Duilib界面库之登录器界面的设计.mp4 122.82M
- 200.Duilib界面库之截获Win32消息以及分析源码.mp4 251.26M
- 201.Duilib界面库之消息映射.mp4 188.57M
- 202.DuiLib界面库之按钮的使用.mp4 379.90M
- 203.DuiLib界面库之静态文本和标签的使用.mp4 219.12M
- 204.Duilib界面库之编辑框的使用.mp4 319.23M
- 205.Duilib界面库之选择框的使用和源码分析.mp4 285.13M
- 206.Duilib界面库之下拉框的使用.mp4 303.13M
- 207.DuiLib界面库之列表框的使用.mp4 505.21M
- 208.Duilib界面库之动画标签页的使用.mp4 250.99M
- 209.DuiLib界面库之菜单的使用.mp4 358.13M
- 210.DuiLib界面库之消息框类的使用.mp4 148.46M
- 211.Duilib界面库之自定义默认样式和字体库.mp4 110.75M
- 212.Duilib界面库之使用ZIP压缩资源和文件资源.mp4 227.41M
- 213.D3D9之环境搭建和Win32窗口初始化.mp4 164.17M
- 214.D3D9之D3D9设备的初始化.mp4 263.87M
- 215.D3D9之封装D3D9窗口框架.mp4 131.15M
- 217.D3D9之三角形单元和顶点索引.mp4 97.06M
- 218.D3D9流水线之局部坐标系和世界坐标系.mp4 114.87M
- 219.D3D9流水线之观察坐标系取景矩阵.mp4 77.00M
- 220.D3D9流水线之背面消隐和光照.mp4 74.02M
- 221.D3D9流水线之裁剪 正交投影和透视投影.mp4 103.63M
- 222.D3D9流水线之视口变换和光栅化.mp4 71.32M
- 223.D3D9之创建顶点缓存.mp4 147.92M
- 迪大学院逆向课程/




