脱UPX-Scrambler RC1.x ->壳遇到的问题,请教
PE查壳是UPX-Scrambler RC1.x -> ㎡nT畂L0040DA7F > 90 NOP //外壳UpxScrambler入口。
0040DA80 61 POPAD //特征码
0040DA81 BE 00B04000 MOV ESI,中京安QQ.0040B000
0040DA86 8DBE 0060FFFF LEA EDI,DWORD PTR DS:
0040DA8C 57 PUSH EDI
0040DA8D 83CD FF OR EBP,FFFFFFFF
根据UPX及变形UPX,POPAD对应PUSHAD
OD 搜索 PUSHAD
第一次搜索
0040DA89 60 PUSHAD
0040DA8A FFFF ??? ; 未知命令
0040DA8C 57 PUSH EDI
0040DA8D 83CD FF OR EBP,FFFFFFFF
第2次搜索
0040DBD7 60 PUSHAD //应该是这里F4断下
0040DBD8-E9 AA4AFFFF JMP 中京安QQ.00402687//F8进入
0040DBDD 0000 ADD BYTE PTR DS:,AL
0040DBDF 0000 ADD BYTE PTR DS:,AL
0040DBE1 0000 ADD BYTE PTR DS:,AL
00402687 8D4424 F8 LEA EAX,DWORD PTR SS: //程序出口点?
0040268B 64:8705 00000000 XCHG DWORD PTR FS:,EAX
00402692 BB D5264000 MOV EBX,中京安QQ.004026D5
00402697 8925 58544000 MOV DWORD PTR DS:,ESP
0040269D 53 PUSH EBX //程序出口点?
0040269E 50 PUSH EAX
0040269F E8 F40B0000 CALL 中京安QQ.00403298 ; JMP to COMCTL32.InitCommonControls
004026A4 6A 00 PUSH 0
004026A6 E8 870B0000 CALL 中京安QQ.00403232 ; JMP to KERNEL32.GetModuleHandleA
004026AB A3 94544000 MOV DWORD PTR DS:,EAX
004026B0 E8 930A0000 CALL 中京安QQ.00403148 ; JMP to USER32.GetShellWindow
004026B5 6A 64 PUSH 64
不清楚,我在0040DBD7 和 0040269D 用OD DOWN 出来,然后用Import 修复。显示了修复成功,也没有无效的指针,但是修复后还是不可以运行。
请教,我那里超做错误?
我把注册机传上来。帮忙看看。 要在程序oep处dump啊,0040DBD7和0040269D都不是程序的oep。 程序的壳为:
UPX-Scrambler RC1.x -> ㎡nT畂L
Overlay 表示有附加数据,脱壳后还要把哪些附加的数据加入到
脱壳文件中才能运行 0040269D 53 PUSH EBX 这里DUMP后可以运行啊!
页:
[1]