麻烦大家看看,这是个什么壳,用peid查,显示vb5/6,但是用od打开后,里面除了头部的vb函数定义之外,其余代码全是db XX这种形式表示。
下面是文件头部代码,麻烦大家看看,指点一下
该程序下载地址
http://www.4shared.com/file/4916351/e895461a/autoplay.html
00401000 > . 4EC10D66 DD MSVBVM60.rtcRgb
00401004 > . 993C1066 DD MSVBVM60.MethCallEngine
00401008 > . 646A0E66 DD MSVBVM60.rtcLowerCaseVar
0040100C > . 611B0D66 DD MSVBVM60.rtcSetTimeVar
00401010 > . 5A170D66 DD MSVBVM60.rtcGetDayOfWeek
00401014 > . 91160D66 DD MSVBVM60.rtcGetYear
00401018 > . AB580F66 DD MSVBVM60.rtcVarFromFormatVar
0040101C > . F3C50D66 DD MSVBVM60.rtcMsgBox
00401020 > . 7EDC0C66 DD MSVBVM60.rtcDoEvents
00401024 > . E56A0E66 DD MSVBVM60.rtcTrimVar
00401028 > . 186D0E66 DD MSVBVM60.rtcLeftTrimVar
0040102C > . 2B6F0E66 DD MSVBVM60.rtcRightTrimVar
00401030 > . A6640E66 DD MSVBVM60.rtcMidCharBstr
00401034 > . F3640E66 DD MSVBVM60.rtcMidCharVar
00401038 > . 949A0C66 DD MSVBVM60.EVENT_SINK_AddRef
0040103C > . 17740E66 DD MSVBVM60.rtcUpperCaseVar
00401040 > . BB580D66 DD MSVBVM60.rtcKillFiles
00401044 > . 19A00066 DD MSVBVM60.DllFunctionCall
00401048 > . A79A0C66 DD MSVBVM60.EVENT_SINK_Release
0040104C > . 88CD0C66 DD MSVBVM60.rtcShell
00401050 > . A5990C66 DD MSVBVM60.EVENT_SINK_QueryInterface
00401054 > . A43C0E66 DD MSVBVM60.__vbaExceptHandler
00401058 > . 08040E66 DD MSVBVM60.rtcVarBstrFromAnsi
0040105C > . 56840E66 DD MSVBVM60.rtcStrConvVar2
00401060 > . 5DD00F66 DD MSVBVM60.ProcCallEngine
00401064 > . 1EBD0D66 DD MSVBVM60.rtcGetTimer
00401068 > . 87FC0D66 DD MSVBVM60.rtcStrFromVar
0040106C > . 714F0D66 DD MSVBVM60.rtcDir
00401070 > . DC4A0E66 DD MSVBVM60.rtcFileLength
00401074 > . AC3E0D66 DD MSVBVM60.rtcEndOfFile
00401078 > . 33080E66 DD MSVBVM60.rtcHexVarFromVar
0040107C > . A4CF0D66 DD MSVBVM60.rtcImmediateIf
00401080 > . 2FE40D66 DD MSVBVM60.rtcErrObj
00401084 > . 7C350066 DD MSVBVM60.ThunRTMain
00401088 > . 331E0D66 DD MSVBVM60.rtcGetDateVar
0040108C > . 751E0D66 DD MSVBVM60.rtcGetTimeVar
00401090 > . 5E620E66 DD MSVBVM60.rtcLeftCharBstr
00401094 > . 71620E66 DD MSVBVM60.rtcLeftCharVar
00401098 > . 62630E66 DD MSVBVM60.rtcRightCharBstr
0040109C > . 75630E66 DD MSVBVM60.rtcRightCharVar
004010A0 > . 17170D66 DD MSVBVM60.rtcGetDayOfMonth
004010A4 > . CA170D66 DD MSVBVM60.rtcGetHourOfDay
004010A8 > . C8570F66 DD MSVBVM60.rtcBstrFromFormatVar
004010AC > . 0D180D66 DD MSVBVM60.rtcGetMinuteOfHour
004010B0 > . D4160D66 DD MSVBVM60.rtcGetMonthOfYear
004010B4 > . 93180D66 DD MSVBVM60.rtcGetPresentDate
004010B8 > . 50180D66 DD MSVBVM60.rtcGetSecondOfMinute
004010BC > . D42D0D66 DD MSVBVM60.rtcR8ValFromBstr
004010C0 . 00000000 DD 00000000
004010C4 00 DB 00
004010C5 00 DB 00
004010C6 00 DB 00
004010C7 00 DB 00
004010C8 00 DB 00
004010C9 00 DB 00
004010CA 00 DB 00
004010CB 00 DB 00
004010CC 00 DB 00
004010CD 00 DB 00
004010CE 00 DB 00
004010CF 00 DB 00
004010D0 .- FF25 44104000 JMP DWORD PTR DS:[<&MSVBVM60.DllFunctionCall>] ; MSVBVM60.DllFunctionCall
004010D6 .- FF25 58104000 JMP DWORD PTR DS:[<&MSVBVM60.#608>] ; MSVBVM60.rtcVarBstrFromAnsi
004010DC .- FF25 94104000 JMP DWORD PTR DS:[<&MSVBVM60.#617>] ; MSVBVM60.rtcLeftCharVar
004010E2 .- FF25 4C104000 JMP DWORD PTR DS:[<&MSVBVM60.#600>] ; MSVBVM60.rtcShell
004010E8 .- FF25 34104000 JMP DWORD PTR DS:[<&MSVBVM60.#632>] ; MSVBVM60.rtcMidCharVar
004010EE .- FF25 A8104000 JMP DWORD PTR DS:[<&MSVBVM60.#650>] ; MSVBVM60.rtcBstrFromFormatVar
004010F4 .- FF25 90104000 JMP DWORD PTR DS:[<&MSVBVM60.#616>] ; MSVBVM60.rtcLeftCharBstr
004010FA .- FF25 BC104000 JMP DWORD PTR DS:[<&MSVBVM60.#581>] ; MSVBVM60.rtcR8ValFromBstr
00401100 .- FF25 30104000 JMP DWORD PTR DS:[<&MSVBVM60.#631>] ; MSVBVM60.rtcMidCharBstr
00401106 .- FF25 98104000 JMP DWORD PTR DS:[<&MSVBVM60.#618>] ; MSVBVM60.rtcRightCharBstr
0040110C .- FF25 3C104000 JMP DWORD PTR DS:[<&MSVBVM60.#528>] ; MSVBVM60.rtcUpperCaseVar
00401112 .- FF25 24104000 JMP DWORD PTR DS:[<&MSVBVM60.#520>] ; MSVBVM60.rtcTrimVar
00401118 .- FF25 6C104000 JMP DWORD PTR DS:[<&MSVBVM60.#645>] ; MSVBVM60.rtcDir
0040111E .- FF25 00104000 JMP DWORD PTR DS:[<&MSVBVM60.#588>] ; MSVBVM60.rtcRgb
00401124 .- FF25 08104000 JMP DWORD PTR DS:[<&MSVBVM60.#518>] ; MSVBVM60.rtcLowerCaseVar
0040112A .- FF25 40104000 JMP DWORD PTR DS:[<&MSVBVM60.#529>] ; MSVBVM60.rtcKillFiles
00401130 .- FF25 80104000 JMP DWORD PTR DS:[<&MSVBVM60.#685>] ; MSVBVM60.rtcErrObj
00401136 .- FF25 64104000 JMP DWORD PTR DS:[<&MSVBVM60.#535>] ; MSVBVM60.rtcGetTimer
0040113C .- FF25 7C104000 JMP DWORD PTR DS:[<&MSVBVM60.#681>] ; MSVBVM60.rtcImmediateIf
00401142 .- FF25 1C104000 JMP DWORD PTR DS:[<&MSVBVM60.#595>] ; MSVBVM60.rtcMsgBox
00401148 .- FF25 2C104000 JMP DWORD PTR DS:[<&MSVBVM60.#524>] ; MSVBVM60.rtcRightTrimVar
0040114E .- FF25 70104000 JMP DWORD PTR DS:[<&MSVBVM60.#570>] ; MSVBVM60.rtcFileLength
00401154 .- FF25 68104000 JMP DWORD PTR DS:[<&MSVBVM60.#536>] ; MSVBVM60.rtcStrFromVar
0040115A .- FF25 8C104000 JMP DWORD PTR DS:[<&MSVBVM60.#612>] ; MSVBVM60.rtcGetTimeVar
00401160 .- FF25 A4104000 JMP DWORD PTR DS:[<&MSVBVM60.#543>] ; MSVBVM60.rtcGetHourOfDay
00401166 .- FF25 AC104000 JMP DWORD PTR DS:[<&MSVBVM60.#544>] ; MSVBVM60.rtcGetMinuteOfHour
0040116C .- FF25 B8104000 JMP DWORD PTR DS:[<&MSVBVM60.#547>] ; MSVBVM60.rtcGetSecondOfMinute
00401172 .- FF25 88104000 JMP DWORD PTR DS:[<&MSVBVM60.#610>] ; MSVBVM60.rtcGetDateVar
00401178 .- FF25 74104000 JMP DWORD PTR DS:[<&MSVBVM60.#571>] ; MSVBVM60.rtcEndOfFile
0040117E .- FF25 5C104000 JMP DWORD PTR DS:[<&MSVBVM60.#717>] ; MSVBVM60.rtcStrConvVar2
00401184 .- FF25 18104000 JMP DWORD PTR DS:[<&MSVBVM60.#660>] ; MSVBVM60.rtcVarFromFormatVar
0040118A .- FF25 20104000 JMP DWORD PTR DS:[<&MSVBVM60.#598>] ; MSVBVM60.rtcDoEvents
00401190 .- FF25 9C104000 JMP DWORD PTR DS:[<&MSVBVM60.#619>] ; MSVBVM60.rtcRightCharVar
00401196 .- FF25 A0104000 JMP DWORD PTR DS:[<&MSVBVM60.#542>] ; MSVBVM60.rtcGetDayOfMonth
0040119C .- FF25 B0104000 JMP DWORD PTR DS:[<&MSVBVM60.#545>] ; MSVBVM60.rtcGetMonthOfYear
004011A2 FF DB FF
004011A3 25 DB 25 ; CHAR '%'
004011A4 14104000 DD <&MSVBVM60.#553>
004011A8 .- FF25 28104000 JMP DWORD PTR DS:[<&MSVBVM60.#522>] ; MSVBVM60.rtcLeftTrimVar
004011AE .- FF25 B4104000 JMP DWORD PTR DS:[<&MSVBVM60.#546>] ; MSVBVM60.rtcGetPresentDate
004011B4 .- FF25 10104000 JMP DWORD PTR DS:[<&MSVBVM60.#552>] ; MSVBVM60.rtcGetDayOfWeek
004011BA .- FF25 78104000 JMP DWORD PTR DS:[<&MSVBVM60.#573>] ; MSVBVM60.rtcHexVarFromVar
004011C0 .- FF25 0C104000 JMP DWORD PTR DS:[<&MSVBVM60.#550>] ; MSVBVM60.rtcSetTimeVar
004011C6 .- FF25 54104000 JMP DWORD PTR DS:[<&MSVBVM60.__vbaExceptHandler>] ; MSVBVM60.__vbaExceptHandler
004011CC .- FF25 50104000 JMP DWORD PTR DS:[<&MSVBVM60.EVENT_SINK_QueryInterface>] ; MSVBVM60.EVENT_SINK_QueryInterface
004011D2 .- FF25 38104000 JMP DWORD PTR DS:[<&MSVBVM60.EVENT_SINK_AddRef>] ; MSVBVM60.EVENT_SINK_AddRef
004011D8 .- FF25 48104000 JMP DWORD PTR DS:[<&MSVBVM60.EVENT_SINK_Release>] ; MSVBVM60.EVENT_SINK_Release
004011DE .- FF25 04104000 JMP DWORD PTR DS:[<&MSVBVM60.MethCallEngine>] ; MSVBVM60.MethCallEngine
004011E4 .- FF25 60104000 JMP DWORD PTR DS:[<&MSVBVM60.ProcCallEngine>] ; MSVBVM60.ProcCallEngine
004011EA $- FF25 84104000 JMP DWORD PTR DS:[<&MSVBVM60.#100>] ; MSVBVM60.ThunRTMain
004011F0 > $ 68 68E44000 PUSH Autoplay.0040E468 ; ASCII "VB5!6&vb6chs.dll" “这里是程序入口点”
004011F5 . E8 F0FFFFFF CALL <JMP.&MSVBVM60.#100>
004011FA . 0000 ADD BYTE PTR DS:[EAX],AL
004011FC . 48 DEC EAX
004011FD . 0000 ADD BYTE PTR DS:[EAX],AL
004011FF . 0030 ADD BYTE PTR DS:[EAX],DH
00401201 . 0000 ADD BYTE PTR DS:[EAX],AL
00401203 . 0040 00 ADD BYTE PTR DS:[EAX],AL
00401206 . 0000 ADD BYTE PTR DS:[EAX],AL
00401208 . 0000 ADD BYTE PTR DS:[EAX],AL
0040120A . 0000 ADD BYTE PTR DS:[EAX],AL
0040120C . 43 INC EBX
0040120D ? 2C 02 SUB AL,2
0040120F ? BC B7E98542 MOV ESP,4285E9B7
00401214 ? A2 19C8BA38 MOV BYTE PTR DS:[38BAC819],AL
00401219 ? B7 3F MOV BH,3F
0040121B ? 9F LAHF
0040121C ? 0000 ADD BYTE PTR DS:[EAX],AL
0040121E ? 0000 ADD BYTE PTR DS:[EAX],AL
00401220 . 0000 ADD BYTE PTR DS:[EAX],AL
00401222 . 0100 ADD DWORD PTR DS:[EAX],EAX
00401224 . 0000 ADD BYTE PTR DS:[EAX],AL
00401226 . 0000 ADD BYTE PTR DS:[EAX],AL
00401228 . 0000 ADD BYTE PTR DS:[EAX],AL
0040122A . 0000 ADD BYTE PTR DS:[EAX],AL
0040122C . 41 INC ECX
0040122D . 75 74 JNZ SHORT Autoplay.004012A3
0040122F . 6F OUTS DX,DWORD PTR ES:[EDI] ; I/O 命令
00401230 . 50 PUSH EAX
00401231 . 4C DEC ESP
00401232 . 41 INC ECX
00401233 . 59 POP ECX
00401234 . 00FF ADD BH,BH
00401236 . FFFF ??? ; 未知命令
00401238 . 0000 ADD BYTE PTR DS:[EAX],AL
0040123A . 0000 ADD BYTE PTR DS:[EAX],AL
0040123C . 0000 ADD BYTE PTR DS:[EAX],AL
0040123E . 0000 ADD BYTE PTR DS:[EAX],AL
00401240 . A8 83 TEST AL,83
00401242 . FB STI
00401243 ? 0200 ADD AL,BYTE PTR DS:[EAX]
00401245 ? 0000 ADD BYTE PTR DS:[EAX],AL
00401247 ? 0090 00000000 ADD BYTE PTR DS:[EAX],DL
0040124D . 0000 ADD BYTE PTR DS:[EAX],AL
0040124F . 0002 ADD BYTE PTR DS:[EDX],AL
00401251 . 0000 ADD BYTE PTR DS:[EAX],AL
00401253 . 0010 ADD BYTE PTR DS:[EAX],DL
00401255 . 0000 ADD BYTE PTR DS:[EAX],AL
00401257 . 0084AC 08196207 ADD BYTE PTR SS:[ESP+EBP*4+7621908],AL
0040125E ? 47 INC EDI
0040125F . 4C DEC ESP
00401260 . 98 CWDE
00401261 . F7C6 BA314703 TEST ESI,34731BA
00401267 91 DB 91
00401268 01 DB 01
00401269 00 DB 00
0040126A 00 DB 00
0040126B 00 DB 00
0040126C 98 DB 98
0040126D 00 DB 00
0040126E 00 DB 00
0040126F 00 DB 00
00401270 A8 DB A8
00401271 00 DB 00
00401272 00 DB 00
00401273 00 DB 00
00401274 01 DB 01
00401275 00 DB 00
00401276 00 DB 00
00401277 00 DB 00
00401278 00 DB 00
00401279 00 DB 00
0040127A 00 DB 00
0040127B 00 DB 00
0040127C 01 DB 01
0040127D 20 DB 20 ; CHAR ' '
0040127E 00 DB 00
0040127F 00 DB 00
00401280 90 DB 90
00401281 84 DB 84
00401282 00 DB 00
00401283 00 DB 00
00401284 20 DB 20 ; CHAR ' '
00401285 00 DB 00
00401286 01 DB 01
00401287 00 DB 00
00401288 34 DB 34 ; CHAR '4'
00401289 00 DB 00
0040128A 00 DB 00
0040128B 00 DB 00
0040128C . 4D 43 49 50 72 6F 63 00 ASCII "MCIProc",0
00401294 B8 DB B8
00401295 A6 DB A6
00401296 6D DB 6D ; CHAR 'm'
00401297 8B DB 8B
00401298 14 DB 14
00401299 7B DB 7B ; CHAR '{'
0040129A 15 DB 15
0040129B 41 DB 41 ; CHAR 'A'
0040129C 93 DB 93
0040129D . DFC6 FFREEP ST(6)
0040129F ? BB D2419E24 MOV EBX,249E41D2
004012A4 ? 53 PUSH EBX
004012A5 . 1F POP DS ; 段寄存器更改
004012A6 . C3 RETN
004012A7 ? 4F DEC EDI
004012A8 ? E2 61 LOOPD SHORT Autoplay.0040130B
004012AA ? E4 46 IN AL,46 ; I/O 命令
004012AC ? AF SCAS DWORD PTR ES:[EDI]
[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)