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

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


[*] Function printf tear down of libcrypto.so.1.1

    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/1568982-13971496.squashfs_v4_le_extract/usr/lib/libcrypto.so.1.1 @ 0x4ca58 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) fcn.0004ca58 ()                  | void fcn_0004ca58 () {
    0x0004ca58 lui gp, 0x18                  |     
    0x0004ca5c addiu gp, gp, -0x5e98         |     
    0x0004ca60 addu gp, gp, t9               |     gp += t9;
    0x0004ca64 addiu sp, sp, -0x110          |     
    0x0004ca68 addiu v0, zero, 0x81          |     v0 = 0x81;
    0x0004ca6c sw s5, 0xfc(sp)               |     *(var_fch) = s5;
    0x0004ca70 lw s5, 0x120(sp)              |     s5 = *(arg_120h);
    0x0004ca74 sw gp, 0x20(sp)               |     *(var_20h) = gp;
    0x0004ca78 sw s2, 0xf0(sp)               |     *(var_f0h) = s2;
    0x0004ca7c sw ra, 0x10c(sp)              |     *(var_10ch) = ra;
    0x0004ca80 sw fp, 0x108(sp)              |     *(var_108h) = fp;
    0x0004ca84 sw s7, 0x104(sp)              |     *(var_104h) = s7;
    0x0004ca88 sw s6, 0x100(sp)              |     *(var_100h) = s6;
    0x0004ca8c sw s4, 0xf8(sp)               |     *(var_f8h) = s4;
    0x0004ca90 sw s3, 0xf4(sp)               |     *(var_f4h) = s3;
    0x0004ca94 sw s1, 0xec(sp)               |     *(var_ech) = s1;
    0x0004ca98 sw s0, 0xe8(sp)               |     *(var_e8h) = s0;
    0x0004ca9c sw a3, 0x11c(sp)              |     *(arg_11ch) = a3;
    0x0004caa0 lw s2, 0x128(sp)              |     s2 = *(arg_128h);
    0x0004caa4 sw zero, 0xa8(sp)             |     *(var_a8h) = 0;
                                             |     if (s5 != v0) {
    0x0004caa8 bne s5, v0, 0x4caf4           |         goto label_30;
                                             |     }
    0x0004caac lw a1, -0x7fd4(gp)            |     a1 = *((gp - 8181));
    0x0004cab0 lw t9, -0x7ce8(gp)            |     t9 = *((gp - 7994));
    0x0004cab4 addiu a1, a1, 0x2584          |     a1 += 0x2584;
    0x0004cab8 move s1, zero                 |     s1 = 0;
    0x0004cabc bal 0x641d8                   |     sym_BIO_puts ();
                                             |     do {
    0x0004cac0 lw ra, 0x10c(sp)              |         ra = *(var_10ch);
    0x0004cac4 move v0, s1                   |         v0 = s1;
    0x0004cac8 lw fp, 0x108(sp)              |         fp = *(var_108h);
    0x0004cacc lw s7, 0x104(sp)              |         s7 = *(var_104h);
    0x0004cad0 lw s6, 0x100(sp)              |         s6 = *(var_100h);
    0x0004cad4 lw s5, 0xfc(sp)               |         s5 = *(var_fch);
    0x0004cad8 lw s4, 0xf8(sp)               |         s4 = *(var_f8h);
    0x0004cadc lw s3, 0xf4(sp)               |         s3 = *(var_f4h);
    0x0004cae0 lw s2, 0xf0(sp)               |         s2 = *(var_f0h);
    0x0004cae4 lw s1, 0xec(sp)               |         s1 = *(var_ech);
    0x0004cae8 lw s0, 0xe8(sp)               |         s0 = *(var_e8h);
    0x0004caec addiu sp, sp, 0x110           |         
    0x0004caf0 jr ra                         |         return v0;
                                             | label_30:
    0x0004caf4 lw v0, (a1)                   |         v0 = *(a1);
    0x0004caf8 lw v1, 0x124(sp)              |         v1 = *(arg_124h);
    0x0004cafc sw v0, 0xbc(sp)               |         *(var_bch) = v0;
    0x0004cb00 addu v0, v0, a2               |         v0 += a2;
    0x0004cb04 sw v0, 0xd0(sp)               |         *(var_d0h) = v0;
    0x0004cb08 move v0, s5                   |         v0 = s5;
                                             |         if (v1 != 0) {
    0x0004cb0c movz v0, zero, v1             |             v0 = 0;
                                             |         }
    0x0004cb10 sw v0, 0xd8(sp)               |         *(var_d8h) = v0;
    0x0004cb14 lw v0, -0x7fd4(gp)            |         v0 = *((gp - 8181));
    0x0004cb18 move s0, a0                   |         s0 = a0;
    0x0004cb1c addiu v0, v0, 0x257c          |         v0 += 0x257c;
    0x0004cb20 sw v0, 0xdc(sp)               |         *(var_dch) = v0;
    0x0004cb24 lw v0, -0x7d58(gp)            |         v0 = *((gp - 8022));
    0x0004cb28 move s7, a1                   |         s7 = a1;
    0x0004cb2c addiu v0, v0, -0x35a8         |         v0 += -0x35a8;
    0x0004cb30 move s1, a2                   |         s1 = a2;
    0x0004cb34 move s3, zero                 |         s3 = 0;
    0x0004cb38 sw v0, 0xd4(sp)               |         *(var_d4h) = v0;
                                             | label_6:
    0x0004cb3c addiu v0, sp, 0xbc            |         v0 = sp + 0xbc;
                                             |         if (s1 <= 0) {
    0x0004cb40 bgtz s1, 0x4cb50              |             
    0x0004cb44 move s4, zero                 |             s4 = 0;
    0x0004cb48 addiu s1, zero, 1             |             s1 = 1;
    0x0004cb4c b 0x4cbf4                     |             
                                             |         } else {
    0x0004cb50 lw t9, -0x7f78(gp)            |             t9 = *((gp - 8158));
    0x0004cb54 sw v0, 0xcc(sp)               |             *(var_cch) = v0;
    0x0004cb58 sw s1, 0x10(sp)               |             *(var_10h) = s1;
    0x0004cb5c addiu a3, sp, 0xac            |             a3 = sp + 0xac;
    0x0004cb60 addiu a2, sp, 0xb0            |             a2 = sp + 0xb0;
    0x0004cb64 addiu a1, sp, 0xb4            |             a1 = sp + 0xb4;
    0x0004cb68 move a0, v0                   |             a0 = v0;
    0x0004cb6c lw s6, 0xbc(sp)               |             s6 = *(var_bch);
    0x0004cb70 bal 0x4c158                   |             sym_ASN1_get_object ();
    0x0004cb74 move fp, v0                   |             fp = v0;
    0x0004cb78 andi v0, v0, 0x80             |             v0 &= 0x80;
    0x0004cb7c lw gp, 0x20(sp)               |             gp = *(var_20h);
                                             |             if (v0 != 0) {
    0x0004cb80 beqz v0, 0x4cbac              |                 
    0x0004cb84 lw a1, -0x7fd4(gp)            |                 a1 = *((gp - 8181));
    0x0004cb88 lw t9, -0x7f20(gp)            |                 t9 = *((gp - 8136));
    0x0004cb8c addiu a2, zero, 0x12          |                 a2 = 0x12;
    0x0004cb90 addiu a1, a1, 0x259c          |                 a1 += aav.0x0000259c;
    0x0004cb94 move a0, s0                   |                 a0 = s0;
    0x0004cb98 bal 0x64154                   |                 sym_BIO_write ();
    0x0004cb9c lw gp, 0x20(sp)               |                 gp = *(var_20h);
    0x0004cba0 move s4, zero                 |                 s4 = 0;
                                             | label_28:
    0x0004cba4 move s1, zero                 |                 s1 = 0;
    0x0004cba8 b 0x4cbf4                     |                 
                                             |             } else {
    0x0004cbac lw v0, 0xbc(sp)               |                 v0 = *(var_bch);
    0x0004cbb0 lw a2, (s7)                   |                 a2 = *(s7);
    0x0004cbb4 subu s4, v0, s6               |                 __asm ("subu s4, v0, s6");
    0x0004cbb8 sw v0, 0xc0(sp)               |                 *(var_c0h) = v0;
    0x0004cbbc subu v0, s1, s4               |                 __asm ("subu v0, s1, s4");
    0x0004cbc0 lw a1, -0x7fd4(gp)            |                 a1 = *((gp - 8181));
    0x0004cbc4 sw v0, 0xc8(sp)               |                 *(var_c8h) = v0;
    0x0004cbc8 lw v0, 0x11c(sp)              |                 v0 = *(arg_11ch);
    0x0004cbcc lw t9, -0x7d9c(gp)            |                 t9 = *((gp - 8039));
    0x0004cbd0 subu a2, s6, a2               |                 __asm ("subu a2, s6, a2");
    0x0004cbd4 addu a2, a2, v0               |                 a2 += v0;
    0x0004cbd8 addiu a1, a1, 0x25b0          |                 a1 += 0x25b0;
    0x0004cbdc move a0, s0                   |                 a0 = s0;
    0x0004cbe0 bal 0x60608                   |                 sym_BIO_printf ()
    0x0004cbe4 lw gp, 0x20(sp)               |                 gp = *(var_20h);
                                             |                 if (v0 > 0) {
    0x0004cbe8 bgtz v0, 0x4cc1c              |                     goto label_31;
                                             |                 }
                                             | label_0:
    0x0004cbec move s1, zero                 |                 s1 = 0;
                                             | label_10:
    0x0004cbf0 move s4, zero                 |                 s4 = 0;
                                             |             }
                                             |         }
                                             | label_13:
    0x0004cbf4 lw t9, -0x7e80(gp)            |         t9 = *((gp - 8096));
    0x0004cbf8 lw a0, 0xa8(sp)               |         a0 = *(var_a8h);
    0x0004cbfc bal 0x45c40                   |         sym_ASN1_OBJECT_free ();
    0x0004cc00 lw gp, 0x20(sp)               |         gp = *(var_20h);
    0x0004cc04 lw t9, -0x7d84(gp)            |         t9 = *((gp - 8033));
    0x0004cc08 move a0, s4                   |         a0 = s4;
    0x0004cc0c bal 0x58e84                   |         sym_ASN1_OCTET_STRING_free ();
    0x0004cc10 lw v0, 0xbc(sp)               |         v0 = *(var_bch);
    0x0004cc14 sw v0, (s7)                   |         *(s7) = v0;
    0x0004cc18 b 0x4cac0                     |         
                                             |     } while (1);
                                             | label_31:
    0x0004cc1c addiu v0, zero, 0x21          |     v0 = 0x21;
    0x0004cc20 lw t9, -0x7d9c(gp)            |     t9 = *((gp - 8039));
                                             |     if (fp == v0) {
    0x0004cc24 beq fp, v0, 0x4cd68           |         goto label_32;
                                             |     }
    0x0004cc28 lw a1, -0x7fd4(gp)            |     a1 = *((gp - 8181));
    0x0004cc2c lw v0, 0xb4(sp)               |     v0 = *(var_b4h);
    0x0004cc30 move a3, s4                   |     a3 = s4;
    0x0004cc34 sw v0, 0x10(sp)               |     *(var_10h) = v0;
    0x0004cc38 move a2, s5                   |     a2 = s5;
    0x0004cc3c addiu a1, a1, 0x25b8          |     a1 += 0x25b8;
    0x0004cc40 move a0, s0                   |     a0 = s0;
    0x0004cc44 bal 0x60608                   |     sym_BIO_printf ()
    0x0004cc48 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             | label_1:
    0x0004cc4c lw v0, 0xac(sp)               |     v0 = *(var_ach);
                                             |     if (v0 <= 0) {
    0x0004cc50 blez v0, 0x4cbec              |         goto label_0;
                                             |     }
    0x0004cc54 lw s1, 0xb0(sp)               |     s1 = *(var_b0h);
    0x0004cc58 sw v0, 0xc4(sp)               |     *(var_c4h) = v0;
    0x0004cc5c andi v0, fp, 0x20             |     v0 = fp & 0x20;
    0x0004cc60 sw v0, 0xe0(sp)               |     *(var_e0h) = v0;
                                             |     if (v0 == 0) {
    0x0004cc64 beqz v0, 0x4cd88              |         goto label_33;
                                             |     }
    0x0004cc68 lw a1, -0x7fd4(gp)            |     a1 = *((gp - 8181));
    0x0004cc6c addiu a1, a1, 0x2574          |     a1 += 0x2574;
                                             | label_2:
    0x0004cc70 lw t9, -0x7f20(gp)            |     t9 = *((gp - 8136));
    0x0004cc74 addiu a2, zero, 6             |     a2 = 6;
    0x0004cc78 move a0, s0                   |     a0 = s0;
    0x0004cc7c bal 0x64154                   |     sym_BIO_write ();
    0x0004cc80 slti v0, v0, 6                |     v0 = (v0 < 6) ? 1 : 0;
    0x0004cc84 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 != 0) {
    0x0004cc88 bnez v0, 0x4cbec              |         goto label_0;
                                             |     }
    0x0004cc8c lw t9, -0x7ce4(gp)            |     t9 = *((gp - 7993));
    0x0004cc90 lw a1, 0xd8(sp)               |     a1 = *(var_d8h);
    0x0004cc94 addiu a2, zero, 0x80          |     a2 = 0x80;
    0x0004cc98 move a0, s0                   |     a0 = s0;
    0x0004cc9c bal 0x6454c                   |     sym_BIO_indent ();
    0x0004cca0 lw v0, 0xc4(sp)               |     v0 = *(var_c4h);
    0x0004cca4 addiu v1, zero, 0xc0          |     v1 = 0xc0;
    0x0004cca8 andi v0, v0, 0xc0             |     v0 &= 0xc0;
    0x0004ccac lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 != v1) {
    0x0004ccb0 bne v0, v1, 0x4cd90           |         goto label_34;
                                             |     }
    0x0004ccb4 lw a2, -0x7fd4(gp)            |     a2 = *((gp - 8181));
    0x0004ccb8 move a3, s1                   |     a3 = s1;
    0x0004ccbc addiu a2, a2, 0x25e8          |     a2 += 0x25e8;
                                             | label_3:
    0x0004ccc0 lw t9, -0x7ecc(gp)            |     t9 = *((gp - 8115));
    0x0004ccc4 addiu s1, sp, 0x28            |     s1 = sp + 0x28;
    0x0004ccc8 addiu a1, zero, 0x80          |     a1 = 0x80;
    0x0004cccc move a0, s1                   |     a0 = s1;
    0x0004ccd0 bal 0x606cc                   |     sym_BIO_snprintf ()
    0x0004ccd4 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             | label_4:
    0x0004ccd8 lw a1, -0x7fd4(gp)            |     a1 = *((gp - 8181));
    0x0004ccdc lw t9, -0x7d9c(gp)            |     t9 = *((gp - 8039));
    0x0004cce0 move a2, s1                   |     a2 = s1;
    0x0004cce4 addiu a1, a1, 0x2750          |     a1 += 0x2750;
    0x0004cce8 move a0, s0                   |     a0 = s0;
    0x0004ccec bal 0x60608                   |     sym_BIO_printf ()
    0x0004ccf0 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 <= 0) {
    0x0004ccf4 blez v0, 0x4cbec              |         goto label_0;
                                             |     }
    0x0004ccf8 andi v0, fp, 0x20             |     v0 = fp & 0x20;
    0x0004ccfc lw s1, 0xac(sp)               |     s1 = *(var_ach);
                                             |     if (v0 == 0) {
    0x0004cd00 beqz v0, 0x4cedc              |         goto label_35;
                                             |     }
    0x0004cd04 lw s4, 0xbc(sp)               |     s4 = *(var_bch);
    0x0004cd08 lw v0, 0xb4(sp)               |     v0 = *(var_b4h);
    0x0004cd0c lw a1, -0x7e98(gp)            |     a1 = *((gp - 8102));
    0x0004cd10 lw t9, -0x7f20(gp)            |     t9 = *((gp - 8136));
    0x0004cd14 addu v0, s4, v0               |     v0 = s4 + v0;
    0x0004cd18 sw v0, 0xc0(sp)               |     *(var_c0h) = v0;
    0x0004cd1c addiu a2, zero, 1             |     a2 = 1;
    0x0004cd20 addiu a1, a1, 0x3620          |     a1 += 0x3620;
    0x0004cd24 move a0, s0                   |     a0 = s0;
    0x0004cd28 bal 0x64154                   |     sym_BIO_write ();
    0x0004cd2c lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 <= 0) {
    0x0004cd30 blez v0, 0x4cbec              |         goto label_0;
                                             |     }
    0x0004cd34 lw s1, 0xb4(sp)               |     s1 = *(var_b4h);
    0x0004cd38 lw v0, 0xc8(sp)               |     v0 = *(var_c8h);
    0x0004cd3c slt v0, v0, s1                |     v0 = (v0 < s1) ? 1 : 0;
    0x0004cd40 addiu v0, zero, 0x21          |     v0 = 0x21;
                                             |     if (v0 != 0) {
    0x0004cd44 beqz v0, 0x4cdf8              |         
    0x0004cd48 lw a1, -0x7fd4(gp)            |         a1 = *((gp - 8181));
    0x0004cd4c lw t9, -0x7d9c(gp)            |         t9 = *((gp - 8039));
    0x0004cd50 lw a2, 0xc8(sp)               |         a2 = *(var_c8h);
    0x0004cd54 addiu a1, a1, 0x261c          |         a1 += aav.0x0000261c;
    0x0004cd58 move a0, s0                   |         a0 = s0;
    0x0004cd5c bal 0x60608                   |         sym_BIO_printf ()
    0x0004cd60 lw gp, 0x20(sp)               |         gp = *(var_20h);
    0x0004cd64 b 0x4cbec                     |         goto label_0;
                                             | label_32:
    0x0004cd68 lw a1, -0x7fd4(gp)            |         a1 = *((gp - 8181));
    0x0004cd6c move a3, s4                   |         a3 = s4;
    0x0004cd70 move a2, s5                   |         a2 = s5;
    0x0004cd74 addiu a1, a1, 0x25d0          |         a1 += 0x25d0;
    0x0004cd78 move a0, s0                   |         a0 = s0;
    0x0004cd7c bal 0x60608                   |         sym_BIO_printf ()
    0x0004cd80 lw gp, 0x20(sp)               |         gp = *(var_20h);
    0x0004cd84 b 0x4cc4c                     |         goto label_1;
                                             | label_33:
    0x0004cd88 lw a1, 0xdc(sp)               |         a1 = *(var_dch);
    0x0004cd8c b 0x4cc70                     |         goto label_2;
                                             | label_34:
    0x0004cd90 lw v0, 0xc4(sp)               |         v0 = *(var_c4h);
    0x0004cd94 andi v0, v0, 0x80             |         v0 &= 0x80;
    0x0004cd98 lw v0, 0xc4(sp)               |         v0 = *(var_c4h);
                                             |         if (v0 != 0) {
    0x0004cd9c beqz v0, 0x4cdb0              |             
    0x0004cda0 lw a2, -0x7fd4(gp)            |             a2 = *((gp - 8181));
    0x0004cda4 move a3, s1                   |             a3 = s1;
    0x0004cda8 addiu a2, a2, 0x25f8          |             a2 += 0x25f8;
    0x0004cdac b 0x4ccc0                     |             goto label_3;
                                             |         }
    0x0004cdb0 andi v0, v0, 0x40             |         v0 &= 0x40;
    0x0004cdb4 slti v0, s1, 0x1f             |         v0 = (s1 < 0x1f) ? 1 : 0;
                                             |         if (v0 != 0) {
    0x0004cdb8 beqz v0, 0x4cdcc              |             
    0x0004cdbc lw a2, -0x7fd4(gp)            |             a2 = *((gp - 8181));
    0x0004cdc0 move a3, s1                   |             a3 = s1;
    0x0004cdc4 addiu a2, a2, 0x2604          |             a2 += 0x2604;
    0x0004cdc8 b 0x4ccc0                     |             goto label_3;
                                             |         }
    0x0004cdcc lw t9, -0x7e20(gp)            |         t9 = *((gp - 8072));
                                             |         if (v0 == 0) {
    0x0004cdd0 bnez v0, 0x4cde4              |             
    0x0004cdd4 lw a2, -0x7fd4(gp)            |             a2 = *((gp - 8181));
    0x0004cdd8 move a3, s1                   |             a3 = s1;
    0x0004cddc addiu a2, a2, 0x2610          |             a2 += 0x2610;
    0x0004cde0 b 0x4ccc0                     |             goto label_3;
                                             |         }
    0x0004cde4 move a0, s1                   |         a0 = s1;
    0x0004cde8 bal 0x4ca00                   |         sym_ASN1_tag2str ();
    0x0004cdec move s1, v0                   |         s1 = v0;
    0x0004cdf0 lw gp, 0x20(sp)               |         gp = *(var_20h);
    0x0004cdf4 b 0x4ccd8                     |         goto label_4;
                                             |     }
    0x0004cdf8 addiu s6, s5, 1               |     s6 = s5 + 1;
                                             |     if (fp != v0) {
    0x0004cdfc bne fp, v0, 0x4cec0           |         goto label_36;
                                             |     }
    0x0004ce00 lw v0, 0x124(sp)              |     v0 = *(arg_124h);
                                             |     if (s1 != 0) {
    0x0004ce04 bnez s1, 0x4cec0              |         goto label_36;
                                             |     }
    0x0004ce08 addiu s1, zero, 2             |     s1 = 2;
                                             | label_5:
    0x0004ce0c lw a3, (s7)                   |     a3 = *(s7);
    0x0004ce10 lw a2, 0xbc(sp)               |     a2 = *(var_bch);
    0x0004ce14 sw v0, 0x14(sp)               |     *(var_14h) = v0;
    0x0004ce18 lw v0, 0x11c(sp)              |     v0 = *(arg_11ch);
    0x0004ce1c subu a3, a2, a3               |     __asm ("subu a3, a2, a3");
    0x0004ce20 addu a3, a3, v0               |     a3 += v0;
    0x0004ce24 lw v0, 0xd0(sp)               |     v0 = *(var_d0h);
    0x0004ce28 lw a1, 0xcc(sp)               |     a1 = *(var_cch);
    0x0004ce2c lw t9, 0xd4(sp)               |     t9 = *(var_d4h);
    0x0004ce30 sw s2, 0x18(sp)               |     *(var_18h) = s2;
    0x0004ce34 sw s6, 0x10(sp)               |     *(var_10h) = s6;
    0x0004ce38 subu a2, v0, a2               |     __asm ("subu a2, v0, a2");
    0x0004ce3c move a0, s0                   |     a0 = s0;
    0x0004ce40 jalr t9                       |     t9 ();
    0x0004ce44 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 == 0) {
    0x0004ce48 beqz v0, 0x4cbec              |         goto label_0;
                                             |     }
    0x0004ce4c lw v1, 0xbc(sp)               |     v1 = *(var_bch);
                                             |     if (v0 == s1) {
    0x0004ce50 beq v0, s1, 0x4ce64           |         goto label_37;
                                             |     }
    0x0004ce54 lw v0, 0xd0(sp)               |     v0 = *(var_d0h);
    0x0004ce58 sltu v0, v1, v0               |     v0 = (v1 < v0) ? 1 : 0;
    0x0004ce5c lw v0, 0x124(sp)              |     v0 = *(arg_124h);
                                             |     if (v0 != 0) {
    0x0004ce60 bnez v0, 0x4ce0c              |         goto label_5;
                                             |     }
                                             | label_37:
    0x0004ce64 subu s4, v1, s4               |     __asm ("subu s4, v1, s4");
    0x0004ce68 sw s4, 0xb4(sp)               |     *(var_b4h) = s4;
                                             | label_9:
    0x0004ce6c lw s1, 0xb4(sp)               |     s1 = *(var_b4h);
                                             | label_8:
    0x0004ce70 lw v0, 0xc8(sp)               |     v0 = *(var_c8h);
                                             | label_15:
    0x0004ce74 subu s1, v0, s1               |     __asm ("subu s1, v0, s1");
    0x0004ce78 b 0x4cb3c                     |     goto label_6;
                                             | label_7:
    0x0004ce7c lw a3, (s7)                   |     a3 = *(s7);
    0x0004ce80 sw v0, 0x14(sp)               |     *(var_14h) = v0;
    0x0004ce84 lw v0, 0x11c(sp)              |     v0 = *(arg_11ch);
    0x0004ce88 subu a3, s4, a3               |     __asm ("subu a3, s4, a3");
    0x0004ce8c lw a1, 0xcc(sp)               |     a1 = *(var_cch);
    0x0004ce90 lw t9, 0xd4(sp)               |     t9 = *(var_d4h);
    0x0004ce94 sw s2, 0x18(sp)               |     *(var_18h) = s2;
    0x0004ce98 sw s6, 0x10(sp)               |     *(var_10h) = s6;
    0x0004ce9c addu a3, a3, v0               |     a3 += v0;
    0x0004cea0 move a2, s1                   |     a2 = s1;
    0x0004cea4 move a0, s0                   |     a0 = s0;
    0x0004cea8 jalr t9                       |     t9 ();
    0x0004ceac lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 == 0) {
    0x0004ceb0 beqz v0, 0x4cbec              |         goto label_0;
                                             |     }
    0x0004ceb4 lw v0, 0xbc(sp)               |     v0 = *(var_bch);
    0x0004ceb8 subu s4, v0, s4               |     __asm ("subu s4, v0, s4");
    0x0004cebc subu s1, s1, s4               |     __asm ("subu s1, s1, s4");
                                             | label_36:
    0x0004cec0 lw s4, 0xbc(sp)               |     s4 = *(var_bch);
    0x0004cec4 lw v0, 0xc0(sp)               |     v0 = *(var_c0h);
    0x0004cec8 sltu v0, s4, v0               |     v0 = (s4 < v0) ? 1 : 0;
    0x0004cecc lw v0, 0x124(sp)              |     v0 = *(arg_124h);
                                             |     if (v0 != 0) {
    0x0004ced0 bnez v0, 0x4ce7c              |         goto label_7;
                                             |     }
    0x0004ced4 lw s1, 0xb4(sp)               |     s1 = *(var_b4h);
    0x0004ced8 b 0x4ce70                     |     goto label_8;
                                             | label_35:
    0x0004cedc lw v0, 0xb0(sp)               |     v0 = *(var_b0h);
                                             |     if (s1 == 0) {
    0x0004cee0 beqz s1, 0x4cf1c              |         goto label_38;
                                             |     }
    0x0004cee4 lw v0, 0xbc(sp)               |     v0 = *(var_bch);
    0x0004cee8 lw v1, 0xb4(sp)               |     v1 = *(var_b4h);
    0x0004ceec lw a1, -0x7e98(gp)            |     a1 = *((gp - 8102));
    0x0004cef0 lw t9, -0x7f20(gp)            |     t9 = *((gp - 8136));
    0x0004cef4 addu v0, v0, v1               |     v0 += v1;
    0x0004cef8 sw v0, 0xbc(sp)               |     *(var_bch) = v0;
    0x0004cefc addiu a2, zero, 1             |     a2 = 1;
    0x0004cf00 addiu a1, a1, 0x3620          |     a1 += 0x3620;
    0x0004cf04 move a0, s0                   |     a0 = s0;
    0x0004cf08 bal 0x64154                   |     sym_BIO_write ();
    0x0004cf0c lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 > 0) {
    0x0004cf10 bgtz v0, 0x4ce6c              |         goto label_9;
                                             |     }
    0x0004cf14 move s1, zero                 |     s1 = 0;
    0x0004cf18 b 0x4cbf0                     |     goto label_10;
                                             | label_38:
    0x0004cf1c addiu a0, v0, -0xc            |     a0 = v0 + -0xc;
    0x0004cf20 sltiu v1, a0, 0xf             |     v1 = (a0 < 0xf) ? 1 : 0;
    0x0004cf24 addiu v1, zero, 6             |     v1 = 6;
                                             |     if (v1 == 0) {
    0x0004cf28 beqz v1, 0x4cf94              |         goto label_39;
                                             |     }
    0x0004cf2c addiu v1, zero, 0x5dc1        |     v1 = 0x5dc1;
    0x0004cf30 srlv v1, v1, a0               |     v1 >>= a0;
    0x0004cf34 ext v1, v1, 0, 1              |     __asm ("ext v1, v1, 0, 1");
    0x0004cf38 addiu v1, zero, 1             |     v1 = 1;
                                             |     if (v1 == 0) {
    0x0004cf3c beqz v1, 0x4d07c              |         goto label_40;
                                             |     }
    0x0004cf40 lw a1, -0x7e1c(gp)            |     a1 = *((gp - 8071));
    0x0004cf44 lw t9, -0x7f20(gp)            |     t9 = *((gp - 8136));
    0x0004cf48 addiu a2, zero, 1             |     a2 = 1;
    0x0004cf4c addiu a1, a1, 0x15f8          |     a1 += 0x15f8;
    0x0004cf50 move a0, s0                   |     a0 = s0;
    0x0004cf54 bal 0x64154                   |     sym_BIO_write ();
    0x0004cf58 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 <= 0) {
    0x0004cf5c blez v0, 0x4cbec              |         goto label_0;
                                             |     }
    0x0004cf60 lw a2, 0xb4(sp)               |     a2 = *(var_b4h);
    0x0004cf64 lw t9, -0x7f20(gp)            |     t9 = *((gp - 8136));
                                             |     if (a2 <= 0) {
    0x0004cf68 blez a2, 0x4cf84              |         goto label_11;
                                             |     }
    0x0004cf6c lw a1, 0xbc(sp)               |     a1 = *(var_bch);
    0x0004cf70 move a0, s0                   |     a0 = s0;
    0x0004cf74 bal 0x64154                   |     sym_BIO_write ();
    0x0004cf78 lw v1, 0xb4(sp)               |     v1 = *(var_b4h);
    0x0004cf7c lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 != v1) {
    0x0004cf80 bne v0, v1, 0x4cbec           |         goto label_0;
                                             |     }
                                             | label_11:
    0x0004cf84 lw a1, -0x7e98(gp)            |     a1 = *((gp - 8102));
                                             |     if (s3 != 0) {
    0x0004cf88 bnez s3, 0x4d014              |         goto label_14;
                                             |     }
    0x0004cf8c lw t9, -0x7f20(gp)            |     t9 = *((gp - 8136));
    0x0004cf90 b 0x4d1c0                     |     goto label_41;
                                             | label_39:
    0x0004cf94 lw a2, 0xb4(sp)               |     a2 = *(var_b4h);
                                             |     if (v0 != v1) {
    0x0004cf98 bne v0, v1, 0x4d078           |         goto label_42;
                                             |     }
    0x0004cf9c lw t9, -0x7ce0(gp)            |     t9 = *((gp - 7992));
    0x0004cfa0 sw s6, 0xb8(sp)               |     *(var_b8h) = s6;
    0x0004cfa4 addu a2, s4, a2               |     a2 = s4 + a2;
    0x0004cfa8 addiu a1, sp, 0xb8            |     a1 = sp + 0xb8;
    0x0004cfac addiu a0, sp, 0xa8            |     a0 = sp + 0xa8;
    0x0004cfb0 bal 0x45fb8                   |     sym_d2i_ASN1_OBJECT ();
    0x0004cfb4 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 == 0) {
    0x0004cfb8 beqz v0, 0x4cff8              |         goto label_43;
                                             |     }
    0x0004cfbc lw a1, -0x7e1c(gp)            |     a1 = *((gp - 8071));
    0x0004cfc0 lw t9, -0x7f20(gp)            |     t9 = *((gp - 8136));
    0x0004cfc4 addiu a2, zero, 1             |     a2 = 1;
    0x0004cfc8 addiu a1, a1, 0x15f8          |     a1 += 0x15f8;
    0x0004cfcc move a0, s0                   |     a0 = s0;
    0x0004cfd0 bal 0x64154                   |     sym_BIO_write ();
    0x0004cfd4 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 <= 0) {
    0x0004cfd8 blez v0, 0x4cbec              |         goto label_0;
                                             |     }
    0x0004cfdc lw t9, -0x7cdc(gp)            |     t9 = *((gp - 7991));
    0x0004cfe0 lw a1, 0xa8(sp)               |     a1 = *(var_a8h);
    0x0004cfe4 move a0, s0                   |     a0 = s0;
    0x0004cfe8 bal 0x45a08                   |     sym_i2a_ASN1_OBJECT ();
    0x0004cfec lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             | label_12:
    0x0004cff0 b 0x4cf84                     |     goto label_11;
    0x0004cff4 nop                           |     
                                             | label_43:
    0x0004cff8 lw a1, -0x7fd4(gp)            |     a1 = *((gp - 8181));
    0x0004cffc lw t9, -0x7ce8(gp)            |     t9 = *((gp - 7994));
    0x0004d000 addiu a1, a1, 0x2638          |     a1 += 0x2638;
    0x0004d004 move a0, s0                   |     a0 = s0;
    0x0004d008 bal 0x641d8                   |     sym_BIO_puts ();
    0x0004d00c lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 <= 0) {
    0x0004d010 blez v0, 0x4cbec              |         goto label_0;
                                             |     }
                                             | label_14:
    0x0004d014 lw a1, -0x7fd4(gp)            |     a1 = *((gp - 8181));
    0x0004d018 lw t9, -0x7ce8(gp)            |     t9 = *((gp - 7994));
    0x0004d01c addiu a1, a1, 0x2688          |     a1 += 0x2688;
    0x0004d020 move a0, s0                   |     a0 = s0;
    0x0004d024 bal 0x641d8                   |     sym_BIO_puts ();
    0x0004d028 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 <= 0) {
    0x0004d02c blez v0, 0x4cbec              |         goto label_0;
                                             |     }
    0x0004d030 lw s4, -0x7de8(gp)            |     s4 = *((gp - 8058));
    0x0004d034 lw s3, 0xc0(sp)               |     s3 = *(var_c0h);
    0x0004d038 addiu s4, s4, -0x2198         |     s4 += -0x2198;
                                             | label_26:
    0x0004d03c lw v0, 0xc0(sp)               |     v0 = *(var_c0h);
    0x0004d040 lw v1, 0xb4(sp)               |     v1 = *(var_b4h);
    0x0004d044 subu v0, s3, v0               |     __asm ("subu v0, s3, v0");
    0x0004d048 slt v0, v0, v1                |     v0 = (v0 < v1) ? 1 : 0;
    0x0004d04c lw t9, -0x7d9c(gp)            |     t9 = *((gp - 8039));
                                             |     if (v0 != 0) {
    0x0004d050 bnez v0, 0x4d518              |         goto label_44;
                                             |     }
    0x0004d054 lw a1, -0x7fd4(gp)            |     a1 = *((gp - 8181));
    0x0004d058 lw t9, -0x7ce8(gp)            |     t9 = *((gp - 7994));
    0x0004d05c addiu a1, a1, 0x268c          |     a1 += 0x268c;
    0x0004d060 move a0, s0                   |     a0 = s0;
    0x0004d064 bal 0x641d8                   |     sym_BIO_puts ();
    0x0004d068 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 <= 0) {
    0x0004d06c blez v0, 0x4cbec              |         goto label_0;
                                             |     }
    0x0004d070 addiu s3, zero, 1             |     s3 = 1;
    0x0004d074 b 0x4d1b0                     |     goto label_45;
                                             | label_42:
    0x0004d078 addiu v1, zero, 1             |     v1 = 1;
                                             | label_40:
    0x0004d07c addiu v1, zero, 0x1e          |     v1 = 0x1e;
                                             |     if (v0 != v1) {
    0x0004d080 bne v0, v1, 0x4d0dc           |         goto label_46;
                                             |     }
    0x0004d084 lw v1, 0xb4(sp)               |     v1 = *(var_b4h);
    0x0004d088 lw v0, 0xb4(sp)               |     v0 = *(var_b4h);
                                             |     if (v1 == v0) {
    0x0004d08c beq v1, v0, 0x4d0b4           |         goto label_47;
                                             |     }
    0x0004d090 lw a1, -0x7fd4(gp)            |     a1 = *((gp - 8181));
    0x0004d094 lw t9, -0x7ce8(gp)            |     t9 = *((gp - 7994));
    0x0004d098 addiu a1, a1, 0x2644          |     a1 += 0x2644;
    0x0004d09c move a0, s0                   |     a0 = s0;
    0x0004d0a0 bal 0x641d8                   |     sym_BIO_puts ();
    0x0004d0a4 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 <= 0) {
    0x0004d0a8 blez v0, 0x4cbec              |         goto label_0;
                                             |     }
    0x0004d0ac addiu s3, zero, 1             |     s3 = 1;
    0x0004d0b0 lw v0, 0xb4(sp)               |     v0 = *(var_b4h);
                                             | label_47:
    0x0004d0b4 lw v0, 0xbc(sp)               |     v0 = *(var_bch);
                                             |     if (v0 <= 0) {
    0x0004d0b8 blez v0, 0x4cf84              |         goto label_11;
                                             |     }
    0x0004d0bc lw a1, -0x7fd4(gp)            |     a1 = *((gp - 8181));
    0x0004d0c0 lw t9, -0x7d9c(gp)            |     t9 = *((gp - 8039));
    0x0004d0c4 lbu a2, (v0)                  |     a2 = *(v0);
    0x0004d0c8 addiu a1, a1, 0x2654          |     a1 += 0x2654;
    0x0004d0cc move a0, s0                   |     a0 = s0;
    0x0004d0d0 bal 0x60608                   |     sym_BIO_printf ()
    0x0004d0d4 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x0004d0d8 b 0x4cff0                     |     goto label_12;
                                             | label_46:
    0x0004d0dc addiu v1, zero, 4             |     v1 = 4;
                                             |     if (v0 == v1) {
    0x0004d0e0 beq v0, v1, 0x4cf84           |         goto label_11;
                                             |     }
    0x0004d0e4 lw a2, 0xb4(sp)               |     a2 = *(var_b4h);
                                             |     if (v0 != v1) {
    0x0004d0e8 bne v0, v1, 0x4d268           |         goto label_48;
                                             |     }
    0x0004d0ec lw t9, -0x7cd8(gp)            |     t9 = *((gp - 7990));
    0x0004d0f0 addu a2, s4, a2               |     a2 = s4 + a2;
    0x0004d0f4 sw s6, 0xb8(sp)               |     *(var_b8h) = s6;
    0x0004d0f8 addiu a1, sp, 0xb8            |     a1 = sp + 0xb8;
    0x0004d0fc move a0, zero                 |     a0 = 0;
    0x0004d100 bal 0x58e3c                   |     sym_d2i_ASN1_OCTET_STRING ();
    0x0004d104 move s4, v0                   |     s4 = v0;
    0x0004d108 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 == 0) {
    0x0004d10c beqz v0, 0x4d19c              |         goto label_17;
                                             |     }
    0x0004d110 lw a1, (v0)                   |     a1 = *(v0);
    0x0004d114 lw t9, -0x7d84(gp)            |     t9 = *((gp - 8033));
                                             |     if (a1 <= 0) {
    0x0004d118 blez a1, 0x4d1a0              |         goto label_49;
                                             |     }
    0x0004d11c lw a0, 8(v0)                  |     a0 = *((v0 + 2));
    0x0004d120 addiu a2, zero, 0xd           |     a2 = 0xd;
    0x0004d124 sw a0, 0xb8(sp)               |     *(var_b8h) = a0;
    0x0004d128 move v1, a0                   |     v1 = a0;
                                             |     do {
    0x0004d12c lbu v0, (v1)                  |         v0 = *(v1);
    0x0004d130 sltiu a3, v0, 0x20            |         a3 = (v0 < 0x20) ? 1 : 0;
                                             |         if (a3 == 0) {
    0x0004d134 beqz a3, 0x4d20c              |             goto label_50;
                                             |         }
    0x0004d138 nop                           |         
    0x0004d13c addiu v0, v0, -9              |         v0 += -9;
                                             |         if (v0 != a2) {
    0x0004d140 beq v0, a2, 0x4d150           |             
    0x0004d144 sltiu v0, v0, 2               |             v0 = (v0 < 2) ? 1 : 0;
                                             |             if (v0 == 0) {
                                             | label_16:
    0x0004d148 beqz v0, 0x4d53c              |                 goto label_51;
                                             |             }
    0x0004d14c nop                           |             
                                             |         }
    0x0004d150 addiu v1, v1, 1               |         v1++;
    0x0004d154 subu v0, v1, a0               |         __asm ("subu v0, v1, a0");
    0x0004d158 slt v0, v0, a1                |         v0 = (v0 < a1) ? 1 : 0;
    0x0004d15c lw t9, -0x7f20(gp)            |         t9 = *((gp - 8136));
    0x0004d160 bnez v0, 0x4d12c              |         
                                             |     } while (v0 != 0);
    0x0004d164 lw a1, -0x7e1c(gp)            |     a1 = *((gp - 8071));
    0x0004d168 addiu a2, zero, 1             |     a2 = 1;
    0x0004d16c addiu a1, a1, 0x15f8          |     a1 += 0x15f8;
    0x0004d170 move a0, s0                   |     a0 = s0;
    0x0004d174 bal 0x64154                   |     sym_BIO_write ();
    0x0004d178 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 <= 0) {
    0x0004d17c blez v0, 0x4cbf4              |         goto label_13;
                                             |     }
    0x0004d180 lw t9, -0x7f20(gp)            |     t9 = *((gp - 8136));
    0x0004d184 lw a2, (s4)                   |     a2 = *(s4);
    0x0004d188 lw a1, 0xb8(sp)               |     a1 = *(var_b8h);
    0x0004d18c move a0, s0                   |     a0 = s0;
    0x0004d190 bal 0x64154                   |     sym_BIO_write ();
    0x0004d194 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 <= 0) {
    0x0004d198 blez v0, 0x4cbf4              |         goto label_13;
                                             |     }
                                             | label_17:
    0x0004d19c lw t9, -0x7d84(gp)            |     t9 = *((gp - 8033));
                                             | label_49:
    0x0004d1a0 move a0, s4                   |     a0 = s4;
    0x0004d1a4 bal 0x58e84                   |     sym_ASN1_OCTET_STRING_free ();
    0x0004d1a8 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (s3 != 0) {
    0x0004d1ac bnez s3, 0x4d014              |         goto label_14;
                                             |     }
                                             | label_45:
    0x0004d1b0 lw v0, 0xbc(sp)               |     v0 = *(var_bch);
                                             |     if (s1 != 0) {
    0x0004d1b4 bnez s1, 0x4d1dc              |         goto label_25;
                                             |     }
    0x0004d1b8 lw a1, -0x7e98(gp)            |     a1 = *((gp - 8102));
    0x0004d1bc lw t9, -0x7f20(gp)            |     t9 = *((gp - 8136));
                                             | label_41:
    0x0004d1c0 addiu a2, zero, 1             |     a2 = 1;
    0x0004d1c4 addiu a1, a1, 0x3620          |     a1 += 0x3620;
    0x0004d1c8 move a0, s0                   |     a0 = s0;
    0x0004d1cc bal 0x64154                   |     sym_BIO_write ();
    0x0004d1d0 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 <= 0) {
    0x0004d1d4 blez v0, 0x4cbec              |         goto label_0;
                                             |     }
    0x0004d1d8 lw v0, 0xbc(sp)               |     v0 = *(var_bch);
                                             | label_25:
    0x0004d1dc lw v1, 0xb4(sp)               |     v1 = *(var_b4h);
    0x0004d1e0 addu v0, v0, v1               |     v0 += v1;
    0x0004d1e4 sw v0, 0xbc(sp)               |     *(var_bch) = v0;
    0x0004d1e8 lw v0, 0xb0(sp)               |     v0 = *(var_b0h);
    0x0004d1ec lw s1, 0xb4(sp)               |     s1 = *(var_b4h);
                                             |     if (v0 != 0) {
    0x0004d1f0 bnez v0, 0x4ce70              |         goto label_8;
                                             |     }
    0x0004d1f4 lw v0, 0xac(sp)               |     v0 = *(var_ach);
    0x0004d1f8 lw v0, 0xc8(sp)               |     v0 = *(var_c8h);
                                             |     if (v0 != 0) {
    0x0004d1fc bnez v0, 0x4ce74              |         goto label_15;
                                             |     }
    0x0004d200 move s4, zero                 |     s4 = 0;
    0x0004d204 addiu s1, zero, 2             |     s1 = 2;
    0x0004d208 b 0x4cbf4                     |     goto label_13;
                                             | label_50:
    0x0004d20c sltiu v0, v0, 0x7f            |     v0 = (v0 < 0x7f) ? 1 : 0;
    0x0004d210 b 0x4d148                     |     goto label_16;
                                             | label_27:
    0x0004d214 lw a1, -0x7e98(gp)            |     a1 = *((gp - 8102));
    0x0004d218 addiu a2, zero, 1             |     a2 = 1;
    0x0004d21c addiu a1, a1, 0x3620          |     a1 += 0x3620;
    0x0004d220 move a0, s0                   |     a0 = s0;
    0x0004d224 bal 0x64154                   |     sym_BIO_write ();
    0x0004d228 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 <= 0) {
    0x0004d22c blez v0, 0x4cbf4              |         goto label_13;
                                             |     }
    0x0004d230 addiu v0, zero, -1            |     v0 = -1;
    0x0004d234 lw a1, 0xb8(sp)               |     a1 = *(var_b8h);
    0x0004d238 lw a2, (s4)                   |     a2 = *(s4);
                                             |     if (s2 != v0) {
    0x0004d23c beq s2, v0, 0x4d248           |         
    0x0004d240 slt v0, s2, a2                |         v0 = (s2 < a2) ? 1 : 0;
                                             |         if (v0 != 0) {
    0x0004d244 movn a2, s2, v0               |             a2 = s2;
                                             |             goto label_52;
                                             |         }
                                             |     }
                                             | label_52:
    0x0004d248 lw t9, -0x7cd4(gp)            |     t9 = *((gp - 7989));
    0x0004d24c addiu a3, zero, 6             |     a3 = 6;
    0x0004d250 move a0, s0                   |     a0 = s0;
    0x0004d254 bal 0x5e9cc                   |     sym_BIO_dump_indent ();
    0x0004d258 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 <= 0) {
    0x0004d25c blez v0, 0x4cbf4              |         goto label_13;
                                             |     }
    0x0004d260 addiu s1, zero, 1             |     s1 = 1;
    0x0004d264 b 0x4d19c                     |     goto label_17;
                                             | label_48:
    0x0004d268 addiu v1, zero, 2             |     v1 = 2;
    0x0004d26c addiu v1, zero, 0xa           |     v1 = 0xa;
                                             |     if (v0 != v1) {
    0x0004d270 bne v0, v1, 0x4d394           |         goto label_53;
                                             |     }
    0x0004d274 lw t9, -0x7cd0(gp)            |     t9 = *((gp - 7988));
    0x0004d278 addu a2, s4, a2               |     a2 = s4 + a2;
    0x0004d27c sw s6, 0xb8(sp)               |     *(var_b8h) = s6;
    0x0004d280 addiu a1, sp, 0xb8            |     a1 = sp + 0xb8;
    0x0004d284 move a0, zero                 |     a0 = 0;
    0x0004d288 bal 0x58e9c                   |     sym_d2i_ASN1_INTEGER ();
    0x0004d28c move s4, v0                   |     s4 = v0;
    0x0004d290 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 == 0) {
    0x0004d294 beqz v0, 0x4d370              |         goto label_54;
                                             |     }
    0x0004d298 lw a1, -0x7e1c(gp)            |     a1 = *((gp - 8071));
    0x0004d29c lw t9, -0x7f20(gp)            |     t9 = *((gp - 8136));
    0x0004d2a0 addiu a2, zero, 1             |     a2 = 1;
    0x0004d2a4 addiu a1, a1, 0x15f8          |     a1 += 0x15f8;
    0x0004d2a8 move a0, s0                   |     a0 = s0;
    0x0004d2ac bal 0x64154                   |     sym_BIO_write ();
    0x0004d2b0 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 <= 0) {
    0x0004d2b4 blez v0, 0x4cbec              |         goto label_0;
                                             |     }
    0x0004d2b8 lw v1, 4(s4)                  |     v1 = *((s4 + 1));
    0x0004d2bc addiu v0, zero, 0x102         |     v0 = 0x102;
    0x0004d2c0 lw a1, -0x7fd4(gp)            |     a1 = *((gp - 8181));
                                             |     if (v1 == v0) {
    0x0004d2c4 beq v1, v0, 0x4d324           |         goto label_55;
                                             |     }
                                             | label_18:
    0x0004d2c8 lw fp, -0x7de8(gp)            |     fp = *((gp - 8058));
    0x0004d2cc move s6, zero                 |     s6 = 0;
    0x0004d2d0 addiu fp, fp, -0x2198         |     fp += -0x2198;
                                             | label_19:
    0x0004d2d4 lw v0, (s4)                   |     v0 = *(s4);
    0x0004d2d8 slt v1, s6, v0                |     v1 = (s6 < v0) ? 1 : 0;
    0x0004d2dc lw t9, -0x7d9c(gp)            |     t9 = *((gp - 8039));
                                             |     if (v1 != 0) {
    0x0004d2e0 bnez v1, 0x4d348              |         goto label_56;
                                             |     }
    0x0004d2e4 lw t9, -0x7f00(gp)            |     t9 = *((gp - 8128));
                                             |     if (v0 != 0) {
    0x0004d2e8 bnez v0, 0x4d310              |         goto label_57;
                                             |     }
    0x0004d2ec lw a1, -0x7e98(gp)            |     a1 = *((gp - 8102));
    0x0004d2f0 lw t9, -0x7f20(gp)            |     t9 = *((gp - 8136));
    0x0004d2f4 addiu a2, zero, 2             |     a2 = 2;
    0x0004d2f8 addiu a1, a1, -0x6ce0         |     a1 += -0x6ce0;
    0x0004d2fc move a0, s0                   |     a0 = s0;
    0x0004d300 bal 0x64154                   |     sym_BIO_write ();
    0x0004d304 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 <= 0) {
    0x0004d308 blez v0, 0x4cbec              |         goto label_0;
                                             |     }
                                             | label_20:
    0x0004d30c lw t9, -0x7f00(gp)            |     t9 = *((gp - 8128));
                                             | label_57:
    0x0004d310 move a0, s4                   |     a0 = s4;
                                             | label_21:
    0x0004d314 jalr t9                       |     t9 ();
    0x0004d318 nop                           |     
    0x0004d31c lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x0004d320 b 0x4cff0                     |     goto label_12;
                                             | label_55:
    0x0004d324 lw t9, -0x7f20(gp)            |     t9 = *((gp - 8136));
    0x0004d328 addiu a2, zero, 1             |     a2 = 1;
    0x0004d32c addiu a1, a1, 0x2664          |     a1 += 0x2664;
    0x0004d330 move a0, s0                   |     a0 = s0;
    0x0004d334 bal 0x64154                   |     sym_BIO_write ();
    0x0004d338 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 > 0) {
    0x0004d33c bgtz v0, 0x4d2c8              |         goto label_18;
                                             |     }
    0x0004d340 move s1, zero                 |     s1 = 0;
    0x0004d344 b 0x4cbf0                     |     goto label_10;
                                             | label_56:
    0x0004d348 lw v0, 8(s4)                  |     v0 = *((s4 + 2));
    0x0004d34c addu v0, v0, s6               |     v0 += s6;
    0x0004d350 move a1, fp                   |     a1 = fp;
    0x0004d354 lbu a2, (v0)                  |     a2 = *(v0);
    0x0004d358 move a0, s0                   |     a0 = s0;
    0x0004d35c bal 0x60608                   |     sym_BIO_printf ()
    0x0004d360 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 <= 0) {
    0x0004d364 blez v0, 0x4cbec              |         goto label_0;
                                             |     }
    0x0004d368 addiu s6, s6, 1               |     s6++;
    0x0004d36c b 0x4d2d4                     |     goto label_19;
                                             | label_54:
    0x0004d370 lw a1, -0x7fd4(gp)            |     a1 = *((gp - 8181));
    0x0004d374 lw t9, -0x7ce8(gp)            |     t9 = *((gp - 7994));
    0x0004d378 addiu a1, a1, 0x2668          |     a1 += 0x2668;
    0x0004d37c move a0, s0                   |     a0 = s0;
    0x0004d380 bal 0x641d8                   |     sym_BIO_puts ();
    0x0004d384 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 <= 0) {
    0x0004d388 blez v0, 0x4cbec              |         goto label_0;
                                             |     }
    0x0004d38c addiu s3, zero, 1             |     s3 = 1;
    0x0004d390 b 0x4d30c                     |     goto label_20;
                                             | label_53:
    0x0004d394 lw t9, -0x7ccc(gp)            |     t9 = *((gp - 7987));
                                             |     if (v0 != v1) {
    0x0004d398 bne v0, v1, 0x4d4ac           |         goto label_58;
                                             |     }
    0x0004d39c addu a2, s4, a2               |     a2 = s4 + a2;
    0x0004d3a0 sw s6, 0xb8(sp)               |     *(var_b8h) = s6;
    0x0004d3a4 addiu a1, sp, 0xb8            |     a1 = sp + 0xb8;
    0x0004d3a8 move a0, zero                 |     a0 = 0;
    0x0004d3ac bal 0x58efc                   |     sym_d2i_ASN1_ENUMERATED ();
    0x0004d3b0 move s4, v0                   |     s4 = v0;
    0x0004d3b4 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 == 0) {
    0x0004d3b8 beqz v0, 0x4d488              |         goto label_59;
                                             |     }
    0x0004d3bc lw a1, -0x7e1c(gp)            |     a1 = *((gp - 8071));
    0x0004d3c0 lw t9, -0x7f20(gp)            |     t9 = *((gp - 8136));
    0x0004d3c4 addiu a2, zero, 1             |     a2 = 1;
    0x0004d3c8 addiu a1, a1, 0x15f8          |     a1 += 0x15f8;
    0x0004d3cc move a0, s0                   |     a0 = s0;
    0x0004d3d0 bal 0x64154                   |     sym_BIO_write ();
    0x0004d3d4 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 <= 0) {
    0x0004d3d8 blez v0, 0x4cbec              |         goto label_0;
                                             |     }
    0x0004d3dc lw v1, 4(s4)                  |     v1 = *((s4 + 1));
    0x0004d3e0 addiu v0, zero, 0x10a         |     v0 = 0x10a;
    0x0004d3e4 lw a1, -0x7fd4(gp)            |     a1 = *((gp - 8181));
                                             |     if (v1 == v0) {
    0x0004d3e8 beq v1, v0, 0x4d43c           |         goto label_60;
                                             |     }
                                             | label_22:
    0x0004d3ec lw fp, -0x7de8(gp)            |     fp = *((gp - 8058));
    0x0004d3f0 move s6, zero                 |     s6 = 0;
    0x0004d3f4 addiu fp, fp, -0x2198         |     fp += -0x2198;
                                             | label_23:
    0x0004d3f8 lw v0, (s4)                   |     v0 = *(s4);
    0x0004d3fc slt v1, s6, v0                |     v1 = (s6 < v0) ? 1 : 0;
    0x0004d400 lw t9, -0x7d9c(gp)            |     t9 = *((gp - 8039));
                                             |     if (v1 != 0) {
    0x0004d404 bnez v1, 0x4d460              |         goto label_61;
                                             |     }
    0x0004d408 move a0, s4                   |     a0 = s4;
                                             |     if (v0 != 0) {
    0x0004d40c bnez v0, 0x4d434              |         goto label_62;
                                             |     }
    0x0004d410 lw a1, -0x7e98(gp)            |     a1 = *((gp - 8102));
    0x0004d414 lw t9, -0x7f20(gp)            |     t9 = *((gp - 8136));
    0x0004d418 addiu a2, zero, 2             |     a2 = 2;
    0x0004d41c addiu a1, a1, -0x6ce0         |     a1 += -0x6ce0;
    0x0004d420 move a0, s0                   |     a0 = s0;
    0x0004d424 bal 0x64154                   |     sym_BIO_write ();
    0x0004d428 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 <= 0) {
    0x0004d42c blez v0, 0x4cbec              |         goto label_0;
                                             |     }
                                             | label_24:
    0x0004d430 move a0, s4                   |     a0 = s4;
                                             | label_62:
    0x0004d434 lw t9, -0x7cc8(gp)            |     t9 = *((gp - 7986));
    0x0004d438 b 0x4d314                     |     goto label_21;
                                             | label_60:
    0x0004d43c lw t9, -0x7f20(gp)            |     t9 = *((gp - 8136));
    0x0004d440 addiu a2, zero, 1             |     a2 = 1;
    0x0004d444 addiu a1, a1, 0x2664          |     a1 += 0x2664;
    0x0004d448 move a0, s0                   |     a0 = s0;
    0x0004d44c bal 0x64154                   |     sym_BIO_write ();
    0x0004d450 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 > 0) {
    0x0004d454 bgtz v0, 0x4d3ec              |         goto label_22;
                                             |     }
    0x0004d458 move s1, zero                 |     s1 = 0;
    0x0004d45c b 0x4cbf0                     |     goto label_10;
                                             | label_61:
    0x0004d460 lw v0, 8(s4)                  |     v0 = *((s4 + 2));
    0x0004d464 addu v0, v0, s6               |     v0 += s6;
    0x0004d468 move a1, fp                   |     a1 = fp;
    0x0004d46c lbu a2, (v0)                  |     a2 = *(v0);
    0x0004d470 move a0, s0                   |     a0 = s0;
    0x0004d474 bal 0x60608                   |     sym_BIO_printf ()
    0x0004d478 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 <= 0) {
    0x0004d47c blez v0, 0x4cbec              |         goto label_0;
                                             |     }
    0x0004d480 addiu s6, s6, 1               |     s6++;
    0x0004d484 b 0x4d3f8                     |     goto label_23;
                                             | label_59:
    0x0004d488 lw a1, -0x7fd4(gp)            |     a1 = *((gp - 8181));
    0x0004d48c lw t9, -0x7ce8(gp)            |     t9 = *((gp - 7994));
    0x0004d490 addiu a1, a1, 0x2678          |     a1 += 0x2678;
    0x0004d494 move a0, s0                   |     a0 = s0;
    0x0004d498 bal 0x641d8                   |     sym_BIO_puts ();
    0x0004d49c lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 <= 0) {
    0x0004d4a0 blez v0, 0x4cbec              |         goto label_0;
                                             |     }
    0x0004d4a4 addiu s3, zero, 1             |     s3 = 1;
    0x0004d4a8 b 0x4d430                     |     goto label_24;
                                             |     if (a2 <= 0) {
                                             | label_58:
    0x0004d4ac blez a2, 0x4cf84              |         goto label_11;
                                             |     }
    0x0004d4b0 nop                           |     
    0x0004d4b4 lw a1, -0x7e98(gp)            |     a1 = *((gp - 8102));
                                             |     if (s2 == 0) {
    0x0004d4b8 beqz s2, 0x4cf84              |         goto label_11;
                                             |     }
    0x0004d4bc lw t9, -0x7f20(gp)            |     t9 = *((gp - 8136));
    0x0004d4c0 addiu a2, zero, 1             |     a2 = 1;
    0x0004d4c4 addiu a1, a1, 0x3620          |     a1 += 0x3620;
    0x0004d4c8 move a0, s0                   |     a0 = s0;
    0x0004d4cc bal 0x64154                   |     sym_BIO_write ();
    0x0004d4d0 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 <= 0) {
    0x0004d4d4 blez v0, 0x4cbec              |         goto label_0;
                                             |     }
    0x0004d4d8 addiu v0, zero, -1            |     v0 = -1;
    0x0004d4dc lw a1, 0xbc(sp)               |     a1 = *(var_bch);
    0x0004d4e0 lw a2, 0xb4(sp)               |     a2 = *(var_b4h);
                                             |     if (s2 != v0) {
    0x0004d4e4 beq s2, v0, 0x4d4f0           |         
    0x0004d4e8 slt v0, s2, a2                |         v0 = (s2 < a2) ? 1 : 0;
                                             |         if (v0 != 0) {
    0x0004d4ec movn a2, s2, v0               |             a2 = s2;
                                             |             goto label_63;
                                             |         }
                                             |     }
                                             | label_63:
    0x0004d4f0 lw t9, -0x7cd4(gp)            |     t9 = *((gp - 7989));
    0x0004d4f4 addiu a3, zero, 6             |     a3 = 6;
    0x0004d4f8 move a0, s0                   |     a0 = s0;
    0x0004d4fc bal 0x5e9cc                   |     sym_BIO_dump_indent ();
    0x0004d500 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 <= 0) {
    0x0004d504 blez v0, 0x4cbec              |         goto label_0;
                                             |     }
    0x0004d508 lw v0, 0xbc(sp)               |     v0 = *(var_bch);
                                             |     if (s3 == 0) {
    0x0004d50c beqz s3, 0x4d1dc              |         goto label_25;
                                             |     }
    0x0004d510 move s1, s3                   |     s1 = s3;
    0x0004d514 b 0x4d014                     |     goto label_14;
                                             | label_44:
    0x0004d518 lbu a2, (s3)                  |     a2 = *(s3);
    0x0004d51c move a1, s4                   |     a1 = s4;
    0x0004d520 move a0, s0                   |     a0 = s0;
    0x0004d524 bal 0x60608                   |     sym_BIO_printf ()
    0x0004d528 addiu s3, s3, 1               |     s3++;
    0x0004d52c lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 > 0) {
    0x0004d530 bgtz v0, 0x4d03c              |         goto label_26;
                                             |     }
    0x0004d534 move s1, zero                 |     s1 = 0;
    0x0004d538 b 0x4cbf0                     |     goto label_10;
                                             | label_51:
    0x0004d53c lw t9, -0x7f20(gp)            |     t9 = *((gp - 8136));
                                             |     if (s2 != 0) {
    0x0004d540 bnez s2, 0x4d214              |         goto label_27;
                                             |     }
    0x0004d544 lw a1, -0x7fd4(gp)            |     a1 = *((gp - 8181));
    0x0004d548 addiu a2, zero, 0xb           |     a2 = 0xb;
    0x0004d54c addiu a1, a1, 0x2658          |     a1 += 0x2658;
    0x0004d550 move a0, s0                   |     a0 = s0;
    0x0004d554 bal 0x64154                   |     sym_BIO_write ();
    0x0004d558 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 <= 0) {
    0x0004d55c blez v0, 0x4cba4              |         goto label_28;
                                             |     }
    0x0004d560 lw fp, -0x7de8(gp)            |     fp = *((gp - 8058));
    0x0004d564 move s6, zero                 |     s6 = 0;
    0x0004d568 addiu fp, fp, -0x2198         |     fp += -0x2198;
                                             | label_29:
    0x0004d56c lw v0, (s4)                   |     v0 = *(s4);
    0x0004d570 slt v0, s6, v0                |     v0 = (s6 < v0) ? 1 : 0;
    0x0004d574 lw v0, 0xb8(sp)               |     v0 = *(var_b8h);
                                             |     if (v0 == 0) {
    0x0004d578 beqz v0, 0x4d19c              |         goto label_17;
                                             |     }
    0x0004d57c lw t9, -0x7d9c(gp)            |     t9 = *((gp - 8039));
    0x0004d580 addu v0, v0, s6               |     v0 += s6;
    0x0004d584 move a1, fp                   |     a1 = fp;
    0x0004d588 lbu a2, (v0)                  |     a2 = *(v0);
    0x0004d58c move a0, s0                   |     a0 = s0;
    0x0004d590 bal 0x60608                   |     sym_BIO_printf ()
    0x0004d594 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 <= 0) {
    0x0004d598 blez v0, 0x4cba4              |         goto label_28;
                                             |     }
    0x0004d59c addiu s6, s6, 1               |     s6++;
    0x0004d5a0 b 0x4d56c                     |     goto label_29;
                                             | }
    ; assembly                           | /* r2dec pseudo code output */
                                         | /* /logs/firmware/unblob_extracted/firmware_extract/1568982-13971496.squashfs_v4_le_extract/usr/lib/libcrypto.so.1.1 @ 0x57fe4 */
                                         | #include <stdint.h>
                                         |  
    ; (fcn) fcn.00057fe4 ()              | void fcn_00057fe4 () {
    0x00057fe4 lui gp, 0x17              |     
    0x00057fe8 addiu gp, gp, -0x1424     |     
    0x00057fec addu gp, gp, t9           |     gp += t9;
    0x00057ff0 addiu sp, sp, -0x38       |     
    0x00057ff4 sw s4, 0x2c(sp)           |     *(var_2ch) = s4;
    0x00057ff8 lw s4, -0x7fd4(gp)        |     s4 = *((gp - 8181));
    0x00057ffc sw s5, 0x30(sp)           |     *(var_30h) = s5;
    0x00058000 sw s3, 0x28(sp)           |     *(var_28h) = s3;
    0x00058004 sw s2, 0x24(sp)           |     *(var_24h) = s2;
    0x00058008 sw s1, 0x20(sp)           |     *(var_20h) = s1;
    0x0005800c sw s0, 0x1c(sp)           |     *(var_1ch) = s0;
    0x00058010 sw gp, 0x10(sp)           |     *(var_10h) = gp;
    0x00058014 sw ra, 0x34(sp)           |     *(var_34h) = ra;
    0x00058018 move s1, a0               |     s1 = a0;
    0x0005801c move s2, a1               |     s2 = a1;
    0x00058020 move s3, a2               |     s3 = a2;
    0x00058024 move s0, a3               |     s0 = a3;
    0x00058028 addiu s5, s4, 0x3264      |     s5 = s4 + 0x3264;
                                         |     do {
    0x0005802c slti v0, s2, 0x15         |         v0 = (s2 < 0x15) ? 1 : 0;
    0x00058030 lw t9, -0x7f20(gp)        |         t9 = *((gp - 8136));
                                         |         if (v0 != 0) {
    0x00058034 beqz v0, 0x58080          |             
    0x00058038 move a2, s2               |             a2 = s2;
    0x0005803c addiu a1, s4, 0x3264      |             a1 = s4 + 0x3264;
    0x00058040 move a0, s1               |             a0 = s1;
    0x00058044 bal 0x64154               |             sym_BIO_write ();
    0x00058048 lw gp, 0x10(sp)           |             gp = *(var_10h);
                                         |             if (s2 == v0) {
    0x0005804c bne s2, v0, 0x5809c       |                 
    0x00058050 lw v0, 0x48(sp)           |                 v0 = *(arg_48h);
    0x00058054 lw v0, (v0)               |                 v0 = *(v0);
    0x00058058 andi v1, v0, 0x100        |                 v1 = v0 & aav.0x00000100;
    0x0005805c andi v0, v0, 0x40         |                 v0 &= 0x40;
                                         |                 if (v1 == 0) {
    0x00058060 movn s0, zero, v1         |                     s0 = 0;
                                         |                 }
                                         |                 if (v0 != 0) {
    0x00058064 bnez v0, 0x58134          |                     goto label_4;
                                         |                 }
                                         |                 if (s0 != 0) {
    0x00058068 bnez s0, 0x580cc          |                     goto label_5;
                                         |                 }
    0x0005806c nop                       |                 
    0x00058070 lw t9, -0x7ce8(gp)        |                 t9 = *((gp - 7994));
                                         |                 if (s3 != 0) {
    0x00058074 bnez s3, 0x580d4          |                     goto label_6;
                                         |                 }
                                         | label_2:
    0x00058078 addiu v0, zero, 1         |                 v0 = 1;
    0x0005807c b 0x580a0                 |                 
                                         |             } else {
    0x00058080 addiu a2, zero, 0x14      |                 a2 = 0x14;
    0x00058084 move a1, s5               |                 a1 = s5;
    0x00058088 move a0, s1               |                 a0 = s1;
    0x0005808c bal 0x64154               |                 sym_BIO_write ();
    0x00058090 addiu v1, zero, 0x14      |                 v1 = 0x14;
    0x00058094 lw gp, 0x10(sp)           |                 gp = *(var_10h);
                                         |                 if (v0 == v1) {
    0x00058098 beq v0, v1, 0x580c4       |                     goto label_7;
                                         |                 }
                                         |             }
                                         | label_0:
    0x0005809c move v0, zero             |             v0 = 0;
                                         |         }
                                         | label_1:
    0x000580a0 lw ra, 0x34(sp)           |         ra = *(var_34h);
    0x000580a4 lw s5, 0x30(sp)           |         s5 = *(var_30h);
    0x000580a8 lw s4, 0x2c(sp)           |         s4 = *(var_2ch);
    0x000580ac lw s3, 0x28(sp)           |         s3 = *(var_28h);
    0x000580b0 lw s2, 0x24(sp)           |         s2 = *(var_24h);
    0x000580b4 lw s1, 0x20(sp)           |         s1 = *(var_20h);
    0x000580b8 lw s0, 0x1c(sp)           |         s0 = *(var_1ch);
    0x000580bc addiu sp, sp, 0x38        |         
    0x000580c0 jr ra                     |         return v0;
                                         | label_7:
    0x000580c4 addiu s2, s2, -0x14       |         s2 += -0x14;
    0x000580c8 b 0x5802c                 |         
                                         |     } while (1);
                                         | label_5:
    0x000580cc lw t9, -0x7ce8(gp)        |     t9 = *((gp - 7994));
                                         |     if (s3 == 0) {
    0x000580d0 beqz s3, 0x5813c          |         goto label_8;
                                         |     }
                                         | label_6:
    0x000580d4 move a1, s3               |     a1 = s3;
    0x000580d8 move a0, s1               |     a0 = s1;
    0x000580dc bal 0x641d8               |     sym_BIO_puts ();
    0x000580e0 lw gp, 0x10(sp)           |     gp = *(var_10h);
                                         |     if (v0 <= 0) {
    0x000580e4 blez v0, 0x5809c          |         goto label_0;
                                         |     }
    0x000580e8 lw a1, -0x7fd4(gp)        |     a1 = *((gp - 8181));
                                         |     if (s0 == 0) {
    0x000580ec beqz s0, 0x58110          |         goto label_9;
                                         |     }
    0x000580f0 lw t9, -0x7d9c(gp)        |     t9 = *((gp - 8039));
    0x000580f4 move a2, s0               |     a2 = s0;
    0x000580f8 addiu a1, a1, 0x30e0      |     a1 += 0x30e0;
    0x000580fc move a0, s1               |     a0 = s1;
    0x00058100 bal 0x60608               |     sym_BIO_printf ()
    0x00058104 lw gp, 0x10(sp)           |     gp = *(var_10h);
                                         |     if (v0 <= 0) {
                                         | label_3:
    0x00058108 blez v0, 0x5809c          |         goto label_0;
                                         |     }
    0x0005810c nop                       |     
                                         | label_9:
    0x00058110 lw a1, -0x7e98(gp)        |     a1 = *((gp - 8102));
    0x00058114 lw t9, -0x7f20(gp)        |     t9 = *((gp - 8136));
    0x00058118 addiu a2, zero, 2         |     a2 = 2;
    0x0005811c addiu a1, a1, 0x6c40      |     a1 += 0x6c40;
    0x00058120 move a0, s1               |     a0 = s1;
    0x00058124 bal 0x64154               |     sym_BIO_write ();
    0x00058128 xori v0, v0, 2            |     v0 ^= 2;
    0x0005812c sltiu v0, v0, 1           |     v0 = (v0 < 1) ? 1 : 0;
    0x00058130 b 0x580a0                 |     goto label_1;
                                         |     if (s0 == 0) {
                                         | label_4:
    0x00058134 beqz s0, 0x58078          |         goto label_2;
                                         |     }
    0x00058138 nop                       |     
                                         | label_8:
    0x0005813c lw t9, -0x7ce8(gp)        |     t9 = *((gp - 7994));
    0x00058140 move a1, s0               |     a1 = s0;
    0x00058144 move a0, s1               |     a0 = s1;
    0x00058148 bal 0x641d8               |     sym_BIO_puts ();
    0x0005814c lw gp, 0x10(sp)           |     gp = *(var_10h);
    0x00058150 b 0x58108                 |     goto label_3;
                                         | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/1568982-13971496.squashfs_v4_le_extract/usr/lib/libcrypto.so.1.1 @ 0x58154 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) fcn.00058154 ()                  | void fcn_00058154 () {
    0x00058154 lui gp, 0x17                  |     
    0x00058158 addiu gp, gp, -0x1594         |     
    0x0005815c addu gp, gp, t9               |     gp += t9;
    0x00058160 addiu sp, sp, -0xb0           |     
    0x00058164 sw fp, 0xa8(sp)               |     *(var_a8h) = fp;
    0x00058168 lw fp, 0x10(a3)               |     fp = *((a3 + 4));
    0x0005816c sw gp, 0x18(sp)               |     *(var_18h) = gp;
    0x00058170 sw s7, 0xa4(sp)               |     *(var_a4h) = s7;
    0x00058174 sw s6, 0xa0(sp)               |     *(var_a0h) = s6;
    0x00058178 sw s4, 0x98(sp)               |     *(var_98h) = s4;
    0x0005817c sw s3, 0x94(sp)               |     *(var_94h) = s3;
    0x00058180 sw s2, 0x90(sp)               |     *(var_90h) = s2;
    0x00058184 sw s1, 0x8c(sp)               |     *(var_8ch) = s1;
    0x00058188 sw s0, 0x88(sp)               |     *(var_88h) = s0;
    0x0005818c sw ra, 0xac(sp)               |     *(var_ach) = ra;
    0x00058190 move s0, a0                   |     s0 = a0;
    0x00058194 sw s5, 0x9c(sp)               |     *(var_9ch) = s5;
    0x00058198 move s2, a1                   |     s2 = a1;
    0x0005819c move s4, a2                   |     s4 = a2;
    0x000581a0 move s1, a3                   |     s1 = a3;
    0x000581a4 lw s7, 0xc0(sp)               |     s7 = *(arg_c0h);
    0x000581a8 lw s6, 0xc4(sp)               |     s6 = *(arg_c4h);
    0x000581ac lw a0, 0xc8(sp)               |     a0 = *(arg_c8h);
    0x000581b0 lw s3, 0xcc(sp)               |     s3 = *(arg_cch);
                                             |     if (fp == 0) {
    0x000581b4 beqz fp, 0x58238              |         goto label_6;
                                             |     }
    0x000581b8 lw s5, 0x10(fp)               |     s5 = *(arg_c0h);
                                             |     if (s5 == 0) {
    0x000581bc beqz s5, 0x581d0              |         goto label_7;
                                             |     }
    0x000581c0 nop                           |     
    0x000581c4 sw s0, 0x70(sp)               |     *(var_70h) = s0;
    0x000581c8 sw a2, 0x74(sp)               |     *(var_74h) = a2;
    0x000581cc sw s3, 0x78(sp)               |     *(var_78h) = s3;
                                             |     do {
                                             | label_7:
    0x000581d0 lb a2, (s1)                   |         a2 = *(s1);
    0x000581d4 addiu v0, zero, 1             |         v0 = 1;
                                             |         if (a2 == 0) {
    0x000581d8 bnez a2, 0x581e8              |             
    0x000581dc lw v1, 4(s1)                  |             v1 = *((s1 + 1));
                                             |             if (v1 == v0) {
    0x000581e0 beq v1, v0, 0x582b8           |                 goto label_8;
                                             |             }
    0x000581e4 nop                           |             
                                             |         }
    0x000581e8 lw v0, (s2)                   |         v0 = *(s2);
    0x000581ec andi v0, a2, 0xff             |         v0 = a2 & 0xff;
                                             |         if (v0 != 0) {
    0x000581f0 bnez v0, 0x58290              |             goto label_9;
                                             |         }
    0x000581f4 lw v0, (s3)                   |         v0 = *(s3);
    0x000581f8 andi v0, v0, 1                |         v0 &= 1;
                                             |         if (v0 != 0) {
    0x000581fc bnez v0, 0x58240              |             goto label_10;
                                             |         }
    0x00058200 nop                           |         
    0x00058204 addiu v0, zero, 1             |         v0 = 1;
                                             | label_0:
    0x00058208 lw ra, 0xac(sp)               |         ra = *(var_ach);
    0x0005820c lw fp, 0xa8(sp)               |         fp = *(var_a8h);
    0x00058210 lw s7, 0xa4(sp)               |         s7 = *(var_a4h);
    0x00058214 lw s6, 0xa0(sp)               |         s6 = *(var_a0h);
    0x00058218 lw s5, 0x9c(sp)               |         s5 = *(var_9ch);
    0x0005821c lw s4, 0x98(sp)               |         s4 = *(var_98h);
    0x00058220 lw s3, 0x94(sp)               |         s3 = *(var_94h);
    0x00058224 lw s2, 0x90(sp)               |         s2 = *(var_90h);
    0x00058228 lw s1, 0x8c(sp)               |         s1 = *(var_8ch);
    0x0005822c lw s0, 0x88(sp)               |         s0 = *(var_88h);
    0x00058230 addiu sp, sp, 0xb0            |         
    0x00058234 jr ra                         |         return v0;
                                             | label_6:
    0x00058238 move s5, zero                 |         s5 = 0;
    0x0005823c b 0x581d0                     |         
                                             |     } while (1);
                                             | label_10:
    0x00058240 lw t9, -0x7d58(gp)            |     t9 = *((gp - 8022));
    0x00058244 beqz a0, 0x58264              |     
                                             |     while (v0 != 0) {
    0x00058248 lw a1, -0x7fd4(gp)            |         a1 = *((gp - 8181));
    0x0005824c addiu a1, a1, 0x3104          |         a1 += 0x3104;
                                             | label_1:
    0x00058250 lw t9, -0x7ce8(gp)            |         t9 = *((gp - 7994));
    0x00058254 move a0, s0                   |         a0 = s0;
    0x00058258 bal 0x641d8                   |         sym_BIO_puts ();
    0x0005825c b 0x58604                     |         goto label_11;
    0x00058260 nop                           |         
    0x00058264 sw s3, 0x10(sp)               |         *(var_10h) = s3;
    0x00058268 move a3, s6                   |         a3 = s6;
    0x0005826c move a2, s7                   |         a2 = s7;
    0x00058270 move a1, s4                   |         a1 = s4;
    0x00058274 addiu t9, t9, 0x7fe4          |         t9 += 0x7fe4;
    0x00058278 move a0, s0                   |         a0 = s0;
    0x0005827c bal 0x57fe4                   |         fcn_00057fe4 ();
    0x00058280 lw gp, 0x18(sp)               |         gp = *(var_18h);
    0x00058284 bnez v0, 0x58248              |         
                                             |     }
                                             |     do {
                                             | label_4:
    0x00058288 move v0, zero                 |         v0 = 0;
    0x0005828c b 0x58208                     |         goto label_0;
                                             | label_9:
    0x00058290 sltiu v1, v0, 7               |         v1 = (v0 < 7) ? 1 : 0;
    0x00058294 sll v1, v0, 2                 |         v1 = v0 << 2;
                                             |         if (v1 == 0) {
    0x00058298 beqz v1, 0x58930              |             goto label_12;
                                             |         }
    0x0005829c lw v0, -0x7fd4(gp)            |         v0 = *((gp - 8181));
    0x000582a0 addiu v0, v0, 0x31a4          |         v0 += 0x31a4;
    0x000582a4 addu v0, v0, v1               |         v0 += v1;
    0x000582a8 lw v0, (v0)                   |         v0 = *(v0);
    0x000582ac addu v0, v0, gp               |         v0 += gp;
    0x000582b0 jr v0                         |         v0 ();
    0x000582b4 nop                           |         
                                             | label_8:
    0x000582b8 lw a3, 8(s1)                  |         a3 = *((s1 + 2));
    0x000582bc move a2, s4                   |         a2 = s4;
                                             |         if (a3 != 0) {
    0x000582c0 beqz a3, 0x582e4              |             
    0x000582c4 sw s3, 0x10(sp)               |             *(var_10h) = s3;
    0x000582c8 move a1, s2                   |             a1 = s2;
    0x000582cc lw t9, -0x7ac4(gp)            |             t9 = *((gp - 7857));
    0x000582d0 addiu t9, t9, -0x76b4         |             t9 += -0x76b4;
    0x000582d4 move a0, s0                   |             a0 = s0;
    0x000582d8 bal 0x5894c                   |             fcn_0005894c ();
    0x000582dc b 0x58334                     |             goto label_13;
    0x000582e0 nop                           |             
                                             |         }
    0x000582e4 lw t9, -0x7d58(gp)            |         t9 = *((gp - 8022));
    0x000582e8 sw s3, 0x10(sp)               |         *(var_10h) = s3;
    0x000582ec move a3, s6                   |         a3 = s6;
    0x000582f0 move a2, s7                   |         a2 = s7;
    0x000582f4 move a1, s4                   |         a1 = s4;
    0x000582f8 addiu t9, t9, 0x7fe4          |         t9 += 0x7fe4;
    0x000582fc move a0, s0                   |         a0 = s0;
    0x00058300 bal 0x57fe4                   |         fcn_00057fe4 ();
    0x00058304 lw gp, 0x18(sp)               |         gp = *(var_18h);
    0x00058308 beqz v0, 0x58288              |         
                                             |     } while (v0 == 0);
                                             |     if (fp != 0) {
    0x0005830c beqz fp, 0x5833c              |         
    0x00058310 nop                           |         
    0x00058314 lw t9, 0x1c(fp)               |         t9 = *(arg_cch);
    0x00058318 move a3, s4                   |         a3 = s4;
                                             |         if (t9 == 0) {
    0x0005831c beqz t9, 0x5833c              |             goto label_14;
                                             |         }
    0x00058320 sw s3, 0x10(sp)               |         *(var_10h) = s3;
    0x00058324 move a2, s1                   |         a2 = s1;
    0x00058328 move a1, s2                   |         a1 = s2;
    0x0005832c move a0, s0                   |         a0 = s0;
    0x00058330 jalr t9                       |         t9 ();
                                             | label_13:
    0x00058334 sltu v0, zero, v0             |         v0 = (0 < v0) ? 1 : 0;
    0x00058338 b 0x58208                     |         goto label_0;
                                             |     }
                                             | label_14:
    0x0005833c lb a0, (s1)                   |     a0 = *(s1);
    0x00058340 addiu v1, zero, 5             |     v1 = 5;
    0x00058344 lw v0, (s3)                   |     v0 = *(s3);
                                             |     if (a0 != v1) {
    0x00058348 bne a0, v1, 0x583a0           |         goto label_15;
                                             |     }
    0x0005834c lw s5, (s2)                   |     s5 = *(s2);
    0x00058350 addiu s6, zero, -0x101        |     s6 = -0x101;
    0x00058354 lw v1, 4(s5)                  |     v1 = *((s5 + 1));
    0x00058358 and s6, s6, v1                |     s6 &= v1;
                                             |     do {
    0x0005835c addiu v1, zero, -4            |         v1 = -4;
                                             |         if (s6 != v1) {
    0x00058360 bne s6, v1, 0x583bc           |             goto label_16;
                                             |         }
    0x00058364 nop                           |         
    0x00058368 andi v0, v0, 0x10             |         v0 &= 0x10;
    0x0005836c lw s6, (s5)                   |         s6 = *(s5);
    0x00058370 addiu s2, s5, 4               |         s2 = s5 + 4;
    0x00058374 lw s5, 4(s5)                  |         s5 = *((s5 + 1));
                                             |         if (v0 != 0) {
    0x00058378 bnez v0, 0x583c8              |             goto label_17;
                                             |         }
    0x0005837c lw t9, -0x7e20(gp)            |         t9 = *((gp - 8072));
                                             | label_2:
    0x00058380 move a0, s6                   |         a0 = s6;
    0x00058384 bal 0x4ca00                   |         sym_ASN1_tag2str ();
    0x00058388 addiu v1, zero, 5             |         v1 = 5;
    0x0005838c lw gp, 0x18(sp)               |         gp = *(var_18h);
                                             |         if (s6 != v1) {
    0x00058390 bne s6, v1, 0x583dc           |             goto label_18;
                                             |         }
    0x00058394 lw a1, -0x7fd4(gp)            |         a1 = *((gp - 8181));
                                             | label_3:
    0x00058398 addiu a1, a1, 0x3110          |         a1 += 0x3110;
    0x0005839c b 0x58250                     |         goto label_1;
                                             | label_15:
    0x000583a0 lw s6, 4(s1)                  |         s6 = *((s1 + 1));
    0x000583a4 addiu v1, zero, 1             |         v1 = 1;
                                             |         if (s6 == v1) {
    0x000583a8 beq s6, v1, 0x583b8           |             goto label_19;
                                             |         }
    0x000583ac nop                           |         
    0x000583b0 lw s5, (s2)                   |         s5 = *(s2);
    0x000583b4 b 0x5835c                     |         
                                             |     } while (1);
                                             | label_19:
    0x000583b8 move s5, zero                 |     s5 = 0;
                                             | label_16:
    0x000583bc andi v0, v0, 8                |     v0 &= 8;
    0x000583c0 lw t9, -0x7e20(gp)            |     t9 = *((gp - 8072));
                                             |     if (v0 != 0) {
    0x000583c4 bnez v0, 0x58380              |         goto label_2;
                                             |     }
                                             | label_17:
    0x000583c8 addiu v0, zero, 5             |     v0 = 5;
    0x000583cc addiu s6, s6, 3               |     s6 += 3;
                                             |     if (s6 != v0) {
    0x000583d0 bne s6, v0, 0x58418           |         goto label_20;
                                             |     }
    0x000583d4 lw a1, -0x7fd4(gp)            |     a1 = *((gp - 8181));
    0x000583d8 b 0x58398                     |     goto label_3;
                                             | label_18:
    0x000583dc lw t9, -0x7ce8(gp)            |     t9 = *((gp - 7994));
                                             |     if (v0 == 0) {
    0x000583e0 beqz v0, 0x58414              |         goto label_21;
                                             |     }
    0x000583e4 move a1, v0                   |     a1 = v0;
    0x000583e8 move a0, s0                   |     a0 = s0;
    0x000583ec bal 0x641d8                   |     sym_BIO_puts ();
    0x000583f0 lw gp, 0x18(sp)               |     gp = *(var_18h);
                                             |     if (v0 <= 0) {
    0x000583f4 blez v0, 0x58288              |         goto label_4;
                                             |     }
    0x000583f8 lw a1, -0x7e1c(gp)            |     a1 = *((gp - 8071));
    0x000583fc lw t9, -0x7ce8(gp)            |     t9 = *((gp - 7994));
    0x00058400 addiu a1, a1, 0x15f8          |     a1 += 0x15f8;
    0x00058404 move a0, s0                   |     a0 = s0;
    0x00058408 bal 0x641d8                   |     sym_BIO_puts ();
    0x0005840c lw gp, 0x18(sp)               |     gp = *(var_18h);
                                             |     if (v0 <= 0) {
    0x00058410 blez v0, 0x58288              |         goto label_4;
                                             |     }
                                             | label_21:
    0x00058414 addiu s6, s6, 3               |     s6 += 3;
                                             | label_20:
    0x00058418 sltiu v0, s6, 0x1c            |     v0 = (s6 < 0x1c) ? 1 : 0;
    0x0005841c lw t9, -0x7ac0(gp)            |     t9 = *((gp - 7856));
                                             |     if (v0 == 0) {
    0x00058420 beqz v0, 0x58668              |         goto label_22;
                                             |     }
    0x00058424 sll v0, s6, 2                 |     v0 = s6 << 2;
    0x00058428 lw s6, -0x7fd4(gp)            |     s6 = *((gp - 8181));
    0x0005842c addiu s6, s6, 0x31c0          |     s6 += 0x31c0;
    0x00058430 addu s6, s6, v0               |     s6 += v0;
    0x00058434 lw v0, (s6)                   |     v0 = *(s6);
    0x00058438 addu v0, v0, gp               |     v0 += gp;
    0x0005843c jr v0                         |     v0 ();
    0x00058440 nop                           |     
                                             |     do {
    0x00058490 addiu a1, a1, 0x3620          |         a1 += 0x3620;
    0x00058494 b 0x58250                     |         goto label_1;
                                             | label_5:
    0x000584f4 lw a1, -0x7e98(gp)            |         a1 = *((gp - 8102));
    0x000584f8 bnez s1, 0x58490              |         
                                             |     } while (s1 != 0);
    0x000584fc move v0, zero                 |     v0 = 0;
    0x00058500 b 0x58208                     |     goto label_0;
                                             |     do {
    0x0005851c move s1, v0                   |         s1 = v0;
    0x00058520 b 0x584f4                     |         goto label_5;
                                             | label_11:
    0x00058604 slt v0, zero, v0              |         v0 = (0 < v0) ? 1 : 0;
    0x00058608 b 0x58208                     |         goto label_0;
                                             | label_22:
    0x00058668 lw a2, 0x10(s3)               |         a2 = *((s3 + 4));
    0x0005866c move a1, s5                   |         a1 = s5;
    0x00058670 move a0, s0                   |         a0 = s0;
    0x00058674 bal 0x47c5c                   |         sym_ASN1_STRING_print_ex ();
    0x00058678 lw gp, 0x18(sp)               |         gp = *(var_18h);
    0x0005867c b 0x5851c                     |         
                                             |     } while (1);
                                             | label_12:
    0x00058930 lw a1, -0x7fd4(gp)            |     a1 = *((gp - 8181));
    0x00058934 lw t9, -0x7d9c(gp)            |     t9 = *((gp - 8039));
    0x00058938 addiu a1, a1, 0x318c          |     a1 += 0x318c;
    0x0005893c move a0, s0                   |     a0 = s0;
    0x00058940 bal 0x60608                   |     sym_BIO_printf ()
    0x00058944 move v0, zero                 |     v0 = 0;
    0x00058948 b 0x58208                     |     goto label_0;
                                             | }
    ; assembly                           | /* r2dec pseudo code output */
                                         | /* /logs/firmware/unblob_extracted/firmware_extract/1568982-13971496.squashfs_v4_le_extract/usr/lib/libcrypto.so.1.1 @ 0x5894c */
                                         | #include <stdint.h>
                                         |  
    ; (fcn) fcn.0005894c ()              | void fcn_0005894c () {
    0x0005894c lui gp, 0x17              |     
    0x00058950 addiu gp, gp, -0x1d8c     |     
    0x00058954 addu gp, gp, t9           |     gp += t9;
    0x00058958 addiu sp, sp, -0x58       |     
    0x0005895c lw v0, (a3)               |     v0 = *(a3);
    0x00058960 sw s4, 0x40(sp)           |     *(var_40h) = s4;
    0x00058964 lw s4, 0x68(sp)           |     s4 = *(arg_68h);
    0x00058968 sw s0, 0x30(sp)           |     *(var_30h) = s0;
    0x0005896c sw gp, 0x20(sp)           |     *(var_20h) = gp;
    0x00058970 lw v1, (s4)               |     v1 = *(s4);
    0x00058974 move s0, a0               |     s0 = a0;
    0x00058978 andi a0, v1, 0x80         |     a0 = v1 & 0x80;
    0x0005897c sw s3, 0x3c(sp)           |     *(var_3ch) = s3;
    0x00058980 sw s2, 0x38(sp)           |     *(var_38h) = s2;
    0x00058984 sw s1, 0x34(sp)           |     *(var_34h) = s1;
    0x00058988 sw ra, 0x54(sp)           |     *(var_54h) = ra;
    0x0005898c sw fp, 0x50(sp)           |     *(var_50h) = fp;
    0x00058990 sw s7, 0x4c(sp)           |     *(var_4ch) = s7;
    0x00058994 sw s6, 0x48(sp)           |     *(var_48h) = s6;
    0x00058998 sw s5, 0x44(sp)           |     *(var_44h) = s5;
    0x0005899c move s3, a1               |     s3 = a1;
    0x000589a0 move s1, a2               |     s1 = a2;
    0x000589a4 move s2, a3               |     s2 = a3;
                                         |     if (a0 == 0) {
    0x000589a8 beqz a0, 0x58a3c          |         goto label_9;
                                         |     }
    0x000589ac lw a0, 0x10(a3)           |     a0 = *((a3 + 4));
    0x000589b0 lw a1, 0x18(a0)           |     a1 = *((a0 + 6));
                                         |     do {
    0x000589b4 andi a0, v1, 0x40         |         a0 = v1 & 0x40;
    0x000589b8 move a0, zero             |         a0 = 0;
                                         |         if (a0 == 0) {
    0x000589bc bnez a0, 0x589c4          |             
    0x000589c0 lw a0, 0xc(s2)            |             a0 = *((s2 + 3));
                                         |         }
    0x000589c4 andi a2, v0, 0x1000       |         a2 = v0 & aav.0x00001000;
    0x000589c8 andi a2, v0, 6            |         a2 = v0 & 6;
                                         |         if (a2 != 0) {
    0x000589cc beqz a2, 0x589d8          |             
    0x000589d0 sw s3, 0x2c(sp)           |             *(var_2ch) = s3;
    0x000589d4 addiu s3, sp, 0x2c        |             s3 = sp + 0x2c;
                                         |         }
    0x000589d8 lw t9, -0x7ac4(gp)        |         t9 = *((gp - 7857));
                                         |         if (a2 == 0) {
    0x000589dc beqz a2, 0x58bdc          |             goto label_10;
                                         |         }
    0x000589e0 andi v1, v1, 4            |         v1 &= 4;
                                         |         if (a0 != 0) {
    0x000589e4 bnez a0, 0x58a44          |             goto label_11;
                                         |         }
    0x000589e8 lw s6, -0x7e98(gp)        |         s6 = *((gp - 8102));
                                         | label_0:
    0x000589ec lw s7, -0x7ac4(gp)        |         s7 = *((gp - 7857));
    0x000589f0 lw s5, (s3)               |         s5 = *(s3);
    0x000589f4 addiu s6, s6, 0x3620      |         s6 += 0x3620;
    0x000589f8 move s3, zero             |         s3 = 0;
    0x000589fc addiu fp, s1, 2           |         fp = s1 + 2;
    0x00058a00 addiu s7, s7, -0x7eac     |         s7 += -0x7eac;
                                         | label_3:
    0x00058a04 lw t9, -0x7d5c(gp)        |         t9 = *((gp - 8023));
    0x00058a08 move a0, s5               |         a0 = s5;
    0x00058a0c jalr t9                   |         t9 ();
    0x00058a10 slt v0, s3, v0            |         v0 = (s3 < v0) ? 1 : 0;
    0x00058a14 lw gp, 0x20(sp)           |         gp = *(var_20h);
                                         |         if (v0 != 0) {
    0x00058a18 bnez v0, 0x58af4          |             goto label_12;
                                         |         }
                                         |         if (s3 == 0) {
    0x00058a1c beqz s3, 0x58b68          |             goto label_13;
                                         |         }
    0x00058a20 nop                       |         
                                         | label_6:
    0x00058a24 lw v0, (s4)               |         v0 = *(s4);
    0x00058a28 andi v0, v0, 2            |         v0 &= 2;
                                         |         if (v0 != 0) {
    0x00058a2c bnez v0, 0x58bb4          |             goto label_14;
                                         |         }
    0x00058a30 nop                       |         
    0x00058a34 addiu v0, zero, 1         |         v0 = 1;
    0x00058a38 b 0x58a98                 |         goto label_5;
                                         | label_9:
    0x00058a3c move a1, zero             |         a1 = 0;
    0x00058a40 b 0x589b4                 |         
                                         |     } while (1);
                                         | label_11:
    0x00058a44 lw a3, -0x7e98(gp)        |     a3 = *((gp - 8102));
    0x00058a48 lw t9, -0x7d9c(gp)        |     t9 = *((gp - 8039));
                                         |     if (v1 == 0) {
    0x00058a4c beqz v1, 0x58ad0          |         goto label_15;
                                         |     }
    0x00058a50 andi v0, v0, 2            |     v0 &= 2;
    0x00058a54 lw v0, -0x7fd4(gp)        |     v0 = *((gp - 8181));
                                         |     if (v0 != 0) {
    0x00058a58 bnez v0, 0x58ac8          |         goto label_16;
                                         |     }
    0x00058a5c lw v0, -0x7fd4(gp)        |     v0 = *((gp - 8181));
    0x00058a60 addiu v0, v0, 0x24ec      |     v0 += 0x24ec;
                                         | label_1:
    0x00058a64 lw a1, -0x7fd4(gp)        |     a1 = *((gp - 8181));
    0x00058a68 lw v1, 0xc(s2)            |     v1 = *((s2 + 3));
    0x00058a6c sw v0, 0x10(sp)           |     *(var_10h) = v0;
    0x00058a70 sw v1, 0x14(sp)           |     *(var_14h) = v1;
    0x00058a74 addiu a3, a3, 0x1e88      |     a3 += 0x1e88;
    0x00058a78 move a2, s1               |     a2 = s1;
    0x00058a7c addiu a1, a1, 0x3240      |     a1 += 0x3240;
    0x00058a80 move a0, s0               |     a0 = s0;
    0x00058a84 bal 0x60608               |     sym_BIO_printf ()
    0x00058a88 lw gp, 0x20(sp)           |     gp = *(var_20h);
                                         | label_2:
    0x00058a8c lw s6, -0x7e98(gp)        |     s6 = *((gp - 8102));
                                         |     if (v0 > 0) {
    0x00058a90 bgtz v0, 0x589ec          |         goto label_0;
                                         |     }
                                         |     do {
    0x00058a94 move v0, zero             |         v0 = 0;
                                         | label_5:
    0x00058a98 lw ra, 0x54(sp)           |         ra = *(var_54h);
                                         | label_8:
    0x00058a9c lw fp, 0x50(sp)           |         fp = *(var_50h);
    0x00058aa0 lw s7, 0x4c(sp)           |         s7 = *(var_4ch);
    0x00058aa4 lw s6, 0x48(sp)           |         s6 = *(var_48h);
    0x00058aa8 lw s5, 0x44(sp)           |         s5 = *(var_44h);
    0x00058aac lw s4, 0x40(sp)           |         s4 = *(var_40h);
    0x00058ab0 lw s3, 0x3c(sp)           |         s3 = *(var_3ch);
    0x00058ab4 lw s2, 0x38(sp)           |         s2 = *(var_38h);
    0x00058ab8 lw s1, 0x34(sp)           |         s1 = *(var_34h);
    0x00058abc lw s0, 0x30(sp)           |         s0 = *(var_30h);
    0x00058ac0 addiu sp, sp, 0x58        |         
    0x00058ac4 jr ra                     |         return v0;
                                         | label_16:
    0x00058ac8 addiu v0, v0, 0x24fc      |         v0 += 0x24fc;
    0x00058acc b 0x58a64                 |         goto label_1;
                                         | label_15:
    0x00058ad0 lw a1, -0x7fd4(gp)        |         a1 = *((gp - 8181));
    0x00058ad4 sw a0, 0x10(sp)           |         *(var_10h) = a0;
    0x00058ad8 addiu a3, a3, 0x1e88      |         a3 += 0x1e88;
    0x00058adc move a2, s1               |         a2 = s1;
    0x00058ae0 addiu a1, a1, 0x3250      |         a1 += 0x3250;
    0x00058ae4 move a0, s0               |         a0 = s0;
    0x00058ae8 bal 0x60608               |         sym_BIO_printf ()
    0x00058aec lw gp, 0x20(sp)           |         gp = *(var_20h);
    0x00058af0 b 0x58a8c                 |         goto label_2;
                                         | label_12:
    0x00058af4 lw t9, -0x7ce8(gp)        |         t9 = *((gp - 7994));
                                         |         if (s3 > 0) {
    0x00058af8 bgtz s3, 0x58b4c          |             goto label_17;
                                         |         }
                                         | label_4:
    0x00058afc lw t9, -0x7de0(gp)        |         t9 = *((gp - 8056));
    0x00058b00 move a1, s3               |         a1 = s3;
    0x00058b04 move a0, s5               |         a0 = s5;
    0x00058b08 jalr t9                   |         t9 ();
    0x00058b0c sw v0, 0x28(sp)           |         *(var_28h) = v0;
    0x00058b10 lw a3, 0x10(s2)           |         a3 = *((s2 + 4));
    0x00058b14 addiu v0, zero, 1         |         v0 = 1;
    0x00058b18 sw s4, 0x1c(sp)           |         *(var_1ch) = s4;
    0x00058b1c sw v0, 0x18(sp)           |         *(var_18h) = v0;
    0x00058b20 sw zero, 0x14(sp)         |         *(var_14h) = 0;
    0x00058b24 sw zero, 0x10(sp)         |         *(var_10h) = 0;
    0x00058b28 move a2, fp               |         a2 = fp;
    0x00058b2c addiu a1, sp, 0x28        |         a1 = sp + 0x28;
    0x00058b30 move t9, s7               |         t9 = s7;
    0x00058b34 move a0, s0               |         a0 = s0;
    0x00058b38 bal 0x58154               |         fcn_00058154 ();
    0x00058b3c lw gp, 0x20(sp)           |         gp = *(var_20h);
    0x00058b40 beqz v0, 0x58a94          |         
                                         |     } while (v0 == 0);
    0x00058b44 addiu s3, s3, 1           |     s3++;
    0x00058b48 b 0x58a04                 |     goto label_3;
                                         | label_17:
    0x00058b4c move a1, s6               |     a1 = s6;
    0x00058b50 move a0, s0               |     a0 = s0;
    0x00058b54 bal 0x641d8               |     sym_BIO_puts ();
    0x00058b58 lw gp, 0x20(sp)           |     gp = *(var_20h);
                                         |     if (v0 > 0) {
    0x00058b5c bgtz v0, 0x58afc          |         goto label_4;
                                         |     }
    0x00058b60 move v0, zero             |     v0 = 0;
    0x00058b64 b 0x58a98                 |     goto label_5;
                                         | label_13:
    0x00058b68 addiu a2, s1, 2           |     a2 = s1 + 2;
                                         |     if (s5 == 0) {
    0x00058b6c beqz s5, 0x58ba8          |         goto label_18;
                                         |     }
    0x00058b70 lw v0, -0x7fd4(gp)        |     v0 = *((gp - 8181));
    0x00058b74 addiu v0, v0, 0x3238      |     v0 += 0x3238;
                                         | label_7:
    0x00058b78 lw a3, -0x7e98(gp)        |     a3 = *((gp - 8102));
    0x00058b7c lw a1, -0x7fd4(gp)        |     a1 = *((gp - 8181));
    0x00058b80 lw t9, -0x7d9c(gp)        |     t9 = *((gp - 8039));
    0x00058b84 sw v0, 0x10(sp)           |     *(var_10h) = v0;
    0x00058b88 addiu a3, a3, 0x1e88      |     a3 += 0x1e88;
    0x00058b8c addiu a1, a1, 0x3258      |     a1 += 0x3258;
    0x00058b90 move a0, s0               |     a0 = s0;
    0x00058b94 bal 0x60608               |     sym_BIO_printf ()
    0x00058b98 lw gp, 0x20(sp)           |     gp = *(var_20h);
                                         |     if (v0 > 0) {
    0x00058b9c bgtz v0, 0x58a24          |         goto label_6;
                                         |     }
    0x00058ba0 move v0, zero             |     v0 = 0;
    0x00058ba4 b 0x58a98                 |     goto label_5;
                                         | label_18:
    0x00058ba8 lw v0, -0x7fd4(gp)        |     v0 = *((gp - 8181));
    0x00058bac addiu v0, v0, 0x3230      |     v0 += 0x3230;
    0x00058bb0 b 0x58b78                 |     goto label_7;
                                         | label_14:
    0x00058bb4 lw a3, -0x7e98(gp)        |     a3 = *((gp - 8102));
    0x00058bb8 lw a1, -0x7fd4(gp)        |     a1 = *((gp - 8181));
    0x00058bbc lw t9, -0x7d9c(gp)        |     t9 = *((gp - 8039));
    0x00058bc0 addiu a3, a3, 0x1e88      |     a3 += 0x1e88;
    0x00058bc4 move a2, s1               |     a2 = s1;
    0x00058bc8 addiu a1, a1, 0x3184      |     a1 += 0x3184;
    0x00058bcc move a0, s0               |     a0 = s0;
    0x00058bd0 bal 0x60608               |     sym_BIO_printf ()
    0x00058bd4 slt v0, zero, v0          |     v0 = (0 < v0) ? 1 : 0;
    0x00058bd8 b 0x58a98                 |     goto label_5;
                                         | label_10:
    0x00058bdc lw a3, 0x10(s2)           |     a3 = *((s2 + 4));
    0x00058be0 sw a1, 0x14(sp)           |     *(var_14h) = a1;
    0x00058be4 sw a0, 0x10(sp)           |     *(var_10h) = a0;
    0x00058be8 sw s4, 0x1c(sp)           |     *(var_1ch) = s4;
    0x00058bec sw zero, 0x18(sp)         |     *(var_18h) = 0;
    0x00058bf0 move a2, s1               |     a2 = s1;
    0x00058bf4 move a1, s3               |     a1 = s3;
    0x00058bf8 addiu t9, t9, -0x7eac     |     t9 += -0x7eac;
    0x00058bfc move a0, s0               |     a0 = s0;
    0x00058c00 bal 0x58154               |     fcn_00058154 ();
    0x00058c04 lw ra, 0x54(sp)           |     ra = *(var_54h);
    0x00058c08 b 0x58a9c                 |     goto label_8;
                                         | }
    ; assembly                                       | /* r2dec pseudo code output */
                                                     | /* /logs/firmware/unblob_extracted/firmware_extract/1568982-13971496.squashfs_v4_le_extract/usr/lib/libcrypto.so.1.1 @ 0x53b40 */
                                                     | #include <stdint.h>
                                                     |  
    ; (fcn) sym.ASN1_BIT_STRING_name_print ()        | void ASN1_BIT_STRING_name_print () {
    0x00053b40 lui gp, 0x17                          |     
    0x00053b44 addiu gp, gp, 0x3080                  |     
    0x00053b48 addu gp, gp, t9                       |     gp += t9;
    0x00053b4c addiu sp, sp, -0x30                   |     
    0x00053b50 lw t9, -0x7d9c(gp)                    |     t9 = *((gp - 8039));
    0x00053b54 sw s4, 0x28(sp)                       |     *(var_28h) = s4;
    0x00053b58 sw s0, 0x18(sp)                       |     *(var_18h) = s0;
    0x00053b5c move s4, a1                           |     s4 = a1;
    0x00053b60 move s0, a2                           |     s0 = a2;
    0x00053b64 lw a1, -0x7de8(gp)                    |     a1 = *((gp - 8058));
    0x00053b68 move a2, a3                           |     a2 = a3;
    0x00053b6c lw a3, -0x7e98(gp)                    |     a3 = *((gp - 8102));
    0x00053b70 sw gp, 0x10(sp)                       |     *(var_10h) = gp;
    0x00053b74 sw s3, 0x24(sp)                       |     *(var_24h) = s3;
    0x00053b78 sw s2, 0x20(sp)                       |     *(var_20h) = s2;
    0x00053b7c sw s1, 0x1c(sp)                       |     *(var_1ch) = s1;
    0x00053b80 sw ra, 0x2c(sp)                       |     *(var_2ch) = ra;
    0x00053b84 addiu a3, a3, 0x1e88                  |     a3 += 0x1e88;
    0x00053b88 addiu a1, a1, -0x221c                 |     a1 += -aav.0x0000221c;
    0x00053b8c move s1, a0                           |     s1 = a0;
    0x00053b90 bal 0x60608                           |     sym_BIO_printf ()
    0x00053b94 lw gp, 0x10(sp)                       |     gp = *(var_10h);
    0x00053b98 addiu s3, zero, 1                     |     s3 = 1;
    0x00053b9c lw s2, -0x7e98(gp)                    |     s2 = *((gp - 8102));
    0x00053ba0 addiu s2, s2, 0x5d98                  |     s2 += 0x5d98;
                                                     |     do {
    0x00053ba4 lw v0, 4(s0)                          |         v0 = *((s0 + 1));
    0x00053ba8 lw t9, -0x7b38(gp)                    |         t9 = *((gp - 7886));
                                                     |         if (v0 == 0) {
    0x00053bac bnez v0, 0x53be8                      |             
    0x00053bb0 lw a1, -0x7e98(gp)                    |             a1 = *((gp - 8102));
    0x00053bb4 lw t9, -0x7ce8(gp)                    |             t9 = *((gp - 7994));
    0x00053bb8 move a0, s1                           |             a0 = s1;
    0x00053bbc addiu a1, a1, 0x3620                  |             a1 += 0x3620;
    0x00053bc0 bal 0x641d8                           |             sym_BIO_puts ();
    0x00053bc4 lw ra, 0x2c(sp)                       |             ra = *(var_2ch);
    0x00053bc8 lw s4, 0x28(sp)                       |             s4 = *(var_28h);
    0x00053bcc lw s3, 0x24(sp)                       |             s3 = *(var_24h);
    0x00053bd0 lw s2, 0x20(sp)                       |             s2 = *(var_20h);
    0x00053bd4 lw s1, 0x1c(sp)                       |             s1 = *(var_1ch);
    0x00053bd8 lw s0, 0x18(sp)                       |             s0 = *(var_18h);
    0x00053bdc addiu v0, zero, 1                     |             v0 = 1;
    0x00053be0 addiu sp, sp, 0x30                    |             
    0x00053be4 jr ra                                 |             return v0;
                                                     |         }
    0x00053be8 lw a1, (s0)                           |         a1 = *(s0);
    0x00053bec move a0, s4                           |         a0 = s4;
    0x00053bf0 bal 0x428d8                           |         sym_ASN1_BIT_STRING_get_bit ();
    0x00053bf4 lw gp, 0x10(sp)                       |         gp = *(var_10h);
                                                     |         if (v0 != 0) {
    0x00053bf8 beqz v0, 0x53c2c                      |             
    0x00053bfc lw t9, -0x7ce8(gp)                    |             t9 = *((gp - 7994));
                                                     |             if (s3 == 0) {
    0x00053c00 bnez s3, 0x53c18                      |                 
    0x00053c04 move a1, s2                           |                 a1 = s2;
    0x00053c08 move a0, s1                           |                 a0 = s1;
    0x00053c0c bal 0x641d8                           |                 sym_BIO_puts ();
    0x00053c10 lw gp, 0x10(sp)                       |                 gp = *(var_10h);
    0x00053c14 lw t9, -0x7ce8(gp)                    |                 t9 = *((gp - 7994));
                                                     |             }
    0x00053c18 lw a1, 4(s0)                          |             a1 = *((s0 + 1));
    0x00053c1c move a0, s1                           |             a0 = s1;
    0x00053c20 bal 0x641d8                           |             sym_BIO_puts ();
    0x00053c24 lw gp, 0x10(sp)                       |             gp = *(var_10h);
    0x00053c28 move s3, zero                         |             s3 = 0;
                                                     |         }
    0x00053c2c addiu s0, s0, 0xc                     |         s0 += 0xc;
    0x00053c30 b 0x53ba4                             |         
                                                     |     } while (1);
                                                     | }
    ; assembly                           | /* r2dec pseudo code output */
                                         | /* /logs/firmware/unblob_extracted/firmware_extract/1568982-13971496.squashfs_v4_le_extract/usr/lib/libcrypto.so.1.1 @ 0x48ff4 */
                                         | #include <stdint.h>
                                         |  
    ; (fcn) sym.ASN1_TIME_print ()       | void ASN1_TIME_print () {
    0x00048ff4 lui gp, 0x18              |     
    0x00048ff8 addiu gp, gp, -0x2434     |     
    0x00048ffc addu gp, gp, t9           |     gp += t9;
    0x00049000 addiu sp, sp, -0x88       |     
    0x00049004 lw t9, -0x7f44(gp)        |     t9 = *((gp - 8145));
    0x00049008 sw gp, 0x30(sp)           |     *(var_30h) = gp;
    0x0004900c sw s2, 0x74(sp)           |     *(var_74h) = s2;
    0x00049010 sw s1, 0x70(sp)           |     *(var_70h) = s1;
    0x00049014 sw ra, 0x84(sp)           |     *(var_84h) = ra;
    0x00049018 sw s5, 0x80(sp)           |     *(var_80h) = s5;
    0x0004901c sw s4, 0x7c(sp)           |     *(var_7ch) = s4;
    0x00049020 sw s3, 0x78(sp)           |     *(var_78h) = s3;
    0x00049024 sw s0, 0x6c(sp)           |     *(var_6ch) = s0;
    0x00049028 move s1, a0               |     s1 = a0;
    0x0004902c addiu a0, sp, 0x38        |     a0 = sp + 0x38;
    0x00049030 move s2, a1               |     s2 = a1;
    0x00049034 bal 0x48330               |     fcn_00048330 ();
    0x00049038 lw gp, 0x30(sp)           |     gp = *(var_30h);
                                         |     if (v0 == 0) {
    0x0004903c beqz v0, 0x491d0          |         goto label_4;
                                         |     }
    0x00049040 lw v0, (s2)               |     v0 = *(s2);
    0x00049044 lw s5, 8(s2)              |     s5 = *((s2 + 2));
    0x00049048 lw a0, 4(s2)              |     a0 = *((s2 + 1));
    0x0004904c addu v1, s5, v0           |     v1 = s5 + v0;
    0x00049050 lb s3, -1(v1)             |     s3 = *((v1 - 1));
    0x00049054 addiu v1, zero, 0x18      |     v1 = 0x18;
    0x00049058 lw a2, 0x48(sp)           |     a2 = *(var_48h);
                                         |     if (a0 != v1) {
    0x0004905c bne a0, v1, 0x4915c       |         goto label_5;
                                         |     }
    0x00049060 slti v1, v0, 0x10         |     v1 = (v0 < 0x10) ? 1 : 0;
    0x00049064 move s0, zero             |     s0 = 0;
                                         |     if (v1 != 0) {
    0x00049068 bnez v1, 0x49148          |         goto label_6;
                                         |     }
    0x0004906c lb a0, 0xe(s5)            |     a0 = *((s5 + 14));
    0x00049070 addiu v1, zero, 0x2e      |     v1 = 0x2e;
    0x00049074 move s2, zero             |     s2 = 0;
                                         |     if (a0 != v1) {
    0x00049078 bne a0, v1, 0x490ac       |         goto label_7;
                                         |     }
    0x0004907c addiu s2, s5, 0xe         |     s2 = s5 + 0xe;
    0x00049080 addiu s4, v0, -0xe        |     s4 = v0 + -0xe;
    0x00049084 addiu s0, zero, 1         |     s0 = 1;
                                         |     do {
    0x00049088 addu v0, s5, s0           |         v0 = s5 + s0;
                                         |         if (s0 != s4) {
    0x0004908c beq s0, s4, 0x490a8       |             
    0x00049090 lw t9, -0x7ed4(gp)        |             t9 = *((gp - 8117));
    0x00049094 lb a0, 0xe(v0)            |             a0 = *((v0 + 14));
    0x00049098 addiu a1, zero, 4         |             a1 = 4;
    0x0004909c jalr t9                   |             t9 ();
    0x000490a0 lw gp, 0x30(sp)           |             gp = *(var_30h);
                                         |             if (v0 != 0) {
    0x000490a4 bnez v0, 0x49140          |                 goto label_8;
                                         |             }
                                         |         }
                                         | label_0:
    0x000490a8 lw a2, 0x48(sp)           |         a2 = *(var_48h);
                                         | label_7:
    0x000490ac lw v1, 0x4c(sp)           |         v1 = *(var_4ch);
    0x000490b0 sll v0, a2, 2             |         v0 = a2 << 2;
    0x000490b4 lw a2, -0x7fd4(gp)        |         a2 = *((gp - 8181));
    0x000490b8 lw a3, 0x44(sp)           |         a3 = *(var_44h);
    0x000490bc addiu a2, a2, 0x1130      |         a2 += aav.0x00001130;
    0x000490c0 addu a2, a2, v0           |         a2 += v0;
    0x000490c4 addiu v0, zero, 0x5a      |         v0 = 0x5a;
    0x000490c8 lw a0, 0x40(sp)           |         a0 = *(var_40h);
    0x000490cc lw a1, 0x3c(sp)           |         a1 = *(var_3ch);
    0x000490d0 lw t0, 0x38(sp)           |         t0 = *(var_38h);
    0x000490d4 addiu v1, v1, 0x76c       |         v1 += aav.0x0000076c;
                                         |         if (s3 == v0) {
    0x000490d8 beq s3, v0, 0x49150       |             goto label_9;
                                         |         }
    0x000490dc lw v0, -0x7e98(gp)        |         v0 = *((gp - 8102));
    0x000490e0 addiu v0, v0, 0x1e88      |         v0 += 0x1e88;
                                         | label_1:
    0x000490e4 sw a1, 0x14(sp)           |         *(var_14h) = a1;
    0x000490e8 lw a1, -0x7fd4(gp)        |         a1 = *((gp - 8181));
    0x000490ec lw t9, -0x7d9c(gp)        |         t9 = *((gp - 8039));
    0x000490f0 sw a0, 0x10(sp)           |         *(var_10h) = a0;
    0x000490f4 sw v0, 0x28(sp)           |         *(var_28h) = v0;
    0x000490f8 sw v1, 0x24(sp)           |         *(var_24h) = v1;
    0x000490fc sw s2, 0x20(sp)           |         *(var_20h) = s2;
    0x00049100 sw s0, 0x1c(sp)           |         *(var_1ch) = s0;
    0x00049104 sw t0, 0x18(sp)           |         *(var_18h) = t0;
    0x00049108 addiu a1, a1, 0x103c      |         a1 += aav.0x0000103c;
    0x0004910c move a0, s1               |         a0 = s1;
    0x00049110 bal 0x60608               |         sym_BIO_printf ()
    0x00049114 slt s0, zero, v0          |         s0 = (0 < v0) ? 1 : 0;
                                         | label_2:
    0x00049118 lw ra, 0x84(sp)           |         ra = *(var_84h);
                                         | label_3:
    0x0004911c move v0, s0               |         v0 = s0;
    0x00049120 lw s5, 0x80(sp)           |         s5 = *(var_80h);
    0x00049124 lw s4, 0x7c(sp)           |         s4 = *(var_7ch);
    0x00049128 lw s3, 0x78(sp)           |         s3 = *(var_78h);
    0x0004912c lw s2, 0x74(sp)           |         s2 = *(var_74h);
    0x00049130 lw s1, 0x70(sp)           |         s1 = *(var_70h);
    0x00049134 lw s0, 0x6c(sp)           |         s0 = *(var_6ch);
    0x00049138 addiu sp, sp, 0x88        |         
    0x0004913c jr ra                     |         return v0;
                                         | label_8:
    0x00049140 addiu s0, s0, 1           |         s0++;
    0x00049144 b 0x49088                 |         
                                         |     } while (1);
                                         | label_6:
    0x00049148 move s2, zero             |     s2 = 0;
    0x0004914c b 0x490a8                 |     goto label_0;
                                         | label_9:
    0x00049150 lw v0, -0x7fd4(gp)        |     v0 = *((gp - 8181));
    0x00049154 addiu v0, v0, 0x1034      |     v0 += aav.0x00001034;
    0x00049158 b 0x490e4                 |     goto label_1;
                                         | label_5:
    0x0004915c lw v1, 0x4c(sp)           |     v1 = *(var_4ch);
    0x00049160 sll v0, a2, 2             |     v0 = a2 << 2;
    0x00049164 lw a2, -0x7fd4(gp)        |     a2 = *((gp - 8181));
    0x00049168 lw a3, 0x44(sp)           |     a3 = *(var_44h);
    0x0004916c addiu a2, a2, 0x1130      |     a2 += aav.0x00001130;
    0x00049170 addu a2, a2, v0           |     a2 += v0;
    0x00049174 addiu v0, zero, 0x5a      |     v0 = 0x5a;
    0x00049178 lw a0, 0x40(sp)           |     a0 = *(var_40h);
    0x0004917c lw a1, 0x3c(sp)           |     a1 = *(var_3ch);
    0x00049180 lw t0, 0x38(sp)           |     t0 = *(var_38h);
    0x00049184 addiu v1, v1, 0x76c       |     v1 += aav.0x0000076c;
                                         |     if (s3 == v0) {
    0x00049188 beq s3, v0, 0x491c4       |         goto label_10;
                                         |     }
    0x0004918c lw v0, -0x7e98(gp)        |     v0 = *((gp - 8102));
    0x00049190 addiu v0, v0, 0x1e88      |     v0 += 0x1e88;
                                         |     do {
    0x00049194 sw a1, 0x14(sp)           |         *(var_14h) = a1;
    0x00049198 lw a1, -0x7fd4(gp)        |         a1 = *((gp - 8181));
    0x0004919c lw t9, -0x7d9c(gp)        |         t9 = *((gp - 8039));
    0x000491a0 sw a0, 0x10(sp)           |         *(var_10h) = a0;
    0x000491a4 sw v0, 0x20(sp)           |         *(var_20h) = v0;
    0x000491a8 sw v1, 0x1c(sp)           |         *(var_1ch) = v1;
    0x000491ac sw t0, 0x18(sp)           |         *(var_18h) = t0;
    0x000491b0 addiu a1, a1, 0x105c      |         a1 += aav.0x0000105c;
    0x000491b4 move a0, s1               |         a0 = s1;
    0x000491b8 bal 0x60608               |         sym_BIO_printf ()
    0x000491bc slt s0, zero, v0          |         s0 = (0 < v0) ? 1 : 0;
    0x000491c0 b 0x49118                 |         goto label_2;
                                         | label_10:
    0x000491c4 lw v0, -0x7fd4(gp)        |         v0 = *((gp - 8181));
    0x000491c8 addiu v0, v0, 0x1034      |         v0 += aav.0x00001034;
    0x000491cc b 0x49194                 |         
                                         |     } while (1);
                                         | label_4:
    0x000491d0 lw a1, -0x7fd4(gp)        |     a1 = *((gp - 8181));
    0x000491d4 lw t9, -0x7f20(gp)        |     t9 = *((gp - 8136));
    0x000491d8 addiu a2, zero, 0xe       |     a2 = 0xe;
    0x000491dc addiu a1, a1, 0x1078      |     a1 += aav.0x00001078;
    0x000491e0 move a0, s1               |     a0 = s1;
    0x000491e4 move s0, v0               |     s0 = v0;
    0x000491e8 bal 0x64154               |     sym_BIO_write ();
    0x000491ec lw ra, 0x84(sp)           |     ra = *(var_84h);
    0x000491f0 b 0x4911c                 |     goto label_3;
                                         | }
    ; assembly                           | /* r2dec pseudo code output */
                                         | /* /logs/firmware/unblob_extracted/firmware_extract/1568982-13971496.squashfs_v4_le_extract/usr/lib/libcrypto.so.1.1 @ 0x53e94 */
                                         | #include <stdint.h>
                                         |  
    ; (fcn) sym.ASN1_bn_print ()         | void ASN1_bn_print () {
    0x00053e94 lui gp, 0x17              |     
    0x00053e98 addiu gp, gp, 0x2d2c      |     
    0x00053e9c addu gp, gp, t9           |     gp += t9;
    0x00053ea0 addiu sp, sp, -0x50       |     
    0x00053ea4 sw gp, 0x20(sp)           |     *(var_20h) = gp;
    0x00053ea8 sw fp, 0x48(sp)           |     *(var_48h) = fp;
    0x00053eac sw ra, 0x4c(sp)           |     *(var_4ch) = ra;
    0x00053eb0 sw s7, 0x44(sp)           |     *(var_44h) = s7;
    0x00053eb4 sw s6, 0x40(sp)           |     *(var_40h) = s6;
    0x00053eb8 sw s5, 0x3c(sp)           |     *(var_3ch) = s5;
    0x00053ebc sw s4, 0x38(sp)           |     *(var_38h) = s4;
    0x00053ec0 sw s3, 0x34(sp)           |     *(var_34h) = s3;
    0x00053ec4 sw s2, 0x30(sp)           |     *(var_30h) = s2;
    0x00053ec8 sw s1, 0x2c(sp)           |     *(var_2ch) = s1;
    0x00053ecc sw s0, 0x28(sp)           |     *(var_28h) = s0;
    0x00053ed0 lw fp, 0x60(sp)           |     fp = *(arg_60h);
                                         |     if (a2 == 0) {
    0x00053ed4 beqz a2, 0x540fc          |         goto label_2;
                                         |     }
    0x00053ed8 lw t9, -0x7f10(gp)        |     t9 = *((gp - 8132));
    0x00053edc move s4, a0               |     s4 = a0;
    0x00053ee0 move a0, a2               |     a0 = a2;
    0x00053ee4 move s0, a2               |     s0 = a2;
    0x00053ee8 move s6, a1               |     s6 = a1;
    0x00053eec bal 0x72c84               |     sym_BN_is_negative ();
    0x00053ef0 lw gp, 0x20(sp)           |     gp = *(var_20h);
                                         |     if (v0 != 0) {
    0x00053ef4 bnez v0, 0x53f88          |         goto label_3;
                                         |     }
    0x00053ef8 lw s3, -0x7e98(gp)        |     s3 = *((gp - 8102));
    0x00053efc addiu s3, s3, 0x1e88      |     s3 += 0x1e88;
                                         |     do {
    0x00053f00 lw t9, -0x7ce4(gp)        |         t9 = *((gp - 7993));
    0x00053f04 addiu a2, zero, 0x80      |         a2 = 0x80;
    0x00053f08 move a1, fp               |         a1 = fp;
    0x00053f0c move a0, s4               |         a0 = s4;
    0x00053f10 bal 0x6454c               |         sym_BIO_indent ();
    0x00053f14 move s1, v0               |         s1 = v0;
    0x00053f18 lw gp, 0x20(sp)           |         gp = *(var_20h);
                                         |         if (v0 != 0) {
    0x00053f1c beqz v0, 0x53f54          |             
    0x00053f20 lw t9, -0x7f0c(gp)        |             t9 = *((gp - 8131));
    0x00053f24 move a0, s0               |             a0 = s0;
    0x00053f28 bal 0x729f4               |             sym_BN_is_zero ();
    0x00053f2c move s1, v0               |             s1 = v0;
    0x00053f30 lw gp, 0x20(sp)           |             gp = *(var_20h);
                                         |             if (v0 == 0) {
    0x00053f34 beqz v0, 0x53f94          |                 goto label_4;
                                         |             }
    0x00053f38 lw a1, -0x7fd4(gp)        |             a1 = *((gp - 8181));
    0x00053f3c lw t9, -0x7d9c(gp)        |             t9 = *((gp - 8039));
    0x00053f40 move a2, s6               |             a2 = s6;
    0x00053f44 addiu a1, a1, 0x2df4      |             a1 += 0x2df4;
    0x00053f48 move a0, s4               |             a0 = s4;
    0x00053f4c bal 0x60608               |             sym_BIO_printf ()
    0x00053f50 slt s1, zero, v0          |             s1 = (0 < v0) ? 1 : 0;
                                         |         }
                                         | label_0:
    0x00053f54 lw ra, 0x4c(sp)           |         ra = *(var_4ch);
                                         | label_1:
    0x00053f58 move v0, s1               |         v0 = s1;
    0x00053f5c lw fp, 0x48(sp)           |         fp = *(var_48h);
    0x00053f60 lw s7, 0x44(sp)           |         s7 = *(var_44h);
    0x00053f64 lw s6, 0x40(sp)           |         s6 = *(var_40h);
    0x00053f68 lw s5, 0x3c(sp)           |         s5 = *(var_3ch);
    0x00053f6c lw s4, 0x38(sp)           |         s4 = *(var_38h);
    0x00053f70 lw s3, 0x34(sp)           |         s3 = *(var_34h);
    0x00053f74 lw s2, 0x30(sp)           |         s2 = *(var_30h);
    0x00053f78 lw s1, 0x2c(sp)           |         s1 = *(var_2ch);
    0x00053f7c lw s0, 0x28(sp)           |         s0 = *(var_28h);
    0x00053f80 addiu sp, sp, 0x50        |         
    0x00053f84 jr ra                     |         return v0;
                                         | label_3:
    0x00053f88 lw s3, -0x7fd4(gp)        |         s3 = *((gp - 8181));
    0x00053f8c addiu s3, s3, 0x2664      |         s3 += 0x2664;
    0x00053f90 b 0x53f00                 |         
                                         |     } while (1);
                                         | label_4:
    0x00053f94 lw t9, -0x7f08(gp)        |     t9 = *((gp - 8130));
    0x00053f98 move a0, s0               |     a0 = s0;
    0x00053f9c bal 0x72a00               |     sym_BN_num_bits ();
    0x00053fa0 slti v0, v0, 0x21         |     v0 = (v0 < 0x21) ? 1 : 0;
    0x00053fa4 lw gp, 0x20(sp)           |     gp = *(var_20h);
    0x00053fa8 move a0, s0               |     a0 = s0;
                                         |     if (v0 != 0) {
    0x00053fac beqz v0, 0x54008          |         
    0x00053fb0 lw t9, -0x7b30(gp)        |         t9 = *(gp);
    0x00053fb4 bal 0x72048               |         fcn_00072048 ();
    0x00053fb8 nop                       |         
    0x00053fbc lw gp, 0x20(sp)           |         gp = *(var_20h);
    0x00053fc0 move a0, s0               |         a0 = s0;
    0x00053fc4 lw t9, -0x7b30(gp)        |         t9 = *(gp);
    0x00053fc8 lw s1, (v0)               |         s1 = *(v0);
    0x00053fcc bal 0x72048               |         fcn_00072048 ();
    0x00053fd0 lw gp, 0x20(sp)           |         gp = *(var_20h);
    0x00053fd4 lw v0, (v0)               |         v0 = *(v0);
    0x00053fd8 sw s3, 0x14(sp)           |         *(var_14h) = s3;
    0x00053fdc lw a1, -0x7fd4(gp)        |         a1 = *((gp - 8181));
    0x00053fe0 lw t9, -0x7d9c(gp)        |         t9 = *((gp - 8039));
    0x00053fe4 sw v0, 0x18(sp)           |         *(var_18h) = v0;
    0x00053fe8 sw s1, 0x10(sp)           |         *(var_10h) = s1;
    0x00053fec move a3, s3               |         a3 = s3;
    0x00053ff0 move a2, s6               |         a2 = s6;
    0x00053ff4 addiu a1, a1, 0x2dfc      |         a1 += 0x2dfc;
    0x00053ff8 move a0, s4               |         a0 = s4;
    0x00053ffc bal 0x60608               |         sym_BIO_printf ()
    0x00054000 slt s1, zero, v0          |         s1 = (0 < v0) ? 1 : 0;
    0x00054004 b 0x53f54                 |         goto label_0;
                                         |     }
    0x00054008 lw t9, -0x7f08(gp)        |     t9 = *((gp - 8130));
    0x0005400c bal 0x72a00               |     sym_BN_num_bits ();
    0x00054010 nop                       |     
    0x00054014 addiu s2, v0, 7           |     s2 = v0 + 7;
    0x00054018 lw gp, 0x20(sp)           |     gp = *(var_20h);
                                         |     if (s2 < 0) {
    0x0005401c bgez s2, 0x54024          |         
    0x00054020 addiu s2, v0, 0xe         |         s2 = v0 + 0xe;
                                         |     }
    0x00054024 lw s7, -0x7fd4(gp)        |     s7 = *((gp - 8181));
    0x00054028 sra s2, s2, 3             |     s2 >>= 3;
    0x0005402c lw t9, -0x7f9c(gp)        |     t9 = *((gp - 8167));
    0x00054030 addiu s2, s2, 1           |     s2++;
    0x00054034 addiu a2, zero, 0x49      |     a2 = 0x49;
    0x00054038 addiu a1, s7, 0x2e10      |     a1 = s7 + 0x2e10;
    0x0005403c move a0, s2               |     a0 = s2;
    0x00054040 jalr t9                   |     t9 ();
    0x00054044 move s5, v0               |     s5 = v0;
    0x00054048 lw gp, 0x20(sp)           |     gp = *(var_20h);
                                         |     if (v0 == 0) {
    0x0005404c beqz v0, 0x540d4          |         goto label_5;
                                         |     }
    0x00054050 lb v1, (s3)               |     v1 = *(s3);
    0x00054054 sb zero, (v0)             |     *(v0) = 0;
    0x00054058 addiu v0, zero, 0x2d      |     v0 = 0x2d;
    0x0005405c lw a3, -0x7fd4(gp)        |     a3 = *((gp - 8181));
                                         |     if (v1 == v0) {
    0x00054060 beq v1, v0, 0x540f4       |         goto label_6;
                                         |     }
    0x00054064 lw a3, -0x7e98(gp)        |     a3 = *((gp - 8102));
    0x00054068 addiu a3, a3, 0x1e88      |     a3 += 0x1e88;
                                         |     do {
    0x0005406c lw a1, -0x7e24(gp)        |         a1 = *((gp - 8073));
    0x00054070 lw t9, -0x7d9c(gp)        |         t9 = *((gp - 8039));
    0x00054074 move a2, s6               |         a2 = s6;
    0x00054078 addiu a1, a1, -0x7b58     |         a1 += -0x7b58;
    0x0005407c move a0, s4               |         a0 = s4;
    0x00054080 bal 0x60608               |         sym_BIO_printf ()
    0x00054084 lw gp, 0x20(sp)           |         gp = *(var_20h);
                                         |         if (v0 > 0) {
    0x00054088 blez v0, 0x540d4          |             
    0x0005408c lw t9, -0x7f04(gp)        |             t9 = *((gp - 8129));
    0x00054090 addiu s1, s5, 1           |             s1 = s5 + 1;
    0x00054094 move a1, s1               |             a1 = s1;
    0x00054098 move a0, s0               |             a0 = s0;
    0x0005409c bal 0x7372c               |             sym_BN_bn2bin ();
    0x000540a0 lb v1, 1(s5)              |             v1 = *((s5 + 1));
    0x000540a4 lw gp, 0x20(sp)           |             gp = *(var_20h);
                                         |             if (v1 < 0) {
    0x000540a8 bgez v1, 0x540b4          |                 
    0x000540ac addiu v0, v0, 1           |                 v0++;
    0x000540b0 move s1, s5               |                 s1 = s5;
                                         |             }
    0x000540b4 lw t9, -0x7b2c(gp)        |             t9 = *((gp - 7883));
    0x000540b8 move a1, s1               |             a1 = s1;
    0x000540bc addiu a3, fp, 4           |             a3 = fp + 4;
    0x000540c0 move a2, v0               |             a2 = v0;
    0x000540c4 move a0, s4               |             a0 = s4;
    0x000540c8 bal 0x53d44               |             sym_ASN1_buf_print ();
    0x000540cc lw gp, 0x20(sp)           |             gp = *(var_20h);
    0x000540d0 sltu s1, zero, v0         |             s1 = (0 < v0) ? 1 : 0;
                                         |         }
                                         | label_5:
    0x000540d4 lw t9, -0x7e64(gp)        |         t9 = *((gp - 8089));
    0x000540d8 addiu a3, zero, 0x5b      |         a3 = 0x5b;
    0x000540dc addiu a2, s7, 0x2e10      |         a2 = s7 + 0x2e10;
    0x000540e0 move a1, s2               |         a1 = s2;
    0x000540e4 move a0, s5               |         a0 = s5;
    0x000540e8 jalr t9                   |         t9 ();
    0x000540ec lw ra, 0x4c(sp)           |         ra = *(var_4ch);
    0x000540f0 b 0x53f58                 |         goto label_1;
                                         | label_6:
    0x000540f4 addiu a3, a3, 0x2de8      |         a3 += 0x2de8;
    0x000540f8 b 0x5406c                 |         
                                         |     } while (1);
                                         | label_2:
    0x000540fc addiu s1, zero, 1         |     s1 = 1;
    0x00054100 b 0x53f54                 |     goto label_0;
                                         | }
    ; assembly                           | /* r2dec pseudo code output */
                                         | /* /logs/firmware/unblob_extracted/firmware_extract/1568982-13971496.squashfs_v4_le_extract/usr/lib/libcrypto.so.1.1 @ 0x53d44 */
                                         | #include <stdint.h>
                                         |  
    ; (fcn) sym.ASN1_buf_print ()        | void ASN1_buf_print () {
    0x00053d44 lui gp, 0x17              |     
    0x00053d48 addiu gp, gp, 0x2e7c      |     
    0x00053d4c addu gp, gp, t9           |     gp += t9;
    0x00053d50 addiu sp, sp, -0x40       |     
    0x00053d54 sw s3, 0x28(sp)           |     *(var_28h) = s3;
    0x00053d58 sw s2, 0x24(sp)           |     *(var_24h) = s2;
    0x00053d5c lw s3, -0x7e1c(gp)        |     s3 = *((gp - 8071));
    0x00053d60 lw s2, -0x7e98(gp)        |     s2 = *((gp - 8102));
    0x00053d64 sw s7, 0x38(sp)           |     *(var_38h) = s7;
    0x00053d68 lw s7, -0x7e98(gp)        |     s7 = *((gp - 8102));
    0x00053d6c sw s6, 0x34(sp)           |     *(var_34h) = s6;
    0x00053d70 sw s5, 0x30(sp)           |     *(var_30h) = s5;
    0x00053d74 sw s4, 0x2c(sp)           |     *(var_2ch) = s4;
    0x00053d78 sw s1, 0x20(sp)           |     *(var_20h) = s1;
    0x00053d7c sw s0, 0x1c(sp)           |     *(var_1ch) = s0;
    0x00053d80 sw gp, 0x10(sp)           |     *(var_10h) = gp;
    0x00053d84 sw ra, 0x3c(sp)           |     *(var_3ch) = ra;
    0x00053d88 move s1, a0               |     s1 = a0;
    0x00053d8c move s5, a1               |     s5 = a1;
    0x00053d90 move s4, a2               |     s4 = a2;
    0x00053d94 move s6, a3               |     s6 = a3;
    0x00053d98 move s0, zero             |     s0 = 0;
    0x00053d9c addiu s2, s2, 0x1e88      |     s2 += 0x1e88;
    0x00053da0 addiu s3, s3, 0x15f8      |     s3 += 0x15f8;
                                         | label_3:
    0x00053da4 lw a1, -0x7e98(gp)        |     a1 = *((gp - 8102));
                                         |     if (s0 == s4) {
    0x00053da8 bne s0, s4, 0x53dc8       |         
    0x00053dac lw t9, -0x7f20(gp)        |         t9 = *((gp - 8136));
    0x00053db0 addiu a2, zero, 1         |         a2 = 1;
    0x00053db4 addiu a1, a1, 0x3620      |         a1 += 0x3620;
    0x00053db8 move a0, s1               |         a0 = s1;
    0x00053dbc bal 0x64154               |         sym_BIO_write ();
    0x00053dc0 slt v0, zero, v0          |         v0 = (0 < v0) ? 1 : 0;
    0x00053dc4 b 0x53e24                 |         goto label_1;
                                         |     }
    0x00053dc8 addiu v0, zero, 0xf       |     v0 = 0xf;
    0x00053dcc divu zero, s0, v0         |     __asm ("divu zero, s0, v0");
    0x00053dd0 teq v0, zero, 7           |     __asm ("teq v0, zero, 7");
    0x00053dd4 mfhi v0                   |     __asm ("mfhi v0");
                                         |     if (v0 == 0) {
    0x00053dd8 beqz v0, 0x53dfc          |         goto label_4;
                                         |     }
    0x00053ddc nop                       |     
                                         |     do {
    0x00053de0 addu v0, s5, s0           |         v0 = s5 + s0;
    0x00053de4 lbu a2, (v0)              |         a2 = *(v0);
    0x00053de8 addiu v0, s4, -1          |         v0 = s4 + -1;
    0x00053dec move a3, s2               |         a3 = s2;
                                         |         if (v0 != s0) {
    0x00053df0 bne v0, s0, 0x53e6c       |             goto label_5;
                                         |         }
    0x00053df4 lw a1, -0x7fd4(gp)        |         a1 = *((gp - 8181));
    0x00053df8 b 0x53e74                 |         goto label_6;
                                         | label_4:
    0x00053dfc lw t9, -0x7ce8(gp)        |         t9 = *((gp - 7994));
                                         |         if (s0 != 0) {
    0x00053e00 bnez s0, 0x53e50          |             goto label_7;
                                         |         }
                                         | label_0:
    0x00053e04 lw t9, -0x7ce4(gp)        |         t9 = *((gp - 7993));
    0x00053e08 addiu a2, zero, 0x80      |         a2 = 0x80;
    0x00053e0c move a1, s6               |         a1 = s6;
    0x00053e10 move a0, s1               |         a0 = s1;
    0x00053e14 bal 0x6454c               |         sym_BIO_indent ();
    0x00053e18 lw gp, 0x10(sp)           |         gp = *(var_10h);
    0x00053e1c bnez v0, 0x53de0          |         
                                         |     } while (v0 != 0);
                                         | label_2:
    0x00053e20 move v0, zero             |     v0 = 0;
                                         | label_1:
    0x00053e24 lw ra, 0x3c(sp)           |     ra = *(var_3ch);
    0x00053e28 lw s7, 0x38(sp)           |     s7 = *(var_38h);
    0x00053e2c lw s6, 0x34(sp)           |     s6 = *(var_34h);
    0x00053e30 lw s5, 0x30(sp)           |     s5 = *(var_30h);
    0x00053e34 lw s4, 0x2c(sp)           |     s4 = *(var_2ch);
    0x00053e38 lw s3, 0x28(sp)           |     s3 = *(var_28h);
    0x00053e3c lw s2, 0x24(sp)           |     s2 = *(var_24h);
    0x00053e40 lw s1, 0x20(sp)           |     s1 = *(var_20h);
    0x00053e44 lw s0, 0x1c(sp)           |     s0 = *(var_1ch);
    0x00053e48 addiu sp, sp, 0x40        |     
    0x00053e4c jr ra                     |     return v0;
                                         | label_7:
    0x00053e50 addiu a1, s7, 0x3620      |     a1 = s7 + 0x3620;
    0x00053e54 move a0, s1               |     a0 = s1;
    0x00053e58 bal 0x641d8               |     sym_BIO_puts ();
    0x00053e5c lw gp, 0x10(sp)           |     gp = *(var_10h);
                                         |     if (v0 > 0) {
    0x00053e60 bgtz v0, 0x53e04          |         goto label_0;
                                         |     }
    0x00053e64 move v0, zero             |     v0 = 0;
    0x00053e68 b 0x53e24                 |     goto label_1;
                                         | label_5:
    0x00053e6c move a3, s3               |     a3 = s3;
    0x00053e70 lw a1, -0x7fd4(gp)        |     a1 = *((gp - 8181));
                                         | label_6:
    0x00053e74 lw t9, -0x7d9c(gp)        |     t9 = *((gp - 8039));
    0x00053e78 addiu a1, a1, 0x2de0      |     a1 += 0x2de0;
    0x00053e7c move a0, s1               |     a0 = s1;
    0x00053e80 bal 0x60608               |     sym_BIO_printf ()
    0x00053e84 lw gp, 0x10(sp)           |     gp = *(var_10h);
                                         |     if (v0 <= 0) {
    0x00053e88 blez v0, 0x53e20          |         goto label_2;
                                         |     }
    0x00053e8c addiu s0, s0, 1           |     s0++;
    0x00053e90 b 0x53da4                 |     goto label_3;
                                         | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/1568982-13971496.squashfs_v4_le_extract/usr/lib/libcrypto.so.1.1 @ 0x5ea10 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) sym.BIO_hex_string ()            | void BIO_hex_string () {
    0x0005ea10 lui gp, 0x17                  |     
    0x0005ea14 addiu gp, gp, -0x7e50         |     
    0x0005ea18 addu gp, gp, t9               |     gp += t9;
    0x0005ea1c addiu sp, sp, -0x40           |     
    0x0005ea20 lw v0, 0x50(sp)               |     v0 = *(arg_50h);
    0x0005ea24 sw gp, 0x10(sp)               |     *(var_10h) = gp;
    0x0005ea28 sw ra, 0x3c(sp)               |     *(var_3ch) = ra;
    0x0005ea2c sw fp, 0x38(sp)               |     *(var_38h) = fp;
    0x0005ea30 sw s7, 0x34(sp)               |     *(var_34h) = s7;
    0x0005ea34 sw s6, 0x30(sp)               |     *(var_30h) = s6;
    0x0005ea38 sw s5, 0x2c(sp)               |     *(var_2ch) = s5;
    0x0005ea3c sw s4, 0x28(sp)               |     *(var_28h) = s4;
    0x0005ea40 sw s3, 0x24(sp)               |     *(var_24h) = s3;
    0x0005ea44 sw s2, 0x20(sp)               |     *(var_20h) = s2;
    0x0005ea48 sw s1, 0x1c(sp)               |     *(var_1ch) = s1;
    0x0005ea4c sw s0, 0x18(sp)               |     *(var_18h) = s0;
    0x0005ea50 lw s6, -0x7e98(gp)            |     s6 = *((gp - 8102));
                                             |     if (v0 <= 0) {
    0x0005ea54 blez v0, 0x5eae4              |         goto label_0;
                                             |     }
    0x0005ea58 lw s7, -0x7de8(gp)            |     s7 = *((gp - 8058));
    0x0005ea5c lw fp, -0x7fd4(gp)            |     fp = *((gp - 8181));
    0x0005ea60 move s1, a3                   |     s1 = a3;
    0x0005ea64 move s5, a2                   |     s5 = a2;
    0x0005ea68 move s4, a1                   |     s4 = a1;
    0x0005ea6c move s0, a0                   |     s0 = a0;
    0x0005ea70 move s2, zero                 |     s2 = 0;
    0x0005ea74 move s3, zero                 |     s3 = 0;
    0x0005ea78 addiu s6, s6, 0x1e88          |     s6 += 0x1e88;
    0x0005ea7c addiu s7, s7, -0x221c         |     s7 += -aav.0x0000221c;
                                             |     do {
    0x0005ea80 lw v0, 0x50(sp)               |         v0 = *(arg_50h);
    0x0005ea84 addiu v0, v0, -1              |         v0 += -1;
    0x0005ea88 slt v1, s3, v0                |         v1 = (s3 < v0) ? 1 : 0;
    0x0005ea8c lw t9, -0x7d9c(gp)            |         t9 = *((gp - 8039));
                                             |         if (v1 == 0) {
    0x0005ea90 bnez v1, 0x5eb18              |             
    0x0005ea94 lw v0, 0x50(sp)               |             v0 = *(arg_50h);
                                             |             if (v0 != 0) {
    0x0005ea98 beqz v0, 0x5eac8              |                 
    0x0005ea9c lw a1, -0x7de8(gp)            |                 a1 = *((gp - 8058));
                                             |                 if (s2 != 0) {
    0x0005eaa0 bnez s2, 0x5eacc              |                     goto label_1;
                                             |                 }
    0x0005eaa4 lw a3, -0x7e98(gp)            |                 a3 = *((gp - 8102));
    0x0005eaa8 lw a1, -0x7de8(gp)            |                 a1 = *((gp - 8058));
    0x0005eaac addiu a3, a3, 0x1e88          |                 a3 += 0x1e88;
    0x0005eab0 move a2, s4                   |                 a2 = s4;
    0x0005eab4 addiu a1, a1, -0x221c         |                 a1 += -aav.0x0000221c;
    0x0005eab8 move a0, s0                   |                 a0 = s0;
    0x0005eabc bal 0x60608                   |                 sym_BIO_printf ()
    0x0005eac0 lw gp, 0x10(sp)               |                 gp = *(var_10h);
    0x0005eac4 lw v0, 0x50(sp)               |                 v0 = *(arg_50h);
                                             |             }
    0x0005eac8 lw a1, -0x7de8(gp)            |             a1 = *((gp - 8058));
                                             | label_1:
    0x0005eacc addu s1, s1, v0               |             s1 += v0;
    0x0005ead0 lw t9, -0x7d9c(gp)            |             t9 = *((gp - 8039));
    0x0005ead4 lbu a2, -1(s1)                |             a2 = *((s1 - 1));
    0x0005ead8 addiu a1, a1, -0x2198         |             a1 += -0x2198;
    0x0005eadc move a0, s0                   |             a0 = s0;
    0x0005eae0 bal 0x60608                   |             sym_BIO_printf ()
                                             | label_0:
    0x0005eae4 lw ra, 0x3c(sp)               |             ra = *(var_3ch);
    0x0005eae8 lw fp, 0x38(sp)               |             fp = *(var_38h);
    0x0005eaec lw s7, 0x34(sp)               |             s7 = *(var_34h);
    0x0005eaf0 lw s6, 0x30(sp)               |             s6 = *(var_30h);
    0x0005eaf4 lw s5, 0x2c(sp)               |             s5 = *(var_2ch);
    0x0005eaf8 lw s4, 0x28(sp)               |             s4 = *(var_28h);
    0x0005eafc lw s3, 0x24(sp)               |             s3 = *(var_24h);
    0x0005eb00 lw s2, 0x20(sp)               |             s2 = *(var_20h);
    0x0005eb04 lw s1, 0x1c(sp)               |             s1 = *(var_1ch);
    0x0005eb08 lw s0, 0x18(sp)               |             s0 = *(var_18h);
    0x0005eb0c addiu v0, zero, 1             |             v0 = 1;
    0x0005eb10 addiu sp, sp, 0x40            |             
    0x0005eb14 jr ra                         |             return v0;
                                             |         }
    0x0005eb18 addu v0, s1, s3               |         v0 = s1 + s3;
                                             |         if (s3 != 0) {
    0x0005eb1c beqz s3, 0x5eb40              |             
    0x0005eb20 move a3, s6                   |             a3 = s6;
                                             |             if (s2 != 0) {
    0x0005eb24 bnez s2, 0x5eb40              |                 goto label_2;
                                             |             }
    0x0005eb28 move a2, s4                   |             a2 = s4;
    0x0005eb2c move a1, s7                   |             a1 = s7;
    0x0005eb30 move a0, s0                   |             a0 = s0;
    0x0005eb34 bal 0x60608                   |             sym_BIO_printf ()
    0x0005eb38 lw gp, 0x10(sp)               |             gp = *(var_10h);
    0x0005eb3c addu v0, s1, s3               |             v0 = s1 + s3;
                                             |         }
                                             | label_2:
    0x0005eb40 lw t9, -0x7d9c(gp)            |         t9 = *((gp - 8039));
    0x0005eb44 lbu a2, (v0)                  |         a2 = *(v0);
    0x0005eb48 addiu s2, s2, 1               |         s2++;
    0x0005eb4c addiu a1, fp, 0x4738          |         a1 = fp + 0x4738;
    0x0005eb50 move a0, s0                   |         a0 = s0;
    0x0005eb54 bal 0x60608                   |         sym_BIO_printf ()
    0x0005eb58 div zero, s2, s5              |         __asm ("div zero, s2, s5");
    0x0005eb5c teq s5, zero, 7               |         __asm ("teq s5, zero, 7");
    0x0005eb60 mfhi s2                       |         __asm ("mfhi s2");
    0x0005eb64 lw gp, 0x10(sp)               |         gp = *(var_10h);
                                             |         if (s2 == 0) {
    0x0005eb68 bnez s2, 0x5eb84              |             
    0x0005eb6c lw a1, -0x7e98(gp)            |             a1 = *((gp - 8102));
    0x0005eb70 lw t9, -0x7d9c(gp)            |             t9 = *((gp - 8039));
    0x0005eb74 addiu a1, a1, 0x3620          |             a1 += 0x3620;
    0x0005eb78 move a0, s0                   |             a0 = s0;
    0x0005eb7c bal 0x60608                   |             sym_BIO_printf ()
    0x0005eb80 lw gp, 0x10(sp)               |             gp = *(var_10h);
                                             |         }
    0x0005eb84 addiu s3, s3, 1               |         s3++;
    0x0005eb88 b 0x5ea80                     |         
                                             |     } while (1);
                                             | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/1568982-13971496.squashfs_v4_le_extract/usr/lib/libcrypto.so.1.1 @ 0x54104 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) sym.NETSCAPE_SPKI_print ()       | void NETSCAPE_SPKI_print () {
    0x00054104 lui gp, 0x17                  |     
    0x00054108 addiu gp, gp, 0x2abc          |     
    0x0005410c addu gp, gp, t9               |     gp += t9;
    0x00054110 addiu sp, sp, -0x48           |     
    0x00054114 lw t9, -0x7d9c(gp)            |     t9 = *((gp - 8039));
    0x00054118 sw s1, 0x2c(sp)               |     *(var_2ch) = s1;
    0x0005411c move s1, a1                   |     s1 = a1;
    0x00054120 lw a1, -0x7fd4(gp)            |     a1 = *((gp - 8181));
    0x00054124 sw ra, 0x44(sp)               |     *(var_44h) = ra;
    0x00054128 sw gp, 0x18(sp)               |     *(var_18h) = gp;
    0x0005412c sw s0, 0x28(sp)               |     *(var_28h) = s0;
    0x00054130 addiu a1, a1, 0x2e30          |     a1 += 0x2e30;
    0x00054134 sw s6, 0x40(sp)               |     *(var_40h) = s6;
    0x00054138 sw s5, 0x3c(sp)               |     *(var_3ch) = s5;
    0x0005413c sw s4, 0x38(sp)               |     *(var_38h) = s4;
    0x00054140 sw s3, 0x34(sp)               |     *(var_34h) = s3;
    0x00054144 sw s2, 0x30(sp)               |     *(var_30h) = s2;
    0x00054148 move s0, a0                   |     s0 = a0;
    0x0005414c bal 0x60608                   |     sym_BIO_printf ()
    0x00054150 lw v0, (s1)                   |     v0 = *(s1);
    0x00054154 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x00054158 move a3, zero                 |     a3 = 0;
    0x0005415c lw v0, (v0)                   |     v0 = *(v0);
    0x00054160 lw t9, -0x7b28(gp)            |     t9 = *((gp - 7882));
    0x00054164 move a2, zero                 |     a2 = 0;
    0x00054168 move a1, zero                 |     a1 = 0;
    0x0005416c addiu a0, sp, 0x20            |     a0 = sp + 0x20;
    0x00054170 sw v0, 0x10(sp)               |     *(var_10h) = v0;
    0x00054174 jalr t9                       |     t9 ();
    0x00054178 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0005417c lw t9, -0x7e88(gp)            |     t9 = *((gp - 8098));
    0x00054180 lw a0, 0x20(sp)               |     a0 = *(var_20h);
    0x00054184 jalr t9                       |     t9 ();
    0x00054188 lw gp, 0x18(sp)               |     gp = *(var_18h);
                                             |     if (v0 == 0) {
    0x0005418c beqz v0, 0x542d4              |         goto label_3;
                                             |     }
    0x00054190 lw t9, -0x7dfc(gp)            |     t9 = *((gp - 8063));
    0x00054194 move a0, v0                   |     a0 = v0;
    0x00054198 jalr t9                       |     t9 ();
    0x0005419c lw gp, 0x18(sp)               |     gp = *(var_18h);
                                             |     do {
    0x000541a0 lw a1, -0x7fd4(gp)            |         a1 = *((gp - 8181));
    0x000541a4 lw t9, -0x7d9c(gp)            |         t9 = *((gp - 8039));
    0x000541a8 move a2, v0                   |         a2 = v0;
    0x000541ac addiu a1, a1, 0x2e40          |         a1 += 0x2e40;
    0x000541b0 move a0, s0                   |         a0 = s0;
    0x000541b4 bal 0x60608                   |         sym_BIO_printf ()
    0x000541b8 lw gp, 0x18(sp)               |         gp = *(var_18h);
    0x000541bc lw v0, (s1)                   |         v0 = *(s1);
    0x000541c0 lw t9, -0x7b24(gp)            |         t9 = *((gp - 7881));
    0x000541c4 lw a0, (v0)                   |         a0 = *(v0);
    0x000541c8 jalr t9                       |         t9 ();
    0x000541cc move s2, v0                   |         s2 = v0;
    0x000541d0 lw gp, 0x18(sp)               |         gp = *(var_18h);
                                             |         if (v0 != 0) {
    0x000541d4 bnez v0, 0x542e0              |             goto label_4;
                                             |         }
    0x000541d8 lw a1, -0x7fd4(gp)            |         a1 = *((gp - 8181));
    0x000541dc lw t9, -0x7d9c(gp)            |         t9 = *((gp - 8039));
    0x000541e0 addiu a1, a1, 0x2e5c          |         a1 += 0x2e5c;
    0x000541e4 move a0, s0                   |         a0 = s0;
    0x000541e8 bal 0x60608                   |         sym_BIO_printf ()
    0x000541ec lw gp, 0x18(sp)               |         gp = *(var_18h);
                                             | label_0:
    0x000541f0 lw v0, (s1)                   |         v0 = *(s1);
    0x000541f4 lw v0, 4(v0)                  |         v0 = *((v0 + 1));
    0x000541f8 lw v1, (v0)                   |         v1 = *(v0);
    0x000541fc lw t9, -0x7e88(gp)            |         t9 = *((gp - 8098));
                                             |         if (v1 != 0) {
    0x00054200 beqz v1, 0x54224              |             
    0x00054204 lw a1, -0x7fd4(gp)            |             a1 = *((gp - 8181));
    0x00054208 lw t9, -0x7d9c(gp)            |             t9 = *((gp - 8039));
    0x0005420c lw a2, 8(v0)                  |             a2 = *((v0 + 2));
    0x00054210 addiu a1, a1, 0x2e7c          |             a1 += aav.0x00002e7c;
    0x00054214 move a0, s0                   |             a0 = s0;
    0x00054218 bal 0x60608                   |             sym_BIO_printf ()
    0x0005421c lw gp, 0x18(sp)               |             gp = *(var_18h);
    0x00054220 lw t9, -0x7e88(gp)            |             t9 = *((gp - 8098));
                                             |         }
    0x00054224 lw a0, 4(s1)                  |         a0 = *((s1 + 1));
    0x00054228 jalr t9                       |         t9 ();
    0x0005422c lw gp, 0x18(sp)               |         gp = *(var_18h);
                                             |         if (v0 == 0) {
    0x00054230 beqz v0, 0x54310              |             goto label_5;
                                             |         }
    0x00054234 lw t9, -0x7dfc(gp)            |         t9 = *((gp - 8063));
    0x00054238 move a0, v0                   |         a0 = v0;
    0x0005423c jalr t9                       |         t9 ();
    0x00054240 lw gp, 0x18(sp)               |         gp = *(var_18h);
                                             | label_1:
    0x00054244 lw a1, -0x7fd4(gp)            |         a1 = *((gp - 8181));
    0x00054248 lw t9, -0x7d9c(gp)            |         t9 = *((gp - 8039));
    0x0005424c move a2, v0                   |         a2 = v0;
    0x00054250 addiu a1, a1, 0x2e94          |         a1 += 0x2e94;
    0x00054254 move a0, s0                   |         a0 = s0;
    0x00054258 bal 0x60608                   |         sym_BIO_printf ()
    0x0005425c lw gp, 0x18(sp)               |         gp = *(var_18h);
    0x00054260 lw v0, 0xc(s1)                |         v0 = *((s1 + 3));
    0x00054264 move s1, zero                 |         s1 = 0;
    0x00054268 lw s2, -0x7e98(gp)            |         s2 = *((gp - 8102));
    0x0005426c lw s3, -0x7e1c(gp)            |         s3 = *((gp - 8071));
    0x00054270 lw s4, (v0)                   |         s4 = *(v0);
    0x00054274 lw s5, 8(v0)                  |         s5 = *((v0 + 2));
    0x00054278 lw s6, -0x7fd4(gp)            |         s6 = *((gp - 8181));
    0x0005427c addiu s2, s2, 0x1e88          |         s2 += 0x1e88;
    0x00054280 addiu s3, s3, 0x15f8          |         s3 += 0x15f8;
                                             | label_2:
    0x00054284 slt v0, s1, s4                |         v0 = (s1 < s4) ? 1 : 0;
    0x00054288 addiu v0, zero, 0x12          |         v0 = 0x12;
                                             |         if (v0 != 0) {
    0x0005428c bnez v0, 0x5431c              |             goto label_6;
                                             |         }
    0x00054290 lw a1, -0x7e98(gp)            |         a1 = *((gp - 8102));
    0x00054294 lw t9, -0x7f20(gp)            |         t9 = *((gp - 8136));
    0x00054298 move a0, s0                   |         a0 = s0;
    0x0005429c addiu a2, zero, 1             |         a2 = 1;
    0x000542a0 addiu a1, a1, 0x3620          |         a1 += 0x3620;
    0x000542a4 bal 0x64154                   |         sym_BIO_write ();
    0x000542a8 lw ra, 0x44(sp)               |         ra = *(var_44h);
    0x000542ac lw s6, 0x40(sp)               |         s6 = *(var_40h);
    0x000542b0 lw s5, 0x3c(sp)               |         s5 = *(var_3ch);
    0x000542b4 lw s4, 0x38(sp)               |         s4 = *(var_38h);
    0x000542b8 lw s3, 0x34(sp)               |         s3 = *(var_34h);
    0x000542bc lw s2, 0x30(sp)               |         s2 = *(var_30h);
    0x000542c0 lw s1, 0x2c(sp)               |         s1 = *(var_2ch);
    0x000542c4 lw s0, 0x28(sp)               |         s0 = *(var_28h);
    0x000542c8 addiu v0, zero, 1             |         v0 = 1;
    0x000542cc addiu sp, sp, 0x48            |         
    0x000542d0 jr ra                         |         return v0;
                                             | label_3:
    0x000542d4 lw v0, -0x7fd4(gp)            |         v0 = *((gp - 8181));
    0x000542d8 addiu v0, v0, 0x2e28          |         v0 += 0x2e28;
    0x000542dc b 0x541a0                     |         
                                             |     } while (1);
                                             | label_4:
    0x000542e0 lw t9, -0x7b20(gp)            |     t9 = *((gp - 7880));
    0x000542e4 move a3, zero                 |     a3 = 0;
    0x000542e8 addiu a2, zero, 4             |     a2 = 4;
    0x000542ec move a1, v0                   |     a1 = v0;
    0x000542f0 move a0, s0                   |     a0 = s0;
    0x000542f4 jalr t9                       |     t9 ();
    0x000542f8 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x000542fc lw t9, -0x7c30(gp)            |     t9 = *((gp - 7948));
    0x00054300 move a0, s2                   |     a0 = s2;
    0x00054304 jalr t9                       |     t9 ();
    0x00054308 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0005430c b 0x541f0                     |     goto label_0;
                                             | label_5:
    0x00054310 lw v0, -0x7fd4(gp)            |     v0 = *((gp - 8181));
    0x00054314 addiu v0, v0, 0x2e28          |     v0 += 0x2e28;
    0x00054318 b 0x54244                     |     goto label_1;
                                             | label_6:
    0x0005431c div zero, s1, v0              |     __asm ("div zero, s1, v0");
    0x00054320 teq v0, zero, 7               |     __asm ("teq v0, zero, 7");
    0x00054324 mfhi v0                       |     __asm ("mfhi v0");
    0x00054328 addu v0, s5, s1               |     v0 = s5 + s1;
                                             |     if (v0 == 0) {
    0x0005432c bnez v0, 0x5434c              |         
    0x00054330 lw t9, -0x7f20(gp)            |         t9 = *((gp - 8136));
    0x00054334 addiu a2, zero, 7             |         a2 = 7;
    0x00054338 addiu a1, s6, 0x2eb0          |         a1 = s6 + 0x2eb0;
    0x0005433c move a0, s0                   |         a0 = s0;
    0x00054340 bal 0x64154                   |         sym_BIO_write ();
    0x00054344 lw gp, 0x18(sp)               |         gp = *(var_18h);
    0x00054348 addu v0, s5, s1               |         v0 = s5 + s1;
                                             |     }
    0x0005434c addiu s1, s1, 1               |     s1++;
    0x00054350 lbu a2, (v0)                  |     a2 = *(v0);
                                             |     if (s1 == s4) {
    0x00054354 beq s1, s4, 0x54378           |         goto label_7;
                                             |     }
    0x00054358 move a3, s3                   |     a3 = s3;
                                             |     do {
    0x0005435c lw a1, -0x7fd4(gp)            |         a1 = *((gp - 8181));
    0x00054360 lw t9, -0x7d9c(gp)            |         t9 = *((gp - 8039));
    0x00054364 addiu a1, a1, 0x2de0          |         a1 += 0x2de0;
    0x00054368 move a0, s0                   |         a0 = s0;
    0x0005436c bal 0x60608                   |         sym_BIO_printf ()
    0x00054370 lw gp, 0x18(sp)               |         gp = *(var_18h);
    0x00054374 b 0x54284                     |         goto label_2;
                                             | label_7:
    0x00054378 move a3, s2                   |         a3 = s2;
    0x0005437c b 0x5435c                     |         
                                             |     } while (1);
                                             | }
    ; assembly                                       | /* r2dec pseudo code output */
                                                     | /* /logs/firmware/unblob_extracted/firmware_extract/1568982-13971496.squashfs_v4_le_extract/usr/lib/libcrypto.so.1.1 @ 0x4ed70 */
                                                     | #include <stdint.h>
                                                     |  
    ; (fcn) sym.PEM_write_bio_ASN1_stream ()         | void PEM_write_bio_ASN1_stream () {
    0x0004ed70 lui gp, 0x17                          |     
    0x0004ed74 addiu gp, gp, 0x7e50                  |     
    0x0004ed78 addu gp, gp, t9                       |     gp += t9;
    0x0004ed7c addiu sp, sp, -0x38                   |     
    0x0004ed80 lw t9, -0x7d9c(gp)                    |     t9 = *((gp - 8039));
    0x0004ed84 sw s1, 0x28(sp)                       |     *(var_28h) = s1;
    0x0004ed88 move s1, a1                           |     s1 = a1;
    0x0004ed8c lw a1, -0x7fd4(gp)                    |     a1 = *((gp - 8181));
    0x0004ed90 sw s2, 0x2c(sp)                       |     *(var_2ch) = s2;
    0x0004ed94 move s2, a2                           |     s2 = a2;
    0x0004ed98 lw a2, 0x48(sp)                       |     a2 = *(arg_48h);
    0x0004ed9c sw ra, 0x34(sp)                       |     *(var_34h) = ra;
    0x0004eda0 sw s3, 0x30(sp)                       |     *(var_30h) = s3;
    0x0004eda4 sw s0, 0x24(sp)                       |     *(var_24h) = s0;
    0x0004eda8 sw gp, 0x18(sp)                       |     *(var_18h) = gp;
    0x0004edac addiu a1, a1, 0x2858                  |     a1 += 0x2858;
    0x0004edb0 move s0, a0                           |     s0 = a0;
    0x0004edb4 move s3, a3                           |     s3 = a3;
    0x0004edb8 bal 0x60608                           |     sym_BIO_printf ()
    0x0004edbc lw gp, 0x18(sp)                       |     gp = *(var_18h);
    0x0004edc0 lw v0, 0x4c(sp)                       |     v0 = *(arg_4ch);
    0x0004edc4 move a3, s3                           |     a3 = s3;
    0x0004edc8 lw t9, -0x7d58(gp)                    |     t9 = *((gp - 8022));
    0x0004edcc move a2, s2                           |     a2 = s2;
    0x0004edd0 move a1, s1                           |     a1 = s1;
    0x0004edd4 move a0, s0                           |     a0 = s0;
    0x0004edd8 addiu t9, t9, -0x13bc                 |     t9 += -0x13bc;
    0x0004eddc sw v0, 0x10(sp)                       |     *(var_10h) = v0;
    0x0004ede0 bal 0x4ec44                           |     fcn_0004ec44 ();
    0x0004ede4 lw gp, 0x18(sp)                       |     gp = *(var_18h);
    0x0004ede8 lw a2, 0x48(sp)                       |     a2 = *(arg_48h);
    0x0004edec move a0, s0                           |     a0 = s0;
    0x0004edf0 lw a1, -0x7fd4(gp)                    |     a1 = *((gp - 8181));
    0x0004edf4 lw t9, -0x7d9c(gp)                    |     t9 = *((gp - 8039));
    0x0004edf8 addiu a1, a1, 0x286c                  |     a1 += 0x286c;
    0x0004edfc move s1, v0                           |     s1 = v0;
    0x0004ee00 bal 0x60608                           |     sym_BIO_printf ()
    0x0004ee04 lw ra, 0x34(sp)                       |     ra = *(var_34h);
    0x0004ee08 move v0, s1                           |     v0 = s1;
    0x0004ee0c lw s3, 0x30(sp)                       |     s3 = *(var_30h);
    0x0004ee10 lw s2, 0x2c(sp)                       |     s2 = *(var_2ch);
    0x0004ee14 lw s1, 0x28(sp)                       |     s1 = *(var_28h);
    0x0004ee18 lw s0, 0x24(sp)                       |     s0 = *(var_24h);
    0x0004ee1c addiu sp, sp, 0x38                    |     
    0x0004ee20 jr ra                                 |     return v0;
                                                     | }
    ; assembly                           | /* r2dec pseudo code output */
                                         | /* /logs/firmware/unblob_extracted/firmware_extract/1568982-13971496.squashfs_v4_le_extract/usr/lib/libcrypto.so.1.1 @ 0x4e8e0 */
                                         | #include <stdint.h>
                                         |  
    ; (fcn) sym.SMIME_crlf_copy ()       | void SMIME_crlf_copy () {
    0x0004e8e0 lui gp, 0x18              |     
    0x0004e8e4 addiu gp, gp, -0x7d20     |     
    0x0004e8e8 addu gp, gp, t9           |     gp += t9;
    0x0004e8ec addiu sp, sp, -0x450      |     
    0x0004e8f0 lw t9, -0x7ca4(gp)        |     t9 = *((gp - 7977));
    0x0004e8f4 sw gp, 0x10(sp)           |     *(var_10h) = gp;
    0x0004e8f8 sw ra, 0x44c(sp)          |     *(var_44ch) = ra;
    0x0004e8fc sw s7, 0x444(sp)          |     *(var_444h) = s7;
    0x0004e900 sw s4, 0x438(sp)          |     *(var_438h) = s4;
    0x0004e904 sw s0, 0x428(sp)          |     *(var_428h) = s0;
    0x0004e908 sw fp, 0x448(sp)          |     *(var_448h) = fp;
    0x0004e90c sw s6, 0x440(sp)          |     *(var_440h) = s6;
    0x0004e910 sw s5, 0x43c(sp)          |     *(var_43ch) = s5;
    0x0004e914 sw s3, 0x434(sp)          |     *(var_434h) = s3;
    0x0004e918 sw s2, 0x430(sp)          |     *(var_430h) = s2;
    0x0004e91c sw s1, 0x42c(sp)          |     *(var_42ch) = s1;
    0x0004e920 move s7, a0               |     s7 = a0;
    0x0004e924 move s0, a1               |     s0 = a1;
    0x0004e928 move s4, a2               |     s4 = a2;
    0x0004e92c bal 0x62604               |     sym_BIO_f_buffer ();
    0x0004e930 lw gp, 0x10(sp)           |     gp = *(var_10h);
    0x0004e934 lw t9, -0x7f64(gp)        |     t9 = *((gp - 8153));
    0x0004e938 move a0, v0               |     a0 = v0;
    0x0004e93c bal 0x63d00               |     sym_BIO_new ();
    0x0004e940 lw gp, 0x10(sp)           |     gp = *(var_10h);
                                         |     if (v0 == 0) {
    0x0004e944 beqz v0, 0x4eb20          |         goto label_4;
                                         |     }
    0x0004e948 lw t9, -0x7cb4(gp)        |     t9 = *((gp - 7981));
    0x0004e94c move a1, s0               |     a1 = s0;
    0x0004e950 move a0, v0               |     a0 = v0;
    0x0004e954 move s5, v0               |     s5 = v0;
    0x0004e958 bal 0x64934               |     sym_BIO_push ();
    0x0004e95c move s0, v0               |     s0 = v0;
    0x0004e960 andi v0, s4, 0x80         |     v0 = s4 & 0x80;
    0x0004e964 lw gp, 0x10(sp)           |     gp = *(var_10h);
    0x0004e968 addiu s1, sp, 0x18        |     s1 = sp + 0x18;
                                         |     if (v0 != 0) {
    0x0004e96c bnez v0, 0x4ea28          |         goto label_5;
                                         |     }
    0x0004e970 andi v0, s4, 1            |     v0 = s4 & 1;
    0x0004e974 addiu v0, sp, 0x418       |     v0 = sp + aav.0x00000418;
                                         |     if (v0 != 0) {
    0x0004e978 beqz v0, 0x4e998          |         
    0x0004e97c lw a1, -0x7fd4(gp)        |         a1 = *((gp - 8181));
    0x0004e980 lw t9, -0x7d9c(gp)        |         t9 = *((gp - 8039));
    0x0004e984 addiu a1, a1, 0x2838      |         a1 += 0x2838;
    0x0004e988 move a0, s0               |         a0 = s0;
    0x0004e98c bal 0x60608               |         sym_BIO_printf ()
    0x0004e990 lw gp, 0x10(sp)           |         gp = *(var_10h);
    0x0004e994 addiu v0, sp, 0x418       |         v0 = sp + aav.0x00000418;
                                         |     }
    0x0004e998 sw v0, 0x420(sp)          |     *(var_420h) = v0;
    0x0004e99c lw v0, -0x7d58(gp)        |     v0 = *((gp - 8022));
    0x0004e9a0 lw s2, -0x7fd4(gp)        |     s2 = *((gp - 8181));
    0x0004e9a4 addiu v0, v0, -0x29c8     |     v0 += -0x29c8;
    0x0004e9a8 move s3, zero             |     s3 = 0;
    0x0004e9ac sw v0, 0x424(sp)          |     *(var_424h) = v0;
    0x0004e9b0 addiu s2, s2, 0x2774      |     s2 += 0x2774;
                                         | label_1:
    0x0004e9b4 lw t9, -0x7cc4(gp)        |     t9 = *((gp - 7985));
                                         | label_0:
    0x0004e9b8 addiu a2, zero, 0x400     |     a2 = aav.0x00000400;
    0x0004e9bc move a1, s1               |     a1 = s1;
    0x0004e9c0 move a0, s7               |     a0 = s7;
    0x0004e9c4 bal 0x64398               |     sym_BIO_gets ();
    0x0004e9c8 sw v0, 0x418(sp)          |     *(var_418h) = v0;
    0x0004e9cc lw gp, 0x10(sp)           |     gp = *(var_10h);
                                         |     if (v0 <= 0) {
    0x0004e9d0 blez v0, 0x4ea48          |         goto label_6;
                                         |     }
    0x0004e9d4 lw a1, 0x420(sp)          |     a1 = *(var_420h);
    0x0004e9d8 lw t9, 0x424(sp)          |     t9 = *(var_424h);
    0x0004e9dc move a2, s4               |     a2 = s4;
    0x0004e9e0 move a0, s1               |     a0 = s1;
    0x0004e9e4 jalr t9                   |     t9 ();
    0x0004e9e8 lw v1, 0x418(sp)          |     v1 = *(var_418h);
    0x0004e9ec seb fp, v0                |     __asm ("seb fp, v0");
    0x0004e9f0 lui v0, 8                 |     v0 = 0x80000;
    0x0004e9f4 lw gp, 0x10(sp)           |     gp = *(var_10h);
    0x0004e9f8 and v0, s4, v0            |     v0 = s4 & v0;
                                         |     if (v1 == 0) {
    0x0004e9fc beqz v1, 0x4eb10          |         goto label_7;
                                         |     }
    0x0004ea00 lw t9, -0x7f20(gp)        |     t9 = *((gp - 8136));
                                         |     if (v0 == 0) {
    0x0004ea04 beqz v0, 0x4ead8          |         goto label_8;
                                         |     }
    0x0004ea08 move s6, zero             |     s6 = 0;
    0x0004ea0c b 0x4eacc                 |     goto label_9;
                                         |     do {
    0x0004ea10 lw t9, -0x7f20(gp)        |         t9 = *((gp - 8136));
    0x0004ea14 move a2, v0               |         a2 = v0;
    0x0004ea18 move a1, s1               |         a1 = s1;
    0x0004ea1c move a0, s0               |         a0 = s0;
    0x0004ea20 bal 0x64154               |         sym_BIO_write ();
    0x0004ea24 lw gp, 0x10(sp)           |         gp = *(var_10h);
                                         | label_5:
    0x0004ea28 lw t9, -0x7f7c(gp)        |         t9 = *((gp - 8159));
    0x0004ea2c addiu a2, zero, 0x400     |         a2 = aav.0x00000400;
    0x0004ea30 move a1, s1               |         a1 = s1;
    0x0004ea34 move a0, s7               |         a0 = s7;
    0x0004ea38 bal 0x640d0               |         sym_BIO_read ();
    0x0004ea3c sw v0, 0x418(sp)          |         *(var_418h) = v0;
    0x0004ea40 lw gp, 0x10(sp)           |         gp = *(var_10h);
    0x0004ea44 bgtz v0, 0x4ea10          |         
                                         |     } while (v0 > 0);
                                         | label_6:
    0x0004ea48 lw t9, -0x7f60(gp)        |     t9 = *((gp - 8152));
    0x0004ea4c move a3, zero             |     a3 = 0;
    0x0004ea50 move a2, zero             |     a2 = 0;
    0x0004ea54 addiu a1, zero, 0xb       |     a1 = 0xb;
    0x0004ea58 move a0, s0               |     a0 = s0;
    0x0004ea5c bal 0x645e0               |     sym_BIO_ctrl ();
    0x0004ea60 lw gp, 0x10(sp)           |     gp = *(var_10h);
    0x0004ea64 lw t9, -0x7cb0(gp)        |     t9 = *((gp - 7980));
    0x0004ea68 move a0, s0               |     a0 = s0;
    0x0004ea6c bal 0x649b0               |     sym_BIO_pop ();
    0x0004ea70 lw gp, 0x10(sp)           |     gp = *(var_10h);
    0x0004ea74 lw t9, -0x7f58(gp)        |     t9 = *((gp - 8150));
    0x0004ea78 move a0, s5               |     a0 = s5;
    0x0004ea7c bal 0x63ec4               |     sym_BIO_free ();
    0x0004ea80 addiu v0, zero, 1         |     v0 = 1;
                                         | label_3:
    0x0004ea84 lw ra, 0x44c(sp)          |     ra = *(var_44ch);
    0x0004ea88 lw fp, 0x448(sp)          |     fp = *(var_448h);
    0x0004ea8c lw s7, 0x444(sp)          |     s7 = *(var_444h);
    0x0004ea90 lw s6, 0x440(sp)          |     s6 = *(var_440h);
    0x0004ea94 lw s5, 0x43c(sp)          |     s5 = *(var_43ch);
    0x0004ea98 lw s4, 0x438(sp)          |     s4 = *(var_438h);
    0x0004ea9c lw s3, 0x434(sp)          |     s3 = *(var_434h);
    0x0004eaa0 lw s2, 0x430(sp)          |     s2 = *(var_430h);
    0x0004eaa4 lw s1, 0x42c(sp)          |     s1 = *(var_42ch);
    0x0004eaa8 lw s0, 0x428(sp)          |     s0 = *(var_428h);
    0x0004eaac addiu sp, sp, 0x450       |     
    0x0004eab0 jr ra                     |     return v0;
                                         |     do {
    0x0004eab4 addiu a2, zero, 2         |         a2 = 2;
    0x0004eab8 move a1, s2               |         a1 = s2;
    0x0004eabc move a0, s0               |         a0 = s0;
    0x0004eac0 bal 0x64154               |         sym_BIO_write ();
    0x0004eac4 lw gp, 0x10(sp)           |         gp = *(var_10h);
    0x0004eac8 addiu s6, s6, 1           |         s6++;
                                         | label_9:
    0x0004eacc lw t9, -0x7f20(gp)        |         t9 = *((gp - 8136));
    0x0004ead0 bne s3, s6, 0x4eab4       |         
                                         |     } while (s3 != s6);
    0x0004ead4 move s3, zero             |     s3 = 0;
                                         | label_8:
    0x0004ead8 lw a2, 0x418(sp)          |     a2 = *(var_418h);
    0x0004eadc move a1, s1               |     a1 = s1;
    0x0004eae0 move a0, s0               |     a0 = s0;
    0x0004eae4 bal 0x64154               |     sym_BIO_write ();
    0x0004eae8 lw gp, 0x10(sp)           |     gp = *(var_10h);
                                         | label_2:
    0x0004eaec lw t9, -0x7cc4(gp)        |     t9 = *((gp - 7985));
                                         |     if (fp == 0) {
    0x0004eaf0 beqz fp, 0x4e9b8          |         goto label_0;
                                         |     }
    0x0004eaf4 lw t9, -0x7f20(gp)        |     t9 = *((gp - 8136));
    0x0004eaf8 addiu a2, zero, 2         |     a2 = 2;
    0x0004eafc move a1, s2               |     a1 = s2;
    0x0004eb00 move a0, s0               |     a0 = s0;
    0x0004eb04 bal 0x64154               |     sym_BIO_write ();
    0x0004eb08 lw gp, 0x10(sp)           |     gp = *(var_10h);
    0x0004eb0c b 0x4e9b4                 |     goto label_1;
                                         |     if (v0 == 0) {
                                         | label_7:
    0x0004eb10 beqz v0, 0x4eaec          |         goto label_2;
                                         |     }
    0x0004eb14 nop                       |     
    0x0004eb18 addiu s3, s3, 1           |     s3++;
    0x0004eb1c b 0x4e9b4                 |     goto label_1;
                                         | label_4:
    0x0004eb20 move v0, zero             |     v0 = 0;
    0x0004eb24 b 0x4ea84                 |     goto label_3;
                                         | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/1568982-13971496.squashfs_v4_le_extract/usr/lib/libcrypto.so.1.1 @ 0x4ee24 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) sym.SMIME_write_ASN1 ()          | void SMIME_write_ASN1 () {
    0x0004ee24 lui gp, 0x17                  |     
    0x0004ee28 addiu gp, gp, 0x7d9c          |     
    0x0004ee2c addu gp, gp, t9               |     gp += t9;
    0x0004ee30 addiu sp, sp, -0x90           |     
    0x0004ee34 sw s0, 0x68(sp)               |     *(var_68h) = s0;
    0x0004ee38 sw gp, 0x18(sp)               |     *(var_18h) = gp;
    0x0004ee3c move s0, a0                   |     s0 = a0;
    0x0004ee40 andi a0, a3, 0x400            |     a0 = a3 & aav.0x00000400;
    0x0004ee44 sw fp, 0x88(sp)               |     *(var_88h) = fp;
    0x0004ee48 sw s6, 0x80(sp)               |     *(var_80h) = s6;
    0x0004ee4c sw s4, 0x78(sp)               |     *(var_78h) = s4;
    0x0004ee50 sw ra, 0x8c(sp)               |     *(var_8ch) = ra;
    0x0004ee54 sw s7, 0x84(sp)               |     *(var_84h) = s7;
    0x0004ee58 sw s5, 0x7c(sp)               |     *(var_7ch) = s5;
    0x0004ee5c sw s3, 0x74(sp)               |     *(var_74h) = s3;
    0x0004ee60 sw s2, 0x70(sp)               |     *(var_70h) = s2;
    0x0004ee64 sw s1, 0x6c(sp)               |     *(var_6ch) = s1;
    0x0004ee68 move fp, a1                   |     fp = a1;
    0x0004ee6c move s6, a2                   |     s6 = a2;
    0x0004ee70 move s4, a3                   |     s4 = a3;
    0x0004ee74 lw v0, 0xa0(sp)               |     v0 = *(arg_a0h);
    0x0004ee78 lw v1, 0xa4(sp)               |     v1 = *(arg_a4h);
                                             |     if (a0 == 0) {
    0x0004ee7c beqz a0, 0x4eefc              |         goto label_10;
                                             |     }
    0x0004ee80 lw s3, -0x7fd4(gp)            |     s3 = *((gp - 8181));
    0x0004ee84 addiu s3, s3, 0x2880          |     s3 += 0x2880;
                                             |     do {
    0x0004ee88 andi a0, s4, 0x800            |         a0 = s4 & aav.0x00000800;
    0x0004ee8c lw s1, -0x7e98(gp)            |         s1 = *((gp - 8102));
                                             |         if (a0 == 0) {
    0x0004ee90 beqz a0, 0x4ef08              |             goto label_11;
                                             |         }
    0x0004ee94 lw s1, -0x7fd4(gp)            |         s1 = *((gp - 8181));
    0x0004ee98 addiu s1, s1, 0x2774          |         s1 += 0x2774;
                                             | label_0:
    0x0004ee9c andi a0, s4, 0x40             |         a0 = s4 & 0x40;
    0x0004eea0 addiu a0, zero, 0x17          |         a0 = 0x17;
                                             |         if (a0 == 0) {
    0x0004eea4 beqz a0, 0x4f41c              |             goto label_12;
                                             |         }
    0x0004eea8 lw t9, -0x7c94(gp)            |         t9 = *((gp - 7973));
                                             |         if (s6 == 0) {
    0x0004eeac beqz s6, 0x4f41c              |             goto label_12;
                                             |         }
    0x0004eeb0 addiu s5, sp, 0x20            |         s5 = sp + 0x20;
    0x0004eeb4 addiu a1, zero, 0x20          |         a1 = 0x20;
    0x0004eeb8 move a0, s5                   |         a0 = s5;
    0x0004eebc jalr t9                       |         t9 ();
    0x0004eec0 lw gp, 0x18(sp)               |         gp = *(var_18h);
                                             |         if (v0 > 0) {
    0x0004eec4 bgtz v0, 0x4ef10              |             goto label_13;
                                             |         }
                                             | label_5:
    0x0004eec8 move v0, zero                 |         v0 = 0;
                                             | label_2:
    0x0004eecc lw ra, 0x8c(sp)               |         ra = *(var_8ch);
    0x0004eed0 lw fp, 0x88(sp)               |         fp = *(var_88h);
    0x0004eed4 lw s7, 0x84(sp)               |         s7 = *(var_84h);
    0x0004eed8 lw s6, 0x80(sp)               |         s6 = *(var_80h);
    0x0004eedc lw s5, 0x7c(sp)               |         s5 = *(var_7ch);
    0x0004eee0 lw s4, 0x78(sp)               |         s4 = *(var_78h);
    0x0004eee4 lw s3, 0x74(sp)               |         s3 = *(var_74h);
    0x0004eee8 lw s2, 0x70(sp)               |         s2 = *(var_70h);
    0x0004eeec lw s1, 0x6c(sp)               |         s1 = *(var_6ch);
    0x0004eef0 lw s0, 0x68(sp)               |         s0 = *(var_68h);
    0x0004eef4 addiu sp, sp, 0x90            |         
    0x0004eef8 jr ra                         |         return v0;
                                             | label_10:
    0x0004eefc lw s3, -0x7fd4(gp)            |         s3 = *((gp - 8181));
    0x0004ef00 addiu s3, s3, 0x2898          |         s3 += 0x2898;
    0x0004ef04 b 0x4ee88                     |         
                                             |     } while (1);
                                             | label_11:
    0x0004ef08 addiu s1, s1, 0x3620          |     s1 += 0x3620;
    0x0004ef0c b 0x4ee9c                     |     goto label_0;
                                             | label_13:
    0x0004ef10 move v1, s5                   |     v1 = s5;
    0x0004ef14 addiu a1, sp, 0x40            |     a1 = sp + 0x40;
                                             |     do {
    0x0004ef18 lbu v0, (v1)                  |         v0 = *(v1);
    0x0004ef1c andi v0, v0, 0xf              |         v0 &= 0xf;
    0x0004ef20 andi a0, v0, 0xff             |         a0 = v0 & 0xff;
    0x0004ef24 slti v0, v0, 0xa              |         v0 = (v0 < 0xa) ? 1 : 0;
    0x0004ef28 addiu v0, a0, 0x37            |         v0 = a0 + 0x37;
                                             |         if (v0 != 0) {
    0x0004ef2c beqz v0, 0x4ef34              |             
    0x0004ef30 addiu v0, a0, 0x30            |             v0 = a0 + 0x30;
                                             |         }
    0x0004ef34 sb v0, (v1)                   |         *(v1) = v0;
    0x0004ef38 addiu v1, v1, 1               |         v1++;
    0x0004ef3c lw t9, -0x7d9c(gp)            |         t9 = *((gp - 8039));
    0x0004ef40 bne v1, a1, 0x4ef18           |         
                                             |     } while (v1 != a1);
    0x0004ef44 lw a1, -0x7fd4(gp)            |     a1 = *((gp - 8181));
    0x0004ef48 move a2, s1                   |     a2 = s1;
    0x0004ef4c addiu a1, a1, 0x290c          |     a1 += 0x290c;
    0x0004ef50 move a0, s0                   |     a0 = s0;
    0x0004ef54 sb zero, 0x40(sp)             |     *(var_40h) = 0;
    0x0004ef58 bal 0x60608                   |     sym_BIO_printf ()
    0x0004ef5c lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0004ef60 move a0, s0                   |     a0 = s0;
    0x0004ef64 move s2, zero                 |     s2 = 0;
    0x0004ef68 lw a1, -0x7fd4(gp)            |     a1 = *((gp - 8181));
    0x0004ef6c lw t9, -0x7d9c(gp)            |     t9 = *((gp - 8039));
    0x0004ef70 addiu a1, a1, 0x2920          |     a1 += 0x2920;
    0x0004ef74 bal 0x60608                   |     sym_BIO_printf ()
    0x0004ef78 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0004ef7c move a2, s3                   |     a2 = s3;
    0x0004ef80 move a0, s0                   |     a0 = s0;
    0x0004ef84 lw a1, -0x7fd4(gp)            |     a1 = *((gp - 8181));
    0x0004ef88 lw t9, -0x7d9c(gp)            |     t9 = *((gp - 8039));
    0x0004ef8c addiu a1, a1, 0x2940          |     a1 += 0x2940;
    0x0004ef90 bal 0x60608                   |     sym_BIO_printf ()
    0x0004ef94 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0004ef98 move a0, s0                   |     a0 = s0;
    0x0004ef9c move s7, zero                 |     s7 = 0;
    0x0004efa0 lw a1, -0x7fd4(gp)            |     a1 = *((gp - 8181));
    0x0004efa4 lw t9, -0x7ce8(gp)            |     t9 = *((gp - 7994));
    0x0004efa8 addiu a1, a1, 0x295c          |     a1 += 0x295c;
    0x0004efac bal 0x641d8                   |     sym_BIO_puts ();
    0x0004efb0 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0004efb4 sw zero, 0x58(sp)             |     *(var_58h) = 0;
    0x0004efb8 lw v0, -0x7e24(gp)            |     v0 = *((gp - 8073));
    0x0004efbc addiu v0, v0, -0x7520         |     v0 += -0x7520;
    0x0004efc0 sw v0, 0x5c(sp)               |     *(var_5ch) = v0;
    0x0004efc4 lw v0, -0x7fd4(gp)            |     v0 = *((gp - 8181));
    0x0004efc8 addiu v0, v0, 0x296c          |     v0 += aav.0x0000296c;
    0x0004efcc sw v0, 0x60(sp)               |     *(var_60h) = v0;
    0x0004efd0 lw v0, -0x7fd4(gp)            |     v0 = *((gp - 8181));
    0x0004efd4 sw v0, 0x64(sp)               |     *(var_64h) = v0;
                                             |     do {
    0x0004efd8 lw t9, -0x7d5c(gp)            |         t9 = *((gp - 8023));
    0x0004efdc lw a0, 0xa8(sp)               |         a0 = *(arg_a8h);
    0x0004efe0 jalr t9                       |         t9 ();
    0x0004efe4 slt v0, s7, v0                |         v0 = (s7 < v0) ? 1 : 0;
    0x0004efe8 lw gp, 0x18(sp)               |         gp = *(var_18h);
                                             |         if (v0 == 0) {
    0x0004efec beqz v0, 0x4f150              |             goto label_14;
                                             |         }
    0x0004eff0 lw t9, -0x7de0(gp)            |         t9 = *((gp - 8056));
                                             |         if (s2 != 0) {
    0x0004eff4 beqz s2, 0x4f014              |             
    0x0004eff8 lw t9, -0x7f20(gp)            |             t9 = *((gp - 8136));
    0x0004effc lw a1, 0x5c(sp)               |             a1 = *(var_5ch);
    0x0004f000 addiu a2, zero, 1             |             a2 = 1;
    0x0004f004 move a0, s0                   |             a0 = s0;
    0x0004f008 bal 0x64154                   |             sym_BIO_write ();
    0x0004f00c lw gp, 0x18(sp)               |             gp = *(var_18h);
    0x0004f010 lw t9, -0x7de0(gp)            |             t9 = *((gp - 8056));
                                             |         }
    0x0004f014 lw a0, 0xa8(sp)               |         a0 = *(arg_a8h);
    0x0004f018 move a1, s7                   |         a1 = s7;
    0x0004f01c jalr t9                       |         t9 ();
    0x0004f020 lw gp, 0x18(sp)               |         gp = *(var_18h);
    0x0004f024 lw t9, -0x7e88(gp)            |         t9 = *((gp - 8098));
    0x0004f028 lw a0, (v0)                   |         a0 = *(v0);
    0x0004f02c jalr t9                       |         t9 ();
    0x0004f030 lw gp, 0x18(sp)               |         gp = *(var_18h);
    0x0004f034 move a0, v0                   |         a0 = v0;
    0x0004f038 lw t9, -0x7e00(gp)            |         t9 = *((gp - 8064));
    0x0004f03c move s2, v0                   |         s2 = v0;
    0x0004f040 jalr t9                       |         t9 ();
    0x0004f044 lw gp, 0x18(sp)               |         gp = *(var_18h);
    0x0004f048 lw t9, -0x7d74(gp)            |         t9 = *((gp - 8029));
    0x0004f04c move a0, v0                   |         a0 = v0;
    0x0004f050 jalr t9                       |         t9 ();
    0x0004f054 lw gp, 0x18(sp)               |         gp = *(var_18h);
                                             |         if (v0 == 0) {
    0x0004f058 beqz v0, 0x4f0cc              |             goto label_15;
                                             |         }
    0x0004f05c lw t9, 0x2c(v0)               |         t9 = *((v0 + 11));
    0x0004f060 addiu v0, zero, 0x2a0         |         v0 = aav.0x000002a0;
                                             |         if (t9 == 0) {
    0x0004f064 beqz t9, 0x4f0d0              |             goto label_16;
                                             |         }
    0x0004f068 addiu a3, sp, 0x44            |         a3 = sp + 0x44;
    0x0004f06c move a2, zero                 |         a2 = 0;
    0x0004f070 addiu a1, zero, 2             |         a1 = 2;
    0x0004f074 move a0, zero                 |         a0 = 0;
    0x0004f078 jalr t9                       |         t9 ();
    0x0004f07c lw gp, 0x18(sp)               |         gp = *(var_18h);
                                             |         if (v0 <= 0) {
    0x0004f080 blez v0, 0x4f0c0              |             goto label_17;
                                             |         }
    0x0004f084 lw t9, -0x7ce8(gp)            |         t9 = *((gp - 7994));
    0x0004f088 lw a1, 0x44(sp)               |         a1 = *(var_44h);
    0x0004f08c move a0, s0                   |         a0 = s0;
    0x0004f090 bal 0x641d8                   |         sym_BIO_puts ();
    0x0004f094 lw gp, 0x18(sp)               |         gp = *(var_18h);
    0x0004f098 lw a0, 0x44(sp)               |         a0 = *(var_44h);
    0x0004f09c addiu a2, zero, 0xaa          |         a2 = 0xaa;
    0x0004f0a0 lw a1, -0x7fd4(gp)            |         a1 = *((gp - 8181));
    0x0004f0a4 lw t9, -0x7f98(gp)            |         t9 = *((gp - 8166));
    0x0004f0a8 addiu a1, a1, 0x2758          |         a1 += 0x2758;
    0x0004f0ac jalr t9                       |         t9 ();
    0x0004f0b0 lw gp, 0x18(sp)               |         gp = *(var_18h);
                                             | label_3:
    0x0004f0b4 addiu s2, zero, 1             |         s2 = 1;
                                             | label_1:
    0x0004f0b8 addiu s7, s7, 1               |         s7++;
    0x0004f0bc b 0x4efd8                     |         
                                             |     } while (1);
                                             | label_17:
    0x0004f0c0 addiu v1, zero, -2            |     v1 = -2;
                                             |     if (v0 != v1) {
    0x0004f0c4 bne v0, v1, 0x4f150           |         goto label_14;
                                             |     }
    0x0004f0c8 nop                           |     
                                             | label_15:
    0x0004f0cc addiu v0, zero, 0x2a0         |     v0 = aav.0x000002a0;
                                             | label_16:
    0x0004f0d0 slti v0, s2, 0x2a1            |     v0 = (s2 < 0x2a1) ? 1 : 0;
                                             |     if (s2 == v0) {
    0x0004f0d4 beq s2, v0, 0x4f304           |         goto label_18;
                                             |     }
    0x0004f0d8 addiu v0, zero, 0x2a2         |     v0 = 0x2a2;
                                             |     if (v0 == 0) {
    0x0004f0dc beqz v0, 0x4f124              |         goto label_19;
                                             |     }
    0x0004f0e0 addiu v0, zero, 4             |     v0 = 4;
    0x0004f0e4 addiu v0, zero, 0x40          |     v0 = 0x40;
                                             |     if (s2 == v0) {
    0x0004f0e8 beq s2, v0, 0x4f2f8           |         goto label_20;
                                             |     }
    0x0004f0ec lw a1, -0x7e98(gp)            |     a1 = *((gp - 8102));
                                             |     if (s2 == v0) {
    0x0004f0f0 beq s2, v0, 0x4f2e0           |         goto label_21;
                                             |     }
                                             |     do {
    0x0004f0f4 lw v0, 0x58(sp)               |         v0 = *(var_58h);
    0x0004f0f8 lw v0, 0x64(sp)               |         v0 = *(var_64h);
                                             |         if (v0 != 0) {
    0x0004f0fc bnez v0, 0x4f324              |             goto label_22;
                                             |         }
    0x0004f100 lw t9, -0x7ce8(gp)            |         t9 = *((gp - 7994));
    0x0004f104 addiu a1, v0, 0x2984          |         a1 = v0 + 0x2984;
    0x0004f108 move a0, s0                   |         a0 = s0;
    0x0004f10c bal 0x641d8                   |         sym_BIO_puts ();
    0x0004f110 addiu v0, zero, 1             |         v0 = 1;
    0x0004f114 lw gp, 0x18(sp)               |         gp = *(var_18h);
    0x0004f118 addiu s2, zero, 1             |         s2 = 1;
    0x0004f11c sw v0, 0x58(sp)               |         *(var_58h) = v0;
    0x0004f120 b 0x4f0b8                     |         goto label_1;
                                             | label_19:
    0x0004f124 slti v0, s2, 0x2a2            |         v0 = (s2 < 0x2a2) ? 1 : 0;
                                             |         if (s2 == v0) {
    0x0004f128 beq s2, v0, 0x4f318           |             goto label_23;
                                             |         }
    0x0004f12c addiu v0, zero, 0x329         |         v0 = 0x329;
                                             |         if (v0 != 0) {
    0x0004f130 bnez v0, 0x4f30c              |             goto label_24;
                                             |         }
    0x0004f134 lw a1, -0x7e98(gp)            |         a1 = *((gp - 8102));
    0x0004f138 bne s2, v0, 0x4f0f4           |         
                                             |     } while (s2 != v0);
    0x0004f13c lw t9, -0x7ce8(gp)            |     t9 = *((gp - 7994));
    0x0004f140 addiu a1, a1, -0x4090         |     a1 += -0x4090;
    0x0004f144 move a0, s0                   |     a0 = s0;
    0x0004f148 bal 0x641d8                   |     sym_BIO_puts ();
    0x0004f14c lw gp, 0x18(sp)               |     gp = *(var_18h);
                                             | label_14:
    0x0004f150 lw a1, -0x7fd4(gp)            |     a1 = *((gp - 8181));
    0x0004f154 lw t9, -0x7d9c(gp)            |     t9 = *((gp - 8039));
    0x0004f158 move a3, s1                   |     a3 = s1;
    0x0004f15c move a2, s5                   |     a2 = s5;
    0x0004f160 addiu a1, a1, 0x298c          |     a1 += 0x298c;
    0x0004f164 move a0, s0                   |     a0 = s0;
    0x0004f168 sw s1, 0x10(sp)               |     *(var_10h) = s1;
    0x0004f16c bal 0x60608                   |     sym_BIO_printf ()
    0x0004f170 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0004f174 move a3, s1                   |     a3 = s1;
    0x0004f178 move a2, s1                   |     a2 = s1;
    0x0004f17c lw a1, -0x7fd4(gp)            |     a1 = *((gp - 8181));
    0x0004f180 lw t9, -0x7d9c(gp)            |     t9 = *((gp - 8039));
    0x0004f184 addiu a1, a1, 0x29a8          |     a1 += 0x29a8;
    0x0004f188 move a0, s0                   |     a0 = s0;
    0x0004f18c bal 0x60608                   |     sym_BIO_printf ()
    0x0004f190 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0004f194 move a3, s1                   |     a3 = s1;
    0x0004f198 move a2, s5                   |     a2 = s5;
    0x0004f19c lw a1, -0x7fd4(gp)            |     a1 = *((gp - 8181));
    0x0004f1a0 lw t9, -0x7d9c(gp)            |     t9 = *((gp - 8039));
    0x0004f1a4 addiu a1, a1, 0x29d0          |     a1 += 0x29d0;
    0x0004f1a8 move a0, s0                   |     a0 = s0;
    0x0004f1ac bal 0x60608                   |     sym_BIO_printf ()
    0x0004f1b0 andi v1, s4, 0x8040           |     v1 = s4 & 0x8040;
    0x0004f1b4 addiu v0, zero, 0x40          |     v0 = 0x40;
    0x0004f1b8 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0004f1bc sw fp, 0x50(sp)               |     *(var_50h) = fp;
                                             |     if (v1 == v0) {
    0x0004f1c0 beq v1, v0, 0x4f32c           |         goto label_25;
                                             |     }
    0x0004f1c4 lw t9, -0x7c9c(gp)            |     t9 = *((gp - 7975));
    0x0004f1c8 move a2, s4                   |     a2 = s4;
    0x0004f1cc move a1, s0                   |     a1 = s0;
    0x0004f1d0 move a0, s6                   |     a0 = s6;
    0x0004f1d4 bal 0x4e8e0                   |     sym_SMIME_crlf_copy ();
    0x0004f1d8 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0004f1dc lw a1, -0x7fd4(gp)            |     a1 = *((gp - 8181));
                                             | label_6:
    0x0004f1e0 lw t9, -0x7d9c(gp)            |     t9 = *((gp - 8039));
    0x0004f1e4 move a3, s5                   |     a3 = s5;
    0x0004f1e8 move a2, s1                   |     a2 = s1;
    0x0004f1ec addiu a1, a1, 0x29dc          |     a1 += 0x29dc;
    0x0004f1f0 move a0, s0                   |     a0 = s0;
    0x0004f1f4 sw s1, 0x10(sp)               |     *(var_10h) = s1;
    0x0004f1f8 bal 0x60608                   |     sym_BIO_printf ()
    0x0004f1fc lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0004f200 move a2, s3                   |     a2 = s3;
    0x0004f204 move a0, s0                   |     a0 = s0;
    0x0004f208 lw a1, -0x7fd4(gp)            |     a1 = *((gp - 8181));
    0x0004f20c lw t9, -0x7d9c(gp)            |     t9 = *((gp - 8039));
    0x0004f210 addiu a1, a1, 0x29ec          |     a1 += 0x29ec;
    0x0004f214 bal 0x60608                   |     sym_BIO_printf ()
    0x0004f218 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0004f21c move a2, s1                   |     a2 = s1;
    0x0004f220 move a0, s0                   |     a0 = s0;
    0x0004f224 lw a1, -0x7fd4(gp)            |     a1 = *((gp - 8181));
    0x0004f228 lw t9, -0x7d9c(gp)            |     t9 = *((gp - 8039));
    0x0004f22c addiu a1, a1, 0x2a08          |     a1 += 0x2a08;
    0x0004f230 bal 0x60608                   |     sym_BIO_printf ()
    0x0004f234 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0004f238 move a2, s1                   |     a2 = s1;
    0x0004f23c move a0, s0                   |     a0 = s0;
    0x0004f240 lw a1, -0x7fd4(gp)            |     a1 = *((gp - 8181));
    0x0004f244 lw t9, -0x7d9c(gp)            |     t9 = *((gp - 8039));
    0x0004f248 addiu a1, a1, 0x2a1c          |     a1 += 0x2a1c;
    0x0004f24c bal 0x60608                   |     sym_BIO_printf ()
    0x0004f250 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0004f254 move a0, s0                   |     a0 = s0;
    0x0004f258 lw a1, -0x7fd4(gp)            |     a1 = *((gp - 8181));
    0x0004f25c lw t9, -0x7d9c(gp)            |     t9 = *((gp - 8039));
    0x0004f260 addiu a1, a1, 0x2a40          |     a1 += 0x2a40;
    0x0004f264 bal 0x60608                   |     sym_BIO_printf ()
    0x0004f268 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0004f26c move a3, s1                   |     a3 = s1;
    0x0004f270 move a2, s1                   |     a2 = s1;
    0x0004f274 lw a1, -0x7fd4(gp)            |     a1 = *((gp - 8181));
    0x0004f278 lw t9, -0x7d9c(gp)            |     t9 = *((gp - 8039));
    0x0004f27c addiu a1, a1, 0x2a64          |     a1 += 0x2a64;
    0x0004f280 move a0, s0                   |     a0 = s0;
    0x0004f284 bal 0x60608                   |     sym_BIO_printf ()
    0x0004f288 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0004f28c lw v0, 0xac(sp)               |     v0 = *(arg_ach);
    0x0004f290 move a3, zero                 |     a3 = 0;
    0x0004f294 lw t9, -0x7d58(gp)            |     t9 = *((gp - 8022));
    0x0004f298 move a2, zero                 |     a2 = 0;
    0x0004f29c move a1, fp                   |     a1 = fp;
    0x0004f2a0 move a0, s0                   |     a0 = s0;
    0x0004f2a4 addiu t9, t9, -0x13bc         |     t9 += -0x13bc;
    0x0004f2a8 sw v0, 0x10(sp)               |     *(var_10h) = v0;
    0x0004f2ac bal 0x4ec44                   |     fcn_0004ec44 ();
    0x0004f2b0 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0004f2b4 sw s1, 0x14(sp)               |     *(var_14h) = s1;
    0x0004f2b8 sw s1, 0x10(sp)               |     *(var_10h) = s1;
    0x0004f2bc lw a1, -0x7fd4(gp)            |     a1 = *((gp - 8181));
    0x0004f2c0 lw t9, -0x7d9c(gp)            |     t9 = *((gp - 8039));
    0x0004f2c4 move a3, s5                   |     a3 = s5;
    0x0004f2c8 move a2, s1                   |     a2 = s1;
    0x0004f2cc addiu a1, a1, 0x2a80          |     a1 += 0x2a80;
    0x0004f2d0 move a0, s0                   |     a0 = s0;
    0x0004f2d4 bal 0x60608                   |     sym_BIO_printf ()
                                             | label_8:
    0x0004f2d8 addiu v0, zero, 1             |     v0 = 1;
    0x0004f2dc b 0x4eecc                     |     goto label_2;
                                             | label_21:
    0x0004f2e0 addiu a1, a1, -0x7cdc         |     a1 += -0x7cdc;
                                             |     do {
                                             | label_4:
    0x0004f2e4 lw t9, -0x7ce8(gp)            |         t9 = *((gp - 7994));
    0x0004f2e8 move a0, s0                   |         a0 = s0;
    0x0004f2ec bal 0x641d8                   |         sym_BIO_puts ();
    0x0004f2f0 lw gp, 0x18(sp)               |         gp = *(var_18h);
    0x0004f2f4 b 0x4f0b4                     |         goto label_3;
                                             | label_20:
    0x0004f2f8 lw a1, -0x7fd4(gp)            |         a1 = *((gp - 8181));
    0x0004f2fc addiu a1, a1, 0x2968          |         a1 += 0x2968;
    0x0004f300 b 0x4f2e4                     |         
                                             |     } while (1);
                                             | label_18:
    0x0004f304 lw a1, 0x60(sp)               |     a1 = *(var_60h);
    0x0004f308 b 0x4f2e4                     |     goto label_4;
                                             | label_24:
    0x0004f30c lw a1, -0x7fd4(gp)            |     a1 = *((gp - 8181));
    0x0004f310 addiu a1, a1, 0x2974          |     a1 += aav.0x00002974;
    0x0004f314 b 0x4f2e4                     |     goto label_4;
                                             | label_23:
    0x0004f318 lw a1, -0x7fd4(gp)            |     a1 = *((gp - 8181));
    0x0004f31c addiu a1, a1, 0x297c          |     a1 += 0x297c;
    0x0004f320 b 0x4f2e4                     |     goto label_4;
                                             | label_22:
    0x0004f324 move s2, zero                 |     s2 = 0;
    0x0004f328 b 0x4f0b8                     |     goto label_1;
                                             | label_25:
    0x0004f32c lw v0, 0xac(sp)               |     v0 = *(arg_ach);
    0x0004f330 lw s2, 0x10(v0)               |     s2 = *((v0 + 4));
    0x0004f334 lw a3, -0x7fd4(gp)            |     a3 = *((gp - 8181));
                                             |     if (s2 != 0) {
    0x0004f338 beqz s2, 0x4f34c              |         
    0x0004f33c lw t9, 0x10(s2)               |         t9 = *((s2 + 4));
    0x0004f340 addiu s7, sp, 0x44            |         s7 = sp + 0x44;
                                             |         if (t9 != 0) {
    0x0004f344 bnez t9, 0x4f374              |             goto label_26;
                                             |         }
    0x0004f348 lw a3, -0x7fd4(gp)            |         a3 = *((gp - 8181));
                                             |     }
    0x0004f34c addiu v0, zero, 0x14c         |     v0 = aav.0x0000014c;
    0x0004f350 lw t9, -0x7f94(gp)            |     t9 = *((gp - 8165));
    0x0004f354 sw v0, 0x10(sp)               |     *(var_10h) = v0;
    0x0004f358 addiu a3, a3, 0x2758          |     a3 += 0x2758;
    0x0004f35c addiu a2, zero, 0xca          |     a2 = 0xca;
    0x0004f360 addiu a1, zero, 0xd6          |     a1 = 0xd6;
    0x0004f364 addiu a0, zero, 0xd           |     a0 = 0xd;
    0x0004f368 jalr t9                       |     t9 ();
    0x0004f36c move v0, zero                 |     v0 = 0;
    0x0004f370 b 0x4eecc                     |     goto label_2;
                                             | label_26:
    0x0004f374 addiu v0, sp, 0x50            |     v0 = sp + 0x50;
    0x0004f378 lw a2, 0xac(sp)               |     a2 = *(arg_ach);
    0x0004f37c sw s0, 0x44(sp)               |     *(var_44h) = s0;
    0x0004f380 sw zero, 0x48(sp)             |     *(var_48h) = 0;
    0x0004f384 sw zero, 0x4c(sp)             |     *(var_4ch) = 0;
    0x0004f388 sw v0, 0x58(sp)               |     *(var_58h) = v0;
    0x0004f38c move a3, s7                   |     a3 = s7;
    0x0004f390 move a1, v0                   |     a1 = v0;
    0x0004f394 addiu a0, zero, 0xc           |     a0 = 0xc;
    0x0004f398 jalr t9                       |     t9 ();
    0x0004f39c lw gp, 0x18(sp)               |     gp = *(var_18h);
                                             |     if (v0 <= 0) {
    0x0004f3a0 blez v0, 0x4eec8              |         goto label_5;
                                             |     }
    0x0004f3a4 lw t9, -0x7c9c(gp)            |     t9 = *((gp - 7975));
    0x0004f3a8 lw a1, 0x48(sp)               |     a1 = *(var_48h);
    0x0004f3ac move a2, s4                   |     a2 = s4;
    0x0004f3b0 move a0, s6                   |     a0 = s6;
    0x0004f3b4 bal 0x4e8e0                   |     sym_SMIME_crlf_copy ();
    0x0004f3b8 lw t9, 0x10(s2)               |     t9 = *((s2 + 4));
    0x0004f3bc lw a2, 0xac(sp)               |     a2 = *(arg_ach);
    0x0004f3c0 lw a1, 0x58(sp)               |     a1 = *(var_58h);
    0x0004f3c4 move a3, s7                   |     a3 = s7;
    0x0004f3c8 addiu a0, zero, 0xd           |     a0 = 0xd;
    0x0004f3cc jalr t9                       |     t9 ();
    0x0004f3d0 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0004f3d4 move s2, v0                   |     s2 = v0;
                                             | label_7:
    0x0004f3d8 lw a0, 0x48(sp)               |     a0 = *(var_48h);
    0x0004f3dc lw t9, -0x7cb0(gp)            |     t9 = *((gp - 7980));
                                             |     if (s0 != a0) {
    0x0004f3e0 bne s0, a0, 0x4f3f4           |         goto label_27;
                                             |     }
    0x0004f3e4 lw a1, -0x7fd4(gp)            |     a1 = *((gp - 8181));
                                             |     if (s2 > 0) {
    0x0004f3e8 bgtz s2, 0x4f1e0              |         goto label_6;
                                             |     }
    0x0004f3ec move v0, zero                 |     v0 = 0;
    0x0004f3f0 b 0x4eecc                     |     goto label_2;
                                             | label_27:
    0x0004f3f4 bal 0x649b0                   |     sym_BIO_pop ();
    0x0004f3f8 nop                           |     
    0x0004f3fc lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0004f400 lw a0, 0x48(sp)               |     a0 = *(var_48h);
    0x0004f404 lw t9, -0x7f58(gp)            |     t9 = *((gp - 8150));
    0x0004f408 move s4, v0                   |     s4 = v0;
    0x0004f40c bal 0x63ec4                   |     sym_BIO_free ();
    0x0004f410 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0004f414 sw s4, 0x48(sp)               |     *(var_48h) = s4;
    0x0004f418 b 0x4f3d8                     |     goto label_7;
                                             | label_12:
    0x0004f41c lw s5, -0x7fd4(gp)            |     s5 = *((gp - 8181));
                                             |     if (v0 == a0) {
    0x0004f420 beq v0, a0, 0x4f590           |         goto label_28;
                                             |     }
    0x0004f424 addiu a0, zero, 0x16          |     a0 = 0x16;
    0x0004f428 lw s2, -0x7fd4(gp)            |     s2 = *((gp - 8181));
                                             |     if (v0 != a0) {
    0x0004f42c bne v0, a0, 0x4f574           |         goto label_29;
                                             |     }
    0x0004f430 addiu v0, zero, 0xcc          |     v0 = 0xcc;
    0x0004f434 addiu s2, s2, 0x28bc          |     s2 += 0x28bc;
                                             |     if (v1 == v0) {
    0x0004f438 beq v1, v0, 0x4f598           |         goto label_30;
                                             |     }
    0x0004f43c lw t9, -0x7d5c(gp)            |     t9 = *((gp - 8023));
    0x0004f440 lw a0, 0xa8(sp)               |     a0 = *(arg_a8h);
    0x0004f444 jalr t9                       |     t9 ();
    0x0004f448 lw gp, 0x18(sp)               |     gp = *(var_18h);
                                             |     if (v0 < 0) {
    0x0004f44c bltz v0, 0x4f5a4              |         goto label_31;
                                             |     }
    0x0004f450 lw s5, -0x7fd4(gp)            |     s5 = *((gp - 8181));
    0x0004f454 addiu s5, s5, 0x28c8          |     s5 += 0x28c8;
                                             | label_9:
    0x0004f458 lw a1, -0x7fd4(gp)            |     a1 = *((gp - 8181));
    0x0004f45c lw t9, -0x7d9c(gp)            |     t9 = *((gp - 8039));
    0x0004f460 move a2, s1                   |     a2 = s1;
    0x0004f464 addiu a1, a1, 0x290c          |     a1 += 0x290c;
    0x0004f468 move a0, s0                   |     a0 = s0;
    0x0004f46c bal 0x60608                   |     sym_BIO_printf ()
    0x0004f470 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0004f474 move a0, s0                   |     a0 = s0;
    0x0004f478 lw a1, -0x7fd4(gp)            |     a1 = *((gp - 8181));
    0x0004f47c lw t9, -0x7d9c(gp)            |     t9 = *((gp - 8039));
    0x0004f480 addiu a1, a1, 0x2a40          |     a1 += 0x2a40;
    0x0004f484 bal 0x60608                   |     sym_BIO_printf ()
    0x0004f488 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0004f48c move a3, s1                   |     a3 = s1;
    0x0004f490 move a2, s2                   |     a2 = s2;
    0x0004f494 lw a1, -0x7fd4(gp)            |     a1 = *((gp - 8181));
    0x0004f498 lw t9, -0x7d9c(gp)            |     t9 = *((gp - 8039));
    0x0004f49c addiu a1, a1, 0x2a94          |     a1 += 0x2a94;
    0x0004f4a0 move a0, s0                   |     a0 = s0;
    0x0004f4a4 bal 0x60608                   |     sym_BIO_printf ()
    0x0004f4a8 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0004f4ac move a2, s3                   |     a2 = s3;
    0x0004f4b0 move a0, s0                   |     a0 = s0;
    0x0004f4b4 lw a1, -0x7fd4(gp)            |     a1 = *((gp - 8181));
    0x0004f4b8 lw t9, -0x7d9c(gp)            |     t9 = *((gp - 8039));
    0x0004f4bc addiu a1, a1, 0x2aa8          |     a1 += 0x2aa8;
    0x0004f4c0 bal 0x60608                   |     sym_BIO_printf ()
    0x0004f4c4 lw gp, 0x18(sp)               |     gp = *(var_18h);
                                             |     if (s5 != 0) {
    0x0004f4c8 beqz s5, 0x4f4e8              |         
    0x0004f4cc lw a1, -0x7fd4(gp)            |         a1 = *((gp - 8181));
    0x0004f4d0 lw t9, -0x7d9c(gp)            |         t9 = *((gp - 8039));
    0x0004f4d4 move a2, s5                   |         a2 = s5;
    0x0004f4d8 addiu a1, a1, 0x2ac0          |         a1 += 0x2ac0;
    0x0004f4dc move a0, s0                   |         a0 = s0;
    0x0004f4e0 bal 0x60608                   |         sym_BIO_printf ()
    0x0004f4e4 lw gp, 0x18(sp)               |         gp = *(var_18h);
                                             |     }
    0x0004f4e8 lw a1, -0x7fd4(gp)            |     a1 = *((gp - 8181));
    0x0004f4ec lw t9, -0x7d9c(gp)            |     t9 = *((gp - 8039));
    0x0004f4f0 move a3, s1                   |     a3 = s1;
    0x0004f4f4 move a2, s2                   |     a2 = s2;
    0x0004f4f8 addiu a1, a1, 0x2ad0          |     a1 += 0x2ad0;
    0x0004f4fc move a0, s0                   |     a0 = s0;
    0x0004f500 bal 0x60608                   |     sym_BIO_printf ()
    0x0004f504 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0004f508 move a3, s1                   |     a3 = s1;
    0x0004f50c move a2, s1                   |     a2 = s1;
    0x0004f510 lw a1, -0x7fd4(gp)            |     a1 = *((gp - 8181));
    0x0004f514 lw t9, -0x7d9c(gp)            |     t9 = *((gp - 8039));
    0x0004f518 addiu a1, a1, 0x2ae0          |     a1 += 0x2ae0;
    0x0004f51c move a0, s0                   |     a0 = s0;
    0x0004f520 bal 0x60608                   |     sym_BIO_printf ()
    0x0004f524 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0004f528 lw v0, 0xac(sp)               |     v0 = *(arg_ach);
    0x0004f52c move a3, s4                   |     a3 = s4;
    0x0004f530 lw t9, -0x7d58(gp)            |     t9 = *((gp - 8022));
    0x0004f534 sw v0, 0x10(sp)               |     *(var_10h) = v0;
    0x0004f538 move a2, s6                   |     a2 = s6;
    0x0004f53c move a1, fp                   |     a1 = fp;
    0x0004f540 addiu t9, t9, -0x13bc         |     t9 += -0x13bc;
    0x0004f544 move a0, s0                   |     a0 = s0;
    0x0004f548 bal 0x4ec44                   |     fcn_0004ec44 ();
    0x0004f54c lw gp, 0x18(sp)               |     gp = *(var_18h);
                                             |     if (v0 == 0) {
    0x0004f550 beqz v0, 0x4eec8              |         goto label_5;
                                             |     }
    0x0004f554 lw a1, -0x7e98(gp)            |     a1 = *((gp - 8102));
    0x0004f558 lw t9, -0x7d9c(gp)            |     t9 = *((gp - 8039));
    0x0004f55c move a2, s1                   |     a2 = s1;
    0x0004f560 addiu a1, a1, 0x66e0          |     a1 += 0x66e0;
    0x0004f564 move a0, s0                   |     a0 = s0;
    0x0004f568 bal 0x60608                   |     sym_BIO_printf ()
    0x0004f56c b 0x4f2d8                     |     goto label_8;
    0x0004f570 nop                           |     
                                             | label_29:
    0x0004f574 addiu v1, zero, 0x312         |     v1 = 0x312;
                                             |     if (v0 == v1) {
    0x0004f578 beq v0, v1, 0x4f5b0           |         goto label_32;
                                             |     }
    0x0004f57c nop                           |     
    0x0004f580 move s5, zero                 |     s5 = 0;
                                             |     do {
    0x0004f584 lw s2, -0x7fd4(gp)            |         s2 = *((gp - 8181));
    0x0004f588 addiu s2, s2, 0x28bc          |         s2 += 0x28bc;
    0x0004f58c b 0x4f458                     |         goto label_9;
                                             | label_28:
    0x0004f590 addiu s5, s5, 0x28ac          |         s5 += 0x28ac;
    0x0004f594 b 0x4f584                     |         
                                             |     } while (1);
                                             | label_30:
    0x0004f598 lw s5, -0x7fd4(gp)            |     s5 = *((gp - 8181));
    0x0004f59c addiu s5, s5, 0x28f0          |     s5 += 0x28f0;
    0x0004f5a0 b 0x4f458                     |     goto label_9;
                                             | label_31:
    0x0004f5a4 lw s5, -0x7fd4(gp)            |     s5 = *((gp - 8181));
    0x0004f5a8 addiu s5, s5, 0x2900          |     s5 += 0x2900;
    0x0004f5ac b 0x4f458                     |     goto label_9;
                                             | label_32:
    0x0004f5b0 lw s5, -0x7fd4(gp)            |     s5 = *((gp - 8181));
    0x0004f5b4 lw s2, -0x7fd4(gp)            |     s2 = *((gp - 8181));
    0x0004f5b8 addiu s5, s5, 0x28d4          |     s5 += 0x28d4;
    0x0004f5bc addiu s2, s2, 0x28e4          |     s2 += 0x28e4;
    0x0004f5c0 b 0x4f458                     |     goto label_9;
                                             | }

[*] Function printf used 60 times libcrypto.so.1.1