用Aspr2.XX_unpacker_v1.0SC.osc脚本成功dump出,用ImportREC修复了IAT,修复后程序能运行,但是ODBG进去后第一行代码就是JMP:
0053659C > $- E9 5F9A0700 JMP de_SendM.005B0000
005365A1 52 DB 52 ; CHAR 'R'
005365A2 CB DB CB
005365A3 00 DB 00
005365A4 D5 DB D5
005365A5 EE DB EE
005365A6 4C DB 4C ; CHAR 'L'
005365A7 2F DB 2F ; CHAR '/'
005365A8 5D DB 5D ; CHAR ']'
005365A9 C8 DB C8
005365AA 19 DB 19
005365AB 97 DB 97
005365AC 0D DB 0D
005365AD 27 DB 27 ; CHAR '''
005365AE 59 DB 59 ; CHAR 'Y'
005365AF A5 DB A5
005365B0 F6 DB F6
005365B1 03 DB 03
005365B2 D8 DB D8
005365B3 9C DB 9C
005365B4 9B DB 9B
005365B5 A3 DB A3
005365B6 71 DB 71 ; CHAR 'q'
005365B7 DD DB DD
005365B8 41 DB 41 ; CHAR 'A'
005365B9 F0 DB F0
005365BA 25 DB 25 ; CHAR '%'
005365BB 93 DB 93
005365BC 31 DB 31 ; CHAR '1'
005365BD 61 DB 61 ; CHAR 'a'
005365BE 2C DB 2C ; CHAR ','
跟进去代码是:
005B0000 55 PUSH EBP
005B0001 E9 D6100000 JMP de_SendM.005B10DC
005B0006 53 PUSH EBX
005B0007 EB 01 JMP SHORT de_SendM.005B000A
005B0009 F3: PREFIX REP: ; 多余的前缀
005B000A 8D99 F0A54700 LEA EBX,[ECX+47A5F0]
005B0010 F2: PREFIX REPNE: ; 多余的前缀
005B0011 EB 01 JMP SHORT de_SendM.005B0014
005B0013 9A 0BDF8D58 788>CALL FAR 8D78:588DDF0B ; 远距调用
005B001A 5B POP EBX
005B001B 8833 MOV [EBX],DH
005B001D C0A3 10275400 6>SHL BYTE PTR [EBX+542710],6A ; 移动常数超出 1..31 的范围
005B0024 00E8 ADD AL,CH
005B0026 D6 SALC
005B0027 6C INS BYTE PTR ES:[EDI],DX ; I/O 命令
005B0028 E5 FF IN EAX,0FF ; I/O 命令
005B002A E9 32040000 JMP de_SendM.005B0461
005B002F 6A 00 PUSH 0
005B0031 49 DEC ECX
005B0032 E9 5F080000 JMP de_SendM.005B0896
005B0037 36:EB 01 JMP SHORT de_SendM.005B003B ; 多余的前缀
005B003A 0F8B 5C24308D JPO 8D8B249C
005B0040 1C 11 SBB AL,11
005B0042 F2: PREFIX REPNE: ; 多余的前缀
005B0043 EB 01 JMP SHORT de_SendM.005B0046
005B0045 F0:FF7424 04 LOCK PUSH DWORD PTR [ESP+4] ; 不允许锁定前缀
005B004A 3E:EB 02 JMP SHORT de_SendM.005B004F ; 多余的前缀
005B004D CD 20 INT 20
005B004F 66:9C PUSHFW
005B0051 51 PUSH ECX
005B0052 8D4C75 73 LEA ECX,[EBP+ESI*2+73]
005B0056 EB 02 JMP SHORT de_SendM.005B005A
005B0058 CD 20 INT 20
005B005A 13C8 ADC ECX,EAX
查了论坛里的帖子,应该是代码被偷,但是如何修复?看了半天没有和我这个情况相似的例子,请高手给我指条路。
非常感谢。
[课程]Android-CTF解题方法汇总!