[*] Binary protection state of zstd

  
  	Full RELRO     Canary found      NX enabled   PIE enabled  No RPATH     No RUNPATH   No Symbols


[*] Function printf tear down of zstd

mov r0, r5
blx 0x11b4
mov r0, r4
pop.w {r4, r5, r6, r7, r8, sb, sl, pc}
ldrd r3, r2, [r4, 0x18]
adds r6, 1
ldr r1, [r4, 0x24]
ldr.w sb, [r3, r2, lsl 3]
adds r0, r2, 1
add.w r3, r3, r2, lsl 3
ldr.w sl, [r3, 4]
bl 0x94c2c
ldr r3, [r4, 0x20]
mov r0, r8
str r1, [r4, 0x1c]
str r6, [r4, 0x28]
subs r3, r3, r1
clz r3, r3
lsrs r3, r3, 5
str r3, [r4, 0x2c]
blx sym.imp.__snprintf_chk
mov r0, r5
blx 0x11b4
mov r0, sl
blx sb
mov r0, r5
blx 0x1290
ldr r3, [r4, 0x28]
subs r3, 1
str r3, [r4, 0x28]
ldr r3, [r4, 0x24]
cmp r3, 1
beq 0x5f4c
mov r0, r5
blx 0x11b4
b 0x5ec8
mov r0, r8
blx sym.imp.__snprintf_chk
b 0x5f44
push.w {r4, r5, r6, r7, r8, lr}
--
ldr r2, [r4, 0x28]
ldr r3, [r4, 0x14]
cmp r2, r3
beq 0x61c8
ldr r3, [r4, 0x2c]
cmp r3, 0
beq 0x61c8
ldr.w r3, [r4, 0xa8]
cbnz r3, 0x6216
ldr r0, [r4, 0x20]
mov r1, r5
str r3, [r4, 0x2c]
ldr r3, [r4, 0x18]
str.w sb, [r3, r0, lsl 3]
add.w r3, r3, r0, lsl 3
adds r0, 1
str.w r8, [r3, 4]
bl 0x94c2c
add.w r0, r4, 0x78
str r1, [r4, 0x20]
blx sym.imp.__snprintf_chk
mov r0, r6
pop.w {r3, r4, r5, r6, r7, r8, sb, lr}
--
ldr r3, [r4, 0x1c]
cmp r3, r1
beq 0x628e
ldr.w r3, [r4, 0xa8]
cbz r3, 0x625c
mov r0, r5
blx 0x11b4
movs r0, 1
pop.w {r4, r5, r6, r7, r8, pc}
ldr r0, [r4, 0x20]
mov r1, r6
str r3, [r4, 0x2c]
ldr r3, [r4, 0x18]
str.w r8, [r3, r0, lsl 3]
add.w r3, r3, r0, lsl 3
adds r0, 1
str r7, [r3, 4]
bl 0x94c2c
add.w r0, r4, 0x78
str r1, [r4, 0x20]
blx sym.imp.__snprintf_chk
b 0x6250
ldr r2, [r4, 0x28]
--
cmp.w r2, 0x100000
lsr.w r3, r2, 0x13
str r3, [sp, 0x20]
blo.w 0x64730
mov sl, sb
movs r6, 1
ldr.w sb, [sp, 0x2c]
str.w fp, [sp, 0x1c]
b 0x643ca
add r5, r0
mov r0, r7
blx 0x1290
ldr r1, [r4, 4]
lsls r2, r6, 0x13
mov r0, sb
str r2, [r4]
adds r6, 1
add r1, fp
add.w sl, sl, 0x80000
str r1, [r4, 4]
blx sym.imp.__snprintf_chk
mov r0, r7
blx 0x11b4
--
beq 0x64454
ldr r5, [r4, 0x50]
mov r0, r5
blx 0x1290
ldrd r2, r3, [r5, 0x18]
cmp r3, r2
bge.w 0x645de
add.w r2, r5, r3, lsl 2
adds r3, 1
str r3, [r5, 0x1c]
str.w r8, [r2, 0x2c]
mov r0, r5
blx 0x11b4
mov r0, r7
blx 0x1290
ldr r3, [r4, 4]
ldr r2, [r4, 0x74]
ldr r0, [sp, 0x2c]
add r3, sl
strd r2, r3, [r4]
blx sym.imp.__snprintf_chk
mov r0, r7
blx 0x11b4
--
subs r2, r3, 1
add.w r3, r5, r3, lsl 2
mov r0, r5
str r2, [r5, 0x1c]
ldr.w r8, [r3, 0x28]
blx 0x11b4
b 0x64262
adds r6, 1
add.w r0, r5, 0x18
str.w r6, [r5, 0x660]
addw r6, r5, 0x664
blx 0x11f4
mov r0, r6
blx 0x1290
ldr.w r3, [r5, 0x6b0]
add.w r0, r5, 0x680
ldr.w r2, [r5, 0x6b4]
subs r3, r3, r2
str.w r3, [r5, 0x6c0]
str.w r3, [r5, 0x6bc]
blx sym.imp.__snprintf_chk
mov r0, r6
blx 0x11b4
--
cmp r3, r1
it ge
movge r3, r1
str.w r3, [r6, 0xf0]
ldr r3, [sp, 0x20]
add.w r2, r6, 0x9c
ldr r1, [sp, 0x28]
addw sb, r6, 0x664
mov r0, sl
str r3, [sp]
ldr r3, [sp, 0x34]
bl 0x4b9e8
mov r0, sb
blx 0x1290
ldm.w sl!, {r0, r1, r2, r3}
add.w ip, r6, 0x6b0
stm.w ip!, {r0, r1, r2, r3}
ldm.w sl, {r0, r1}
stm.w ip, {r0, r1}
add.w r0, r6, 0x680
blx sym.imp.__snprintf_chk
mov r0, sb
blx 0x11b4
--
stm.w ip, {r0, r1, r2, r3}
str.w r6, [r4, 0x88]
cbz r5, 0x6f530
mov r0, r4
pop.w {r4, r5, r6, r7, r8, lr}
add sp, 8
b.w sym.imp.pthread_mutex_unlock
add.w r0, r4, 0x18
blx 0x11f4
mov r0, r4
pop.w {r4, r5, r6, r7, r8, lr}
add sp, 8
b.w sym.imp.pthread_mutex_unlock
pop.w {r4, r5, r6, r7, r8, lr}
add sp, 8
bx lr
mov.w r2, -1
add.w r0, r4, 0x18
str.w r2, [r4, 0x88]
str r3, [r4, 0x50]
blx sym.imp.__snprintf_chk
mov r0, r4
pop.w {r4, r5, r6, r7, r8, lr}

[*] Function printf used 9 times zstd