首页
社区
课程
招聘
[求助]关于bambam加壳源代码的疑问
发表于: 2008-6-10 18:05 4196

[求助]关于bambam加壳源代码的疑问

2008-6-10 18:05
4196
bambam源代码中有两点我不明白:
1, 在函数void CCompressDlg::PerformStubRelocations(LPVOID lpMapping, DWORD dwStubVA /*stub's VA*/)
中,有这么几行:
dwRelocation = dwRVAPage + wValue;
pAddress = (DWORD*)RVAToMappedOffset(dwRelocation, lpMapping);

DWORD dwTempAddress = (*pAddress) & 0x0000ffff;
dwSectionOffset = RVAToSectionRawDataSize(dwTempAddress, lpMapping);
dwVirtualAddress = RVAToSectionVirtualAddress(dwTempAddress, lpMapping);
                                       
dwDelta = dwSectionOffset + dwStubVA - pNtHdr->OptionalHeader.ImageBase - dwVirtualAddress; //?????????//  存在疑问
                                                                *pAddress = *pAddress + dwDelta;

这个dwDelta 的意义是什么?

2,int CCompressDlg::TranslateAddresses(BYTE* pBuffer, DWORD dwLength, DWORD dwSourceVA, DWORD dwDestinationVA, DWORD dwRVAPage)

这个函数到底是在转换什么地址?为什么需要转换?

请达人指点……先谢了……

[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)

收藏
免费 0
支持
分享
最新回复 (5)
雪    币: 201
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
怎么还是没人理呢?
希望看雪的老大哥看过来……
2008-6-10 21:18
0
雪    币: 201
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
难道没有人读过bambam吗?希望版主能帮一下忙,不胜感激。
2008-6-11 10:24
0
雪    币: 201
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
顶起来!
等待有人回答……
2008-6-11 17:19
0
雪    币: 50161
活跃值: (20625)
能力值: (RANK:350 )
在线值:
发帖
回帖
粉丝
5
静不下心细看,你对照PE结构理解一下。
看看是不是这帖所说的东西:http://bbs.pediy.com/showthread.php?s=&threadid=18022
2008-6-11 18:15
0
雪    币: 201
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
你的回答让我重新找回了信息,多谢坛主!
PE格式我已经读了好多遍,而且写了几个分析PE的小工具……
但就是理解不了bambam的源代码中的“TranslateAddresses”在干什么?为什么这么干?
2008-6-13 09:34
0
游客
登录 | 注册 方可回帖
返回
//