[*] Binary protection state of libcrypto.so.1.0.0

  
  	No RELRO       No Canary found   NX disabled  DSO          No RPATH     No RUNPATH   No Symbols


[*] Function mmap tear down of libcrypto.so.1.0.0

    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/patool_extraction/DUMP/mtdblock8_unblob_extracted/mtdblock8_extract/0-9650176.squashfs_v4_le_extract/lib/libcrypto.so.1.0.0 @ 0xa7dc0 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) sym.DSA_set_method ()            | void DSA_set_method () {
    0x000a7dc0 lui gp, 0x11                  |     
    0x000a7dc4 addiu gp, gp, 0x7630          |     
    0x000a7dc8 addu gp, gp, t9               |     gp += t9;
    0x000a7dcc addiu sp, sp, -0x28           |     
    0x000a7dd0 sw ra, 0x24(sp)               |     *(var_24h) = ra;
    0x000a7dd4 sw s1, 0x20(sp)               |     *(var_20h) = s1;
    0x000a7dd8 sw s0, 0x1c(sp)               |     *(var_1ch) = s0;
    0x000a7ddc move s0, a0                   |     s0 = a0;
    0x000a7de0 lw t8, 0x3c(a0)               |     t8 = *((a0 + 15));
    0x000a7de4 sw gp, 0x10(sp)               |     *(var_10h) = gp;
    0x000a7de8 lw t9, 0x1c(t8)               |     t9 = *((t8 + 7));
    0x000a7dec move s1, a1                   |     s1 = a1;
                                             |     if (t9 != 0) {
    0x000a7df0 beqz t9, 0xa7e00              |         
    0x000a7df4 jalr t9                       |         t9 ();
    0x000a7df8 nop                           |         
    0x000a7dfc lw gp, 0x10(sp)               |         gp = *(var_10h);
                                             |     }
    0x000a7e00 lw a0, 0x40(s0)               |     a0 = *((s0 + 16));
    0x000a7e04 lw t9, -0x76c8(gp)            |     t9 = *(gp);
                                             |     if (a0 != 0) {
    0x000a7e08 beqz a0, 0xa7e18              |         
    0x000a7e0c jalr t9                       |         t9 ();
    0x000a7e10 nop                           |         
    0x000a7e14 sw zero, 0x40(s0)             |         *((s0 + 16)) = 0;
                                             |     }
    0x000a7e18 lw t9, 0x18(s1)               |     t9 = *((s1 + 6));
    0x000a7e1c sw s1, 0x3c(s0)               |     *((s0 + 15)) = s1;
                                             |     if (t9 != 0) {
    0x000a7e20 beqz t9, 0xa7e2c              |         
    0x000a7e24 move a0, s0                   |         a0 = s0;
    0x000a7e28 jalr t9                       |         t9 ();
                                             |     }
    0x000a7e2c lw ra, 0x24(sp)               |     ra = *(var_24h);
    0x000a7e30 addiu v0, zero, 1             |     v0 = 1;
    0x000a7e34 lw s1, 0x20(sp)               |     s1 = *(var_20h);
    0x000a7e38 lw s0, 0x1c(sp)               |     s0 = *(var_1ch);
    0x000a7e3c addiu sp, sp, 0x28            |     
    0x000a7e40 jr ra                         |     return v0;
                                             | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/patool_extraction/DUMP/mtdblock8_unblob_extracted/mtdblock8_extract/0-9650176.squashfs_v4_le_extract/lib/libcrypto.so.1.0.0 @ 0x14fb70 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) sym.UI_set_result ()             | void UI_set_result () {
    0x0014fb70 lui gp, 7                     |     
    0x0014fb74 addiu gp, gp, -0x780          |     
    0x0014fb78 addu gp, gp, t9               |     gp += t9;
    0x0014fb7c addiu sp, sp, -0x60           |     
    0x0014fb80 sw ra, 0x5c(sp)               |     *(var_5ch) = ra;
    0x0014fb84 sw s6, 0x58(sp)               |     *(var_58h) = s6;
    0x0014fb88 sw s5, 0x54(sp)               |     *(var_54h) = s5;
    0x0014fb8c sw s4, 0x50(sp)               |     *(var_50h) = s4;
    0x0014fb90 sw s3, 0x4c(sp)               |     *(var_4ch) = s3;
    0x0014fb94 sw s2, 0x48(sp)               |     *(var_48h) = s2;
    0x0014fb98 sw s1, 0x44(sp)               |     *(var_44h) = s1;
    0x0014fb9c sw s0, 0x40(sp)               |     *(var_40h) = s0;
    0x0014fba0 move s0, a0                   |     s0 = a0;
    0x0014fba4 lw t9, -0x5bcc(gp)            |     t9 = *((gp - 5875));
    0x0014fba8 move a0, a2                   |     a0 = a2;
    0x0014fbac sw gp, 0x18(sp)               |     *(var_18h) = gp;
    0x0014fbb0 move s1, a2                   |     s1 = a2;
    0x0014fbb4 move s2, a1                   |     s2 = a1;
    0x0014fbb8 jalr t9                       |     t9 ();
    0x0014fbbc lw t8, 0x14(s0)               |     t8 = *((s0 + 5));
    0x0014fbc0 addiu v1, zero, -2            |     v1 = -2;
    0x0014fbc4 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0014fbc8 and t8, t8, v1                |     t8 &= v1;
    0x0014fbcc sw t8, 0x14(s0)               |     *((s0 + 5)) = t8;
                                             |     if (s2 == 0) {
    0x0014fbd0 beqz s2, 0x14fdc0             |         goto label_2;
                                             |     }
    0x0014fbd4 lw t8, (s2)                   |     t8 = *(s2);
    0x0014fbd8 sltiu v1, t8, 3               |     v1 = (t8 < 3) ? 1 : 0;
                                             |     if (t8 == 0) {
    0x0014fbdc beqz t8, 0x14fd38             |         goto label_3;
                                             |     }
    0x0014fbe0 lw t9, -0x7f70(gp)            |     t9 = *((gp - 8156));
                                             |     if (v1 != 0) {
    0x0014fbe4 bnez v1, 0x14fc94             |         goto label_4;
                                             |     }
    0x0014fbe8 addiu v0, zero, 3             |     v0 = 3;
    0x0014fbec lw ra, 0x5c(sp)               |     ra = *(var_5ch);
                                             |     if (t8 != v0) {
    0x0014fbf0 bne t8, v0, 0x14fd3c          |         goto label_5;
                                             |     }
    0x0014fbf4 lw t8, 0xc(s2)                |     t8 = *((s2 + 3));
    0x0014fbf8 lw t9, -0x7fb8(gp)            |     t9 = *((gp - 8174));
                                             |     if (t8 == 0) {
    0x0014fbfc beqz t8, 0x14fe58             |         goto label_6;
                                             |     }
    0x0014fc00 sb zero, (t8)                 |     *(t8) = 0;
    0x0014fc04 lb s0, (s1)                   |     s0 = *(s1);
    0x0014fc08 lw ra, 0x5c(sp)               |     ra = *(var_5ch);
                                             |     if (s0 == 0) {
    0x0014fc0c beqz s0, 0x14fd3c             |         goto label_5;
                                             |     }
    0x0014fc10 lw s3, 0x14(s2)               |     s3 = *((s2 + 5));
    0x0014fc14 b 0x14fc38                    |     
                                             |     while (v0 == 0) {
    0x0014fc18 lw s0, 0x18(s2)               |         s0 = *((s2 + 6));
    0x0014fc1c move a0, s0                   |         a0 = s0;
    0x0014fc20 jalr t9                       |         t9 ();
    0x0014fc24 lw gp, 0x18(sp)               |         gp = *(var_18h);
                                             |         if (v0 != 0) {
    0x0014fc28 bnez v0, 0x14fd64             |             goto label_7;
                                             |         }
    0x0014fc2c lb s0, (s1)                   |         s0 = *(s1);
    0x0014fc30 lw ra, 0x5c(sp)               |         ra = *(var_5ch);
                                             |         if (s0 == 0) {
    0x0014fc34 beqz s0, 0x14fd3c             |             goto label_5;
                                             |         }
    0x0014fc38 lw t9, -0x5b00(gp)            |         t9 = *((gp - 5824));
    0x0014fc3c move a1, s0                   |         a1 = s0;
    0x0014fc40 move a0, s3                   |         a0 = s3;
    0x0014fc44 addiu s1, s1, 1               |         s1++;
    0x0014fc48 jalr t9                       |         t9 ();
    0x0014fc4c move a1, s0                   |         a1 = s0;
    0x0014fc50 lw gp, 0x18(sp)               |         gp = *(var_18h);
    0x0014fc54 lw t9, -0x5b00(gp)            |         t9 = *((gp - 5824));
    0x0014fc58 beqz v0, 0x14fc18             |         
                                             |     }
    0x0014fc5c lw t8, 0xc(s2)                |     t8 = *((s2 + 3));
    0x0014fc60 move v0, zero                 |     v0 = 0;
    0x0014fc64 lb v1, (s3)                   |     v1 = *(s3);
    0x0014fc68 sb v1, (t8)                   |     *(t8) = v1;
    0x0014fc6c lw ra, 0x5c(sp)               |     ra = *(var_5ch);
    0x0014fc70 lw s6, 0x58(sp)               |     s6 = *(var_58h);
    0x0014fc74 lw s5, 0x54(sp)               |     s5 = *(var_54h);
    0x0014fc78 lw s4, 0x50(sp)               |     s4 = *(var_50h);
    0x0014fc7c lw s3, 0x4c(sp)               |     s3 = *(var_4ch);
    0x0014fc80 lw s2, 0x48(sp)               |     s2 = *(var_48h);
    0x0014fc84 lw s1, 0x44(sp)               |     s1 = *(var_44h);
    0x0014fc88 lw s0, 0x40(sp)               |     s0 = *(var_40h);
    0x0014fc8c addiu sp, sp, 0x60            |     
    0x0014fc90 jr ra                         |     return v0;
                                             | label_4:
    0x0014fc94 lw s4, -0x7db0(gp)            |     s4 = *((gp - 8044));
    0x0014fc98 addiu s6, sp, 0x30            |     s6 = sp + 0x30;
    0x0014fc9c move a0, s6                   |     a0 = s6;
    0x0014fca0 lw a3, 0x10(s2)               |     a3 = *((s2 + 4));
    0x0014fca4 addiu a1, zero, 0xd           |     a1 = 0xd;
    0x0014fca8 addiu a2, s4, -0x1208         |     a2 = s4 + -0x1208;
    0x0014fcac move s3, v0                   |     s3 = v0;
    0x0014fcb0 jalr t9                       |     t9 ();
    0x0014fcb4 addiu s5, sp, 0x20            |     s5 = sp + 0x20;
    0x0014fcb8 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0014fcbc move a0, s5                   |     a0 = s5;
    0x0014fcc0 lw a3, 0x14(s2)               |     a3 = *((s2 + 5));
    0x0014fcc4 addiu a1, zero, 0xd           |     a1 = 0xd;
    0x0014fcc8 lw t9, -0x7f70(gp)            |     t9 = *((gp - 8156));
    0x0014fccc addiu a2, s4, -0x1208         |     a2 = s4 + -0x1208;
    0x0014fcd0 jalr t9                       |     t9 ();
    0x0014fcd4 lw t8, 0x10(s2)               |     t8 = *((s2 + 4));
    0x0014fcd8 slt t8, s3, t8                |     t8 = (s3 < t8) ? 1 : 0;
    0x0014fcdc lw gp, 0x18(sp)               |     gp = *(var_18h);
                                             |     if (t8 != 0) {
    0x0014fce0 bnez t8, 0x14fdc8             |         goto label_8;
                                             |     }
    0x0014fce4 lw a2, 0x14(s2)               |     a2 = *((s2 + 5));
    0x0014fce8 slt s3, a2, s3                |     s3 = (a2 < s3) ? 1 : 0;
    0x0014fcec addiu a0, zero, 0x28          |     a0 = 0x28;
                                             |     if (s3 != 0) {
    0x0014fcf0 bnez s3, 0x14fe34             |         goto label_9;
                                             |     }
    0x0014fcf4 lw a0, 0xc(s2)                |     a0 = *((s2 + 3));
    0x0014fcf8 lw t9, -0x7f64(gp)            |     t9 = *((gp - 8153));
                                             |     if (a0 == 0) {
    0x0014fcfc beqz a0, 0x14fd9c             |         goto label_10;
                                             |     }
    0x0014fd00 move a1, s1                   |     a1 = s1;
    0x0014fd04 addiu a2, a2, 1               |     a2++;
    0x0014fd08 jalr t9                       |     t9 ();
    0x0014fd0c move v0, zero                 |     v0 = 0;
                                             |     do {
                                             | label_0:
    0x0014fd10 lw ra, 0x5c(sp)               |         ra = *(var_5ch);
    0x0014fd14 lw s6, 0x58(sp)               |         s6 = *(var_58h);
    0x0014fd18 lw s5, 0x54(sp)               |         s5 = *(var_54h);
    0x0014fd1c lw s4, 0x50(sp)               |         s4 = *(var_50h);
    0x0014fd20 lw s3, 0x4c(sp)               |         s3 = *(var_4ch);
    0x0014fd24 lw s2, 0x48(sp)               |         s2 = *(var_48h);
    0x0014fd28 lw s1, 0x44(sp)               |         s1 = *(var_44h);
    0x0014fd2c lw s0, 0x40(sp)               |         s0 = *(var_40h);
    0x0014fd30 addiu sp, sp, 0x60            |         
    0x0014fd34 jr ra                         |         return v0;
                                             | label_3:
    0x0014fd38 lw ra, 0x5c(sp)               |         ra = *(var_5ch);
                                             | label_5:
    0x0014fd3c move v0, zero                 |         v0 = 0;
    0x0014fd40 lw s6, 0x58(sp)               |         s6 = *(var_58h);
    0x0014fd44 lw s5, 0x54(sp)               |         s5 = *(var_54h);
    0x0014fd48 lw s4, 0x50(sp)               |         s4 = *(var_50h);
    0x0014fd4c lw s3, 0x4c(sp)               |         s3 = *(var_4ch);
    0x0014fd50 lw s2, 0x48(sp)               |         s2 = *(var_48h);
    0x0014fd54 lw s1, 0x44(sp)               |         s1 = *(var_44h);
    0x0014fd58 lw s0, 0x40(sp)               |         s0 = *(var_40h);
    0x0014fd5c addiu sp, sp, 0x60            |         
    0x0014fd60 jr ra                         |         return v0;
                                             | label_7:
    0x0014fd64 lw t8, 0xc(s2)                |         t8 = *((s2 + 3));
    0x0014fd68 move v0, zero                 |         v0 = 0;
    0x0014fd6c lb v1, (s0)                   |         v1 = *(s0);
    0x0014fd70 sb v1, (t8)                   |         *(t8) = v1;
    0x0014fd74 lw ra, 0x5c(sp)               |         ra = *(var_5ch);
    0x0014fd78 lw s6, 0x58(sp)               |         s6 = *(var_58h);
    0x0014fd7c lw s5, 0x54(sp)               |         s5 = *(var_54h);
    0x0014fd80 lw s4, 0x50(sp)               |         s4 = *(var_50h);
    0x0014fd84 lw s3, 0x4c(sp)               |         s3 = *(var_4ch);
    0x0014fd88 lw s2, 0x48(sp)               |         s2 = *(var_48h);
    0x0014fd8c lw s1, 0x44(sp)               |         s1 = *(var_44h);
    0x0014fd90 lw s0, 0x40(sp)               |         s0 = *(var_40h);
    0x0014fd94 addiu sp, sp, 0x60            |         
    0x0014fd98 jr ra                         |         return v0;
                                             | label_10:
    0x0014fd9c lw t9, -0x7fb8(gp)            |         t9 = *((gp - 8174));
    0x0014fda0 addiu a0, zero, 0x28          |         a0 = 0x28;
    0x0014fda4 addiu t8, zero, 0x34e         |         t8 = 0x34e;
                                             | label_1:
    0x0014fda8 lw a3, -0x7db0(gp)            |         a3 = *((gp - 8044));
    0x0014fdac addiu a1, zero, 0x69          |         a1 = 0x69;
    0x0014fdb0 sw t8, 0x10(sp)               |         *(var_10h) = t8;
    0x0014fdb4 addiu a2, zero, 0x69          |         a2 = 0x69;
    0x0014fdb8 addiu a3, a3, 0x18fc          |         a3 += 0x18fc;
    0x0014fdbc jalr t9                       |         t9 ();
                                             | label_2:
    0x0014fdc0 addiu v0, zero, -1            |         v0 = -1;
    0x0014fdc4 b 0x14fd10                    |         
                                             |     } while (1);
                                             | label_8:
    0x0014fdc8 lw t8, 0x14(s0)               |     t8 = *((s0 + 5));
    0x0014fdcc addiu a0, zero, 0x28          |     a0 = 0x28;
    0x0014fdd0 lw t9, -0x7fb8(gp)            |     t9 = *((gp - 8174));
    0x0014fdd4 addiu a1, zero, 0x69          |     a1 = 0x69;
    0x0014fdd8 ori t8, t8, 1                 |     t8 |= 1;
    0x0014fddc addiu a2, zero, 0x65          |     a2 = 0x65;
    0x0014fde0 sw t8, 0x14(s0)               |     *((s0 + 5)) = t8;
    0x0014fde4 addiu t8, zero, 0x33f         |     t8 = 0x33f;
    0x0014fde8 sw t8, 0x10(sp)               |     *(var_10h) = t8;
                                             |     do {
    0x0014fdec lw a3, -0x7db0(gp)            |         a3 = *((gp - 8044));
    0x0014fdf0 addiu a3, a3, 0x18fc          |         a3 += 0x18fc;
    0x0014fdf4 jalr t9                       |         t9 ();
    0x0014fdf8 addiu a0, zero, 5             |         a0 = 5;
    0x0014fdfc lw gp, 0x18(sp)               |         gp = *(var_18h);
    0x0014fe00 move a2, s6                   |         a2 = s6;
    0x0014fe04 sw s5, 0x10(sp)               |         *(var_10h) = s5;
    0x0014fe08 lw t8, -0x7db0(gp)            |         t8 = *((gp - 8044));
    0x0014fe0c lw a1, -0x7db0(gp)            |         a1 = *((gp - 8044));
    0x0014fe10 lw a3, -0x7db0(gp)            |         a3 = *((gp - 8044));
    0x0014fe14 addiu t8, t8, 0x178c          |         t8 += 0x178c;
    0x0014fe18 lw t9, -0x73e8(gp)            |         t9 = *((gp - 7418));
    0x0014fe1c addiu a1, a1, 0x1908          |         a1 += 0x1908;
    0x0014fe20 addiu a3, a3, 0x191c          |         a3 += 0x191c;
    0x0014fe24 sw t8, 0x14(sp)               |         *(var_14h) = t8;
    0x0014fe28 jalr t9                       |         t9 ();
    0x0014fe2c addiu v0, zero, -1            |         v0 = -1;
    0x0014fe30 b 0x14fd10                    |         goto label_0;
                                             | label_9:
    0x0014fe34 lw t8, 0x14(s0)               |         t8 = *((s0 + 5));
    0x0014fe38 lw t9, -0x7fb8(gp)            |         t9 = *((gp - 8174));
    0x0014fe3c addiu a1, zero, 0x69          |         a1 = 0x69;
    0x0014fe40 ori t8, t8, 1                 |         t8 |= 1;
    0x0014fe44 addiu a2, zero, 0x64          |         a2 = 0x64;
    0x0014fe48 sw t8, 0x14(s0)               |         *((s0 + 5)) = t8;
    0x0014fe4c addiu t8, zero, 0x346         |         t8 = 0x346;
    0x0014fe50 sw t8, 0x10(sp)               |         *(var_10h) = t8;
    0x0014fe54 b 0x14fdec                    |         
                                             |     } while (1);
                                             | label_6:
    0x0014fe58 addiu a0, zero, 0x28          |     a0 = 0x28;
    0x0014fe5c addiu t8, zero, 0x35a         |     t8 = 0x35a;
    0x0014fe60 b 0x14fda8                    |     goto label_1;
                                             | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/patool_extraction/DUMP/mtdblock8_unblob_extracted/mtdblock8_extract/0-9650176.squashfs_v4_le_extract/lib/libcrypto.so.1.0.0 @ 0x1262a0 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) sym.X509V3_EXT_i2d ()            | void X509V3_EXT_i2d () {
    0x001262a0 lui gp, 0xa                   |     
    0x001262a4 addiu gp, gp, -0x6eb0         |     
    0x001262a8 addu gp, gp, t9               |     gp += t9;
    0x001262ac addiu sp, sp, -0x48           |     
    0x001262b0 sw ra, 0x44(sp)               |     *(var_44h) = ra;
    0x001262b4 sw s5, 0x40(sp)               |     *(var_40h) = s5;
    0x001262b8 sw s4, 0x3c(sp)               |     *(var_3ch) = s4;
    0x001262bc sw s3, 0x38(sp)               |     *(var_38h) = s3;
    0x001262c0 sw s2, 0x34(sp)               |     *(var_34h) = s2;
    0x001262c4 sw s1, 0x30(sp)               |     *(var_30h) = s1;
    0x001262c8 sw s0, 0x2c(sp)               |     *(var_2ch) = s0;
    0x001262cc move s4, a0                   |     s4 = a0;
    0x001262d0 lw t9, -0x65d0(gp)            |     t9 = *((gp - 6516));
    0x001262d4 move s3, a1                   |     s3 = a1;
    0x001262d8 sw gp, 0x18(sp)               |     *(var_18h) = gp;
    0x001262dc move s2, a2                   |     s2 = a2;
    0x001262e0 jalr t9                       |     t9 ();
    0x001262e4 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x001262e8 move s0, v0                   |     s0 = v0;
                                             |     if (v0 == 0) {
    0x001262ec beqz v0, 0x126438             |         goto label_1;
                                             |     }
    0x001262f0 lw a2, 8(v0)                  |     a2 = *((v0 + 2));
    0x001262f4 lw t9, -0x78e8(gp)            |     t9 = *(gp);
                                             |     if (a2 == 0) {
    0x001262f8 beqz a2, 0x126394             |         goto label_2;
                                             |     }
    0x001262fc move a0, s2                   |     a0 = s2;
    0x00126300 addiu a1, sp, 0x24            |     a1 = sp + 0x24;
    0x00126304 sw zero, 0x24(sp)             |     *(var_24h) = 0;
    0x00126308 jalr t9                       |     t9 ();
    0x0012630c lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x00126310 move s1, v0                   |     s1 = v0;
                                             |     if (v0 < 0) {
    0x00126314 bltz v0, 0x1263ec             |         goto label_3;
                                             |     }
                                             |     do {
    0x00126318 lw t9, -0x78b4(gp)            |         t9 = *(gp);
    0x0012631c addiu a0, zero, 4             |         a0 = 4;
    0x00126320 jalr t9                       |         t9 ();
    0x00126324 lw gp, 0x18(sp)               |         gp = *(var_18h);
    0x00126328 move s0, v0                   |         s0 = v0;
                                             |         if (v0 == 0) {
    0x0012632c beqz v0, 0x1263ec             |             goto label_3;
                                             |         }
    0x00126330 lw t8, 0x24(sp)               |         t8 = *(var_24h);
    0x00126334 move a0, zero                 |         a0 = 0;
    0x00126338 lw t9, -0x65c4(gp)            |         t9 = *((gp - 6513));
    0x0012633c move a1, s4                   |         a1 = s4;
    0x00126340 sw s1, (v0)                   |         *(v0) = s1;
    0x00126344 move a2, s3                   |         a2 = s3;
    0x00126348 sw t8, 8(v0)                  |         *((v0 + 2)) = t8;
    0x0012634c move a3, v0                   |         a3 = v0;
    0x00126350 jalr t9                       |         t9 ();
    0x00126354 lw gp, 0x18(sp)               |         gp = *(var_18h);
    0x00126358 move s1, v0                   |         s1 = v0;
                                             |         if (v0 == 0) {
    0x0012635c beqz v0, 0x1263ec             |             goto label_3;
                                             |         }
    0x00126360 lw t9, -0x7788(gp)            |         t9 = *((gp - 7650));
    0x00126364 move a0, s0                   |         a0 = s0;
    0x00126368 jalr t9                       |         t9 ();
    0x0012636c move v0, s1                   |         v0 = s1;
                                             | label_0:
    0x00126370 lw ra, 0x44(sp)               |         ra = *(var_44h);
    0x00126374 lw s5, 0x40(sp)               |         s5 = *(var_40h);
    0x00126378 lw s4, 0x3c(sp)               |         s4 = *(var_3ch);
    0x0012637c lw s3, 0x38(sp)               |         s3 = *(var_38h);
    0x00126380 lw s2, 0x34(sp)               |         s2 = *(var_34h);
    0x00126384 lw s1, 0x30(sp)               |         s1 = *(var_30h);
    0x00126388 lw s0, 0x2c(sp)               |         s0 = *(var_2ch);
    0x0012638c addiu sp, sp, 0x48            |         
    0x00126390 jr ra                         |         return v0;
                                             | label_2:
    0x00126394 lw t9, 0x18(v0)               |         t9 = *((v0 + 6));
    0x00126398 move a0, s2                   |         a0 = s2;
    0x0012639c move a1, zero                 |         a1 = 0;
    0x001263a0 jalr t9                       |         t9 ();
    0x001263a4 addiu a2, zero, 0xc3          |         a2 = 0xc3;
    0x001263a8 lw gp, 0x18(sp)               |         gp = *(var_18h);
    0x001263ac move a0, v0                   |         a0 = v0;
    0x001263b0 move s1, v0                   |         s1 = v0;
    0x001263b4 lw s5, -0x7db0(gp)            |         s5 = *((gp - 8044));
    0x001263b8 lw t9, -0x7f8c(gp)            |         t9 = *((gp - 8163));
    0x001263bc addiu a1, s5, -0x2024         |         a1 = s5 + -0x2024;
    0x001263c0 jalr t9                       |         t9 ();
    0x001263c4 lw gp, 0x18(sp)               |         gp = *(var_18h);
    0x001263c8 sw v0, 0x24(sp)               |         *(var_24h) = v0;
                                             |         if (v0 == 0) {
    0x001263cc beqz v0, 0x1263f0             |             goto label_4;
                                             |         }
    0x001263d0 lw t9, 0x18(s0)               |         t9 = *((s0 + 6));
    0x001263d4 move a0, s2                   |         a0 = s2;
    0x001263d8 sw v0, 0x20(sp)               |         *(var_20h) = v0;
    0x001263dc addiu a1, sp, 0x20            |         a1 = sp + 0x20;
    0x001263e0 jalr t9                       |         t9 ();
    0x001263e4 lw gp, 0x18(sp)               |         gp = *(var_18h);
    0x001263e8 b 0x126318                    |         
                                             |     } while (1);
                                             | label_3:
    0x001263ec lw s5, -0x7db0(gp)            |     s5 = *((gp - 8044));
                                             | label_4:
    0x001263f0 lw t9, -0x7fb8(gp)            |     t9 = *((gp - 8174));
    0x001263f4 addiu t8, zero, 0xd5          |     t8 = 0xd5;
    0x001263f8 addiu a3, s5, -0x2024         |     a3 = s5 + -0x2024;
    0x001263fc addiu a0, zero, 0x22          |     a0 = 0x22;
    0x00126400 addiu a1, zero, 0x87          |     a1 = 0x87;
    0x00126404 addiu a2, zero, 0x41          |     a2 = 0x41;
    0x00126408 sw t8, 0x10(sp)               |     *(var_10h) = t8;
    0x0012640c jalr t9                       |     t9 ();
    0x00126410 move v0, zero                 |     v0 = 0;
    0x00126414 lw ra, 0x44(sp)               |     ra = *(var_44h);
    0x00126418 lw s5, 0x40(sp)               |     s5 = *(var_40h);
    0x0012641c lw s4, 0x3c(sp)               |     s4 = *(var_3ch);
    0x00126420 lw s3, 0x38(sp)               |     s3 = *(var_38h);
    0x00126424 lw s2, 0x34(sp)               |     s2 = *(var_34h);
    0x00126428 lw s1, 0x30(sp)               |     s1 = *(var_30h);
    0x0012642c lw s0, 0x2c(sp)               |     s0 = *(var_2ch);
    0x00126430 addiu sp, sp, 0x48            |     
    0x00126434 jr ra                         |     return v0;
                                             | label_1:
    0x00126438 lw a3, -0x7db0(gp)            |     a3 = *((gp - 8044));
    0x0012643c addiu t8, zero, 0xe0          |     t8 = 0xe0;
    0x00126440 lw t9, -0x7fb8(gp)            |     t9 = *((gp - 8174));
    0x00126444 addiu a0, zero, 0x22          |     a0 = 0x22;
    0x00126448 sw t8, 0x10(sp)               |     *(var_10h) = t8;
    0x0012644c addiu a1, zero, 0x88          |     a1 = 0x88;
    0x00126450 addiu a2, zero, 0x81          |     a2 = 0x81;
    0x00126454 addiu a3, a3, -0x2024         |     a3 += -0x2024;
    0x00126458 jalr t9                       |     t9 ();
    0x0012645c move v0, zero                 |     v0 = 0;
    0x00126460 b 0x126370                    |     goto label_0;
                                             | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/patool_extraction/DUMP/mtdblock8_unblob_extracted/mtdblock8_extract/0-9650176.squashfs_v4_le_extract/lib/libcrypto.so.1.0.0 @ 0xeee80 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) sym.X509_PUBKEY_set ()           | void X509_PUBKEY_set () {
    0x000eee80 lui gp, 0xd                   |     
    0x000eee84 addiu gp, gp, 0x570           |     
    0x000eee88 addu gp, gp, t9               |     gp += t9;
    0x000eee8c addiu sp, sp, -0x30           |     
    0x000eee90 sw ra, 0x2c(sp)               |     *(var_2ch) = ra;
    0x000eee94 sw s2, 0x28(sp)               |     *(var_28h) = s2;
    0x000eee98 sw s1, 0x24(sp)               |     *(var_24h) = s1;
    0x000eee9c sw s0, 0x20(sp)               |     *(var_20h) = s0;
    0x000eeea0 sw gp, 0x18(sp)               |     *(var_18h) = gp;
    0x000eeea4 move s1, a0                   |     s1 = a0;
                                             |     if (a0 != 0) {
    0x000eeea8 beqz a0, 0xeef24              |         
    0x000eeeac lw t9, -0x6cd4(gp)            |         t9 = *((gp - 6965));
    0x000eeeb0 move s2, a1                   |         s2 = a1;
    0x000eeeb4 jalr t9                       |         t9 ();
    0x000eeeb8 lw gp, 0x18(sp)               |         gp = *(var_18h);
    0x000eeebc move s0, v0                   |         s0 = v0;
                                             |         if (v0 == 0) {
    0x000eeec0 beqz v0, 0xeef24              |             goto label_1;
                                             |         }
    0x000eeec4 lw t8, 0xc(s2)                |         t8 = *((s2 + 3));
    0x000eeec8 lw a3, -0x7db0(gp)            |         a3 = *((gp - 8044));
                                             |         if (t8 == 0) {
    0x000eeecc beqz t8, 0xeefb4              |             goto label_2;
                                             |         }
    0x000eeed0 lw t9, 0x18(t8)               |         t9 = *((t8 + 6));
    0x000eeed4 addiu t8, zero, 0x6b          |         t8 = 0x6b;
                                             |         if (t9 == 0) {
    0x000eeed8 beqz t9, 0xeef90              |             goto label_3;
                                             |         }
    0x000eeedc move a0, v0                   |         a0 = v0;
    0x000eeee0 move a1, s2                   |         a1 = s2;
    0x000eeee4 jalr t9                       |         t9 ();
    0x000eeee8 lw gp, 0x18(sp)               |         gp = *(var_18h);
                                             |         if (v0 == 0) {
    0x000eeeec beqz v0, 0xeef40              |             goto label_4;
                                             |         }
    0x000eeef0 lw a0, (s1)                   |         a0 = *(s1);
    0x000eeef4 lw t9, -0x6cd0(gp)            |         t9 = *(gp);
                                             |         if (a0 != 0) {
    0x000eeef8 beqz a0, 0xeef04              |             
    0x000eeefc jalr t9                       |             t9 ();
    0x000eef00 nop                           |             
                                             |         }
    0x000eef04 sw s0, (s1)                   |         *(s1) = s0;
    0x000eef08 addiu v0, zero, 1             |         v0 = 1;
    0x000eef0c lw ra, 0x2c(sp)               |         ra = *(var_2ch);
    0x000eef10 lw s2, 0x28(sp)               |         s2 = *(var_28h);
    0x000eef14 lw s1, 0x24(sp)               |         s1 = *(var_24h);
    0x000eef18 lw s0, 0x20(sp)               |         s0 = *(var_20h);
    0x000eef1c addiu sp, sp, 0x30            |         
    0x000eef20 jr ra                         |         return v0;
                                             |     }
                                             | label_1:
    0x000eef24 lw ra, 0x2c(sp)               |     ra = *(var_2ch);
    0x000eef28 move v0, zero                 |     v0 = 0;
    0x000eef2c lw s2, 0x28(sp)               |     s2 = *(var_28h);
    0x000eef30 lw s1, 0x24(sp)               |     s1 = *(var_24h);
    0x000eef34 lw s0, 0x20(sp)               |     s0 = *(var_20h);
    0x000eef38 addiu sp, sp, 0x30            |     
    0x000eef3c jr ra                         |     return v0;
                                             | label_4:
    0x000eef40 lw a3, -0x7db0(gp)            |     a3 = *((gp - 8044));
    0x000eef44 addiu t8, zero, 0x67          |     t8 = 0x67;
    0x000eef48 lw t9, -0x7fb8(gp)            |     t9 = *((gp - 8174));
    0x000eef4c addiu a0, zero, 0xb           |     a0 = 0xb;
    0x000eef50 sw t8, 0x10(sp)               |     *(var_10h) = t8;
    0x000eef54 addiu a1, zero, 0x78          |     a1 = 0x78;
    0x000eef58 addiu a2, zero, 0x7e          |     a2 = 0x7e;
    0x000eef5c addiu a3, a3, -0x68d4         |     a3 += -0x68d4;
    0x000eef60 jalr t9                       |     t9 ();
    0x000eef64 lw gp, 0x18(sp)               |     gp = *(var_18h);
                                             |     do {
                                             | label_0:
    0x000eef68 lw t9, -0x6cd0(gp)            |         t9 = *(gp);
    0x000eef6c move a0, s0                   |         a0 = s0;
    0x000eef70 jalr t9                       |         t9 ();
    0x000eef74 move v0, zero                 |         v0 = 0;
    0x000eef78 lw ra, 0x2c(sp)               |         ra = *(var_2ch);
    0x000eef7c lw s2, 0x28(sp)               |         s2 = *(var_28h);
    0x000eef80 lw s1, 0x24(sp)               |         s1 = *(var_24h);
    0x000eef84 lw s0, 0x20(sp)               |         s0 = *(var_20h);
    0x000eef88 addiu sp, sp, 0x30            |         
    0x000eef8c jr ra                         |         return v0;
                                             | label_3:
    0x000eef90 lw t9, -0x7fb8(gp)            |         t9 = *((gp - 8174));
    0x000eef94 addiu a0, zero, 0xb           |         a0 = 0xb;
    0x000eef98 sw t8, 0x10(sp)               |         *(var_10h) = t8;
    0x000eef9c addiu a1, zero, 0x78          |         a1 = 0x78;
    0x000eefa0 addiu a2, zero, 0x7c          |         a2 = 0x7c;
    0x000eefa4 addiu a3, a3, -0x68d4         |         a3 += -0x68d4;
    0x000eefa8 jalr t9                       |         t9 ();
    0x000eefac lw gp, 0x18(sp)               |         gp = *(var_18h);
    0x000eefb0 b 0xeef68                     |         
                                             |     } while (1);
                                             | label_2:
    0x000eefb4 addiu t8, zero, 0x6f          |     t8 = 0x6f;
    0x000eefb8 lw t9, -0x7fb8(gp)            |     t9 = *((gp - 8174));
    0x000eefbc addiu a0, zero, 0xb           |     a0 = 0xb;
    0x000eefc0 sw t8, 0x10(sp)               |     *(var_10h) = t8;
    0x000eefc4 addiu a1, zero, 0x78          |     a1 = 0x78;
    0x000eefc8 addiu a2, zero, 0x6f          |     a2 = 0x6f;
    0x000eefcc addiu a3, a3, -0x68d4         |     a3 += -0x68d4;
    0x000eefd0 jalr t9                       |     t9 ();
    0x000eefd4 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x000eefd8 b 0xeef68                     |     goto label_0;
                                             | }
    ; assembly                                   | /* r2dec pseudo code output */
                                                 | /* /logs/firmware/patool_extraction/DUMP/mtdblock8_unblob_extracted/mtdblock8_extract/0-9650176.squashfs_v4_le_extract/lib/libcrypto.so.1.0.0 @ 0xef8cc */
                                                 | #include <stdint.h>
                                                 |  
    ; (fcn) sym.X509_PUBKEY_set0_param ()        | void X509_PUBKEY_set0_param () {
    0x000ef8cc lui gp, 0xd                       |     
    0x000ef8d0 addiu gp, gp, -0x4dc              |     
    0x000ef8d4 addu gp, gp, t9                   |     gp += t9;
    0x000ef8d8 addiu sp, sp, -0x28               |     
    0x000ef8dc sw ra, 0x24(sp)                   |     *(var_24h) = ra;
    0x000ef8e0 sw s1, 0x20(sp)                   |     *(var_20h) = s1;
    0x000ef8e4 sw s0, 0x1c(sp)                   |     *(var_1ch) = s0;
    0x000ef8e8 move s0, a0                       |     s0 = a0;
    0x000ef8ec lw t9, -0x7850(gp)                |     t9 = *((gp - 7700));
    0x000ef8f0 lw a0, (a0)                       |     a0 = *(a0);
    0x000ef8f4 sw gp, 0x10(sp)                   |     *(var_10h) = gp;
    0x000ef8f8 lw s1, 0x38(sp)                   |     s1 = *(arg_38h);
    0x000ef8fc jalr t9                           |     t9 ();
    0x000ef900 lw gp, 0x10(sp)                   |     gp = *(var_10h);
                                                 |     if (v0 != 0) {
    0x000ef904 beqz v0, 0xef950                  |         
    0x000ef908 addiu v0, zero, 1                 |         v0 = 1;
                                                 |         if (s1 == 0) {
    0x000ef90c beqz s1, 0xef950                  |             goto label_0;
                                                 |         }
    0x000ef910 lw t8, 4(s0)                      |         t8 = *((s0 + 1));
    0x000ef914 lw a0, 8(t8)                      |         a0 = *((t8 + 2));
    0x000ef918 lw t9, -0x7fbc(gp)                |         t9 = *(gp);
                                                 |         if (a0 != 0) {
    0x000ef91c beqz a0, 0xef92c                  |             
    0x000ef920 jalr t9                           |             t9 ();
    0x000ef924 nop                               |             
    0x000ef928 lw t8, 4(s0)                      |             t8 = *((s0 + 1));
                                                 |         }
    0x000ef92c lw a0, 0xc(t8)                    |         a0 = *((t8 + 3));
    0x000ef930 addiu v1, zero, -0x10             |         v1 = -0x10;
    0x000ef934 sw s1, 8(t8)                      |         *((t8 + 8)) = s1;
    0x000ef938 addiu v0, zero, 1                 |         v0 = 1;
    0x000ef93c and v1, a0, v1                    |         v1 = a0 & v1;
    0x000ef940 lw a0, 0x3c(sp)                   |         a0 = *(arg_3ch);
    0x000ef944 ori v1, v1, 8                     |         v1 |= 8;
    0x000ef948 sw a0, (t8)                       |         *(t8) = a0;
    0x000ef94c sw v1, 0xc(t8)                    |         *((t8 + 12)) = v1;
                                                 |     }
                                                 | label_0:
    0x000ef950 lw ra, 0x24(sp)                   |     ra = *(var_24h);
    0x000ef954 lw s1, 0x20(sp)                   |     s1 = *(var_20h);
    0x000ef958 lw s0, 0x1c(sp)                   |     s0 = *(var_1ch);
    0x000ef95c addiu sp, sp, 0x28                |     
    0x000ef960 jr ra                             |     return v1;
                                                 | }

[*] Function mmap used 1 times libcrypto.so.1.0.0