摘要: 第十五课 c语言8 switch语句 初步测试感觉switch在反汇编的语句和if语句的唯一差别就是jcc语句比较集中当分支大于四条时,switch的反汇编开始变3为switch传入的值,1是case最小值,4是case最大值减1,算出偏移量后通过偏移量4加上基址就可以在大表中获取要输出的case语 阅读全文
posted @ 2024-03-14 14:48 小新07 阅读(36) 评论(0) 推荐(0) 编辑
摘要: 第十三课 c语言6 1.函数返回值 函数如果有返回值,他在函数内会把结果放在寄存器里面,出了函数后把寄存器里的值传递给变量,根据数据类型编译器自己选择几位寄存器(默认eax寄存器),char类型就选择al,short类型就选择ax,int类型就选择eax 2.函数参数传递 参数传递时到push压栈时 阅读全文
posted @ 2024-03-14 14:43 小新07 阅读(23) 评论(0) 推荐(0) 编辑
摘要: 第十课 c语言3 1.编码 ASCII 标准的ASCII编码只需要七位,第八位在拓展ASCII编码使用 GB2312 2.局部变量和全局变量 下面代码输出结果为1111(x=11改变了全局的x) 第十一课 c语言4 1.内存图 2.逆向参数个数 3.简单逆向if代码 4.if...else...反汇 阅读全文
posted @ 2024-03-14 13:25 小新07 阅读(34) 评论(0) 推荐(0) 编辑
摘要: 第七课 堆栈图 1.函数 函数的入口汇编中的函数函数有入口出口,但不一定有返回值和参数 2、堆栈 windows堆栈:什么是堆栈平衡: 第八课 c语言 分析这段代码的反编译 有时候跟反汇编不一定要进函数看,有时候从上下文就能大概猜出函数的作用 第九课 c语言2 1、什么是裸函数 可以看到plus1( 阅读全文
posted @ 2024-03-14 13:15 小新07 阅读(67) 评论(0) 推荐(0) 编辑
摘要: 第四课 内存地址_堆栈 内存地址 db与dd命令 db:d表示查找,b表示bytedd:d表示查找,d表示dworddb命令在数据区找出目的内存地址,发现数据区内和堆栈区显示的是相反的反汇编窗口和寄存器窗口的都是从高位到低位,数据区反之(比如数据0x12345678,12是高位,8是低位)所以001 阅读全文
posted @ 2024-03-14 10:36 小新07 阅读(116) 评论(0) 推荐(0) 编辑
摘要: 这个系列记录了我学习滴水逆向课程的所有笔记,所以只记录我认为需要总结的知识点,搭配b站滴水逆向三期课程食用更佳。 之前一直学习的是web安全方向,对二进制了解较少,所以笔记不当之处,请各位师傅批评指正,望包容。 阅读全文
posted @ 2024-03-14 10:26 小新07 阅读(158) 评论(0) 推荐(0) 编辑
摘要: 第一课 进制 这节课讲进制计算的核心就是查表例:3+5,就是从上表的3开始往后数五个数,10例:46则是看作6+6+6+6,6+6由上表可知为14,14再往后数12个数得出为46=30八进制复杂计算(文字比较难说明,但是大致还是和我们十进制的计算方式一样,只是九九乘法表换成上面三张表 作业 1.成立 阅读全文
posted @ 2024-03-14 10:22 小新07 阅读(113) 评论(0) 推荐(0) 编辑