[*] Binary protection state of apac-update
Full RELRO Canary found NX enabled PIE enabled No RPATH No RUNPATH No Symbols
[*] Function printf tear down of apac-update
cbnz r0, 0xd22
mov r0, r4
blx sym.imp.close
cbnz r0, 0xcfa
add sp, 0xc
pop {r4, r5, r6, r7, pc}
ldr r3, [0x00000d80]
ldr r3, [r5, r3]
ldr r5, [r3]
blx sym.imp.__errno_location
ldr r0, [r0]
blx sym.imp.g_strerror
ldr r3, [0x00000d84]
mov r4, r0
ldr r2, [0x00000d88]
movs r1, 1
mov r0, r5
str r4, [sp]
add r3, pc
add r2, pc
blx sym.imp.__fprintf_chk
add sp, 0xc
pop {r4, r5, r6, r7, pc}
ldr r3, [0x00000d80]
ldr r3, [r5, r3]
ldr r7, [r3]
blx sym.imp.__errno_location
ldr r0, [r0]
blx sym.imp.g_strerror
mov r2, r0
mov r3, r6
str r2, [sp]
mov r0, r7
ldr r2, [0x00000d8c]
movs r1, 1
add r2, pc
blx sym.imp.__fprintf_chk
mov r0, r4
blx sym.imp.close
cmp r0, 0
beq 0xcf6
b 0xcfa
ldr r3, [0x00000d80]
ldr r3, [r5, r3]
ldr r5, [r3]
blx sym.imp.__errno_location
ldr r0, [r0]
blx sym.imp.g_strerror
ldr r2, [0x00000d90]
mov r4, r0
mov r3, r6
movs r1, 1
mov r0, r5
str r4, [sp]
add r2, pc
blx sym.imp.__fprintf_chk
add sp, 0xc
pop {r4, r5, r6, r7, pc}
--
lsls r6, r0, 0x13
movs r0, r0
lsls r4, r3, 0x14
movs r0, r0
lsls r2, r2, 0x13
movs r0, r0
lsls r0, r0, 0x12
movs r0, r0
push {r4, r5, r6, lr}
sub sp, 8
ldr r6, [0x00000e30]
mov r4, r0
add r6, pc
bl 0xf00
cbz r0, 0xdd4
ldr r1, [0x00000e34]
mov r2, r4
ldr r0, [0x00000e38]
add r1, pc
add r0, pc
blx sym.imp.g_strdup_printf
mov r5, r0
blx sym.imp.unlink
cbz r0, 0xdf4
blx sym.imp.__errno_location
ldr r0, [r0]
cmp r0, 2
it eq
moveq r4, 1
bne 0xe06
mov r0, r5
blx sym.imp.g_free
mov r0, r4
add sp, 8
pop {r4, r5, r6, pc}
ldr r3, [0x00000e3c]
mov r4, r0
ldr r2, [0x00000e40]
movs r1, 1
mov r5, r4
ldr r3, [r6, r3]
add r2, pc
ldr r0, [r3]
blx sym.imp.__fprintf_chk
mov r0, r5
blx sym.imp.g_free
--
add sp, 8
pop {r4, r5, r6, pc}
bl 0xcd0
movs r4, 1
mov r0, r5
blx sym.imp.g_free
mov r0, r4
add sp, 8
pop {r4, r5, r6, pc}
ldr r3, [0x00000e3c]
ldr r3, [r6, r3]
ldr r4, [r3]
blx sym.imp.g_strerror
ldr r2, [0x00000e44]
mov r3, r5
movs r1, 1
str r0, [sp]
mov r0, r4
movs r4, 0
add r2, pc
blx sym.imp.__fprintf_chk
mov r0, r5
blx sym.imp.g_free
--
movs r4, 0
mov r0, r6
mov.w r3, -1
str r4, [r0], 4
add r2, pc
b 0xff8
movs r4, 0
mov r8, r4
b 0xfb8
cmp r6, 0
beq 0xfe0
ldr r2, [0x00001070]
add r2, pc
mov.w r3, -1
mov r0, r6
str r4, [r0], 4
str r2, [sp]
mov.w r1, 0x100
movs r2, 1
mov r8, r4
blx sym.imp.__snprintf_chk
b 0xfb8
cmp r6, 0
--
str r0, [r6, 4]
str.w r1, [ip, 4]
ldm r7!, {r0, r1}
str.w r2, [ip, 8]
str.w r3, [ip, 0xc]
str.w r0, [ip, 0x10]
str.w r1, [ip, 0x14]
b 0xfb8
mov r4, r8
mov r8, r6
b 0xfb8
cbz r6, 0x1060
ldr r4, [0x0000107c]
mov r0, r6
str r5, [r0], 4
mov.w r3, -1
movs r2, 1
mov.w r1, 0x100
add r4, pc
str r4, [sp]
blx sym.imp.__snprintf_chk
mov.w r8, 0
b 0xfc4
--
mov r4, r0
mov r0, r8
mov r3, r5
mov r2, r4
movs r1, 1
blx sym.imp.fwrite
cmp r4, r0
beq 0x10ea
cbz r6, 0x10dc
ldr r1, [0x00001138]
mov.w r3, -1
str r0, [sp, 0xc]
mov r0, r6
strd r7, r4, [sp, 4]
movs r2, 1
add r1, pc
str r1, [sp]
movs r1, 0
str r1, [r0], 4
mov.w r1, 0x100
blx sym.imp.__snprintf_chk
mov r0, r5
blx sym.imp.fclose
movs r0, 0
add sp, 0x10
pop.w {r4, r5, r6, r7, r8, pc}
mov r0, r5
blx sym.imp.fclose
cbnz r0, 0x10fa
movs r0, 1
add sp, 0x10
pop.w {r4, r5, r6, r7, r8, pc}
cmp r6, 0
beq 0x10e2
ldr r2, [0x0000113c]
mov.w r3, -1
movs r5, 0
mov r0, r6
str r5, [r0], 4
add r2, pc
strd r2, r7, [sp]
mov.w r1, 0x100
movs r2, 1
blx sym.imp.__snprintf_chk
mov r0, r5
b 0x10e4
[*] Function printf used 10 times apac-update