[*] Binary protection state of e2image
Full RELRO Canary found NX enabled PIE enabled No RPATH No RUNPATH No Symbols
[*] Function printf tear down of e2image
ldr r2, [0x00004710]
ldr r3, [0x00004708]
add r2, pc
ldr r3, [r2, r3]
ldr r2, [r3]
ldr r3, [sp, 0xc]
eors r2, r3
mov.w r3, 0
bne 0x46e6
add sp, 0x10
pop.w {r4, r5, r6, r7, r8, sb, sl, pc}
ldr r3, [0x00004714]
movs r2, 0x2b
ldr r0, [0x00004718]
movs r1, 1
ldr.w r3, [sl, r3]
add r0, pc
ldr r3, [r3]
blx sym.imp.time
b 0x4668
blx sym.imp.__fprintf_chk
ldr r3, [0x00004714]
movs r2, 0x20
--
movs r1, 0
add r0, sp, 0x14
blx sym.imp.fwrite
cmp r0, 0
bge 0x4a04
mov r0, r7
blx 0x1d54
mov r4, r0
cmp r0, 0
beq 0x493e
movs r1, 1
blx sym.imp.__errno_location
cmp r0, 0
blt 0x49fc
movs r1, 0
mov r0, r4
blx sym.imp.ext2fs_close_inode_scan
cmp r0, 0
blt 0x49fc
mov r0, r4
blx sym.imp.__snprintf_chk
cmp r0, 0
blt 0x49fc
--
blx sym.imp.ext2fs_punch
ldr r1, [0x00004be4]
mov r2, r0
movs r0, 1
add r1, pc
blx 0x1920
b 0x4a9a
add r0, sp, 0x1c
str r3, [sp, 0x1c]
blx sym.imp.ext2fs_punch
ldr r1, [0x00004be8]
mov r2, r0
movs r0, 1
add r1, pc
blx 0x1920
b 0x4a9a
ldr r0, [0x00004bec]
add r0, pc
blx 0x1978
b 0x49a0
blx sym.imp.__fprintf_chk
ldr r0, [0x00004bb0]
mov r3, r7
--
add r2, pc
str r0, [sp, 8]
add r3, pc
strd r6, r1, [sp]
movs r1, 1
ldr r0, [r4]
blx sym.imp.fputc
movs r0, 0
b 0x4c30
ldr r3, [0x00004c98]
movs r6, 0xb2
ldr r1, [0x00004ca8]
ldr r2, [0x00004cac]
ldr r4, [r5, r3]
ldr r3, [0x00004cb0]
add r1, pc
add r2, pc
str r0, [sp, 8]
add r3, pc
b 0x4c5c
blx sym.imp.__fprintf_chk
nop
strh r0, [r0, r0]
--
add r3, pc
blx sym.imp.fputc
movs r0, 0
b 0x4cf0
ldr r3, [0x00004d78]
movs r4, 0x9a
ldr r2, [0x00004d6c]
add r3, pc
adds r3, 0x14
ldr r1, [r5, r2]
strd r3, r0, [sp, 4]
ldr r2, [0x00004d7c]
ldr r3, [0x00004d80]
ldr r0, [r1]
movs r1, 1
add r2, pc
str r4, [sp]
add r3, pc
blx sym.imp.fputc
b 0x4d2a
blx sym.imp.__fprintf_chk
nop
str r0, [r0, r5]
--
add sp, 8
pop {r4, pc}
ldr r3, [r4, 0x44]
cmp r3, 0
bne 0x4e5a
ldr r3, [r4, 0xc]
ldr r2, [sp]
ldr r3, [r3, 0x2c]
add r3, r2
str r3, [r4, 0x44]
b 0x4e5a
ldr r3, [r4, 0x40]
cmp r3, 0
bne 0x4e42
ldr r3, [r4, 0xc]
ldr r2, [sp]
ldr r3, [r3, 0x28]
add r3, r2
str r3, [r4, 0x40]
b 0x4e42
blx sym.imp.__fprintf_chk
nop
str r0, [r0, r0]
--
movs r3, 0
vmov.i32 d16, 0
mov r2, r6
mov r1, r5
mov r0, r4
vstr d17, [sp, 8]
vstr d16, [sp]
blx sym.imp.raise
cmp r0, 0
bne 0x4eee
ldr r3, [r4, 8]
mov r1, r0
movs r2, 0x80
mov r0, r6
bic r3, r3, 0x800
str r3, [r4, 8]
blx 0x1954
b 0x4ee4
blx sym.imp.ext2fs_get_mem
b 0x4f0a
blx sym.imp.__fprintf_chk
nop
ldr r7, [0x0000509c]
--
ldr r3, [0x00005214]
ldr r6, [r7, r3]
b 0x519c
ldr r2, [0x00005214]
movs r1, 1
ldr r3, [0x00005244]
ldr r6, [r7, r2]
add r3, pc
ldr r2, [0x00005248]
adds r3, 0x28
ldr r0, [r6]
str r3, [sp, 4]
mov.w r3, 0x12c
str r3, [sp]
add r2, pc
ldr r3, [0x0000524c]
str r4, [sp, 8]
add r3, pc
blx sym.imp.fputc
b 0x519c
blx sym.imp.__fprintf_chk
ldr r6, [0x00005410]
movs r0, r0
--
b 0x536c
ldr r2, [0x000054b8]
mov.w r1, 0x100
ldr r3, [0x000054e0]
ldr.w r2, [fp, r2]
add r3, pc
str r1, [sp]
adds r3, 0x54
movs r1, 1
str r3, [sp, 4]
ldr r3, [0x000054e4]
ldr r0, [r2]
ldr r2, [0x000054e8]
add r3, pc
add r2, pc
blx sym.imp.fputc
b 0x542a
mov r0, r4
blx sym.imp.read
b 0x5434
blx sym.imp.__fprintf_chk
ldr r3, [0x000055a8]
movs r0, r0
--
vstr d16, [sp, 0x10]
vstr d17, [sp, 0x18]
str r1, [sp]
blx r4
subs r0, 0x18
it ne
movne r0, -1
ldr r2, [0x00005650]
ldr r3, [0x00005644]
add r2, pc
ldr r3, [r2, r3]
ldr r2, [r3]
ldr r3, [sp, 0x34]
eors r2, r3
mov.w r3, 0
bne 0x5614
add sp, 0x3c
pop {r4, r5, pc}
mov.w r0, -1
b 0x55f6
blx sym.imp.__fprintf_chk
subs r2, 0x80
movs r1, r1
--
ldr.w ip, [lr, ip]
ldr.w ip, [ip]
str.w ip, [sp, 0x24]
mov.w ip, 0
str r4, [sp, 0x1c]
blx r1
ldr r2, [0x000056cc]
subs r0, 0x18
ldr r3, [0x000056c8]
it ne
movne r0, -1
add r2, pc
ldr r3, [r2, r3]
ldr r2, [r3]
ldr r3, [sp, 0x24]
eors r2, r3
mov.w r3, 0
bne 0x56c0
add sp, 0x28
pop {r4, pc}
blx sym.imp.__fprintf_chk
blx r2
movs r0, r0
--
ldr r0, [sp, 0xc]
cmp r0, 1
ite hi
movhi r0, 0
movls r0, 1
b 0x5704
ldr r2, [0x0000578c]
adds r4, 0xc
ldr r3, [0x00005790]
movs r6, 0xe2
movs r1, 1
ldr r0, [r5, r2]
ldr r2, [0x00005794]
add r3, pc
str r4, [sp, 4]
str r6, [sp]
add r2, pc
ldr r0, [r0]
blx sym.imp.fputc
b 0x5702
blx sym.imp.__fprintf_chk
nop
adds r0, 0xd0
--
mov r0, r3
blx 0x1954
movs r2, 0
mov r1, r4
strd r6, r2, [sp, 0x44]
movs r2, 0x48
blx sym.imp.memcmp
cbnz r0, 0x59cc
str r0, [r5, 0x44]
ldr r2, [0x000059f0]
ldr r3, [0x000059ec]
add r2, pc
ldr r3, [r2, r3]
ldr r2, [r3]
ldr r3, [sp, 0x4c]
eors r2, r3
mov.w r3, 0
bne 0x59e4
add sp, 0x50
pop {r4, r5, r6, pc}
blx sym.imp.__fprintf_chk
add lr, r2
movs r0, r0
--
blx 0x1954
movs r2, 1
mov r1, r4
str r2, [sp, 0x3c]
movs r2, 0x30
str r6, [sp, 0x40]
blx sym.imp.memcmp
cbnz r0, 0x5a72
str r0, [r5, 0x44]
ldr r2, [0x00005a98]
ldr r3, [0x00005a94]
add r2, pc
ldr r3, [r2, r3]
ldr r2, [r3]
ldr r3, [sp, 0x44]
eors r2, r3
mov.w r3, 0
bne 0x5a8a
add sp, 0x48
pop {r4, r5, r6, pc}
blx sym.imp.__fprintf_chk
nop
mvns r4, r7
--
blx sym.imp.fputc
b 0x5ad0
ldr r2, [0x00005c28]
ldr r1, [r4, 0x14]
mov.w r4, 0x118
ldr r0, [r5, r2]
ldr r2, [0x00005c48]
strd r3, r7, [sp, 0xc]
ldr r3, [0x00005c4c]
add r2, pc
ldr r0, [r0]
adds r2, 0x28
str r4, [sp]
strd r2, r1, [sp, 4]
add r3, pc
ldr r2, [0x00005c50]
movs r1, 1
add r2, pc
blx sym.imp.fputc
b 0x5ad0
blx sym.imp.__fprintf_chk
nop
muls r0, r2, r0
--
movs r1, 1
ldr r3, [0x00006698]
mvn r7, 0xb
ldr r3, [r2, r3]
ldr r2, [0x000066c8]
ldr r0, [r3]
ldr r3, [0x000066cc]
add r2, pc
add r3, pc
adds r3, 0x18
str r3, [sp, 4]
movs r3, 0x1b
str r3, [sp]
ldr r3, [0x000066d0]
add r3, pc
blx sym.imp.fputc
str.w sl, [sp, 0x28]
cmp r4, 0
beq.w 0x64a2
b 0x657e
blx sym.imp.__fprintf_chk
nop
subs r2, 0xba
--
str.w fp, [r3, 4]
bl 0x5cdc
ldr r3, [sp, 0x14]
b 0x6906
ldr r3, [0x00006998]
movs r1, 1
ldr r2, [0x000069c0]
ldr.w r3, [sl, r3]
add r2, pc
ldr r0, [r3]
ldr r3, [0x000069c4]
add r3, pc
adds r3, 0x18
str r3, [sp, 4]
movs r3, 0x1b
str r3, [sp]
ldr r3, [0x000069c8]
add r3, pc
blx sym.imp.fputc
b 0x67da
blx sym.imp.__fprintf_chk
adds r7, 0x1a
movs r0, r0
--
blx sym.imp.strerror
ldr r3, [0x00006b8c]
mov r1, r8
ldr r2, [0x00006b90]
strd sl, r0, [sp, 8]
mov r0, sb
add r3, pc
adds r3, 0xa0
add r2, pc
str r3, [sp, 4]
mov.w r3, 0x136
str r3, [sp]
ldr r3, sym.imp.gmtime
add r3, pc
blx sym.imp.fputc
b 0x6a30
movs r3, 0x1c
str r3, [r0]
mov r0, r3
b 0x6a5e
blx sym.imp.__fprintf_chk
adds r3, 0xf8
movs r0, r0
--
ldrd r3, r2, [r0, 0x48]
str r4, [sp]
orrs r3, r2
beq 0x6bc4
mov r1, r0
movs r3, 0
ldr r0, [r0, 0xc]
mov r2, sp
bl 0x66d4
ldr r2, [0x00006be8]
ldr r3, [0x00006be4]
add r2, pc
ldr r3, [r2, r3]
ldr r2, [r3]
ldr r3, [sp, 4]
eors r2, r3
mov.w r3, 0
bne 0x6bdc
add sp, 8
pop {r4, pc}
blx sym.imp.__fprintf_chk
adds r2, 0x60
movs r0, r0
[*] Function printf used 19 times e2image