Decomplie target-c .a библиотека

Я хочу декомпилировать .a Цель-библиотека iOS. Я ищу в Google и на сайте и нахожу несколько постов. Самый полезный был ниже поста:

/questions/28862849/dekompilyatsiya-bibliotek-objective-c/28862872#28862872

Согласно сообщению, я использую команду ниже в моем терминале Mac OS:

otool -tV mylibrary.a

Это работает. На самом деле он печатает коды .o файлы в моем терминале. Часть печатного текста:

    Archive : mylibrary.a (architecture armv7)
mylibrary.a(LIConnection.o) (architecture armv7):
(__TEXT,__text) section
-[LIConnection initWithURL:]:
00000000        b580    push    {r7, lr}
00000002        466f    mov r7, sp
00000004        b094    sub sp, #0x50
00000006        ab11    add r3, sp, #0x44
00000008    f2400900    movw    r9, "-[LIConnection initWithURL:]"
0000000c    f2c00900    movt    r9, "-[LIConnection initWithURL:]"
00000010        9013    str r0, [sp, #0x4c]
00000012        9112    str r1, [sp, #0x48]
00000014    f8cd9044    str.w   r9, [sp, #0x44]
00000018        4618    mov r0, r3
0000001a        4611    mov r1, r2
0000001c    f7fffff0    bl  _objc_storeStrong
00000020        a813    add r0, sp, #0x4c
00000022        a90f    add r1, sp, #0x3c
00000024    f6447238    movw    r2, :lower16:((20328-44)-4)
00000028    f2c00200    movt    r2, :upper16:((20328-44)-4)
0000002c        447a    add r2, pc
0000002e        6812    ldr r2, [r2]
00000030    f6437368    movw    r3, :lower16:((16292-56)-4)
00000034    f2c00300    movt    r3, :upper16:((16292-56)-4)
00000038        447b    add r3, pc
0000003a    f6432982    movw    r9, :lower16:((15048-66)-4)
0000003e    f2c00900    movt    r9, :upper16:((15048-66)-4)
00000042        44f9    add r9, pc
00000044    f2400c00    movw    r12, "-[LIConnection initWithURL:]"
00000048    f2c00c00    movt    r12, "-[LIConnection initWithURL:]"
0000004c    f8dde04c    ldr.w   lr, [sp, #0x4c]
00000050    f8cdc04c    str.w   r12, [sp, #0x4c]
00000054    f8cde03c    str.w   lr, [sp, #0x3c]
00000058    f8d99000    ldr.w   r9, [r9]
0000005c    f8cd9040    str.w   r9, [sp, #0x40]
00000060        681b    ldr r3, [r3]
00000062        900d    str r0, [sp, #0x34]
00000064        4608    mov r0, r1
00000066        4619    mov r1, r3
00000068        4790    blx r2
0000006a        4601    mov r1, r0
0000006c        9113    str r1, [sp, #0x4c]
0000006e        990d    ldr r1, [sp, #0x34]
00000070        900c    str r0, [sp, #0x30]
00000072        4608    mov r0, r1
00000074        990c    ldr r1, [sp, #0x30]
00000076    f7ffffc3    bl  _objc_storeStrong
0000007a        2000    movs    r0, #0x0
0000007c    f2c00000    movt    r0, "-[LIConnection initWithURL:]"
00000080        9913    ldr r1, [sp, #0x4c]
00000082        4281    cmp r1, r0
00000084        d068    beq 0x158
00000086    f64460d2    movw    r0, :lower16:((20324-142)-4)
0000008a    f2c00000    movt    r0, :upper16:((20324-142)-4)
0000008e        4478    add r0, pc
00000090        6800    ldr r0, [r0]
00000092        4601    mov r1, r0
00000094    f643720c    movw    r2, :lower16:((16300-156)-4)
00000098    f2c00200    movt    r2, :upper16:((16300-156)-4)

Теперь вопрос в том, есть ли какие-либо инструменты для преобразования вышеуказанных кодов (я не знаю, на каком языке код) на высокий уровень .m файлы с целью языка C?

1 ответ

Вы должны взглянуть на эту программу: Хоппер

Другие вопросы по тегам