[*] Binary protection state of libpaho-mqtt3c.so.1.3.11

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


[*] Function strcpy tear down of libpaho-mqtt3c.so.1.3.11

strb r2, [r4, 0x13]
movs r1, r0
lsls r4, r3, 7
movs r0, r0
strb r2, [r1, 0x1c]
movs r1, r0
ldrb r2, [r0, 5]
movs r1, r0
b 0x28a8
nop
push {r4, r5, r6, lr}
movs r2, 3
ldr r4, [0x00002950]
movs r1, 0x1d
mov r5, r0
add r4, pc
mov r0, r4
bl 0xf2c0
mov.w r0, 0x3e8
mul r0, r5, r0
blx sym.imp.strcpy
mov r0, r4
movs r3, 3
--
movs r1, 0x40
add r0, pc
bl 0xf7c8
mov r4, r0
cmp r0, 0
beq 0x911a
cmp r5, 0
beq 0x9122
mov r0, r5
blx sym.imp.srand
adds r2, r0, 1
ldr.w r8, [0x0000915c]
movs r1, 0x45
add r8, pc
mov r0, r8
bl 0xf7c8
str r0, [r4]
cmp r0, 0
beq 0x912a
mov r1, r5
blx sym.imp.__strcpy_chk
ldr r2, [0x00009160]
ldr r3, [0x00009164]
--
add r0, sb
adds r0, 0x10
str r1, [r3, 0x10]
ldr r2, [r0, -0xc]
str r2, [r3, 0x14]
ldr r2, [r0, -0x8]
str r2, [r3, 0x18]
ldr r2, [r0, -0x4]
str r2, [r3, 0x1c]
str r0, [sp, 0x40]
blx sym.imp.srand
add.w sl, r0, 1
movw r1, 0x32b
ldr r0, [sp, 0x10]
mov r2, sl
bl 0xf7c8
str r0, [r5, 4]
cmp r0, 0
beq.w 0xa57a
ldr r1, [sp, 0x40]
blx sym.imp.__strcpy_chk
ldr r3, [sp, 0x40]
ldr.w r2, [r3, sl]
--
str r2, [sp]
movw r1, 0x111
movs r2, 3
bl 0xf2c0
movw r3, 0x4e1f
cmp r4, r3
itt hi
lsrhi r5, r5, 0xd
movhi r4, 1
bhi 0xa874
b 0xa880
adds r0, 1
bne 0xa866
blx 0x261c
ldr r3, [r0]
cmp r3, 0xb
str r3, [sp]
bne 0xa8ac
movw r0, 0x2710
adds r4, 1
blx sym.imp.strcpy
cmp r5, r4
beq 0xa880
--
movs r2, 3
add r0, pc
adds r0, 0xc
ldr r3, [r3]
str r3, [sp, 0x24]
mov.w r3, 0
strd r4, r4, [sp, 0x1c]
bl 0xf2c0
mov r0, r6
blx sym.imp.srand
adds r2, r0, 1
ldr r0, [0x0000b6ec]
movs r1, 0x4f
add r0, pc
bl 0xf7c8
cmp r0, 0
beq.w 0xb62c
mov r1, r6
mov r4, r0
movs r6, 0x2d
blx sym.imp.__strcpy_chk
b 0xb4d4
strb r6, [r0]
--
bhs.w 0xb65e
mov r0, r6
blx sym.imp.srand
movs r1, 0x6e
adds r2, r0, 1
mov r0, sb
bl 0xf7c8
mov r5, r0
cmp r0, 0
beq.w 0xb69a
mov r0, r6
blx sym.imp.srand
movs r1, 0x75
adds r2, r0, 1
mov r0, sb
bl 0xf7c8
str r0, [sp, 0x14]
cmp r0, 0
beq.w 0xb6b6
mov r1, r6
blx sym.imp.__strcpy_chk
ldr r1, [sp, 0x14]
ldrb r3, [r1]
cmp r3, 0x5c
it ne
cmpne r3, 0x2f
beq.w 0xb67a
ldr r1, [0x0000b6f8]
add.w r8, sp, 0x20
ldr r0, [sp, 0x14]
mov r2, r8
add r1, pc
blx sym.imp.opendir
mov r1, r0
mov r0, r5
blx sym.imp.__strcpy_chk
ldr.w sb, [0x0000b6fc]
mov r0, r5
--
str r0, [sp, 0x1c]
add sb, pc
movs r0, 0
mov r1, sb
blx sym.imp.opendir
ldr r3, [sp, 0x1c]
cmp r0, 0
mov fp, r0
clz r3, r3
lsr.w r3, r3, 5
it eq
moveq r3, 0
cbz r3, 0xb5fc
mov.w sl, 0x2f
mov r0, r5
blx sym.imp.srand
strb.w sl, [r5, r0]
adds r0, 1
mov r1, fp
add r0, r5
blx sym.imp.__strcpy_chk
mov r0, r5
bl 0xb3f0
--
mov r0, sb
mov r2, r6
bl 0xf8e8
mov r2, r4
movs r1, 0x64
mov r0, sb
bl 0xf8e8
mvn r3, 1
str r3, [sp, 0x1c]
b 0xb632
adds r0, r1, 1
ldr r1, [0x0000b70c]
mov sb, r5
add.w r8, sp, 0x20
strb r3, [sb], 1
mov r2, r8
add r1, pc
blx sym.imp.opendir
mov r1, r0
mov r0, sb
blx sym.imp.__strcpy_chk
b 0xb590
movs r1, 0x70
--
mvn r3, 0x62
str r3, [sp, 0x14]
b 0xbc32
mov r2, fp
movw r1, 0x1fb
mov r0, r6
bl 0xf8e8
mvn r3, 1
str r3, [sp, 0x14]
b 0xbc32
mov r0, sl
blx sym.imp.srand
movw r1, 0x203
adds r2, r0, 1
mov r0, r6
bl 0xf7c8
mov r4, r0
cmp r0, 0
beq 0xbc66
mov r1, sl
blx sym.imp.__strcpy_chk
ldr r1, [0x0000bcec]
mov r0, r4
--
add r1, sp, 0x30
mov r0, sb
blx sym.imp.getenv
mov r4, r0
cmp r0, 0
bne 0xc04c
ldr r3, [sp, 0x40]
and r3, r3, 0xf000
cmp.w r3, 0x8000
bne 0xc04c
mov r0, r5
blx sym.imp.srand
movw r1, 0x353
adds r2, r0, 1
mov r0, sl
bl 0xf7c8
ldr r2, [sp, 0x18]
str.w r0, [r2, fp, lsl 2]
cbz r0, 0xc138
mov r1, r5
blx sym.imp.__strcpy_chk
ldr r3, [sp, 0x18]
ldr r1, [sp, 0x20]
--
cmp r1, 0xf
it hi
movhi r5, r3
cmp r7, 0
beq 0xe4bc
mov r0, r7
blx sym.imp.srand
adds r2, r0, 2
ldr r0, [0x0000e4e8]
movw r1, 0x21b
str r2, [sp, 0x14]
add r0, pc
bl 0xf7c8
mov r6, r0
str r0, [sp, 0x10]
cmp r0, 0
beq 0xe490
rev16 r5, r5
mov r1, r7
strh r5, [r0], 2
blx sym.imp.__strcpy_chk
add r2, sp, 0x14
add r3, sp, 0x10
--
mov r1, sl
ldr r0, [r5]
bl 0x7744
ldr r0, [0x0000f224]
mov r2, sl
movs r1, 0x73
add r0, pc
bl 0xf8e8
add r0, sp, 0x30
blx 0x23ec
ldr r3, [sp, 0x30]
adds r3, 0xa
str r3, [sp, 0x30]
b 0xf1ac
mov r0, sb
blx 0x23ec
ldrd r2, r3, [sp, 0x2c]
cmp r2, r3
bgt 0xf1da
mov r0, r8
blx sym.imp.strcpy
mov r3, r7
ldr r0, [r5]
--
blx sym.imp.fwrite
ands r3, r4, 0xf
mov.w r0, 0x10
itt ne
addne r4, 0x10
subne r4, r4, r3
blx sym.imp.strftime
mov r5, r0
cmp r0, 0
beq 0xf88e
mov r0, sb
mov.w sb, 0
strd sb, sb, [r5, 4]
str r4, [r5, 0xc]
blx sym.imp.strftime
str r0, [r5]
cmp r0, 0
beq 0xf8b8
mov r1, r7
str.w sb, [r0]
blx sym.imp.__strcpy_chk
movs r1, 1
add.w r0, r4, 0x10
--
beq 0xfa64
vmov.i8 d16, 0x88
adds r2, r0, r5
ldr.w fp, [r4]
ldr r3, [r4, 0xc]
vstr d16, [r0]
vstr d16, [r2, 8]
mov r0, fp
str r5, [r4, 0xc]
rsb.w sb, r3, 0x20
ldr.w sl, [0x0000fa84]
add sb, r8
blx sym.imp.srand
mov r1, r8
mov r2, r0
mov r0, fp
mov r8, r2
blx sym.imp.sem_getvalue
mov r1, r6
str r0, [r4]
blx sym.imp.__strcpy_chk
ldr r6, [r4, 8]
add sl, pc

[*] Function strcpy used 15 times libpaho-mqtt3c.so.1.3.11