如何阅读VC调试的反汇编

rongewu2006 2012-11-08 03:03:15
请问各位,VC调试的时候出现的反汇编怎么看,比如我的程序出现了内存泄漏,然后点调试出现出错的反汇编代码位置,我要怎么看 定位到程序的代码;这方面我是个新手 请各位多多指教 谢谢!
...全文
168 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
mcaok 2013-01-16
  • 打赏
  • 举报
回复
不过内存泄露还是用工具查快一些。如:Visual Leak Detector
mcaok 2013-01-16
  • 打赏
  • 举报
回复
先把汇编学好,然后看看逆向方面的书。有一本叫C++反汇编与逆向分析技术的书挺适合初学者的。
LiuYinChina 2013-01-11
  • 打赏
  • 举报
回复
http://blog.csdn.net/robertbaker/article/details/6362012
MoreWindows 2013-01-08
  • 打赏
  • 举报
回复
这个容易,调试时在代码窗口的右键菜单中选择“Go To Disassembly” 然后就是这样了:

10:   int main()
11:   {
00401100   push        ebp
00401101   mov         ebp,esp
00401103   sub         esp,6Ch
00401106   push        ebx
00401107   push        esi
00401108   push        edi
00401109   lea         edi,[ebp-6Ch]
0040110C   mov         ecx,1Bh
00401111   mov         eax,0CCCCCCCCh
00401116   rep stos    dword ptr [edi]
12:       printf(" -- by MoreWindows( http://blog.csdn.net/MoreWindows ) --\n\n");
00401118   push        offset string " -- by MoreWindows( http://blog."... (0042202c)
0040111D   call        printf (004015a0)
00401122   add         esp,4
13:
14:       const int MAXN = 10;
00401125   mov         dword ptr [ebp-4],0Ah
15:       int a[MAXN] = {2, 4, 1, 5, 7,  6, 1, 9, 0, 2};
0040112C   mov         dword ptr [ebp-2Ch],2
00401133   mov         dword ptr [ebp-28h],4
0040113A   mov         dword ptr [ebp-24h],1
00401141   mov         dword ptr [ebp-20h],5
00401148   mov         dword ptr [ebp-1Ch],7
0040114F   mov         dword ptr [ebp-18h],6
00401156   mov         dword ptr [ebp-14h],1
0040115D   mov         dword ptr [ebp-10h],9
00401164   mov         dword ptr [ebp-0Ch],0
0040116B   mov         dword ptr [ebp-8],2
brikehuang 2013-01-08
  • 打赏
  • 举报
回复
1. 得懂ASM 2. 可以试试call stack去定位到c++代码

15,472

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 进程/线程/DLL
社区管理员
  • 进程/线程/DLL社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧