随笔分类 -  win32汇编

【读书笔记】-PE导入表读取遇到的问题
摘要:1、 关于PE加载器加载PE文件与内存映射文件的区别;Pe加载器加载pe文件到内存,如用户点击一个应用程序时,pe加载器就开始进行例行工作,加载pe文件及所需的相关资源引用到内存;内存映射是将磁盘文件一模一样的映射到虚拟地址空间中;所以两者有个很重要的区别:就是对齐单位的不同;pe加载器加载pe文件到内存,使用的内存对齐4k大小;而内存映射文件则还是文件对齐的单位200k【当然是指默认的情况下】。因为上述情况,解释了我的一个疑惑,为什么很多读取导入表、导出表的程序中,会有一个很频繁的调用 _RvaToFileOffset 就是讲内存RVA转换为文件偏移;就是因为我们通常读取pe文件的一些信息都 阅读全文

posted @ 2012-04-24 17:35 james_moriarty 阅读(2037) 评论(0) 推荐(3)

【读书笔记】-串指令备注
摘要:;串指令;这里的 "串" 并不单指字符串, 包括所有连续的数据(如数组); 串指令只用于内存操作.;--------------------------------------------------------------------------------------------------;移动串指令: MOVSB、MOVSW、MOVSD ;从 ESI -> EDI; 执行后, ESI 与 EDI 的地址移动相应的单位;比较串指令: CMPSB、CMPSW、CMPSD ;比较 ESI、EDI; 执行后, ESI 与 EDI 的地址移动相应的单位;扫描串指令: S 阅读全文

posted @ 2012-04-17 09:53 james_moriarty 阅读(221) 评论(0) 推荐(0)

【读书笔记】-《windows PE 权威指南》-重定位
摘要:1 ;-------------------------------- 2 ;动态加载功能实现 3 ;moriarty 4 ;2012/04/13 5 ;-------------------------------- 6 .386 7 .model flat,stdcall 8 option casemap:none 9 10 include windows.inc 11 12 ;声明函数 13 _QLGetProcAddress typedef proto :dword, :dword 14 15 ;声明函数引用 16 _ApiGetProcAddr... 阅读全文

posted @ 2012-04-16 15:23 james_moriarty 阅读(823) 评论(0) 推荐(0)

导航