有很多注册机中有好听的音乐,很想把它们提取出来,比如原来有个bcb6的注册机(有羊叫声的那段)
可惜手边没有,就以《新年大礼包》中 010.Editor.v3.0.3 的注册机为例吧
用ollydbg打开
我是在winmm的waveOutPrepareHeader函数处下断点的(不知道对不对)
得到下面的代码:
00401AF5 . FF33 PUSH DWORD PTR DS:[EBX]
00401AF7 . FF15 A4404000 CALL DWORD PTR DS:[<&winmm.waveOutPrepareHeader>] ; winmm.waveOutPrepareHeader
00401AFD . 31FF XOR EDI,EDI
00401AFF > E8 06010000 CALL 00401C0A
00401B04 . 397B 04 CMP DWORD PTR DS:[EBX+4],EDI
00401B07 . 75 F6 JNZ SHORT 00401AFF
00401B09 . 897B 08 MOV DWORD PTR DS:[EBX+8],EDI
00401B0C . 6A 20 PUSH 20
00401B0E . 56 PUSH ESI
00401B0F . FF33 PUSH DWORD PTR DS:[EBX]
00401B11 . FF15 B0404000 CALL DWORD PTR DS:[<&winmm.waveOutWrite>] ; winmm.waveOutWrite
00401B17 . 85C0 TEST EAX,EAX
00401B19 . 75 2A JNZ SHORT 00401B45
00401B1B . 55 PUSH EBP ; pThreadId
00401B1C . 57 PUSH EDI ; CreationFlags
00401B1D . 57 PUSH EDI ; pThreadParm
00401B1E . 68 B41B4000 PUSH 00401BB4 ; ThreadFunction = keygen.00401BB4
00401B23 . 57 PUSH EDI ; StackSize
00401B24 . 57 PUSH EDI ; pSecurity
00401B25 . FF15 2C404000 CALL DWORD PTR DS:[<&kernel32.CreateThread>] ; CreateThread
应该怎样找到文件中相应于音乐的数据段?或着是否可以直接在内存中找到?
感激不尽
附件中是 010.Editor.v3.0.3 的注册机
[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课