一用fixod就出错退出,经跟踪来到AutoPath.dll:
015AB14D 8D40 00 LEA EAX,DWORD PTR DS:[EAX]
015AB150 53 PUSH EBX
015AB151 56 PUSH ESI
015AB152 57 PUSH EDI
015AB153 8BF9 MOV EDI,ECX
015AB155 8BF2 MOV ESI,EDX
015AB157 8BD8 MOV EBX,EAX
015AB159 85F6 TEST ESI,ESI
015AB15B 7C 05 JL SHORT AUTOPATH.015AB162
015AB15D 3B73 1C CMP ESI,DWORD PTR DS:[EBX+1C]
015AB160 7C 0F JL SHORT AUTOPATH.015AB171
015AB162 8B15 FC086101 MOV EDX,DWORD PTR DS:[16108FC] ; AUTOPATH.015A4F78
015AB168 8BCE MOV ECX,ESI
015AB16A 8BC3 MOV EAX,EBX
015AB16C E8 EFF1FFFF CALL AUTOPATH.015AA360
015AB171 8BC7 MOV EAX,EDI;停在这里
015AB173 8B53 18 MOV EDX,DWORD PTR DS:[EBX+18]
015AB176 > 8B14F2 MOV EDX,DWORD PTR DS:[EDX+ESI*8]
这时寄存器:
EAX 0012F494
ECX 00000000
EDX 015AB171 AUTOPATH.015AB171
EBX 01FD5E80 ASCII "List index out of bounds (%d)"
ESP 0012F4FC
EBP 0012F548
ESI 0000001C
EDI 0000001C
EIP 015AB171 AUTOPATH.015AB171
怎么会超出list呢?
似乎是在读取autopath.ini[中文]列表时出错。
缺省该条目中文项有29条,难道有28(0x1C)的限制?
修改autopath.ini,去掉About=关于,保存,设为只读。
经对015AB176地址设置记录得到:
文件 'K:\utilities\OllyDBG_1.10\Ollydbg.exe'
ID 000004A0 的新进程已经创建
00401000 ID 000000DC 的主要线程已经创建
00400000 模块 K:\utilities\OllyDBG_1.10\Ollydbg.exe
导入表查找表格超出了 .idata 的范围
01590000 模块 K:\utilities\OllyDBG_1.10\AUTOPATH.DLL
71710000 模块 C:\WINNT\system32\COMCTL32.DLL
75950000 模块 C:\WINNT\system32\LZ32.DLL
76AF0000 模块 C:\WINNT\system32\COMDLG32.DLL
772A0000 模块 C:\WINNT\system32\SHLWAPI.DLL
777E0000 模块 C:\WINNT\system32\VERSION.DLL
77990000 模块 C:\WINNT\system32\oleaut32.dll
77DF0000 模块 C:\WINNT\system32\USER32.dll
77E60000 模块 C:\WINNT\system32\KERNEL32.dll
77F40000 模块 C:\WINNT\system32\GDI32.dll
77F80000 模块 C:\WINNT\system32\ntdll.dll
78000000 模块 C:\WINNT\system32\msvcrt.dll
786F0000 模块 C:\WINNT\system32\RPCRT4.dll
78F90000 模块 C:\WINNT\system32\SHELL32.DLL
796D0000 模块 C:\WINNT\system32\ADVAPI32.DLL
7CF00000 模块 C:\WINNT\system32\OLE32.DLL
中断在新的模块
IsDebugPresent hidden
75E00000 模块 C:\WINNT\system32\IMM32.DLL
中断在新的模块
6C330000 模块 C:\WINNT\system32\LPK.DLL
中断在新的模块
65D20000 模块 C:\WINNT\system32\USP10.dll
中断在新的模块
60000000 模块 C:\WINNT\system32\MSCTF.dll
015AB173 中断在 AUTOPATH.015AB173
015AB173 中断在 AUTOPATH.015AB173
015AB176 中断在 AUTOPATH.015AB176
015AB173 中断在 AUTOPATH.015AB173
015AB176 COND: look = 01FD5DE8 "计算机"
015AB176 中断在 AUTOPATH.015AB176
015AB173 中断在 AUTOPATH.015AB173
015AB176 COND: look = 01FD5DE8 "计算机"
015AB176 中断在 AUTOPATH.015AB176
015AB173 中断在 AUTOPATH.015AB173
015AB176 COND: look = 01FD6060 "简体中文"
015AB176 中断在 AUTOPATH.015AB176
015AB173 中断在 AUTOPATH.015AB173
015AB176 COND: look = 01FD6060 "简体中文"
015AB176 中断在 AUTOPATH.015AB176
015AB173 中断在 AUTOPATH.015AB173
015AB176 COND: look = 01FD6078 "EngLish"
015AB176 中断在 AUTOPATH.015AB176
015AB173 中断在 AUTOPATH.015AB173
015AB176 COND: look = 01FD6078 "EngLish"
015AB176 中断在 AUTOPATH.015AB176
00401000 程序入口
正在分析 Ollydbg
1013 个启发式已经处理
4601 个调用关联已知,7966 个调用关联到推测的函数
1577 Loops,195 个切换
015AB173 中断在 AUTOPATH.015AB173
015AB176 COND: look = 01FD5E28 "记事本=c:\windows\System32\notepad.exe"
015AB176 中断在 AUTOPATH.015AB176
015AB173 中断在 AUTOPATH.015AB173
015AB176 COND: look = 01FD5E28 "记事本=c:\windows\System32\notepad.exe"
015AB176 中断在 AUTOPATH.015AB176
015AB173 中断在 AUTOPATH.015AB173
015AB176 COND: look = 01FD5EAC "计算机=c:\windows\system32\calc.exe"
015AB176 中断在 AUTOPATH.015AB176
015AB173 中断在 AUTOPATH.015AB173
015AB176 COND: look = 01FD5EAC "计算机=c:\windows\system32\calc.exe"
015AB176 中断在 AUTOPATH.015AB176
015AB173 中断在 AUTOPATH.015AB173
015AB176 COND: look = 01FD1DAC "简体中文=简体中文"
015AB176 中断在 AUTOPATH.015AB176
015AB173 中断在 AUTOPATH.015AB173
015AB176 COND: look = 01FD1DAC "简体中文=简体中文"
015AB176 中断在 AUTOPATH.015AB176
015AB173 中断在 AUTOPATH.015AB173
015AB176 COND: look = 01FD1E04 "EngLish=EngLish"
015AB176 中断在 AUTOPATH.015AB176
015AB173 中断在 AUTOPATH.015AB173
015AB176 COND: look = 01FD1E04 "EngLish=EngLish"
015AB176 中断在 AUTOPATH.015AB176
015AB173 中断在 AUTOPATH.015AB173
015AB176 COND: look = 01FD1DAC "简体中文=简体中文"
015AB176 中断在 AUTOPATH.015AB176
015AB173 中断在 AUTOPATH.015AB173
015AB176 COND: look = 01FD1DAC "简体中文=简体中文"
015AB176 中断在 AUTOPATH.015AB176
015AB173 中断在 AUTOPATH.015AB173
015AB176 COND: look = 01FD1DAC "简体中文=简体中文"
015AB176 中断在 AUTOPATH.015AB176
015AB173 中断在 AUTOPATH.015AB173
015AB176 COND: look = 01FD1DAC "简体中文=简体中文"
015AB176 中断在 AUTOPATH.015AB176
015AB173 中断在 AUTOPATH.015AB173
015AB176 COND: look = 01FD1E04 "EngLish=EngLish"
015AB176 中断在 AUTOPATH.015AB176
015AB173 中断在 AUTOPATH.015AB173
015AB176 COND: look = 01FD1E04 "EngLish=EngLish"
015AB176 中断在 AUTOPATH.015AB176
3B030000 模块 C:\WINNT\system32\IMSC40A.IME
10000000 模块 C:\WINNT\mui\fallback\0804\msctf.dll.mui
687E0000 模块 K:\utilities\OllyDBG_1.10\PSAPI.DLL
77900000 模块 C:\WINNT\system32\IMAGEHLP.DLL
08480000 模块 K:\utilities\OllyDBG_1.10\PLUGIN\AJunk.dll
72960000 模块 C:\WINNT\system32\DBGHELP.DLL
777C0000 模块 C:\WINNT\system32\WINSPOOL.DRV
084B0000 模块 K:\utilities\OllyDBG_1.10\PLUGIN\ApiBreak.dll
79B20000 模块 C:\WINNT\system32\MPR.DLL
084C0000 模块 K:\utilities\OllyDBG_1.10\PLUGIN\Asm2Clipboard.dll
085E0000 模块 K:\utilities\OllyDBG_1.10\PLUGIN\BOOKMARK.DLL
08A20000 模块 K:\utilities\OllyDBG_1.10\PLUGIN\CleanupEx.dll
08E60000 模块 K:\utilities\OllyDBG_1.10\PLUGIN\CmdBar.dll
09280000 模块 K:\utilities\OllyDBG_1.10\PLUGIN\CMDLINE.DLL
096A0000 模块 K:\utilities\OllyDBG_1.10\PLUGIN\DeJunk.dll
097C0000 模块 K:\utilities\OllyDBG_1.10\PLUGIN\extracopy.dll
098E0000 模块 K:\utilities\OllyDBG_1.10\PLUGIN\GODUP.dll
09AE0000 模块 K:\utilities\OllyDBG_1.10\PLUGIN\HideCapt.dll
09F00000 模块 K:\utilities\OllyDBG_1.10\PLUGIN\HideDebugger.dll
09F10000 模块 K:\utilities\OllyDBG_1.10\PLUGIN\IsDebug V1.4.dll
09F20000 模块 K:\utilities\OllyDBG_1.10\PLUGIN\Labeler.dll
0A350000 模块 K:\utilities\OllyDBG_1.10\PLUGIN\Labelmaster.dll
0A770000 模块 K:\utilities\OllyDBG_1.10\PLUGIN\LoadMap.dll
0A790000 模块 K:\utilities\OllyDBG_1.10\PLUGIN\MapConv.dll
0A8C0000 模块 K:\utilities\OllyDBG_1.10\PLUGIN\MemoryManage.dll
0A8F0000 模块 K:\utilities\OllyDBG_1.10\PLUGIN\ODbgScript.dll
0AA40000 模块 K:\utilities\OllyDBG_1.10\PLUGIN\OllyDump.dll
780C0000 模块 C:\WINNT\system32\MSVCP60.dll
0AED0000 模块 K:\utilities\OllyDBG_1.10\PLUGIN\OllyFlow.dll
0B300000 模块 K:\utilities\OllyDBG_1.10\PLUGIN\OllyHelper.dll
0B330000 模块 K:\utilities\OllyDBG_1.10\PLUGIN\OllyMachine.dll
6BC40000 模块 C:\WINNT\system32\MFC42.DLL
0B370000 模块 K:\utilities\OllyDBG_1.10\PLUGIN\OllyScript.dll
6BC20000 模块 C:\WINNT\system32\MFC42LOC.DLL
0B3C0000 模块 K:\utilities\OllyDBG_1.10\PLUGIN\pedumper.dll
0B450000 模块 K:\utilities\OllyDBG_1.10\PLUGIN\StayOntop.dll
0B451000 Code size in header is 00000000, extending to size of section '.rdata'
0B460000 模块 K:\utilities\OllyDBG_1.10\PLUGIN\TracKid.dll
0B580000 模块 K:\utilities\OllyDBG_1.10\PLUGIN\UnhExcFlt.DLL
0B590000 模块 K:\utilities\OllyDBG_1.10\PLUGIN\ustrrefadd.dll
0B6E0000 模块 K:\utilities\OllyDBG_1.10\PLUGIN\WatchMan.dll
0BB00000 模块 K:\utilities\OllyDBG_1.10\PLUGIN\windowinfos.dll
0BB01000 Code size in header is 00000000, extending to size of section '.rdata'
0BB10000 模块 K:\utilities\OllyDBG_1.10\PLUGIN\windowjuggler.dll
77E6B700 ID 00000424 的新线程已经创建
77E6B700 ID 0000041C 的新线程已经创建
到这里,OD似乎又不出错了。但再试,又出错了。
用od原版调式仅出现1次未出错,其他运行均出错。
我菜,帮忙分析一下。
我平台为WIN2K+SP4