[*] Binary protection state of libstd2parser.so

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


[*] Function printf tear down of libstd2parser.so

blx sym.imp.isatty
cmp r0, 0
beq 0x1b0c
ldrb r3, [r0, 0xb]
add.w r7, r0, 0xb
cmp r3, 0x2e
bne 0x1a74
ldrb r3, [r7, 1]
cmp r3, 0
beq 0x1a5a
ldrb r3, [r0, 0xb]
cmp r3, 0x2e
bne 0x1a86
ldrb r3, [r7, 1]
cmp r3, 0x2e
bne 0x1a86
ldrb r3, [r7, 2]
cmp r3, 0
beq 0x1a5a
mov r0, r6
blx sym.imp.__sprintf_chk
mov r1, r6
mov r2, r0
mov r0, r7
blx 0x15e8
cmp r0, 0
bne 0x1a5a
ldr r1, [r5, 0x5c]
ldr r0, [r5, 0x58]
adds r1, 1
lsls r1, r1, 2
blx 0x13d0
cmp r0, 0
beq 0x1b48
str r0, [r5, 0x58]
cmp.w r8, 0
beq 0x1b64
mov r0, r8
blx sym.imp.__sprintf_chk
mov fp, r0
mov r0, r7
blx sym.imp.__sprintf_chk
add r0, fp
adds r0, 2
--
str r2, [r0, 4]
ldrb r3, [r3]
strb r3, [r0, 0x18]
bx lr
movs r2, 0
mov r3, r0
str r2, [r3, 0x14]
mov r0, r2
strd r2, r2, [r3, 0xc]
strd r2, r2, [r3, 0x24]
str r2, [r3, 0x2c]
strd r2, r2, [r3, 0x34]
str r2, [r3, 0x3c]
strd r2, r2, [r3, 4]
bx lr
nop
push.w {r4, r5, r6, r7, r8, lr}
mov r4, r0
mov r0, r1
mov r6, r1
blx sym.imp.__sprintf_chk
ldrd r3, r2, [r4, 4]
mov r5, r0
--
strb r3, [r0, r5]
blx 0x1458
cbz r0, 0x221e
movs r2, 1
str r2, [r0, 0x14]
pop {r3, r4, r5, r6, r7, pc}
ldr r0, [0x00002228]
add r0, pc
bl 0x1df0
ldr r0, [0x0000222c]
add r0, pc
bl 0x1df0
nop
asrs r0, r6, 0x13
movs r0, r0
asrs r4, r2, 0x14
movs r0, r0
push {r3, r4, r5, lr}
mov r5, r1
mov r4, r0
blx sym.imp.__sprintf_chk
mov r2, r5
mov r1, r0
--
ldr r6, [r4, 0x14]
ldr r0, [r4, 0xc]
mov r2, sl
ldr r3, [r4, 4]
movs r1, 1
ldr.w r0, [r6, r0, lsl 2]
ldr r0, [r0, 4]
add r0, r7
blx 0x144c
mov r5, r0
str r0, [r4, 0x1c]
cmp r0, 0
beq 0x23a8
ldr r2, [r4, 0xc]
ldr r3, [r4, 0x14]
ldr.w r6, [r3, r2, lsl 2]
str r0, [r6, 0x10]
b 0x243e
movs r6, 0
ldr r0, [r4, 4]
blx sym.imp.__snprintf_chk
adds r3, r0, 1
beq 0x24b6
--
ldr r3, [r7, 0x50]
ldrb r3, [r3]
cmp r3, 0xa
bne.w 0x2548
ldr r2, [r7]
ldr r3, [r2, 0x28]
adds r3, 1
str r3, [r2, 0x28]
b 0x2548
ldr r3, [r7, 8]
movs r2, 1
ldr r1, [r7, 0x20]
ldr r0, [r7, 0x50]
blx 0x1404
b 0x2548
ldr.w r8, [r7]
movs r6, 1
str r6, [r7, 0x2c]
ldr.w r5, [r8, 0x18]
mov r0, r5
blx sym.imp.__sprintf_chk
add.w r4, r0, 0x32
mov r0, r4
--
str.w r0, [r8, 0x38]
mov r1, r4
add r3, pc
strd r3, r5, [sp]
mov.w r3, -1
blx 0x1624
movw r0, 0x105
b 0x26f2
ldr r3, [r7, 0x50]
ldr r0, [r7]
ldrb r1, [r3, 1]
adds r0, 0x18
bl 0x1d9c
b 0x2548
ldr r0, [r7, 0x50]
ldr r5, [r7, 0x5c]
adds r0, 1
blx sym.imp.__stack_chk_fail
mov r4, r0
str r0, [r5]
blx sym.imp.__sprintf_chk
movs r3, 0
add r4, r0
--
ldr.w r3, [r2, r3, lsl 2]
cbz r3, 0x2a86
mov r0, r4
bl 0x1d04
movs r3, 1
str r3, [r4, 0x30]
pop {r4, pc}
bx lr
nop
push {r3, r4, r5, lr}
mov r4, r0
ldr r3, [r0, 0x14]
cbz r3, 0x2ae2
movs r5, 0
b 0x2aae
blx 0x151c
ldr r3, [r4, 0x14]
mov r0, r4
ldr r2, [r4, 0xc]
str.w r5, [r3, r2, lsl 2]
blx sym.imp.__fprintf_chk
ldr r3, [r4, 0x14]
cbz r3, 0x2ae2
--
movs r1, r0
asrs r6, r5, 0xc
movs r0, r0
asrs r6, r6, 0xe
movs r0, r0
asrs r2, r7, 0xc
movs r0, r0
asrs r6, r2, 0xf
movs r0, r0
movs r0, 0x5a
movs r1, r0
asrs r6, r4, 9
movs r0, r0
asrs r6, r2, 9
movs r0, r0
push.w {r4, r5, r6, r7, r8, lr}
mov r0, r3
mov r5, r2
sub sp, 0x10
mov r6, r3
blx sym.imp.__sprintf_chk
ldr r7, [r5, 0x38]
mov r4, r0
cbz r7, 0x2e70
mov r0, r7
blx sym.imp.__sprintf_chk
mov r2, r0
mov r3, r0

[*] Function printf used 11 times libstd2parser.so