[*] Binary protection state of libevent2.so

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


[*] Function strcat tear down of libevent2.so

    ; assembly                                               | /* r2dec pseudo code output */
                                                             | /* /logs/firmware/patool_extraction/rootfs.img_unblob_extracted/rootfs.img_extract/0-50593792.squashfs_v4_le_extract/usr/lib/libevent2.so @ 0xab18 */
                                                             | #include <stdint.h>
                                                             |  
    ; (fcn) sym.key_value_print ()                           | void key_value_print (int16_t arg1) {
                                                             |     int16_t var_0h;
                                                             |     int32_t var_0h_2;
                                                             |     int16_t var_8h;
                                                             |     r0 = arg1;
                                                             |     if (? >= ?) {
    0x0000ab18 ldrbmi lr, [r0, sp, lsr 18]!                  |         
                                                             |     }
    0x0000ab1c mov r5, r0                                    |     r5 = r0;
    0x0000ab1e ldr.w r8, [pc, 0x15c]                         |     
    0x0000ab20 strh r4, [r3, 0xa]                            |     *((r3 + 0xa)) = r4;
    0x0000ab22 sub sp, 0x10                                  |     
    0x0000ab24 add r8, pc                                    |     r8 = 0x157a6;
    0x0000ab26 mov r0, r8                                    |     r0 = r8;
    0x0000ab28 blx 0x8a2c                                    |     r0 = fcn_00008a2c ();
    0x0000ab2c mov r7, r0                                    |     r7 = r0;
    0x0000ab2e mov r0, r8                                    |     r0 = r8;
    0x0000ab30 blx 0x8a2c                                    |     r0 = fcn_00008a2c ();
    0x0000ab34 mov r6, r0                                    |     r6 = r0;
    0x0000ab36 mov r0, r8                                    |     r0 = r8;
    0x0000ab38 blx 0x8a2c                                    |     r0 = fcn_00008a2c ();
    0x0000ab3c mov sb, r0                                    |     sb = r0;
    0x0000ab3e mov r0, r8                                    |     r0 = r8;
    0x0000ab40 blx 0x8a2c                                    |     fcn_00008a2c ();
    0x0000ab44 cmp r5, 0                                     |     
                                                             |     if (r5 == 0) {
    0x0000ab46 beq 0xac30                                    |         goto label_7;
                                                             |     }
    0x0000ab48 mov sl, r0                                    |     sl = r0;
    0x0000ab4a ldr r0, [r5, 8]                               |     r0 = *((r5 + 8));
    0x0000ab4c blx 0x9698                                    |     fcn_00009698 ();
    0x0000ab50 ldr r3, [r5, 0x28]                            |     r3 = *((r5 + 0x28));
    0x0000ab52 mov r4, r0                                    |     r4 = r0;
    0x0000ab54 cmp r3, 0                                     |     
                                                             |     if (r3 != 0) {
    0x0000ab56 bne 0xac14                                    |         goto label_8;
                                                             |     }
    0x0000ab58 ldr r0, [r5, 0x20]                            |     r0 = *((r5 + 0x20));
    0x0000ab5a mov r1, r8                                    |     r1 = r8;
    0x0000ab5c blx 0x87b0                                    |     r0 = g_strdup ();
    0x0000ab60 cmp r0, 0                                     |     
                                                             |     if (r0 != 0) {
    0x0000ab62 bne.w 0xac6e                                  |         goto label_9;
                                                             |     }
                                                             | label_6:
    0x0000ab66 ldr r0, [r5]                                  |     r0 = *(r5);
    0x0000ab68 blx 0x98ac                                    |     fcn_000098ac ();
    0x0000ab6c ldr r1, [pc, 0x110]                           |     
    0x0000ab6e mov r2, r0                                    |     r2 = r0;
    0x0000ab70 mov r0, r7                                    |     r0 = r7;
    0x0000ab72 add r1, pc                                    |     r1 = 0x157f6;
    0x0000ab74 blx 0x998c                                    |     fcn_0000998c ();
                                                             | label_0:
    0x0000ab78 ldr r2, [r5, 0x18]                            |     r2 = *((r5 + 0x18));
                                                             |     if (r2 != 0) {
    0x0000ab7a cbz r2, 0xab82                                |         
    0x0000ab7c ldrb r3, [r2]                                 |         r3 = *(r2);
    0x0000ab7e cmp r3, 0                                     |         
                                                             |         if (r3 != 0) {
    0x0000ab80 bne 0xac56                                    |             goto label_10;
                                                             |         }
                                                             |     }
                                                             | label_4:
    0x0000ab82 ldr r2, [r5, 0x1c]                            |     r2 = *((r5 + 0x1c));
                                                             |     if (r2 != 0) {
    0x0000ab84 cbz r2, 0xab8c                                |         
    0x0000ab86 ldrb r3, [r2]                                 |         r3 = *(r2);
    0x0000ab88 cmp r3, 0                                     |         
                                                             |         if (r3 != 0) {
    0x0000ab8a bne 0xac62                                    |             goto label_11;
                                                             |         }
                                                             |     }
                                                             | label_5:
    0x0000ab8c ldr r2, [r5, 0x24]                            |     r2 = *((r5 + 0x24));
                                                             |     if (r2 != 0) {
    0x0000ab8e cbz r2, 0xab96                                |         
    0x0000ab90 ldrb r3, [r2]                                 |         r3 = *(r2);
    0x0000ab92 cmp r3, 0                                     |         
                                                             |         if (r3 != 0) {
    0x0000ab94 bne 0xac4a                                    |             goto label_12;
                                                             |         }
                                                             |     }
                                                             | label_3:
    0x0000ab96 ldr r1, [r5, 0x30]                            |     r1 = *((r5 + 0x30));
    0x0000ab98 ldr r2, [r7]                                  |     r2 = *(r7);
    0x0000ab9a ldr.w r3, [sb]                                |     r3 = *(sb);
    0x0000ab9e cmp r1, 0                                     |     
                                                             |     if (r1 != 0) {
    0x0000aba0 bne 0xac20                                    |         goto label_13;
                                                             |     }
    0x0000aba2 ldr r1, [r5, 0x2c]                            |     r1 = *((r5 + 0x2c));
    0x0000aba4 ldr r0, [pc, 0xdc]                            |     
    0x0000aba6 add r0, pc                                    |     r0 = 0x1582e;
    0x0000aba8 cmp r1, 0                                     |     
                                                             |     if (r1 != 0) {
    0x0000abaa bne 0xac2a                                    |         goto label_14;
                                                             |     }
                                                             | label_1:
    0x0000abac ldr r5, [r5, 4]                               |     r5 = *((r5 + 4));
                                                             | label_2:
    0x0000abae ldr.w r1, [sl]                                |     r1 = *(sl);
    0x0000abb2 strd r0, r5, [sp]                             |     __asm ("strd r0, r5, [sp]");
    0x0000abb6 mov r0, r6                                    |     r0 = r6;
    0x0000abb8 str r1, [sp, 8]                               |     var_8h = r1;
    0x0000abba ldr r1, [pc, 0xcc]                            |     
    0x0000abbc add r1, pc                                    |     r1 = 0x1584a;
    0x0000abbe blx 0x998c                                    |     fcn_0000998c ();
                                                             |     if (r4 == 0) {
    0x0000abc2 cbz r4, 0xabd8                                |         goto label_15;
                                                             |     }
    0x0000abc4 ldr r5, [pc, 0xc4]                            |     
    0x0000abc6 add r5, pc                                    |     r5 = 0x15856;
                                                             |     do {
    0x0000abc8 ldr r2, [r4]                                  |         r2 = *(r4);
    0x0000abca mov r1, r5                                    |         r1 = r5;
    0x0000abcc mov r0, r6                                    |         r0 = r6;
    0x0000abce blx 0x998c                                    |         fcn_0000998c ();
    0x0000abd2 ldr r4, [r4, 4]                               |         r4 = *((r4 + 4));
    0x0000abd4 cmp r4, 0                                     |         
    0x0000abd6 bne 0xabc8                                    |         
                                                             |     } while (r4 != 0);
                                                             | label_15:
    0x0000abd8 movs r1, 1                                    |     r1 = 1;
    0x0000abda mov r0, r7                                    |     r0 = r7;
    0x0000abdc blx 0x8c7c                                    |     fcn_00008c7c ();
    0x0000abde strex r1, r2, [lr, 4]                         |     __asm ("strex r1, r2, [lr, 4]");
    0x0000abe2 mov r0, sl                                    |     r0 = sl;
    0x0000abe4 blx 0x8c7c                                    |     fcn_00008c7c ();
    0x0000abe6 strex r1, r2, [sl, 4]                         |     __asm ("strex r1, r2, [sl, 4]");
    0x0000abea mov r0, sb                                    |     r0 = sb;
    0x0000abec blx 0x8c7c                                    |     fcn_00008c7c ();
    0x0000abf0 movs r1, 0                                    |     r1 = 0;
    0x0000abf2 mov r0, r6                                    |     r0 = r6;
    0x0000abf4 blx 0x8c7c                                    |     fcn_00008c7c ();
    0x0000abf8 ldr r2, [pc, 0x94]                            |     
    0x0000abfa mov r4, r0                                    |     r4 = r0;
    0x0000abfc mov r3, r0                                    |     r3 = r0;
    0x0000abfe movs r1, 0x20                                 |     r1 = 0x20;
    0x0000ac00 movs r0, 0                                    |     r0 = 0;
    0x0000ac02 add r2, pc                                    |     r2 = 0x15896;
    0x0000ac04 blx 0x999c                                    |     fcn_0000999c ();
    0x0000ac08 mov r0, r4                                    |     r0 = r4;
    0x0000ac0a add sp, 0x10                                  |     
    0x0000ac0c pop.w {r4, r5, r6, r7, r8, sb, sl, lr}        |     
    0x0000ac10 b.w 0x8520                                    |     void (*0x8520)() ();
                                                             | label_8:
    0x0000ac14 ldr r1, [pc, 0x7c]                            |     
    0x0000ac16 mov r0, r7                                    |     r0 = r7;
    0x0000ac18 add r1, pc                                    |     r1 = 0x158b0;
    0x0000ac1a blx 0x998c                                    |     fcn_0000998c ();
    0x0000ac1e b 0xab78                                      |     goto label_0;
                                                             | label_13:
    0x0000ac20 ldr r1, [r5, 0x2c]                            |     r1 = *((r5 + 0x2c));
    0x0000ac22 ldr r0, [pc, 0x74]                            |     
    0x0000ac24 add r0, pc                                    |     r0 = 0x158c2;
    0x0000ac26 cmp r1, 0                                     |     
                                                             |     if (r1 == 0) {
    0x0000ac28 beq 0xabac                                    |         goto label_1;
                                                             |     }
                                                             | label_14:
    0x0000ac2a ldr r5, [pc, 0x70]                            |     
    0x0000ac2c add r5, pc                                    |     r5 = 0x158ce;
    0x0000ac2e b 0xabae                                      |     goto label_2;
                                                             | label_7:
    0x0000ac30 ldr r3, [pc, 0x6c]                            |     
    0x0000ac32 mov.w r2, 0x24c                               |     r2 = 0x24c;
    0x0000ac36 ldr r4, [pc, 0x6c]                            |     
    0x0000ac38 mov r0, r5                                    |     r0 = r5;
    0x0000ac3a ldr r1, [pc, 0x6c]                            |     
    0x0000ac3c add r3, pc                                    |     r3 = 0x158e0;
    0x0000ac3e add r4, pc                                    |     r4 = 0x158e8;
    0x0000ac40 adds r3, 0x9c                                 |     r3 += 0x9c;
    0x0000ac42 add r1, pc                                    |     r1 = 0x158f0;
    0x0000ac44 str r4, [sp]                                  |     *(sp) = r4;
    0x0000ac46 blx 0x8b7c                                    |     g_node_nth_child ();
                                                             | label_12:
    0x0000ac4a ldr r1, [pc, 0x60]                            |     
    0x0000ac4c mov r0, sb                                    |     r0 = sb;
    0x0000ac4e add r1, pc                                    |     r1 = 0x15900;
    0x0000ac50 blx 0x998c                                    |     fcn_0000998c ();
    0x0000ac54 b 0xab96                                      |     goto label_3;
                                                             | label_10:
    0x0000ac56 ldr r1, [pc, 0x58]                            |     
    0x0000ac58 mov r0, sb                                    |     r0 = sb;
    0x0000ac5a add r1, pc                                    |     r1 = 0x15910;
    0x0000ac5c blx 0x998c                                    |     fcn_0000998c ();
    0x0000ac60 b 0xab82                                      |     goto label_4;
                                                             | label_11:
    0x0000ac62 ldr r1, [pc, 0x50]                            |     
    0x0000ac64 mov r0, sl                                    |     r0 = sl;
    0x0000ac66 add r1, pc                                    |     r1 = 0x15920;
    0x0000ac68 blx 0x998c                                    |     fcn_0000998c ();
    0x0000ac6c b 0xab8c                                      |     goto label_5;
                                                             | label_9:
    0x0000ac6e ldr r1, [pc, 0x48]                            |     
    0x0000ac70 mov r0, r7                                    |     r0 = r7;
    0x0000ac72 ldr r2, [r5, 0x20]                            |     r2 = *((r5 + 0x20));
    0x0000ac74 add r1, pc                                    |     r1 = 0x15932;
    0x0000ac76 blx 0x998c                                    |     fcn_0000998c ();
    0x0000ac7a b 0xab66                                      |     goto label_6;
                                                             | }

[*] Function strcat used 1 times libevent2.so