[*] Binary protection state of pdo_sqlite.so

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


[*] Function strcpy tear down of pdo_sqlite.so

    ; assembly                           | /* r2dec pseudo code output */
                                         | /* /logs/firmware/unblob_extracted/firmware_extract/1568982-13971496.squashfs_v4_le_extract/usr/lib/php/pdo_sqlite.so @ 0x182c */
                                         | #include <stdint.h>
                                         |  
    ; (fcn) fcn.0000182c ()              | void fcn_0000182c () {
    0x0000182c lui gp, 2                 |     
    0x00001830 addiu gp, gp, -0x475c     |     
    0x00001834 addu gp, gp, t9           |     gp += t9;
    0x00001838 addiu sp, sp, -0x38       |     
    0x0000183c sw s1, 0x30(sp)           |     *(var_30h) = s1;
    0x00001840 sw gp, 0x20(sp)           |     *(var_20h) = gp;
    0x00001844 sw ra, 0x34(sp)           |     *(var_34h) = ra;
    0x00001848 sw s0, 0x2c(sp)           |     *(var_2ch) = s0;
    0x0000184c move s1, a0               |     s1 = a0;
                                         |     do {
    0x00001850 lw s0, 0x14(s1)           |         s0 = *((s1 + 5));
                                         |         if (s0 == 0) {
    0x00001854 bnez s0, 0x1878           |             
    0x00001858 nop                       |             
                                         | label_0:
    0x0000185c lw s0, 0x18(s1)           |             s0 = *((s1 + 6));
    0x00001860 lw ra, 0x34(sp)           |             ra = *(var_34h);
                                         |             if (s0 != 0) {
    0x00001864 bnez s0, 0x1920           |                 goto label_1;
                                         |             }
    0x00001868 lw s1, 0x30(sp)           |             s1 = *(var_30h);
    0x0000186c lw s0, 0x2c(sp)           |             s0 = *(var_2ch);
    0x00001870 addiu sp, sp, 0x38        |             
    0x00001874 jr ra                     |             return v0;
                                         |         }
    0x00001878 lw v0, (s0)               |         v0 = *(s0);
    0x0000187c lw a0, (s1)               |         a0 = *(s1);
    0x00001880 sw v0, 0x14(s1)           |         *((s1 + 5)) = v0;
                                         |         if (a0 != 0) {
    0x00001884 beqz a0, 0x18b0           |             
    0x00001888 lw a2, 0x38(s0)           |             a2 = *((s0 + 14));
    0x0000188c lw a1, 0x3c(s0)           |             a1 = *((s0 + 15));
    0x00001890 lw t9, -0x7e80(gp)        |             t9 = *((gp - 8096));
    0x00001894 sw zero, 0x1c(sp)         |             *(var_1ch) = 0;
    0x00001898 sw zero, 0x18(sp)         |             *(var_18h) = 0;
    0x0000189c sw zero, 0x14(sp)         |             *(var_14h) = 0;
    0x000018a0 sw s0, 0x10(sp)           |             *(var_10h) = s0;
    0x000018a4 addiu a3, zero, 1         |             a3 = 1;
    0x000018a8 jalr t9                   |             t9 ();
    0x000018ac lw gp, 0x20(sp)           |             gp = *(var_20h);
                                         |         }
    0x000018b0 lw t9, -0x7f5c(gp)        |         t9 = *((gp - 8151));
    0x000018b4 lw a0, 0x3c(s0)           |         a0 = *((s0 + 15));
    0x000018b8 jalr t9                   |         t9 ();
    0x000018bc lbu v0, 0x10(s0)          |         v0 = *((s0 + 16));
    0x000018c0 lw gp, 0x20(sp)           |         gp = *(var_20h);
                                         |         if (v0 != 0) {
    0x000018c4 beqz v0, 0x18d8           |             
    0x000018c8 lw t9, -0x7e5c(gp)        |             t9 = *((gp - 8087));
    0x000018cc addiu a0, s0, 8           |             a0 = s0 + 8;
    0x000018d0 jalr t9                   |             t9 ();
    0x000018d4 lw gp, 0x20(sp)           |             gp = *(var_20h);
                                         |         }
    0x000018d8 lbu v0, 0x20(s0)          |         v0 = *((s0 + 32));
    0x000018dc lw t9, -0x7e5c(gp)        |         t9 = *((gp - 8087));
                                         |         if (v0 != 0) {
    0x000018e0 beqz v0, 0x18f0           |             
    0x000018e4 addiu a0, s0, 0x18        |             a0 = s0 + 0x18;
    0x000018e8 jalr t9                   |             t9 ();
    0x000018ec lw gp, 0x20(sp)           |             gp = *(var_20h);
                                         |         }
    0x000018f0 lbu v0, 0x30(s0)          |         v0 = *((s0 + 48));
    0x000018f4 lw t9, -0x7f5c(gp)        |         t9 = *((gp - 8151));
                                         |         if (v0 != 0) {
    0x000018f8 beqz v0, 0x1910           |             
    0x000018fc lw t9, -0x7e5c(gp)        |             t9 = *((gp - 8087));
    0x00001900 addiu a0, s0, 0x28        |             a0 = s0 + 0x28;
    0x00001904 jalr t9                   |             t9 ();
    0x00001908 lw gp, 0x20(sp)           |             gp = *(var_20h);
    0x0000190c lw t9, -0x7f5c(gp)        |             t9 = *((gp - 8151));
                                         |         }
    0x00001910 move a0, s0               |         a0 = s0;
    0x00001914 jalr t9                   |         t9 ();
    0x00001918 lw gp, 0x20(sp)           |         gp = *(var_20h);
    0x0000191c b 0x1850                  |         
                                         |     } while (1);
                                         | label_1:
    0x00001920 lw v0, (s0)               |     v0 = *(s0);
    0x00001924 lw a0, (s1)               |     a0 = *(s1);
    0x00001928 sw v0, 0x18(s1)           |     *((s1 + 6)) = v0;
                                         |     if (a0 != 0) {
    0x0000192c beqz a0, 0x194c           |         
    0x00001930 lw t9, -0x7ef0(gp)        |         t9 = *((gp - 8124));
    0x00001934 lw a1, 4(s0)              |         a1 = *((s0 + 1));
    0x00001938 move a3, s0               |         a3 = s0;
    0x0000193c sw zero, 0x10(sp)         |         *(var_10h) = 0;
    0x00001940 addiu a2, zero, 1         |         a2 = 1;
    0x00001944 jalr t9                   |         t9 ();
    0x00001948 lw gp, 0x20(sp)           |         gp = *(var_20h);
                                         |     }
    0x0000194c lw t9, -0x7f5c(gp)        |     t9 = *((gp - 8151));
    0x00001950 lw a0, 4(s0)              |     a0 = *((s0 + 1));
    0x00001954 jalr t9                   |     t9 ();
    0x00001958 lbu v0, 0x10(s0)          |     v0 = *((s0 + 16));
    0x0000195c lw gp, 0x20(sp)           |     gp = *(var_20h);
                                         |     if (v0 != 0) {
    0x00001960 beqz v0, 0x1974           |         
    0x00001964 lw t9, -0x7e5c(gp)        |         t9 = *((gp - 8087));
    0x00001968 addiu a0, s0, 8           |         a0 = s0 + 8;
    0x0000196c jalr t9                   |         t9 ();
    0x00001970 lw gp, 0x20(sp)           |         gp = *(var_20h);
                                         |     }
    0x00001974 lw t9, -0x7f5c(gp)        |     t9 = *((gp - 8151));
    0x00001978 move a0, s0               |     a0 = s0;
    0x0000197c jalr t9                   |     t9 ();
    0x00001980 lw gp, 0x20(sp)           |     gp = *(var_20h);
    0x00001984 b 0x185c                  |     goto label_0;
                                         | }

[*] Function strcpy used 1 times pdo_sqlite.so