| 如何计算PE头部校验和 |
|
| 作者:未知 文章来源:网络收集 点击数: 更新时间:2006-3-29 15:47:59
|
| ;你应该已经见过LoadPE的校正PE头checksum的功能,想给你自己的工具加一个这种功能? ;yes,it's easy!let's GO!GO!GO! ; ;PE checksum计算算法: ;PE文件修改的时候一般可不用计算checksum,但是由于OS对系统文件校验其checksum ;因此修改PE的时候有时会需要更新其checksum值,一般可以用imagehelp.dll中的函数 ;进行计算,不过实际上这玩意很简单,我们完全可以自己来做.假设PE文件大小x,若为奇数 字节则用0补足文件使x为偶数,然后取文件中所有的字进行带进位加法操作(adc),最后和 ;文件大小进行带进位加法操作(adc)得到结果即为checksum结果.当然在计算前应置pe.CheckSum域为0. ;具体见下面的cal_checksum例程. ;enjoy it. ; YJ.Hume.冷雨
include '%fasinc%/win32a.inc' include '%fasinc%/pestruc.h' struc OPENFILENAME { .lStructSize dd ? .hwndOwner dd ? .hInstance dd ? .lpstrFilter dd ? .lpstrCustomFilter dd ? .nMaxCustFilter dd ? .nFilterIndex dd ? .lpstrFile dd& [1] [2] [3] [4] [5] [6] 下一页
|
|
[ 收藏此页到: 天天|和讯|博采|ViVi|狐摘|我摘|天极 ] 文章录入:kinda 责任编辑:kinda |
|
上一篇文章: 一段wincommander5.1的smc破解代码 下一篇文章: 调用PE文件中引入表中的函数的方法 |
| 【字体:小 大】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口】 |