[*] Binary protection state of zip

  
  	Full RELRO     Canary found      NX disabled  PIE enabled  No RPATH     No RUNPATH   No Symbols


[*] Function strcpy tear down of zip

    ; assembly                                       | /* r2dec pseudo code output */
                                                     | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/zip @ 0x1ee74 */
                                                     | #include <stdint.h>
                                                     |  
    ; (fcn) sym.ask_for_split_read_path ()           | void ask_for_split_read_path () {
    0x0001ee74 lui gp, 3                             |     
    0x0001ee78 addiu gp, gp, 0x2e1c                  |     
    0x0001ee7c addu gp, gp, t9                       |     gp += t9;
    0x0001ee80 addiu sp, sp, -0x1490                 |     
    0x0001ee84 lw v0, -0x7a44(gp)                    |     v0 = *((gp - 7825));
    0x0001ee88 sw s3, 0x1474(sp)                     |     *(var_1474h) = s3;
    0x0001ee8c lw s3, -0x7eec(gp)                    |     s3 = *(gp);
    0x0001ee90 lw t9, -0x7d3c(gp)                    |     t9 = sym.get_in_split_path;
    0x0001ee94 sw a0, 0x1490(sp)                     |     *(var_1490h) = a0;
    0x0001ee98 sw v0, 0x2c(sp)                       |     *(var_2ch_3) = v0;
    0x0001ee9c lw v0, (v0)                           |     v0 = *(v0);
    0x0001eea0 lw a1, 0x1490(sp)                     |     a1 = *(var_1490h);
    0x0001eea4 lw a0, (s3)                           |     a0 = *(s3);
    0x0001eea8 sw ra, 0x148c(sp)                     |     *(var_148ch) = ra;
    0x0001eeac sw gp, 0x10(sp)                       |     *(var_10h_3) = gp;
    0x0001eeb0 sw s2, 0x1470(sp)                     |     *(var_1470h) = s2;
    0x0001eeb4 sw s1, 0x146c(sp)                     |     *(var_146ch) = s1;
    0x0001eeb8 sw s0, 0x1468(sp)                     |     *(var_1468h) = s0;
    0x0001eebc sw t9, 0x30(sp)                       |     *(var_30h_2) = t9;
    0x0001eec0 sw fp, 0x1488(sp)                     |     *(var_1488h) = fp;
    0x0001eec4 sw s7, 0x1484(sp)                     |     *(var_1484h) = s7;
    0x0001eec8 sw s6, 0x1480(sp)                     |     *(var_1480h) = s6;
    0x0001eecc sw s5, 0x147c(sp)                     |     *(var_147ch) = s5;
    0x0001eed0 sw s4, 0x1478(sp)                     |     *(var_1478h) = s4;
    0x0001eed4 sw v0, 0x1464(sp)                     |     *(var_1464h) = v0;
    0x0001eed8 bal 0x1ecb0                           |     sym_get_in_split_path ();
    0x0001eedc nop                                   |     
    0x0001eee0 lw gp, 0x10(sp)                       |     gp = *(var_10h_3);
    0x0001eee4 lw s1, (s3)                           |     s1 = *(s3);
    0x0001eee8 move s2, v0                           |     s2 = v0;
    0x0001eeec lw t9, -0x7ae0(gp)                    |     t9 = sym.imp.strlen;
    0x0001eef0 move a0, s1                           |     a0 = s1;
    0x0001eef4 jalr t9                               |     t9 ();
    0x0001eef8 lw gp, 0x10(sp)                       |     gp = *(var_10h_3);
    0x0001eefc lw t9, -0x7ab4(gp)                    |     t9 = sym.imp.malloc;
    0x0001ef00 addiu a0, v0, 0x28                    |     a0 = v0 + 0x28;
    0x0001ef04 jalr t9                               |     t9 ();
    0x0001ef08 move s0, v0                           |     s0 = v0;
    0x0001ef0c lw gp, 0x10(sp)                       |     gp = *(var_10h_3);
                                                     |     if (v0 == 0) {
    0x0001ef10 beqz v0, 0x1f868                      |         goto label_27;
                                                     |     }
                                                     | label_17:
    0x0001ef14 lw t9, -0x7a60(gp)                    |     t9 = sym.imp.stpcpy;
    0x0001ef18 move a1, s1                           |     a1 = s1;
    0x0001ef1c move a0, s0                           |     a0 = s0;
    0x0001ef20 jalr t9                               |     t9 ();
    0x0001ef24 subu v0, v0, s0                       |     __asm ("subu v0, v0, s0");
    0x0001ef28 lw gp, 0x10(sp)                       |     gp = *(var_10h_3);
    0x0001ef2c addiu v1, v0, -1                      |     v1 = v0 + -1;
                                                     |     if (v0 == 0) {
    0x0001ef30 beqz v0, 0x1ef94                      |         goto label_28;
                                                     |     }
    0x0001ef34 addu a0, s0, v1                       |     a0 = s0 + v1;
    0x0001ef38 addiu a1, zero, 0x2f                  |     a1 = 0x2f;
    0x0001ef3c lb a0, (a0)                           |     a0 = *(a0);
    0x0001ef40 addiu a1, zero, 0x5c                  |     a1 = 0x5c;
                                                     |     if (a0 == a1) {
    0x0001ef44 beq a0, a1, 0x1f990                   |         goto label_29;
                                                     |     }
    0x0001ef48 addiu a1, zero, 0x3a                  |     a1 = 0x3a;
                                                     |     if (a0 == a1) {
    0x0001ef4c beq a0, a1, 0x1f990                   |         goto label_29;
                                                     |     }
    0x0001ef50 addiu a0, zero, -1                    |     a0 = -1;
                                                     |     if (a0 == a1) {
    0x0001ef54 beq a0, a1, 0x1f990                   |         goto label_29;
                                                     |     }
    0x0001ef58 addiu a1, zero, 0x2f                  |     a1 = 0x2f;
    0x0001ef5c addiu a2, zero, 0x5c                  |     a2 = 0x5c;
    0x0001ef60 addiu a3, zero, 0x3a                  |     a3 = 0x3a;
    0x0001ef64 b 0x1ef88                             |     
                                                     |     while (fp != a0) {
    0x0001ef68 lb v0, (v0)                           |         v0 = *(v0);
                                                     |         if (v0 == a1) {
    0x0001ef6c beql v0, a1, 0x1efa0                  |             goto label_24;
                                                     |         }
    0x0001ef70 move v0, v1                           |         v0 = v1;
                                                     |         if (v0 == a2) {
    0x0001ef74 beql v0, a2, 0x1efa0                  |             goto label_24;
                                                     |         }
    0x0001ef78 move v0, v1                           |         v0 = v1;
    0x0001ef7c move v0, v1                           |         v0 = v1;
                                                     |         if (v0 == a3) {
    0x0001ef80 beq v0, a3, 0x1efa0                   |             goto label_24;
                                                     |         }
    0x0001ef84 move v1, fp                           |         v1 = fp;
    0x0001ef88 addiu fp, v1, -1                      |         fp = v1 + -1;
    0x0001ef8c addu v0, s0, fp                       |         v0 = s0 + fp;
    0x0001ef90 bne fp, a0, 0x1ef68                   |         
                                                     |     }
                                                     | label_28:
    0x0001ef94 sb zero, (s0)                         |     *(s0) = 0;
    0x0001ef98 addiu fp, zero, -1                    |     fp = -1;
    0x0001ef9c b 0x1efa8                             |     goto label_30;
                                                     | label_24:
    0x0001efa0 addu v0, s0, v0                       |     v0 = s0 + v0;
    0x0001efa4 sb zero, (v0)                         |     *(v0) = 0;
                                                     | label_30:
    0x0001efa8 lw t9, -0x7ae0(gp)                    |     t9 = sym.imp.strlen;
    0x0001efac move a0, s1                           |     a0 = s1;
    0x0001efb0 jalr t9                               |     t9 ();
    0x0001efb4 lw gp, 0x10(sp)                       |     gp = *(var_10h_3);
    0x0001efb8 lw t9, -0x7ab4(gp)                    |     t9 = sym.imp.malloc;
    0x0001efbc addiu a0, v0, 1                       |     a0 = v0 + 1;
    0x0001efc0 jalr t9                               |     t9 ();
    0x0001efc4 move s4, v0                           |     s4 = v0;
    0x0001efc8 lw gp, 0x10(sp)                       |     gp = *(var_10h_3);
                                                     |     if (v0 == 0) {
    0x0001efcc beqz v0, 0x1f848                      |         goto label_31;
                                                     |     }
                                                     | label_16:
    0x0001efd0 lw t9, -0x7ae0(gp)                    |     t9 = sym.imp.strlen;
    0x0001efd4 move a0, s1                           |     a0 = s1;
    0x0001efd8 jalr t9                               |     t9 ();
    0x0001efdc lw gp, 0x10(sp)                       |     gp = *(var_10h_3);
    0x0001efe0 move a0, s0                           |     a0 = s0;
    0x0001efe4 lw t9, -0x7ae0(gp)                    |     t9 = sym.imp.strlen;
    0x0001efe8 move s5, v0                           |     s5 = v0;
    0x0001efec jalr t9                               |     t9 ();
    0x0001eff0 move s6, v0                           |     s6 = v0;
    0x0001eff4 lw gp, 0x10(sp)                       |     gp = *(var_10h_3);
                                                     |     if (s5 != v0) {
    0x0001eff8 bne s5, v0, 0x1f6e8                   |         goto label_32;
                                                     |     }
    0x0001effc sb zero, (s4)                         |     *(s4) = 0;
                                                     | label_10:
    0x0001f000 lw t9, -0x7ae0(gp)                    |     t9 = sym.imp.strlen;
    0x0001f004 move a0, s2                           |     a0 = s2;
    0x0001f008 jalr t9                               |     t9 ();
    0x0001f00c lw gp, 0x10(sp)                       |     gp = *(var_10h_3);
    0x0001f010 lw t9, -0x7ab4(gp)                    |     t9 = sym.imp.malloc;
    0x0001f014 addiu a0, v0, 1                       |     a0 = v0 + 1;
    0x0001f018 jalr t9                               |     t9 ();
    0x0001f01c move s5, v0                           |     s5 = v0;
    0x0001f020 lw gp, 0x10(sp)                       |     gp = *(var_10h_3);
                                                     |     if (v0 == 0) {
    0x0001f024 beqz v0, 0x1f888                      |         goto label_33;
                                                     |     }
                                                     | label_18:
    0x0001f028 lw t9, -0x7ae0(gp)                    |     t9 = sym.imp.strlen;
    0x0001f02c move a0, s1                           |     a0 = s1;
    0x0001f030 jalr t9                               |     t9 ();
    0x0001f034 lw gp, 0x10(sp)                       |     gp = *(var_10h_3);
                                                     |     if (s6 != v0) {
    0x0001f038 bne s6, v0, 0x1f698                   |         goto label_34;
                                                     |     }
    0x0001f03c addiu v0, zero, -1                    |     v0 = -1;
    0x0001f040 sb zero, (s5)                         |     *(s5) = 0;
                                                     |     if (fp == v0) {
    0x0001f044 beq fp, v0, 0x1f6b4                   |         goto label_35;
                                                     |     }
                                                     | label_9:
    0x0001f048 lw s1, -0x7fbc(gp)                    |     s1 = *(gp);
    0x0001f04c lw s6, -0x7f90(gp)                    |     s6 = *(gp);
    0x0001f050 lw a0, -0x7f90(gp)                    |     a0 = *(gp);
    0x0001f054 lw t9, -0x7a84(gp)                    |     t9 = sym.imp.fwrite;
    0x0001f058 lw a3, (s1)                           |     a3 = *(s1);
    0x0001f05c addiu a2, zero, 0x12                  |     a2 = 0x12;
    0x0001f060 addiu a1, zero, 1                     |     a1 = 1;
                                                     |     /* str._n_nCould_not_find:_n */
    0x0001f064 addiu a0, a0, 0x77f0                  |     a0 += 0x77f0;
    0x0001f068 sw s6, 0x4c(sp)                       |     *(var_4ch) = s6;
    0x0001f06c jalr t9                               |     t9 ();
    0x0001f070 lw gp, 0x10(sp)                       |     gp = *(var_10h_3);
    0x0001f074 lw a0, (s1)                           |     a0 = *(s1);
                                                     |     /* esilref: '  &s
' */
    0x0001f078 addiu a2, s6, 0x77b4                  |     a2 = s6 + 0x77b4;
    0x0001f07c lw t9, -0x7b5c(gp)                    |     t9 = sym.imp.__fprintf_chk;
    0x0001f080 move a3, s2                           |     a3 = s2;
    0x0001f084 addiu a1, zero, 1                     |     a1 = 1;
    0x0001f088 jalr t9                               |     t9 ();
    0x0001f08c lw gp, 0x10(sp)                       |     gp = *(var_10h_3);
    0x0001f090 lw s7, -0x7f90(gp)                    |     s7 = *(gp);
    0x0001f094 lw v0, -0x7f90(gp)                    |     v0 = *(gp);
    0x0001f098 lw t9, -0x7a0c(gp)                    |     t9 = sym.imp.__ctype_toupper_loc;
    0x0001f09c sw s7, 0x3c(sp)                       |     *(var_3ch_2) = s7;
    0x0001f0a0 sw v0, 0x20(sp)                       |     *(var_20h_2) = v0;
    0x0001f0a4 jalr t9                               |     t9 ();
    0x0001f0a8 lw gp, 0x10(sp)                       |     gp = *(var_10h_3);
    0x0001f0ac move fp, v0                           |     fp = v0;
    0x0001f0b0 sw zero, 0x1c(sp)                     |     *(var_1ch_2) = 0;
    0x0001f0b4 lw v1, -0x7f90(gp)                    |     v1 = *(gp);
    0x0001f0b8 lw v0, -0x7f90(gp)                    |     v0 = *(gp);
    0x0001f0bc sw v1, 0x24(sp)                       |     *(var_24h_2) = v1;
    0x0001f0c0 lw v1, -0x7f90(gp)                    |     v1 = *(gp);
                                                     |     /* str._n_or_ENTER___try_reading_this_split_again_:_ */
    0x0001f0c4 addiu v0, v0, 0x78ac                  |     v0 += 0x78ac;
    0x0001f0c8 sw v1, 0x34(sp)                       |     *(var_34h_2) = v1;
    0x0001f0cc lw v1, -0x7f90(gp)                    |     v1 = *(gp);
    0x0001f0d0 sw v0, 0x28(sp)                       |     *(var_28h) = v0;
    0x0001f0d4 lw v0, -0x7f90(gp)                    |     v0 = *(gp);
    0x0001f0d8 sw v1, 0x48(sp)                       |     *(var_48h) = v1;
    0x0001f0dc lw v1, 0x76f4(s7)                     |     v1 = *((s7 + 7613));
                                                     |     /* str._n____e_______end_this_archive___no_more_splits_ */
    0x0001f0e0 addiu v0, v0, 0x78dc                  |     v0 += 0x78dc;
    0x0001f0e4 lw s6, -0x7af0(gp)                    |     s6 = *((gp - 7868));
    0x0001f0e8 sw v1, 0x40(sp)                       |     *(var_40h_2) = v1;
    0x0001f0ec addiu s7, sp, 0x54                    |     s7 = sp + 0x54;
    0x0001f0f0 sw v0, 0x44(sp)                       |     *(var_44h_2) = v0;
                                                     | label_4:
    0x0001f0f4 lw v0, 0x1c(sp)                       |     v0 = *(var_1ch_2);
    0x0001f0f8 lw a3, (s1)                           |     a3 = *(s1);
                                                     |     if (v0 != 0) {
    0x0001f0fc bnez v0, 0x1f338                      |         goto label_36;
                                                     |     }
    0x0001f100 lw v0, -0x7e7c(gp)                    |     v0 = *(gp);
    0x0001f104 addiu v1, zero, 1                     |     v1 = 1;
    0x0001f108 lw v0, (v0)                           |     v0 = *(v0);
    0x0001f10c addiu v1, zero, 2                     |     v1 = 2;
                                                     |     if (v0 == v1) {
    0x0001f110 beq v0, v1, 0x1f798                   |         goto label_37;
                                                     |     }
    0x0001f114 lw t9, -0x7a84(gp)                    |     t9 = sym.imp.fwrite;
    0x0001f118 addiu a2, zero, 0x35                  |     a2 = 0x35;
    0x0001f11c addiu a1, zero, 1                     |     a1 = 1;
                                                     |     if (v0 == v1) {
    0x0001f120 beq v0, v1, 0x1f700                   |         goto label_38;
                                                     |     }
    0x0001f124 lw v0, 0x20(sp)                       |     v0 = *(var_20h_2);
    0x0001f128 addiu a0, v0, 0x7804                  |     a0 = v0 + 0x7804;
                                                     | label_14:
    0x0001f12c jalr t9                               |     t9 ();
    0x0001f130 nop                                   |     
    0x0001f134 lw gp, 0x10(sp)                       |     gp = *(var_10h_3);
    0x0001f138 lw v0, 0x24(sp)                       |     v0 = *(var_24h_2);
    0x0001f13c lw a3, (s1)                           |     a3 = *(s1);
    0x0001f140 lw t9, -0x7a84(gp)                    |     t9 = sym.imp.fwrite;
    0x0001f144 addiu a2, zero, 0x22                  |     a2 = 0x22;
    0x0001f148 addiu a1, zero, 1                     |     a1 = 1;
    0x0001f14c addiu a0, v0, 0x783c                  |     a0 = v0 + 0x783c;
                                                     | label_11:
    0x0001f150 jalr t9                               |     t9 ();
    0x0001f154 nop                                   |     
    0x0001f158 lw gp, 0x10(sp)                       |     gp = *(var_10h_3);
    0x0001f15c lw a3, (s1)                           |     a3 = *(s1);
    0x0001f160 lw a0, 0x28(sp)                       |     a0 = *(var_28h);
    0x0001f164 lw t9, -0x7a84(gp)                    |     t9 = sym.imp.fwrite;
    0x0001f168 addiu a2, zero, 0x2c                  |     a2 = 0x2c;
    0x0001f16c addiu a1, zero, 1                     |     a1 = 1;
    0x0001f170 jalr t9                               |     t9 ();
    0x0001f174 lw gp, 0x10(sp)                       |     gp = *(var_10h_3);
                                                     | label_0:
    0x0001f178 lw t9, -0x7a30(gp)                    |     t9 = sym.imp.fflush;
    0x0001f17c lw a0, (s1)                           |     a0 = *(s1);
    0x0001f180 jalr t9                               |     t9 ();
    0x0001f184 lw gp, 0x10(sp)                       |     gp = *(var_10h_3);
    0x0001f188 lw a2, (s6)                           |     a2 = *(s6);
    0x0001f18c addiu a1, zero, 0x13aa                |     a1 = 0x13aa;
    0x0001f190 lw t9, -0x7a4c(gp)                    |     t9 = sym.imp.fgets;
    0x0001f194 move a0, s7                           |     a0 = s7;
    0x0001f198 jalr t9                               |     t9 ();
    0x0001f19c lb a3, 0x54(sp)                       |     a3 = *(var_54h);
    0x0001f1a0 lw gp, 0x10(sp)                       |     gp = *(var_10h_3);
                                                     |     if (a3 == 0) {
    0x0001f1a4 beqz a3, 0x1f1d8                      |         goto label_39;
                                                     |     }
    0x0001f1a8 addiu v0, zero, 0xa                   |     v0 = 0xa;
    0x0001f1ac addiu a0, zero, 1                     |     a0 = 1;
                                                     |     if (a3 == v0) {
    0x0001f1b0 beq a3, v0, 0x1f3a0                   |         goto label_40;
                                                     |     }
    0x0001f1b4 move v0, s7                           |     v0 = s7;
    0x0001f1b8 subu a0, a0, s7                       |     __asm ("subu a0, a0, s7");
    0x0001f1bc addiu a2, zero, 0xa                   |     a2 = 0xa;
    0x0001f1c0 b 0x1f1cc                             |     
                                                     |     while (v1 != 0) {
    0x0001f1c4 addiu v0, v0, 1                       |         v0++;
                                                     |         if (v1 == a2) {
    0x0001f1c8 beq v1, a2, 0x1f3a4                   |             goto label_41;
                                                     |         }
    0x0001f1cc lb v1, 1(v0)                          |         v1 = *((v0 + 1));
    0x0001f1d0 addu a1, a0, v0                       |         a1 = a0 + v0;
    0x0001f1d4 bnez v1, 0x1f1c4                      |         
                                                     |     }
                                                     |     do {
                                                     | label_39:
    0x0001f1d8 lw v0, (fp)                           |         v0 = *(fp);
    0x0001f1dc sll v1, a3, 2                         |         v1 = a3 << 2;
    0x0001f1e0 addiu a0, zero, 0x51                  |         a0 = 0x51;
    0x0001f1e4 lwx v1, v1(v0)                        |         __asm ("lwx v1, v1(v0)");
    0x0001f1e8 addiu v0, zero, 9                     |         v0 = 9;
                                                     |         if (v1 != a0) {
    0x0001f1ec beq v1, a0, 0x1f2a4                   |             
    0x0001f1f0 lw v0, -0x7e7c(gp)                    |             v0 = *(gp);
    0x0001f1f4 lw v0, (v0)                           |             v0 = *(v0);
    0x0001f1f8 addiu a0, v0, -1                      |             a0 = v0 + -1;
    0x0001f1fc sltiu a0, a0, 2                       |             a0 = (a0 < 2) ? 1 : 0;
    0x0001f200 addiu a0, zero, 0x53                  |             a0 = 0x53;
                                                     |             if (a0 != 0) {
    0x0001f204 bnez a0, 0x1f5b4                      |                 goto label_42;
                                                     |             }
    0x0001f208 addiu a0, zero, 0x43                  |             a0 = 0x43;
                                                     | label_5:
    0x0001f20c lw a0, -0x7f90(gp)                    |             a0 = *(gp);
                                                     |             if (v1 == a0) {
    0x0001f210 beq v1, a0, 0x1f8a8                   |                 goto label_43;
                                                     |             }
    0x0001f214 addiu a0, zero, 2                     |             a0 = 2;
    0x0001f218 addiu a0, zero, 0x45                  |             a0 = 0x45;
                                                     |             if (v0 == a0) {
    0x0001f21c beq v0, a0, 0x1f62c                   |                 goto label_44;
                                                     |             }
                                                     | label_8:
    0x0001f220 lw a1, -0x7f90(gp)                    |             a1 = *(gp);
                                                     |             if (a3 != 0) {
    0x0001f224 bnez a3, 0x1f3d8                      |                 goto label_22;
                                                     |             }
    0x0001f228 lw t9, -0x7b50(gp)                    |             t9 = sym.imp.fopen64;
    0x0001f22c addiu a1, a1, -0x1d48                 |             a1 += -0x1d48;
    0x0001f230 move a0, s2                           |             a0 = s2;
    0x0001f234 jalr t9                               |             t9 ();
    0x0001f238 lw gp, 0x10(sp)                       |             gp = *(var_10h_3);
                                                     |             if (v0 == 0) {
    0x0001f23c beqz v0, 0x1f570                      |                 goto label_45;
                                                     |             }
    0x0001f240 lw t9, -0x7b48(gp)                    |             t9 = sym.imp.fclose;
    0x0001f244 move a0, v0                           |             a0 = v0;
    0x0001f248 jalr t9                               |             t9 ();
    0x0001f24c lw gp, 0x10(sp)                       |             gp = *(var_10h_3);
    0x0001f250 lw a0, (s1)                           |             a0 = *(s1);
    0x0001f254 move a3, s2                           |             a3 = s2;
    0x0001f258 lw a2, -0x7f90(gp)                    |             a2 = *(gp);
    0x0001f25c lw t9, -0x7b5c(gp)                    |             t9 = sym.imp.__fprintf_chk;
                                                     |             /* str._nFound:___s_n */
    0x0001f260 addiu a2, a2, 0x79b0                  |             a2 += 0x79b0;
    0x0001f264 addiu a1, zero, 1                     |             a1 = 1;
    0x0001f268 jalr t9                               |             t9 ();
    0x0001f26c lw gp, 0x10(sp)                       |             gp = *(var_10h_3);
    0x0001f270 lw t9, -0x7a3c(gp)                    |             t9 = sym.imp.free;
    0x0001f274 move a0, s4                           |             a0 = s4;
    0x0001f278 jalr t9                               |             t9 ();
    0x0001f27c lw gp, 0x10(sp)                       |             gp = *(var_10h_3);
    0x0001f280 lw t9, -0x7a3c(gp)                    |             t9 = sym.imp.free;
    0x0001f284 move a0, s0                           |             a0 = s0;
    0x0001f288 jalr t9                               |             t9 ();
    0x0001f28c lw gp, 0x10(sp)                       |             gp = *(var_10h_3);
    0x0001f290 lw t9, -0x7a3c(gp)                    |             t9 = sym.imp.free;
    0x0001f294 move a0, s5                           |             a0 = s5;
    0x0001f298 jalr t9                               |             t9 ();
    0x0001f29c lw gp, 0x10(sp)                       |             gp = *(var_10h_3);
    0x0001f2a0 move v0, zero                         |             v0 = 0;
                                                     |         }
                                                     | label_6:
    0x0001f2a4 lw v1, 0x2c(sp)                       |         v1 = *(var_2ch_3);
                                                     | label_7:
    0x0001f2a8 lw a0, 0x1464(sp)                     |         a0 = *(var_1464h);
    0x0001f2ac lw v1, (v1)                           |         v1 = *(v1);
    0x0001f2b0 lw ra, 0x148c(sp)                     |         ra = *(var_148ch);
                                                     |         if (a0 != v1) {
    0x0001f2b4 bne a0, v1, 0x1f9e0                   |             goto label_46;
                                                     |         }
    0x0001f2b8 lw fp, 0x1488(sp)                     |         fp = *(var_1488h);
    0x0001f2bc lw s7, 0x1484(sp)                     |         s7 = *(var_1484h);
    0x0001f2c0 lw s6, 0x1480(sp)                     |         s6 = *(var_1480h);
    0x0001f2c4 lw s5, 0x147c(sp)                     |         s5 = *(var_147ch);
    0x0001f2c8 lw s4, 0x1478(sp)                     |         s4 = *(var_1478h);
    0x0001f2cc lw s3, 0x1474(sp)                     |         s3 = *(var_1474h);
    0x0001f2d0 lw s2, 0x1470(sp)                     |         s2 = *(var_1470h);
    0x0001f2d4 lw s1, 0x146c(sp)                     |         s1 = *(var_146ch);
    0x0001f2d8 lw s0, 0x1468(sp)                     |         s0 = *(var_1468h);
    0x0001f2dc addiu sp, sp, 0x1490                  |         
    0x0001f2e0 jr ra                                 |         return v0;
                                                     | label_1:
    0x0001f2e4 lw a1, -0x7f90(gp)                    |         a1 = *(gp);
    0x0001f2e8 lw t9, -0x7b50(gp)                    |         t9 = sym.imp.fopen64;
    0x0001f2ec sb zero, 1(v1)                        |         *((v1 + 1)) = 0;
    0x0001f2f0 addiu a1, a1, -0x1d48                 |         a1 += -0x1d48;
    0x0001f2f4 move a0, s2                           |         a0 = s2;
    0x0001f2f8 jalr t9                               |         t9 ();
    0x0001f2fc lw gp, 0x10(sp)                       |         gp = *(var_10h_3);
                                                     |         if (v0 == 0) {
    0x0001f300 beqz v0, 0x1f570                      |             goto label_45;
                                                     |         }
                                                     | label_3:
    0x0001f304 lw t9, -0x7b48(gp)                    |         t9 = sym.imp.fclose;
    0x0001f308 move a0, v0                           |         a0 = v0;
    0x0001f30c jalr t9                               |         t9 ();
    0x0001f310 lw gp, 0x10(sp)                       |         gp = *(var_10h_3);
    0x0001f314 lw a0, (s1)                           |         a0 = *(s1);
    0x0001f318 move a3, s2                           |         a3 = s2;
    0x0001f31c lw a2, -0x7f90(gp)                    |         a2 = *(gp);
    0x0001f320 lw t9, -0x7b5c(gp)                    |         t9 = sym.imp.__fprintf_chk;
                                                     |         /* str.Found:___s_n */
    0x0001f324 addiu a2, a2, 0x79a4                  |         a2 += 0x79a4;
    0x0001f328 addiu a1, zero, 1                     |         a1 = 1;
    0x0001f32c jalr t9                               |         t9 ();
    0x0001f330 lw gp, 0x10(sp)                       |         gp = *(var_10h_3);
    0x0001f334 lw a3, (s1)                           |         a3 = *(s1);
                                                     | label_36:
    0x0001f338 lw v0, 0x20(sp)                       |         v0 = *(var_20h_2);
    0x0001f33c lw t9, -0x7a84(gp)                    |         t9 = sym.imp.fwrite;
    0x0001f340 addiu a2, zero, 0x35                  |         a2 = 0x35;
    0x0001f344 addiu a1, zero, 1                     |         a1 = 1;
    0x0001f348 addiu a0, v0, 0x7804                  |         a0 = v0 + 0x7804;
    0x0001f34c jalr t9                               |         t9 ();
    0x0001f350 lw gp, 0x10(sp)                       |         gp = *(var_10h_3);
    0x0001f354 lw v0, 0x24(sp)                       |         v0 = *(var_24h_2);
    0x0001f358 lw a3, (s1)                           |         a3 = *(s1);
    0x0001f35c lw t9, -0x7a84(gp)                    |         t9 = sym.imp.fwrite;
    0x0001f360 addiu a2, zero, 0x22                  |         a2 = 0x22;
    0x0001f364 addiu a1, zero, 1                     |         a1 = 1;
    0x0001f368 addiu a0, v0, 0x783c                  |         a0 = v0 + 0x783c;
    0x0001f36c jalr t9                               |         t9 ();
    0x0001f370 lw gp, 0x10(sp)                       |         gp = *(var_10h_3);
    0x0001f374 lw a3, (s1)                           |         a3 = *(s1);
    0x0001f378 addiu a2, zero, 0x28                  |         a2 = 0x28;
    0x0001f37c lw a0, -0x7f90(gp)                    |         a0 = *(gp);
    0x0001f380 lw t9, -0x7a84(gp)                    |         t9 = sym.imp.fwrite;
    0x0001f384 addiu a1, zero, 1                     |         a1 = 1;
                                                     |         /* str._n_or_ENTER___continue_with_this_split_:_ */
    0x0001f388 addiu a0, a0, 0x7860                  |         a0 += 0x7860;
    0x0001f38c jalr t9                               |         t9 ();
    0x0001f390 addiu v0, zero, 1                     |         v0 = 1;
    0x0001f394 lw gp, 0x10(sp)                       |         gp = *(var_10h_3);
    0x0001f398 sw v0, 0x1c(sp)                       |         *(var_1ch_2) = v0;
    0x0001f39c b 0x1f178                             |         goto label_0;
                                                     | label_40:
    0x0001f3a0 move a1, zero                         |         a1 = 0;
                                                     | label_41:
    0x0001f3a4 addiu v0, sp, 0x1468                  |         v0 = sp + 0x1468;
    0x0001f3a8 addu a1, v0, a1                       |         a1 = v0 + a1;
    0x0001f3ac sb zero, -0x1414(a1)                  |         *((a1 - 5140)) = 0;
    0x0001f3b0 lb a3, 0x54(sp)                       |         a3 = *(var_54h);
    0x0001f3b4 b 0x1f1d8                             |         
                                                     |     } while (1);
                                                     | label_19:
    0x0001f3b8 move a1, zero                         |     a1 = 0;
                                                     | label_20:
    0x0001f3bc addiu v0, sp, 0x1468                  |     v0 = sp + 0x1468;
    0x0001f3c0 addu a1, v0, a1                       |     a1 = v0 + a1;
    0x0001f3c4 sb zero, -0x1414(a1)                  |     *((a1 - 5140)) = 0;
    0x0001f3c8 lb a3, 0x54(sp)                       |     a3 = *(var_54h);
    0x0001f3cc lw t9, -0x7b1c(gp)                    |     t9 = sym.imp.__strcpy_chk
                                                     |     if (a3 == 0) {
    0x0001f3d0 beqz a3, 0x1f970                      |         goto label_47;
                                                     |     }
    0x0001f3d4 sw zero, 0x1c(sp)                     |     *(var_1ch_2) = 0;
                                                     | label_22:
    0x0001f3d8 addiu v0, zero, 0x2e                  |     v0 = 0x2e;
    0x0001f3dc lb v0, 0x55(sp)                       |     v0 = *(var_55h);
                                                     |     if (a3 == v0) {
    0x0001f3e0 beq a3, v0, 0x1f788                   |         goto label_48;
                                                     |     }
                                                     | label_12:
    0x0001f3e4 lw t9, -0x7ae0(gp)                    |     t9 = sym.imp.strlen;
                                                     | label_13:
    0x0001f3e8 move a0, s7                           |     a0 = s7;
    0x0001f3ec jalr t9                               |     t9 ();
    0x0001f3f0 lw gp, 0x10(sp)                       |     gp = *(var_10h_3);
    0x0001f3f4 addu a0, s7, v0                       |     a0 = s7 + v0;
    0x0001f3f8 addiu a1, zero, 0x2f                  |     a1 = 0x2f;
    0x0001f3fc addiu a2, zero, 0x5c                  |     a2 = 0x5c;
    0x0001f400 addiu a3, zero, 0x3a                  |     a3 = 0x3a;
    0x0001f404 addiu t0, zero, -1                    |     t0 = -1;
                                                     |     do {
    0x0001f408 lb v1, (a0)                           |         v1 = *(a0);
                                                     |         if (v1 == a1) {
    0x0001f40c beql v1, a1, 0x1f5d8                  |             goto label_49;
                                                     |         }
    0x0001f410 addiu v1, sp, 0x1468                  |         v1 = sp + 0x1468;
                                                     |         if (v1 == a2) {
    0x0001f414 beql v1, a2, 0x1f5d8                  |             goto label_49;
                                                     |         }
    0x0001f418 addiu v1, sp, 0x1468                  |         v1 = sp + 0x1468;
    0x0001f41c addiu v1, sp, 0x1468                  |         v1 = sp + 0x1468;
                                                     |         if (v1 == a3) {
    0x0001f420 beq v1, a3, 0x1f5d8                   |             goto label_49;
                                                     |         }
    0x0001f424 addiu v0, v0, -1                      |         v0 += -1;
    0x0001f428 addiu a0, a0, -1                      |         a0 += -1;
    0x0001f42c bne v0, t0, 0x1f408                   |         
                                                     |     } while (v0 != t0);
    0x0001f430 lw t9, -0x7a3c(gp)                    |     t9 = sym.imp.free;
    0x0001f434 lw a0, (s3)                           |     a0 = *(s3);
    0x0001f438 jalr t9                               |     t9 ();
    0x0001f43c lw v0, 0x3c(sp)                       |     v0 = *(var_3ch_2);
    0x0001f440 lw gp, 0x10(sp)                       |     gp = *(var_10h_3);
    0x0001f444 addiu v0, v0, 0x76f4                  |     v0 += 0x76f4;
    0x0001f448 lw a3, 0x40(sp)                       |     a3 = *(var_40h_2);
    0x0001f44c lw a2, 4(v0)                          |     a2 = *((v0 + 1));
    0x0001f450 lw a1, 8(v0)                          |     a1 = *((v0 + 2));
    0x0001f454 lw v1, 0xc(v0)                        |     v1 = *((v0 + 3));
    0x0001f458 lw v0, 0x10(v0)                       |     v0 = *((v0 + 4));
    0x0001f45c lw t9, -0x7ae0(gp)                    |     t9 = sym.imp.strlen;
    0x0001f460 sw a2, 4(s7)                          |     *((s7 + 1)) = a2;
    0x0001f464 move a0, s4                           |     a0 = s4;
    0x0001f468 sw a3, (s7)                           |     *(s7) = a3;
    0x0001f46c sw a1, 8(s7)                          |     *((s7 + 2)) = a1;
    0x0001f470 sw v1, 0xc(s7)                        |     *((s7 + 3)) = v1;
    0x0001f474 sw v0, 0x10(s7)                       |     *((s7 + 4)) = v0;
    0x0001f478 jalr t9                               |     t9 ();
    0x0001f47c lw gp, 0x10(sp)                       |     gp = *(var_10h_3);
    0x0001f480 addiu a0, v0, 0x28                    |     a0 = v0 + 0x28;
    0x0001f484 lw t9, -0x7ab4(gp)                    |     t9 = sym.imp.malloc;
    0x0001f488 sw v0, 0x38(sp)                       |     *(var_38h_3) = v0;
    0x0001f48c jalr t9                               |     t9 ();
    0x0001f490 lw gp, 0x10(sp)                       |     gp = *(var_10h_3);
    0x0001f494 sw v0, (s3)                           |     *(s3) = v0;
    0x0001f498 lw a2, 0x38(sp)                       |     a2 = *(var_38h_3);
                                                     |     if (v0 == 0) {
    0x0001f49c beqz v0, 0x1f9b8                      |         goto label_50;
                                                     |     }
                                                     | label_26:
    0x0001f4a0 lw t9, -0x7a40(gp)                    |     t9 = sym.imp.memcpy;
    0x0001f4a4 addiu a2, a2, 1                       |     a2++;
    0x0001f4a8 move a1, s4                           |     a1 = s4;
    0x0001f4ac move a0, v0                           |     a0 = v0;
    0x0001f4b0 jalr t9                               |     t9 ();
    0x0001f4b4 lw gp, 0x10(sp)                       |     gp = *(var_10h_3);
                                                     | label_15:
    0x0001f4b8 lw t9, -0x7a3c(gp)                    |     t9 = sym.imp.free;
    0x0001f4bc move a0, s2                           |     a0 = s2;
    0x0001f4c0 jalr t9                               |     t9 ();
    0x0001f4c4 lw a1, 0x1490(sp)                     |     a1 = *(var_1490h);
    0x0001f4c8 lw t9, 0x30(sp)                       |     t9 = *(var_30h_2);
    0x0001f4cc lw a0, (s3)                           |     a0 = *(s3);
    0x0001f4d0 jalr t9                               |     t9 ();
    0x0001f4d4 lw gp, 0x10(sp)                       |     gp = *(var_10h_3);
    0x0001f4d8 move a0, s0                           |     a0 = s0;
    0x0001f4dc lw t9, -0x7a3c(gp)                    |     t9 = sym.imp.free;
    0x0001f4e0 move s2, v0                           |     s2 = v0;
    0x0001f4e4 jalr t9                               |     t9 ();
    0x0001f4e8 lw gp, 0x10(sp)                       |     gp = *(var_10h_3);
    0x0001f4ec lw a1, (s3)                           |     a1 = *(s3);
    0x0001f4f0 lw t9, -0x7ae0(gp)                    |     t9 = sym.imp.strlen;
    0x0001f4f4 move a0, a1                           |     a0 = a1;
    0x0001f4f8 sw a1, 0x38(sp)                       |     *(var_38h_3) = a1;
    0x0001f4fc jalr t9                               |     t9 ();
    0x0001f500 lw gp, 0x10(sp)                       |     gp = *(var_10h_3);
    0x0001f504 lw t9, -0x7ab4(gp)                    |     t9 = sym.imp.malloc;
    0x0001f508 addiu a0, v0, 0x28                    |     a0 = v0 + 0x28;
    0x0001f50c jalr t9                               |     t9 ();
    0x0001f510 move s0, v0                           |     s0 = v0;
    0x0001f514 lw gp, 0x10(sp)                       |     gp = *(var_10h_3);
    0x0001f518 lw a1, 0x38(sp)                       |     a1 = *(var_38h_3);
                                                     |     if (v0 == 0) {
    0x0001f51c beqz v0, 0x1f94c                      |         goto label_51;
                                                     |     }
                                                     | label_23:
    0x0001f520 lw t9, -0x7a60(gp)                    |     t9 = sym.imp.stpcpy;
    0x0001f524 move a0, s0                           |     a0 = s0;
    0x0001f528 jalr t9                               |     t9 ();
    0x0001f52c lw gp, 0x10(sp)                       |     gp = *(var_10h_3);
    0x0001f530 subu v0, v0, s0                       |     __asm ("subu v0, v0, s0");
    0x0001f534 addiu a1, zero, 0x2f                  |     a1 = 0x2f;
    0x0001f538 addiu a2, zero, -1                    |     a2 = -1;
    0x0001f53c addu v1, s0, v0                       |     v1 = s0 + v0;
                                                     | label_2:
    0x0001f540 lb a0, (v1)                           |     a0 = *(v1);
    0x0001f544 addiu v0, v0, -1                      |     v0 += -1;
                                                     |     if (a0 == a1) {
    0x0001f548 beq a0, a1, 0x1f2e4                   |         goto label_1;
                                                     |     }
    0x0001f54c addu v1, s0, v0                       |     v1 = s0 + v0;
                                                     |     if (v0 != a2) {
    0x0001f550 bne v0, a2, 0x1f540                   |         goto label_2;
                                                     |     }
    0x0001f554 lw a1, -0x7f90(gp)                    |     a1 = *(gp);
    0x0001f558 lw t9, -0x7b50(gp)                    |     t9 = sym.imp.fopen64;
    0x0001f55c addiu a1, a1, -0x1d48                 |     a1 += -0x1d48;
    0x0001f560 move a0, s2                           |     a0 = s2;
    0x0001f564 jalr t9                               |     t9 ();
    0x0001f568 lw gp, 0x10(sp)                       |     gp = *(var_10h_3);
                                                     |     if (v0 != 0) {
    0x0001f56c bnez v0, 0x1f304                      |         goto label_3;
                                                     |     }
                                                     | label_45:
    0x0001f570 lw a0, -0x7f90(gp)                    |     a0 = *(gp);
    0x0001f574 lw t9, -0x7a84(gp)                    |     t9 = sym.imp.fwrite;
    0x0001f578 lw a3, (s1)                           |     a3 = *(s1);
    0x0001f57c addiu a2, zero, 0x18                  |     a2 = 0x18;
    0x0001f580 addiu a1, zero, 1                     |     a1 = 1;
                                                     |     /* str._nCould_not_find_or_open_n */
    0x0001f584 addiu a0, a0, 0x7988                  |     a0 += 0x7988;
    0x0001f588 jalr t9                               |     t9 ();
    0x0001f58c lw gp, 0x10(sp)                       |     gp = *(var_10h_3);
    0x0001f590 lw v0, 0x4c(sp)                       |     v0 = *(var_4ch);
    0x0001f594 lw a0, (s1)                           |     a0 = *(s1);
    0x0001f598 lw t9, -0x7b5c(gp)                    |     t9 = sym.imp.__fprintf_chk;
    0x0001f59c move a3, s2                           |     a3 = s2;
    0x0001f5a0 addiu a2, v0, 0x77b4                  |     a2 = v0 + 0x77b4;
    0x0001f5a4 addiu a1, zero, 1                     |     a1 = 1;
    0x0001f5a8 jalr t9                               |     t9 ();
    0x0001f5ac lw gp, 0x10(sp)                       |     gp = *(var_10h_3);
    0x0001f5b0 b 0x1f0f4                             |     goto label_4;
                                                     | label_42:
    0x0001f5b4 addiu a0, zero, 0x43                  |     a0 = 0x43;
                                                     |     if (v1 != a0) {
    0x0001f5b8 bne v1, a0, 0x1f20c                   |         goto label_5;
                                                     |     }
    0x0001f5bc lw v1, -0x7f94(gp)                    |     v1 = *(gp);
    0x0001f5c0 lw a0, -0x7d7c(gp)                    |     a0 = *(gp);
    0x0001f5c4 addiu v0, zero, 3                     |     v0 = 3;
    0x0001f5c8 lw v1, (v1)                           |     v1 = *(v1);
    0x0001f5cc addiu v1, v1, 1                       |     v1++;
    0x0001f5d0 sw v1, (a0)                           |     *(a0) = v1;
    0x0001f5d4 b 0x1f2a4                             |     goto label_6;
                                                     | label_49:
    0x0001f5d8 addu v0, v1, v0                       |     v0 = v1 + v0;
    0x0001f5dc lw t9, -0x7a3c(gp)                    |     t9 = sym.imp.free;
    0x0001f5e0 lw a0, (s3)                           |     a0 = *(s3);
    0x0001f5e4 sb zero, -0x1413(v0)                  |     *((v0 - 5139)) = 0;
    0x0001f5e8 jalr t9                               |     t9 ();
    0x0001f5ec lw gp, 0x10(sp)                       |     gp = *(var_10h_3);
    0x0001f5f0 lw t9, -0x7ae0(gp)                    |     t9 = sym.imp.strlen;
    0x0001f5f4 move a0, s7                           |     a0 = s7;
    0x0001f5f8 jalr t9                               |     t9 ();
    0x0001f5fc lw gp, 0x10(sp)                       |     gp = *(var_10h_3);
    0x0001f600 addu v1, s7, v0                       |     v1 = s7 + v0;
    0x0001f604 addiu a1, zero, 0x2f                  |     a1 = 0x2f;
    0x0001f608 addiu a2, zero, -1                    |     a2 = -1;
                                                     |     do {
    0x0001f60c lb a0, (v1)                           |         a0 = *(v1);
                                                     |         if (a0 == a1) {
    0x0001f610 beql a0, a1, 0x1f7d0                  |             goto label_52;
                                                     |         }
    0x0001f614 addiu v1, sp, 0x1468                  |         v1 = sp + 0x1468;
    0x0001f618 addiu v0, v0, -1                      |         v0 += -1;
    0x0001f61c addiu v1, v1, -1                      |         v1 += -1;
    0x0001f620 bne v0, a2, 0x1f60c                   |         
                                                     |     } while (v0 != a2);
    0x0001f624 sb zero, 0x54(sp)                     |     *(var_54h) = 0;
    0x0001f628 b 0x1f7d8                             |     goto label_53;
                                                     |     if (v1 == a0) {
                                                     | label_44:
    0x0001f62c beql v1, a0, 0x1f2a8                  |         goto label_7;
                                                     |     }
    0x0001f630 lw v1, 0x2c(sp)                       |     v1 = *(var_2ch_3);
    0x0001f634 addiu v0, zero, 0x5a                  |     v0 = 0x5a;
    0x0001f638 lw v0, 0x1490(sp)                     |     v0 = *(var_1490h);
                                                     |     if (v1 != v0) {
    0x0001f63c bne v1, v0, 0x1f220                   |         goto label_8;
                                                     |     }
    0x0001f640 lw t9, -0x7a3c(gp)                    |     t9 = sym.imp.free;
    0x0001f644 addiu v1, v0, 1                       |     v1 = v0 + 1;
    0x0001f648 lw v0, -0x7dec(gp)                    |     v0 = *(gp);
    0x0001f64c move a0, s2                           |     a0 = s2;
    0x0001f650 sw v1, (v0)                           |     *(v0) = v1;
    0x0001f654 jalr t9                               |     t9 ();
    0x0001f658 lw a0, (s3)                           |     a0 = *(s3);
    0x0001f65c lw t9, 0x30(sp)                       |     t9 = *(var_30h_2);
    0x0001f660 lw a1, 0x1490(sp)                     |     a1 = *(var_1490h);
    0x0001f664 jalr t9                               |     t9 ();
    0x0001f668 lw gp, 0x10(sp)                       |     gp = *(var_10h_3);
    0x0001f66c addiu a3, zero, 0x140e                |     a3 = 0x140e;
    0x0001f670 addiu a2, zero, 0x13aa                |     a2 = 0x13aa;
    0x0001f674 lw t9, -0x7b60(gp)                    |     t9 = sym.imp.__strncat_chk;
    0x0001f678 move a1, v0                           |     a1 = v0;
    0x0001f67c move a0, s7                           |     a0 = s7;
    0x0001f680 sb zero, 0x54(sp)                     |     *(var_54h) = 0;
    0x0001f684 move s2, v0                           |     s2 = v0;
    0x0001f688 jalr t9                               |     t9 ();
    0x0001f68c lw gp, 0x10(sp)                       |     gp = *(var_10h_3);
    0x0001f690 lb a3, 0x54(sp)                       |     a3 = *(var_54h);
    0x0001f694 b 0x1f220                             |     goto label_8;
                                                     | label_34:
    0x0001f698 lw t9, -0x7a9c(gp)                    |     t9 = sym.imp.strcpy
    0x0001f69c addu a1, s2, s6                       |     a1 = s2 + s6;
    0x0001f6a0 move a0, s5                           |     a0 = s5;
    0x0001f6a4 jalr t9                               |     t9 ();
    0x0001f6a8 addiu v0, zero, -1                    |     v0 = -1;
    0x0001f6ac lw gp, 0x10(sp)                       |     gp = *(var_10h_3);
                                                     |     if (fp != v0) {
    0x0001f6b0 bne fp, v0, 0x1f048                   |         goto label_9;
                                                     |     }
                                                     | label_35:
    0x0001f6b4 lw v1, -0x7f90(gp)                    |     v1 = *(gp);
                                                     |     /* str._current_directory_ */
    0x0001f6b8 addiu v0, v1, 0x76f4                  |     v0 = v1 + 0x76f4;
    0x0001f6bc lw a2, 0x76f4(v1)                     |     a2 = *((v1 + 7613));
    0x0001f6c0 lw a1, 4(v0)                          |     a1 = *((v0 + 1));
    0x0001f6c4 lw a0, 8(v0)                          |     a0 = *((v0 + 2));
    0x0001f6c8 lw v1, 0xc(v0)                        |     v1 = *((v0 + 3));
    0x0001f6cc lw v0, 0x10(v0)                       |     v0 = *((v0 + 4));
    0x0001f6d0 sw a2, (s0)                           |     *(s0) = a2;
    0x0001f6d4 sw a1, 4(s0)                          |     *((s0 + 1)) = a1;
    0x0001f6d8 sw a0, 8(s0)                          |     *((s0 + 2)) = a0;
    0x0001f6dc sw v1, 0xc(s0)                        |     *((s0 + 3)) = v1;
    0x0001f6e0 sw v0, 0x10(s0)                       |     *((s0 + 4)) = v0;
    0x0001f6e4 b 0x1f048                             |     goto label_9;
                                                     | label_32:
    0x0001f6e8 lw t9, -0x7a9c(gp)                    |     t9 = sym.imp.strcpy
    0x0001f6ec addu a1, s1, v0                       |     a1 = s1 + v0;
    0x0001f6f0 move a0, s4                           |     a0 = s4;
    0x0001f6f4 jalr t9                               |     t9 ();
    0x0001f6f8 lw gp, 0x10(sp)                       |     gp = *(var_10h_3);
    0x0001f6fc b 0x1f000                             |     goto label_10;
                                                     | label_38:
    0x0001f700 lw v0, 0x20(sp)                       |     v0 = *(var_20h_2);
    0x0001f704 addiu a0, v0, 0x7804                  |     a0 = v0 + 0x7804;
    0x0001f708 jalr t9                               |     t9 ();
    0x0001f70c lw gp, 0x10(sp)                       |     gp = *(var_10h_3);
    0x0001f710 lw v0, 0x34(sp)                       |     v0 = *(var_34h_2);
    0x0001f714 lw a3, (s1)                           |     a3 = *(s1);
    0x0001f718 lw t9, -0x7a84(gp)                    |     t9 = sym.imp.fwrite;
    0x0001f71c addiu a2, zero, 0x1d                  |     a2 = 0x1d;
    0x0001f720 addiu a1, zero, 1                     |     a1 = 1;
    0x0001f724 addiu a0, v0, 0x788c                  |     a0 = v0 + 0x788c;
    0x0001f728 jalr t9                               |     t9 ();
    0x0001f72c lw gp, 0x10(sp)                       |     gp = *(var_10h_3);
    0x0001f730 lw v0, 0x24(sp)                       |     v0 = *(var_24h_2);
    0x0001f734 lw a3, (s1)                           |     a3 = *(s1);
    0x0001f738 lw t9, -0x7a84(gp)                    |     t9 = sym.imp.fwrite;
    0x0001f73c addiu a2, zero, 0x22                  |     a2 = 0x22;
    0x0001f740 addiu a1, zero, 1                     |     a1 = 1;
    0x0001f744 addiu a0, v0, 0x783c                  |     a0 = v0 + 0x783c;
    0x0001f748 jalr t9                               |     t9 ();
    0x0001f74c lw gp, 0x10(sp)                       |     gp = *(var_10h_3);
    0x0001f750 lw a3, (s1)                           |     a3 = *(s1);
    0x0001f754 lw a0, 0x44(sp)                       |     a0 = *(var_44h_2);
    0x0001f758 lw t9, -0x7a84(gp)                    |     t9 = sym.imp.fwrite;
    0x0001f75c addiu a2, zero, 0x2f                  |     a2 = 0x2f;
    0x0001f760 addiu a1, zero, 1                     |     a1 = 1;
    0x0001f764 jalr t9                               |     t9 ();
    0x0001f768 lw gp, 0x10(sp)                       |     gp = *(var_10h_3);
    0x0001f76c lw v0, 0x48(sp)                       |     v0 = *(var_48h);
    0x0001f770 lw a3, (s1)                           |     a3 = *(s1);
    0x0001f774 lw t9, -0x7a84(gp)                    |     t9 = sym.imp.fwrite;
    0x0001f778 addiu a2, zero, 0x32                  |     a2 = 0x32;
    0x0001f77c addiu a1, zero, 1                     |     a1 = 1;
    0x0001f780 addiu a0, v0, 0x790c                  |     a0 = v0 + 0x790c;
    0x0001f784 b 0x1f150                             |     goto label_11;
                                                     |     if (v0 == 0) {
                                                     | label_48:
    0x0001f788 beql v0, zero, 0x1f3e4                |         goto label_12;
                                                     |     }
    0x0001f78c sb zero, 0x54(sp)                     |     *(var_54h) = 0;
    0x0001f790 lw t9, -0x7ae0(gp)                    |     t9 = sym.imp.strlen;
    0x0001f794 b 0x1f3e8                             |     goto label_13;
                                                     | label_37:
    0x0001f798 lw v0, 0x20(sp)                       |     v0 = *(var_20h_2);
    0x0001f79c lw t9, -0x7a84(gp)                    |     t9 = sym.imp.fwrite;
    0x0001f7a0 addiu a2, zero, 0x35                  |     a2 = 0x35;
    0x0001f7a4 addiu a1, zero, 1                     |     a1 = 1;
    0x0001f7a8 addiu a0, v0, 0x7804                  |     a0 = v0 + 0x7804;
    0x0001f7ac jalr t9                               |     t9 ();
    0x0001f7b0 lw gp, 0x10(sp)                       |     gp = *(var_10h_3);
    0x0001f7b4 lw v0, 0x34(sp)                       |     v0 = *(var_34h_2);
    0x0001f7b8 lw a3, (s1)                           |     a3 = *(s1);
    0x0001f7bc lw t9, -0x7a84(gp)                    |     t9 = sym.imp.fwrite;
    0x0001f7c0 addiu a2, zero, 0x1d                  |     a2 = 0x1d;
    0x0001f7c4 addiu a1, zero, 1                     |     a1 = 1;
    0x0001f7c8 addiu a0, v0, 0x788c                  |     a0 = v0 + 0x788c;
    0x0001f7cc b 0x1f12c                             |     goto label_14;
                                                     | label_52:
    0x0001f7d0 addu v0, v1, v0                       |     v0 = v1 + v0;
    0x0001f7d4 sb zero, -0x1413(v0)                  |     *((v0 - 5139)) = 0;
                                                     | label_53:
    0x0001f7d8 lw t9, -0x7ae0(gp)                    |     t9 = sym.imp.strlen;
    0x0001f7dc move a0, s7                           |     a0 = s7;
    0x0001f7e0 jalr t9                               |     t9 ();
    0x0001f7e4 lw gp, 0x10(sp)                       |     gp = *(var_10h_3);
    0x0001f7e8 move a0, s4                           |     a0 = s4;
    0x0001f7ec lw t9, -0x7ae0(gp)                    |     t9 = sym.imp.strlen;
    0x0001f7f0 sw v0, 0x38(sp)                       |     *(var_38h_3) = v0;
    0x0001f7f4 jalr t9                               |     t9 ();
    0x0001f7f8 lw gp, 0x10(sp)                       |     gp = *(var_10h_3);
    0x0001f7fc lw v1, 0x38(sp)                       |     v1 = *(var_38h_3);
    0x0001f800 addu v0, v1, v0                       |     v0 = v1 + v0;
    0x0001f804 lw t9, -0x7ab4(gp)                    |     t9 = sym.imp.malloc;
    0x0001f808 addiu a0, v0, 0x28                    |     a0 = v0 + 0x28;
    0x0001f80c jalr t9                               |     t9 ();
    0x0001f810 lw gp, 0x10(sp)                       |     gp = *(var_10h_3);
    0x0001f814 sw v0, (s3)                           |     *(s3) = v0;
                                                     |     if (v0 == 0) {
    0x0001f818 beqz v0, 0x1f998                      |         goto label_54;
                                                     |     }
                                                     | label_25:
    0x0001f81c lw t9, -0x7a9c(gp)                    |     t9 = sym.imp.strcpy
    0x0001f820 move a1, s7                           |     a1 = s7;
    0x0001f824 move a0, v0                           |     a0 = v0;
    0x0001f828 jalr t9                               |     t9 ();
    0x0001f82c lw gp, 0x10(sp)                       |     gp = *(var_10h_3);
    0x0001f830 lw a0, (s3)                           |     a0 = *(s3);
    0x0001f834 lw t9, -0x7a94(gp)                    |     t9 = sym.imp.strcat;
    0x0001f838 move a1, s4                           |     a1 = s4;
    0x0001f83c jalr t9                               |     t9 ();
    0x0001f840 lw gp, 0x10(sp)                       |     gp = *(var_10h_3);
    0x0001f844 b 0x1f4b8                             |     goto label_15;
                                                     | label_31:
    0x0001f848 lw a1, -0x7f90(gp)                    |     a1 = *(gp);
    0x0001f84c lw t9, -0x7f28(gp)                    |     t9 = sym.ziperr;
                                                     |     /* str.split_path */
    0x0001f850 addiu a1, a1, 0x76e8                  |     a1 += 0x76e8;
    0x0001f854 addiu a0, zero, 4                     |     a0 = 4;
    0x0001f858 bal 0xd694                            |     sym_ziperr ();
    0x0001f85c lw gp, 0x10(sp)                       |     gp = *(var_10h_3);
    0x0001f860 lw s1, (s3)                           |     s1 = *(s3);
    0x0001f864 b 0x1efd0                             |     goto label_16;
                                                     | label_27:
    0x0001f868 lw a1, -0x7f90(gp)                    |     a1 = *(gp);
    0x0001f86c lw t9, -0x7f28(gp)                    |     t9 = sym.ziperr;
                                                     |     /* str.split_path */
    0x0001f870 addiu a1, a1, 0x76e8                  |     a1 += 0x76e8;
    0x0001f874 addiu a0, zero, 4                     |     a0 = 4;
    0x0001f878 bal 0xd694                            |     sym_ziperr ();
    0x0001f87c lw gp, 0x10(sp)                       |     gp = *(var_10h_3);
    0x0001f880 lw s1, (s3)                           |     s1 = *(s3);
    0x0001f884 b 0x1ef14                             |     goto label_17;
                                                     | label_33:
    0x0001f888 lw a1, -0x7f90(gp)                    |     a1 = *(gp);
    0x0001f88c lw t9, -0x7f28(gp)                    |     t9 = sym.ziperr;
                                                     |     /* str.split_path */
    0x0001f890 addiu a1, a1, 0x76e8                  |     a1 += 0x76e8;
    0x0001f894 addiu a0, zero, 4                     |     a0 = 4;
    0x0001f898 bal 0xd694                            |     sym_ziperr ();
    0x0001f89c lw gp, 0x10(sp)                       |     gp = *(var_10h_3);
    0x0001f8a0 lw s1, (s3)                           |     s1 = *(s3);
    0x0001f8a4 b 0x1f028                             |     goto label_18;
                                                     | label_43:
    0x0001f8a8 lw t9, -0x7a84(gp)                    |     t9 = sym.imp.fwrite;
    0x0001f8ac lw a3, (s1)                           |     a3 = *(s1);
    0x0001f8b0 addiu a2, zero, 0x43                  |     a2 = 0x43;
    0x0001f8b4 addiu a1, zero, 1                     |     a1 = 1;
                                                     |     /* str._nEnter_path_where_this_split_is__ENTER__same_dir__.__current_dir_ */
    0x0001f8b8 addiu a0, a0, 0x7940                  |     a0 += 0x7940;
    0x0001f8bc jalr t9                               |     t9 ();
    0x0001f8c0 lw gp, 0x10(sp)                       |     gp = *(var_10h_3);
    0x0001f8c4 lw a3, (s1)                           |     a3 = *(s1);
    0x0001f8c8 addiu a2, zero, 3                     |     a2 = 3;
    0x0001f8cc lw a0, -0x7f90(gp)                    |     a0 = *(gp);
    0x0001f8d0 lw t9, -0x7a84(gp)                    |     t9 = sym.imp.fwrite;
    0x0001f8d4 addiu a1, zero, 1                     |     a1 = 1;
                                                     |     /* esilref: '
: ' */
    0x0001f8d8 addiu a0, a0, 0x7984                  |     a0 += 0x7984;
    0x0001f8dc jalr t9                               |     t9 ();
    0x0001f8e0 lw gp, 0x10(sp)                       |     gp = *(var_10h_3);
    0x0001f8e4 lw t9, -0x7a30(gp)                    |     t9 = sym.imp.fflush;
    0x0001f8e8 lw a0, (s1)                           |     a0 = *(s1);
    0x0001f8ec jalr t9                               |     t9 ();
    0x0001f8f0 lw gp, 0x10(sp)                       |     gp = *(var_10h_3);
    0x0001f8f4 lw a2, (s6)                           |     a2 = *(s6);
    0x0001f8f8 addiu a1, zero, 0x13aa                |     a1 = 0x13aa;
    0x0001f8fc lw t9, -0x7a4c(gp)                    |     t9 = sym.imp.fgets;
    0x0001f900 move a0, s7                           |     a0 = s7;
    0x0001f904 jalr t9                               |     t9 ();
    0x0001f908 lb a3, 0x54(sp)                       |     a3 = *(var_54h);
    0x0001f90c lw gp, 0x10(sp)                       |     gp = *(var_10h_3);
                                                     |     if (a3 == 0) {
    0x0001f910 beqz a3, 0x1f96c                      |         goto label_55;
                                                     |     }
    0x0001f914 addiu v0, zero, 0xa                   |     v0 = 0xa;
    0x0001f918 addiu a0, zero, 1                     |     a0 = 1;
                                                     |     if (a3 == v0) {
    0x0001f91c beq a3, v0, 0x1f3b8                   |         goto label_19;
                                                     |     }
    0x0001f920 move v0, s7                           |     v0 = s7;
    0x0001f924 subu a0, a0, s7                       |     __asm ("subu a0, a0, s7");
    0x0001f928 addiu a2, zero, 0xa                   |     a2 = 0xa;
    0x0001f92c b 0x1f938                             |     goto label_56;
                                                     | label_21:
    0x0001f930 addiu v0, v0, 1                       |     v0++;
                                                     |     if (v1 == a2) {
    0x0001f934 beq v1, a2, 0x1f3bc                   |         goto label_20;
                                                     |     }
                                                     | label_56:
    0x0001f938 lb v1, 1(v0)                          |     v1 = *((v0 + 1));
    0x0001f93c addu a1, a0, v0                       |     a1 = a0 + v0;
                                                     |     if (v1 != 0) {
    0x0001f940 bnez v1, 0x1f930                      |         goto label_21;
                                                     |     }
    0x0001f944 sw zero, 0x1c(sp)                     |     *(var_1ch_2) = 0;
    0x0001f948 b 0x1f3d8                             |     goto label_22;
                                                     | label_51:
    0x0001f94c lw a1, -0x7f90(gp)                    |     a1 = *(gp);
    0x0001f950 lw t9, -0x7f28(gp)                    |     t9 = sym.ziperr;
                                                     |     /* str.split_path */
    0x0001f954 addiu a1, a1, 0x76e8                  |     a1 += 0x76e8;
    0x0001f958 addiu a0, zero, 4                     |     a0 = 4;
    0x0001f95c bal 0xd694                            |     sym_ziperr ();
    0x0001f960 lw gp, 0x10(sp)                       |     gp = *(var_10h_3);
    0x0001f964 lw a1, (s3)                           |     a1 = *(s3);
    0x0001f968 b 0x1f520                             |     goto label_23;
                                                     | label_55:
    0x0001f96c lw t9, -0x7b1c(gp)                    |     t9 = sym.imp.__strcpy_chk
                                                     | label_47:
    0x0001f970 addiu a2, zero, 0x140e                |     a2 = 0x140e;
    0x0001f974 move a1, s2                           |     a1 = s2;
    0x0001f978 move a0, s7                           |     a0 = s7;
    0x0001f97c jalr t9                               |     t9 ();
    0x0001f980 lw gp, 0x10(sp)                       |     gp = *(var_10h_3);
    0x0001f984 sw zero, 0x1c(sp)                     |     *(var_1ch_2) = 0;
    0x0001f988 lb a3, 0x54(sp)                       |     a3 = *(var_54h);
    0x0001f98c b 0x1f220                             |     goto label_8;
                                                     | label_29:
    0x0001f990 move fp, v1                           |     fp = v1;
    0x0001f994 b 0x1efa0                             |     goto label_24;
                                                     | label_54:
    0x0001f998 lw a1, -0x7f90(gp)                    |     a1 = *(gp);
    0x0001f99c lw t9, -0x7f28(gp)                    |     t9 = sym.ziperr;
                                                     |     /* str.split_path */
    0x0001f9a0 addiu a1, a1, 0x76e8                  |     a1 += 0x76e8;
    0x0001f9a4 addiu a0, zero, 4                     |     a0 = 4;
    0x0001f9a8 bal 0xd694                            |     sym_ziperr ();
    0x0001f9ac lw gp, 0x10(sp)                       |     gp = *(var_10h_3);
    0x0001f9b0 lw v0, (s3)                           |     v0 = *(s3);
    0x0001f9b4 b 0x1f81c                             |     goto label_25;
                                                     | label_50:
    0x0001f9b8 lw a1, -0x7f90(gp)                    |     a1 = *(gp);
    0x0001f9bc lw t9, -0x7f28(gp)                    |     t9 = sym.ziperr;
    0x0001f9c0 sw a2, 0x38(sp)                       |     *(var_38h_3) = a2;
                                                     |     /* str.split_path */
    0x0001f9c4 addiu a1, a1, 0x76e8                  |     a1 += 0x76e8;
    0x0001f9c8 addiu a0, zero, 4                     |     a0 = 4;
    0x0001f9cc bal 0xd694                            |     sym_ziperr ();
    0x0001f9d0 lw gp, 0x10(sp)                       |     gp = *(var_10h_3);
    0x0001f9d4 lw v0, (s3)                           |     v0 = *(s3);
    0x0001f9d8 lw a2, 0x38(sp)                       |     a2 = *(var_38h_3);
    0x0001f9dc b 0x1f4a0                             |     goto label_26;
                                                     | label_46:
    0x0001f9e0 lw t9, -0x7a64(gp)                    |     t9 = sym.imp.__stack_chk_fail;
    0x0001f9e4 jalr t9                               |     t9 ();
    0x0001f9e8 nop                                   |     
                                                     | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/zip @ 0x1d32c */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) sym.check_dup ()                 | void check_dup () {
    0x0001d32c lui gp, 3                     |     
    0x0001d330 addiu gp, gp, 0x4964          |     
    0x0001d334 addu gp, gp, t9               |     gp += t9;
    0x0001d338 addiu sp, sp, -0x1448         |     
    0x0001d33c sw s6, 0x1438(sp)             |     *(var_1438h) = s6;
    0x0001d340 sw s4, 0x1430(sp)             |     *(var_1430h) = s4;
    0x0001d344 lw s6, -0x7da8(gp)            |     s6 = *(gp);
    0x0001d348 lw s4, -0x7a44(gp)            |     s4 = *((gp - 7825));
    0x0001d34c sw s0, 0x1420(sp)             |     *(var_1420h) = s0;
    0x0001d350 lw s0, (s6)                   |     s0 = *(s6);
    0x0001d354 lw v0, (s4)                   |     v0 = *(s4);
    0x0001d358 sw gp, 0x18(sp)               |     *(var_18h) = gp;
    0x0001d35c sw ra, 0x1444(sp)             |     *(var_1444h) = ra;
    0x0001d360 sw fp, 0x1440(sp)             |     *(var_1440h) = fp;
    0x0001d364 sw s7, 0x143c(sp)             |     *(var_143ch) = s7;
    0x0001d368 sw s5, 0x1434(sp)             |     *(var_1434h) = s5;
    0x0001d36c sw s3, 0x142c(sp)             |     *(var_142ch) = s3;
    0x0001d370 sw s2, 0x1428(sp)             |     *(var_1428h) = s2;
    0x0001d374 sw s1, 0x1424(sp)             |     *(var_1424h) = s1;
    0x0001d378 sw v0, 0x141c(sp)             |     *(var_141ch) = v0;
    0x0001d37c move v0, zero                 |     v0 = 0;
                                             |     if (s0 == 0) {
    0x0001d380 beqz s0, 0x1d394              |         goto label_1;
                                             |     }
    0x0001d384 ext v0, s0, 0, 0x1e           |     __asm ("ext v0, s0, 0, 0x1e");
    0x0001d388 lw t9, -0x7ab4(gp)            |     t9 = sym.imp.malloc;
    0x0001d38c beq s0, v0, 0x1d3d0           |     
                                             |     while (v0 == 0) {
    0x0001d390 addiu v0, zero, 4             |         v0 = 4;
                                             | label_1:
    0x0001d394 lw a0, 0x141c(sp)             |         a0 = *(var_141ch);
    0x0001d398 lw v1, (s4)                   |         v1 = *(s4);
    0x0001d39c lw ra, 0x1444(sp)             |         ra = *(var_1444h);
                                             |         if (a0 != v1) {
    0x0001d3a0 bne a0, v1, 0x1d7c8           |             goto label_4;
                                             |         }
    0x0001d3a4 lw fp, 0x1440(sp)             |         fp = *(var_1440h);
    0x0001d3a8 lw s7, 0x143c(sp)             |         s7 = *(var_143ch);
    0x0001d3ac lw s6, 0x1438(sp)             |         s6 = *(var_1438h);
    0x0001d3b0 lw s5, 0x1434(sp)             |         s5 = *(var_1434h);
    0x0001d3b4 lw s4, 0x1430(sp)             |         s4 = *(var_1430h);
    0x0001d3b8 lw s3, 0x142c(sp)             |         s3 = *(var_142ch);
    0x0001d3bc lw s2, 0x1428(sp)             |         s2 = *(var_1428h);
    0x0001d3c0 lw s1, 0x1424(sp)             |         s1 = *(var_1424h);
    0x0001d3c4 lw s0, 0x1420(sp)             |         s0 = *(var_1420h);
    0x0001d3c8 addiu sp, sp, 0x1448          |         
    0x0001d3cc jr ra                         |         return v1;
    0x0001d3d0 sll a0, s0, 2                 |         a0 = s0 << 2;
    0x0001d3d4 jalr t9                       |         t9 ();
    0x0001d3d8 move s3, v0                   |         s3 = v0;
    0x0001d3dc lw gp, 0x18(sp)               |         gp = *(var_18h);
    0x0001d3e0 beqz v0, 0x1d390              |         
                                             |     }
    0x0001d3e4 move v1, v0                   |     v1 = v0;
    0x0001d3e8 lw v0, -0x7fdc(gp)            |     v0 = *(gp);
    0x0001d3ec lw v0, (v0)                   |     v0 = *(v0);
    0x0001d3f0 lw a3, -0x7ca8(gp)            |     a3 = *(gp);
                                             |     if (v0 == 0) {
    0x0001d3f4 beqz v0, 0x1d40c              |         goto label_5;
                                             |     }
                                             |     do {
    0x0001d3f8 sw v0, (v1)                   |         *(v1) = v0;
    0x0001d3fc lw v0, 0x24(v0)               |         v0 = *((v0 + 9));
    0x0001d400 addiu v1, v1, 4               |         v1 += 4;
    0x0001d404 bnez v0, 0x1d3f8              |         
                                             |     } while (v0 != 0);
    0x0001d408 lw a3, -0x7ca8(gp)            |     a3 = *(gp);
                                             | label_5:
    0x0001d40c lw t9, -0x7b58(gp)            |     t9 = sym.imp.qsort;
    0x0001d410 move a1, s0                   |     a1 = s0;
    0x0001d414 addiu a3, a3, -0x34fc         |     a3 += -0x34fc;
    0x0001d418 addiu a2, zero, 4             |     a2 = 4;
    0x0001d41c move a0, s3                   |     a0 = s3;
    0x0001d420 jalr t9                       |     t9 ();
    0x0001d424 lw s0, (s6)                   |     s0 = *(s6);
    0x0001d428 addiu s7, s0, -1              |     s7 = s0 + -1;
    0x0001d42c lw gp, 0x18(sp)               |     gp = *(var_18h);
                                             |     if (s7 == 0) {
    0x0001d430 beqz s7, 0x1d750              |         goto label_6;
                                             |     }
    0x0001d434 sll s0, s0, 2                 |     s0 <<= 2;
    0x0001d438 addiu v0, s3, 4               |     v0 = s3 + 4;
    0x0001d43c addu s0, s3, s0               |     s0 = s3 + s0;
    0x0001d440 sw v0, 0x20(sp)               |     *(var_20h_2) = v0;
    0x0001d444 sll s5, s7, 2                 |     s5 = s7 << 2;
    0x0001d448 b 0x1d468                     |     
                                             |     while (v0 != 0) {
    0x0001d44c addiu s7, s7, -1              |         s7 += -1;
    0x0001d450 lw v0, 0x20(sp)               |         v0 = *(var_20h_2);
    0x0001d454 sll s5, s7, 2                 |         s5 = s7 << 2;
    0x0001d458 addiu s0, s0, -4              |         s0 += -4;
    0x0001d45c sw s1, (s2)                   |         *(s2) = s1;
    0x0001d460 addu s2, s3, s5               |         s2 = s3 + s5;
                                             |         if (v0 == s0) {
    0x0001d464 beq v0, s0, 0x1d528           |             goto label_7;
                                             |         }
    0x0001d468 lw s1, -4(s0)                 |         s1 = *((s0 - 1));
                                             | label_0:
    0x0001d46c lw v0, -8(s0)                 |         v0 = *((s0 - 2));
    0x0001d470 lw t9, -0x7a1c(gp)            |         t9 = sym.imp.strcmp;
    0x0001d474 lw fp, (s1)                   |         fp = *(s1);
    0x0001d478 lw a0, (v0)                   |         a0 = *(v0);
    0x0001d47c move a1, fp                   |         a1 = fp;
    0x0001d480 jalr t9                       |         t9 ();
    0x0001d484 addu s2, s3, s5               |         s2 = s3 + s5;
    0x0001d488 lw gp, 0x18(sp)               |         gp = *(var_18h);
    0x0001d48c bnez v0, 0x1d44c              |         
                                             |     }
    0x0001d490 lw a0, 0x20(s1)               |     a0 = *((s1 + 8));
    0x0001d494 lw v0, 0x24(s1)               |     v0 = *((s1 + 9));
    0x0001d498 sw v0, (a0)                   |     *(a0) = v0;
                                             |     if (v0 != 0) {
    0x0001d49c beqz v0, 0x1d4a4              |         
    0x0001d4a0 sw a0, 0x20(v0)               |         *((v0 + 8)) = a0;
                                             |     }
    0x0001d4a4 lw t9, -0x7a3c(gp)            |     t9 = sym.imp.free;
    0x0001d4a8 move a0, fp                   |     a0 = fp;
    0x0001d4ac jalr t9                       |     t9 ();
    0x0001d4b0 lw a0, 8(s1)                  |     a0 = *((s1 + 2));
    0x0001d4b4 lw gp, 0x18(sp)               |     gp = *(var_18h);
                                             |     if (a0 != 0) {
    0x0001d4b8 beqz a0, 0x1d4cc              |         
    0x0001d4bc lw t9, -0x7a3c(gp)            |         t9 = sym.imp.free;
    0x0001d4c0 jalr t9                       |         t9 ();
    0x0001d4c4 nop                           |         
    0x0001d4c8 lw gp, 0x18(sp)               |         gp = *(var_18h);
                                             |     }
    0x0001d4cc lw a0, 4(s1)                  |     a0 = *((s1 + 1));
    0x0001d4d0 lw t9, -0x7a3c(gp)            |     t9 = sym.imp.free;
                                             |     if (a0 != 0) {
    0x0001d4d4 beqz a0, 0x1d4e4              |         
    0x0001d4d8 jalr t9                       |         t9 ();
    0x0001d4dc nop                           |         
    0x0001d4e0 lw gp, 0x18(sp)               |         gp = *(var_18h);
                                             |     }
    0x0001d4e4 lw a0, 0x10(s1)               |     a0 = *((s1 + 4));
    0x0001d4e8 lw t9, -0x7a3c(gp)            |     t9 = sym.imp.free;
                                             |     if (a0 != 0) {
    0x0001d4ec beqz a0, 0x1d4fc              |         
    0x0001d4f0 jalr t9                       |         t9 ();
    0x0001d4f4 nop                           |         
    0x0001d4f8 lw gp, 0x18(sp)               |         gp = *(var_18h);
                                             |     }
    0x0001d4fc lw t9, -0x7a3c(gp)            |     t9 = sym.imp.free;
    0x0001d500 move a0, s1                   |     a0 = s1;
    0x0001d504 jalr t9                       |     t9 ();
    0x0001d508 lw v0, (s6)                   |     v0 = *(s6);
    0x0001d50c lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0001d510 addiu v0, v0, -1              |     v0 += -1;
    0x0001d514 sw v0, (s6)                   |     *(s6) = v0;
    0x0001d518 lw v0, 0x20(sp)               |     v0 = *(var_20h_2);
    0x0001d51c addiu s0, s0, -4              |     s0 += -4;
    0x0001d520 lw s1, -4(s0)                 |     s1 = *((s0 - 1));
                                             |     if (v0 == s0) {
    0x0001d524 bnel v0, s0, 0x1d46c          |         goto label_0;
                                             |     }
                                             | label_7:
    0x0001d528 lw a1, (s6)                   |     a1 = *(s6);
                                             | label_2:
    0x0001d52c lw v0, (s3)                   |     v0 = *(s3);
    0x0001d530 lw a3, -0x7ca8(gp)            |     a3 = *(gp);
    0x0001d534 lw t9, -0x7b58(gp)            |     t9 = sym.imp.qsort;
    0x0001d538 sw v0, (s2)                   |     *(s2) = v0;
    0x0001d53c addiu a3, a3, -0x3520         |     a3 += -aav.0x00003520;
    0x0001d540 addiu a2, zero, 4             |     a2 = 4;
    0x0001d544 move a0, s2                   |     a0 = s2;
    0x0001d548 jalr t9                       |     t9 ();
    0x0001d54c lw s5, (s6)                   |     s5 = *(s6);
    0x0001d550 sltiu v0, s5, 2               |     v0 = (s5 < 2) ? 1 : 0;
    0x0001d554 lw gp, 0x18(sp)               |     gp = *(var_18h);
                                             |     if (v0 != 0) {
    0x0001d558 bnez v0, 0x1d738              |         goto label_8;
                                             |     }
    0x0001d55c addiu s0, s2, 4               |     s0 = s2 + 4;
    0x0001d560 addiu s1, zero, 1             |     s1 = 1;
    0x0001d564 b 0x1d574                     |     
                                             |     while (v0 != 0) {
    0x0001d568 addiu s1, s1, 1               |         s1++;
    0x0001d56c addiu s0, s0, 4               |         s0 += 4;
                                             |         if (s5 == s1) {
    0x0001d570 beq s5, s1, 0x1d738           |             goto label_8;
                                             |         }
    0x0001d574 lw s2, -4(s0)                 |         s2 = *((s0 - 1));
    0x0001d578 lw v0, (s0)                   |         v0 = *(s0);
    0x0001d57c lw t9, -0x7a1c(gp)            |         t9 = sym.imp.strcmp;
    0x0001d580 lw a0, 4(s2)                  |         a0 = *((s2 + 1));
    0x0001d584 lw a1, 4(v0)                  |         a1 = *((v0 + 1));
    0x0001d588 jalr t9                       |         t9 ();
    0x0001d58c lw gp, 0x18(sp)               |         gp = *(var_18h);
    0x0001d590 bnez v0, 0x1d568              |         
                                             |     }
    0x0001d594 lw v0, (s2)                   |     v0 = *(s2);
    0x0001d598 lw a3, -0x7f90(gp)            |     a3 = *(gp);
    0x0001d59c lw t9, -0x7ba0(gp)            |     t9 = sym.imp.__sprintf_chk;
    0x0001d5a0 lw a0, -0x7f10(gp)            |     a0 = *(gp);
                                             |     /* str.__first_full_name:__s_n */
    0x0001d5a4 addiu a3, a3, 0x75b8          |     a3 += 0x75b8;
    0x0001d5a8 addiu a2, zero, 0x13f1        |     a2 = 0x13f1;
    0x0001d5ac addiu a1, zero, 1             |     a1 = 1;
    0x0001d5b0 sw v0, 0x10(sp)               |     *(var_10h_2) = v0;
    0x0001d5b4 jalr t9                       |     t9 ();
    0x0001d5b8 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0001d5bc lw v0, (s0)                   |     v0 = *(s0);
    0x0001d5c0 addiu s2, sp, 0x28            |     s2 = sp + 0x28;
    0x0001d5c4 lw a3, -0x7f90(gp)            |     a3 = *(gp);
    0x0001d5c8 lw v0, (v0)                   |     v0 = *(v0);
    0x0001d5cc lw t9, -0x7ba0(gp)            |     t9 = sym.imp.__sprintf_chk;
                                             |     /* str._second_full_name:__s_n */
    0x0001d5d0 addiu a3, a3, 0x75d0          |     a3 += 0x75d0;
    0x0001d5d4 addiu a2, zero, 0x13f1        |     a2 = 0x13f1;
    0x0001d5d8 addiu a1, zero, 1             |     a1 = 1;
    0x0001d5dc move a0, s2                   |     a0 = s2;
    0x0001d5e0 sw v0, 0x10(sp)               |     *(var_10h_2) = v0;
    0x0001d5e4 jalr t9                       |     t9 ();
    0x0001d5e8 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0001d5ec lw a0, -0x7f10(gp)            |     a0 = *(gp);
    0x0001d5f0 lw t9, -0x7ae0(gp)            |     t9 = sym.imp.strlen;
    0x0001d5f4 move s1, a0                   |     s1 = a0;
    0x0001d5f8 jalr t9                       |     t9 ();
    0x0001d5fc lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0001d600 addu v0, s1, v0               |     v0 = s1 + v0;
    0x0001d604 addiu a2, zero, 0x13f1        |     a2 = 0x13f1;
    0x0001d608 lw a0, -0x7f90(gp)            |     a0 = *(gp);
    0x0001d60c lw t9, -0x7b1c(gp)            |     t9 = sym.imp.__strcpy_chk
                                             |     /* str._____________________ */
    0x0001d610 addiu v1, a0, 0x75e8          |     v1 = a0 + 0x75e8;
    0x0001d614 lw fp, 0x75e8(a0)             |     fp = *((a0 + 7546));
    0x0001d618 lw s7, 4(v1)                  |     s7 = *((v1 + 1));
    0x0001d61c swl fp, 3(v0)                 |     __asm ("swl fp, 3(v0)");
    0x0001d620 swr fp, (v0)                  |     __asm ("swr fp, (v0)");
    0x0001d624 swl s7, 7(v0)                 |     __asm ("swl s7, 7(v0)");
    0x0001d628 lw s6, 8(v1)                  |     s6 = *((v1 + 2));
    0x0001d62c swr s7, 4(v0)                 |     __asm ("swr s7, 4(v0)");
    0x0001d630 swl s6, 0xb(v0)               |     __asm ("swl s6, 0xb(v0)");
    0x0001d634 lw s5, 0xc(v1)                |     s5 = *((v1 + 3));
    0x0001d638 swr s6, 8(v0)                 |     __asm ("swr s6, 8(v0)");
    0x0001d63c lw s3, 0x10(v1)               |     s3 = *((v1 + 4));
    0x0001d640 swl s5, 0xf(v0)               |     __asm ("swl s5, 0xf(v0)");
    0x0001d644 lbu t0, 0x14(v1)              |     t0 = *((v1 + 20));
    0x0001d648 swr s5, 0xc(v0)               |     __asm ("swr s5, 0xc(v0)");
    0x0001d64c swl s3, 0x13(v0)              |     __asm ("swl s3, 0x13(v0)");
    0x0001d650 swr s3, 0x10(v0)              |     __asm ("swr s3, 0x10(v0)");
    0x0001d654 sb t0, 0x14(v0)               |     *((v0 + 20)) = t0;
    0x0001d658 lbu v1, 0x15(v1)              |     v1 = *((v1 + 21));
    0x0001d65c sb t0, 0x27(sp)               |     *(var_27h) = t0;
    0x0001d660 sb v1, 0x15(v0)               |     *((v0 + 21)) = v1;
    0x0001d664 sb v1, 0x20(sp)               |     *(var_20h_2) = v1;
    0x0001d668 move a1, s2                   |     a1 = s2;
    0x0001d66c addiu a0, v0, 0x15            |     a0 = v0 + 0x15;
    0x0001d670 jalr t9                       |     t9 ();
    0x0001d674 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0001d678 lw v0, (s0)                   |     v0 = *(s0);
    0x0001d67c addiu a2, zero, 0x13f1        |     a2 = 0x13f1;
    0x0001d680 lw a3, -0x7f90(gp)            |     a3 = *(gp);
    0x0001d684 lw v0, 4(v0)                  |     v0 = *((v0 + 1));
    0x0001d688 lw t9, -0x7ba0(gp)            |     t9 = sym.imp.__sprintf_chk;
                                             |     /* str.name_in_zip_file_repeated:__s */
    0x0001d68c addiu a3, a3, 0x7600          |     a3 += 0x7600;
    0x0001d690 addiu a1, zero, 1             |     a1 = 1;
    0x0001d694 move a0, s2                   |     a0 = s2;
    0x0001d698 sw v0, 0x10(sp)               |     *(var_10h_2) = v0;
    0x0001d69c jalr t9                       |     t9 ();
    0x0001d6a0 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0001d6a4 lw t9, -0x7ae0(gp)            |     t9 = sym.imp.strlen;
    0x0001d6a8 move a0, s1                   |     a0 = s1;
    0x0001d6ac jalr t9                       |     t9 ();
    0x0001d6b0 addu v0, s1, v0               |     v0 = s1 + v0;
    0x0001d6b4 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0001d6b8 swl fp, 3(v0)                 |     __asm ("swl fp, 3(v0)");
    0x0001d6bc swr fp, (v0)                  |     __asm ("swr fp, (v0)");
    0x0001d6c0 swl s7, 7(v0)                 |     __asm ("swl s7, 7(v0)");
    0x0001d6c4 swr s7, 4(v0)                 |     __asm ("swr s7, 4(v0)");
    0x0001d6c8 swl s6, 0xb(v0)               |     __asm ("swl s6, 0xb(v0)");
    0x0001d6cc swr s6, 8(v0)                 |     __asm ("swr s6, 8(v0)");
    0x0001d6d0 swl s5, 0xf(v0)               |     __asm ("swl s5, 0xf(v0)");
    0x0001d6d4 swr s5, 0xc(v0)               |     __asm ("swr s5, 0xc(v0)");
    0x0001d6d8 lbu v1, 0x20(sp)              |     v1 = *(var_20h_2);
    0x0001d6dc lbu t0, 0x27(sp)              |     t0 = *(var_27h);
    0x0001d6e0 swl s3, 0x13(v0)              |     __asm ("swl s3, 0x13(v0)");
    0x0001d6e4 lw t9, -0x7ae4(gp)            |     t9 = sym.imp.__stpcpy_chk;
    0x0001d6e8 swr s3, 0x10(v0)              |     __asm ("swr s3, 0x10(v0)");
    0x0001d6ec addiu a2, zero, 0x13f1        |     a2 = 0x13f1;
    0x0001d6f0 sb v1, 0x15(v0)               |     *((v0 + 21)) = v1;
    0x0001d6f4 sb t0, 0x14(v0)               |     *((v0 + 20)) = t0;
    0x0001d6f8 move a1, s2                   |     a1 = s2;
    0x0001d6fc addiu a0, v0, 0x15            |     a0 = v0 + 0x15;
    0x0001d700 jalr t9                       |     t9 ();
    0x0001d704 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0001d708 lw v1, -0x7e04(gp)            |     v1 = *(gp);
    0x0001d70c lw v1, (v1)                   |     v1 = *(v1);
    0x0001d710 lw v1, -0x7f90(gp)            |     v1 = *(gp);
                                             |     if (v1 != 0) {
    0x0001d714 beqz v1, 0x1d75c              |         
                                             | label_3:
    0x0001d718 lw a1, -0x7f90(gp)            |         a1 = *(gp);
    0x0001d71c lw t9, -0x7edc(gp)            |         t9 = sym.zipwarn;
    0x0001d720 lw a0, -0x7f10(gp)            |         a0 = *(gp);
    0x0001d724 addiu a1, a1, 0x66d4          |         a1 += 0x66d4;
    0x0001d728 bal 0xe4c4                    |         sym_zipwarn ();
    0x0001d72c lw gp, 0x18(sp)               |         gp = *(var_18h);
    0x0001d730 addiu v0, zero, 0x10          |         v0 = 0x10;
    0x0001d734 b 0x1d394                     |         goto label_1;
                                             | label_8:
    0x0001d738 lw t9, -0x7a3c(gp)            |         t9 = sym.imp.free;
    0x0001d73c move a0, s3                   |         a0 = s3;
    0x0001d740 jalr t9                       |         t9 ();
    0x0001d744 lw gp, 0x18(sp)               |         gp = *(var_18h);
    0x0001d748 move v0, zero                 |         v0 = 0;
    0x0001d74c b 0x1d394                     |         goto label_1;
                                             | label_6:
    0x0001d750 move s2, s3                   |         s2 = s3;
    0x0001d754 addiu a1, zero, 1             |         a1 = 1;
    0x0001d758 b 0x1d52c                     |         goto label_2;
                                             |     }
                                             |     /* str._n_____________________this_may_be_a_result_of_using__j */
    0x0001d75c addiu v1, v1, 0x7620          |     v1 += 0x7620;
    0x0001d760 addiu a2, v1, 0x30            |     a2 = v1 + 0x30;
                                             |     do {
    0x0001d764 lw a1, (v1)                   |         a1 = *(v1);
    0x0001d768 lw a0, 4(v1)                  |         a0 = *((v1 + 1));
    0x0001d76c swl a1, 3(v0)                 |         __asm ("swl a1, 3(v0)");
    0x0001d770 swr a1, (v0)                  |         __asm ("swr a1, (v0)");
    0x0001d774 swl a0, 7(v0)                 |         __asm ("swl a0, 7(v0)");
    0x0001d778 lw a1, 8(v1)                  |         a1 = *((v1 + 2));
    0x0001d77c swr a0, 4(v0)                 |         __asm ("swr a0, 4(v0)");
    0x0001d780 swl a1, 0xb(v0)               |         __asm ("swl a1, 0xb(v0)");
    0x0001d784 lw a0, 0xc(v1)                |         a0 = *((v1 + 3));
    0x0001d788 swr a1, 8(v0)                 |         __asm ("swr a1, 8(v0)");
    0x0001d78c swl a0, 0xf(v0)               |         __asm ("swl a0, 0xf(v0)");
    0x0001d790 addiu v1, v1, 0x10            |         v1 += 0x10;
    0x0001d794 swr a0, 0xc(v0)               |         __asm ("swr a0, 0xc(v0)");
    0x0001d798 addiu v0, v0, 0x10            |         v0 += 0x10;
    0x0001d79c bne v1, a2, 0x1d764           |         
                                             |     } while (v1 != a2);
    0x0001d7a0 lw a0, (v1)                   |     a0 = *(v1);
    0x0001d7a4 lbu a2, 4(v1)                 |     a2 = *((v1 + 4));
    0x0001d7a8 lbu a1, 5(v1)                 |     a1 = *((v1 + 5));
    0x0001d7ac lbu v1, 6(v1)                 |     v1 = *((v1 + 6));
    0x0001d7b0 swl a0, 3(v0)                 |     __asm ("swl a0, 3(v0)");
    0x0001d7b4 swr a0, (v0)                  |     __asm ("swr a0, (v0)");
    0x0001d7b8 sb a2, 4(v0)                  |     *((v0 + 4)) = a2;
    0x0001d7bc sb a1, 5(v0)                  |     *((v0 + 5)) = a1;
    0x0001d7c0 sb v1, 6(v0)                  |     *((v0 + 6)) = v1;
    0x0001d7c4 b 0x1d718                     |     goto label_3;
                                             | label_4:
    0x0001d7c8 lw t9, -0x7a64(gp)            |     t9 = sym.imp.__stack_chk_fail;
    0x0001d7cc jalr t9                       |     t9 ();
    0x0001d7d0 nop                           |     
                                             | }
    ; assembly                           | /* r2dec pseudo code output */
                                         | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/zip @ 0x260e0 */
                                         | #include <stdint.h>
                                         |  
    ; (fcn) sym.zip_fuzofft ()           | void zip_fuzofft () {
    0x000260e0 lui gp, 3                 |     
    0x000260e4 addiu gp, gp, -0x4450     |     
    0x000260e8 addu gp, gp, t9           |     gp += t9;
    0x000260ec addiu sp, sp, -0x38       |     
    0x000260f0 addiu v1, zero, -1        |     v1 = -1;
    0x000260f4 sw s3, 0x2c(sp)           |     *(var_2ch) = s3;
    0x000260f8 lw s3, -0x7f7c(gp)        |     s3 = *((gp - 8159));
    0x000260fc sw s2, 0x28(sp)           |     *(var_28h) = s2;
    0x00026100 addiu s2, s3, -0x6690     |     s2 = s3 + -0x6690;
    0x00026104 sw gp, 0x18(sp)           |     *(var_18h) = gp;
    0x00026108 sw s4, 0x30(sp)           |     *(var_30h) = s4;
    0x0002610c sw s1, 0x24(sp)           |     *(var_24h) = s1;
    0x00026110 sw s0, 0x20(sp)           |     *(var_20h) = s0;
    0x00026114 sw ra, 0x34(sp)           |     *(var_34h) = ra;
    0x00026118 move s0, a0               |     s0 = a0;
    0x0002611c move s1, a1               |     s1 = a1;
    0x00026120 move s4, a3               |     s4 = a3;
    0x00026124 sb zero, 1(s2)            |     *((s2 + 1)) = 0;
                                         |     if (a2 == v1) {
    0x00026128 beq a2, v1, 0x26240       |         goto label_1;
                                         |     }
    0x0002612c addiu v1, zero, -2        |     v1 = -2;
    0x00026130 move v0, a2               |     v0 = a2;
                                         |     if (a2 == v1) {
    0x00026134 beq a2, v1, 0x26260       |         goto label_2;
                                         |     }
    0x00026138 lw t9, -0x7a10(gp)        |     t9 = sym.imp.__strcat_chk;
                                         |     if (a2 != 0) {
    0x0002613c beqz a2, 0x26154          |         
    0x00026140 addiu a2, zero, 0x10      |         a2 = 0x10;
    0x00026144 move a1, v0               |         a1 = v0;
    0x00026148 move a0, s2               |         a0 = s2;
    0x0002614c jalr t9                   |         t9 ();
    0x00026150 lw gp, 0x18(sp)           |         gp = *(var_18h);
                                         |     }
                                         | label_0:
    0x00026154 lw t9, -0x7ae0(gp)        |     t9 = sym.imp.strlen;
    0x00026158 addiu a0, s3, -0x6690     |     a0 = s3 + -0x6690;
    0x0002615c jalr t9                   |     t9 ();
    0x00026160 addu v0, s2, v0           |     v0 = s2 + v0;
    0x00026164 addiu v1, zero, 0x6c      |     v1 = 0x6c;
    0x00026168 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x0002616c sb v1, (v0)               |     *(v0) = v1;
    0x00026170 sb v1, 1(v0)              |     *((v0 + 1)) = v1;
    0x00026174 sb zero, 2(v0)            |     *((v0 + 2)) = 0;
    0x00026178 addiu a0, v0, 2           |     a0 = v0 + 2;
                                         |     if (s4 == 0) {
    0x0002617c beqz s4, 0x26230          |         goto label_3;
                                         |     }
    0x00026180 lw t9, -0x7b1c(gp)        |     t9 = sym.imp.__strcpy_chk
    0x00026184 addiu a2, zero, 0x10      |     a2 = 0x10;
    0x00026188 move a1, s4               |     a1 = s4;
    0x0002618c jalr t9                   |     t9 ();
    0x00026190 lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     do {
    0x00026194 lw s4, -0x7f7c(gp)        |         s4 = *((gp - 8159));
    0x00026198 lui v0, 0x8000            |         v0 = 0x80000003;
    0x0002619c addiu v0, v0, 3           |         
    0x000261a0 lw v1, -0x3fe0(s4)        |         v1 = *((s4 - 4088));
    0x000261a4 addiu v1, v1, 1           |         v1++;
    0x000261a8 and v1, v1, v0            |         v1 &= v0;
    0x000261ac sll a0, v1, 1             |         a0 = v1 << 1;
                                         |         if (v1 < 0) {
    0x000261b0 bgez v1, 0x261c8          |             
    0x000261b4 addiu v1, v1, -1          |             v1 += -1;
    0x000261b8 addiu v0, zero, -4        |             v0 = -4;
    0x000261bc or v1, v1, v0             |             v1 |= v0;
    0x000261c0 addiu v1, v1, 1           |             v1++;
    0x000261c4 sll a0, v1, 1             |             a0 = v1 << 1;
                                         |         }
    0x000261c8 lw s2, -0x7f7c(gp)        |         s2 = *((gp - 8159));
    0x000261cc addu a0, a0, v1           |         a0 += v1;
    0x000261d0 addiu s2, s2, -0x4040     |         s2 += -0x4040;
    0x000261d4 lw t9, -0x7ba0(gp)        |         t9 = sym.imp.__sprintf_chk;
    0x000261d8 sll a0, a0, 3             |         a0 <<= 3;
    0x000261dc sw s0, 0x10(sp)           |         *(var_10h) = s0;
    0x000261e0 sw s1, 0x14(sp)           |         *(var_14h) = s1;
    0x000261e4 addiu a3, s3, -0x6690     |         a3 = s3 + -0x6690;
    0x000261e8 addu a0, s2, a0           |         a0 = s2 + a0;
    0x000261ec sw v1, -0x3fe0(s4)        |         *((s4 - 4088)) = v1;
    0x000261f0 addiu a2, zero, -1        |         a2 = -1;
    0x000261f4 addiu a1, zero, 1         |         a1 = 1;
    0x000261f8 jalr t9                   |         t9 ();
    0x000261fc lw v1, -0x3fe0(s4)        |         v1 = *((s4 - 4088));
    0x00026200 lw ra, 0x34(sp)           |         ra = *(var_34h);
    0x00026204 sll v0, v1, 1             |         v0 = v1 << 1;
    0x00026208 addu v0, v0, v1           |         v0 += v1;
    0x0002620c sll v0, v0, 3             |         v0 <<= 3;
    0x00026210 addu v0, s2, v0           |         v0 = s2 + v0;
    0x00026214 lw s4, 0x30(sp)           |         s4 = *(var_30h);
    0x00026218 lw s3, 0x2c(sp)           |         s3 = *(var_2ch);
    0x0002621c lw s2, 0x28(sp)           |         s2 = *(var_28h);
    0x00026220 lw s1, 0x24(sp)           |         s1 = *(var_24h);
    0x00026224 lw s0, 0x20(sp)           |         s0 = *(var_20h);
    0x00026228 addiu sp, sp, 0x38        |         
    0x0002622c jr ra                     |         return v0;
                                         | label_3:
    0x00026230 addiu v1, zero, 0x75      |         v1 = 0x75;
    0x00026234 sb v1, 2(v0)              |         *((v0 + 2)) = v1;
    0x00026238 sb zero, 1(a0)            |         *((a0 + 1)) = 0;
    0x0002623c b 0x26194                 |         
                                         |     } while (1);
                                         | label_1:
    0x00026240 lw a1, -0x7f90(gp)        |     a1 = *(gp);
    0x00026244 lw t9, -0x7a10(gp)        |     t9 = sym.imp.__strcat_chk;
    0x00026248 addiu a2, zero, 0x10      |     a2 = 0x10;
                                         |     /* esilref: '16' */
    0x0002624c addiu a1, a1, 0x7cb0      |     a1 += 0x7cb0;
    0x00026250 move a0, s2               |     a0 = s2;
    0x00026254 jalr t9                   |     t9 ();
    0x00026258 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x0002625c b 0x26154                 |     goto label_0;
                                         | label_2:
    0x00026260 lw t9, -0x7ae0(gp)        |     t9 = sym.imp.strlen;
    0x00026264 move a0, s2               |     a0 = s2;
    0x00026268 jalr t9                   |     t9 ();
    0x0002626c addu v0, s2, v0           |     v0 = s2 + v0;
    0x00026270 addiu a0, zero, 0x2e      |     a0 = 0x2e;
    0x00026274 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x00026278 addiu v1, v0, 1           |     v1 = v0 + 1;
    0x0002627c sb a0, (v0)               |     *(v0) = a0;
    0x00026280 addiu a0, zero, 0x31      |     a0 = 0x31;
    0x00026284 sb a0, 1(v0)              |     *((v0 + 1)) = a0;
    0x00026288 addiu v0, zero, 0x36      |     v0 = 0x36;
    0x0002628c sb v0, 1(v1)              |     *((v1 + 1)) = v0;
    0x00026290 sb zero, 2(v1)            |     *((v1 + 2)) = 0;
    0x00026294 b 0x26154                 |     goto label_0;
                                         | }
    ; assembly                           | /* r2dec pseudo code output */
                                         | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/zip @ 0x25f28 */
                                         | #include <stdint.h>
                                         |  
    ; (fcn) sym.zip_fzofft ()            | void zip_fzofft () {
    0x00025f28 lui gp, 3                 |     
    0x00025f2c addiu gp, gp, -0x4298     |     
    0x00025f30 addu gp, gp, t9           |     gp += t9;
    0x00025f34 addiu sp, sp, -0x38       |     
    0x00025f38 addiu v1, zero, -1        |     v1 = -1;
    0x00025f3c sw s3, 0x2c(sp)           |     *(var_2ch) = s3;
    0x00025f40 lw s3, -0x7f7c(gp)        |     s3 = *((gp - 8159));
    0x00025f44 sw s2, 0x28(sp)           |     *(var_28h) = s2;
    0x00025f48 addiu s2, s3, -0x6680     |     s2 = s3 + -0x6680;
    0x00025f4c sw gp, 0x18(sp)           |     *(var_18h) = gp;
    0x00025f50 sw s4, 0x30(sp)           |     *(var_30h) = s4;
    0x00025f54 sw s1, 0x24(sp)           |     *(var_24h) = s1;
    0x00025f58 sw s0, 0x20(sp)           |     *(var_20h) = s0;
    0x00025f5c sw ra, 0x34(sp)           |     *(var_34h) = ra;
    0x00025f60 move s0, a0               |     s0 = a0;
    0x00025f64 move s1, a1               |     s1 = a1;
    0x00025f68 move s4, a3               |     s4 = a3;
    0x00025f6c sb zero, 1(s2)            |     *((s2 + 1)) = 0;
                                         |     if (a2 == v1) {
    0x00025f70 beq a2, v1, 0x26088       |         goto label_1;
                                         |     }
    0x00025f74 addiu v1, zero, -2        |     v1 = -2;
    0x00025f78 move v0, a2               |     v0 = a2;
                                         |     if (a2 == v1) {
    0x00025f7c beq a2, v1, 0x260a8       |         goto label_2;
                                         |     }
    0x00025f80 lw t9, -0x7a10(gp)        |     t9 = sym.imp.__strcat_chk;
                                         |     if (a2 != 0) {
    0x00025f84 beqz a2, 0x25f9c          |         
    0x00025f88 addiu a2, zero, 0x10      |         a2 = 0x10;
    0x00025f8c move a1, v0               |         a1 = v0;
    0x00025f90 move a0, s2               |         a0 = s2;
    0x00025f94 jalr t9                   |         t9 ();
    0x00025f98 lw gp, 0x18(sp)           |         gp = *(var_18h);
                                         |     }
                                         | label_0:
    0x00025f9c lw t9, -0x7ae0(gp)        |     t9 = sym.imp.strlen;
    0x00025fa0 addiu a0, s3, -0x6680     |     a0 = s3 + -0x6680;
    0x00025fa4 jalr t9                   |     t9 ();
    0x00025fa8 addu v0, s2, v0           |     v0 = s2 + v0;
    0x00025fac addiu v1, zero, 0x6c      |     v1 = 0x6c;
    0x00025fb0 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x00025fb4 sb v1, (v0)               |     *(v0) = v1;
    0x00025fb8 sb v1, 1(v0)              |     *((v0 + 1)) = v1;
    0x00025fbc sb zero, 2(v0)            |     *((v0 + 2)) = 0;
    0x00025fc0 addiu a0, v0, 2           |     a0 = v0 + 2;
                                         |     if (s4 == 0) {
    0x00025fc4 beqz s4, 0x26078          |         goto label_3;
                                         |     }
    0x00025fc8 lw t9, -0x7b1c(gp)        |     t9 = sym.imp.__strcpy_chk
    0x00025fcc addiu a2, zero, 0x10      |     a2 = 0x10;
    0x00025fd0 move a1, s4               |     a1 = s4;
    0x00025fd4 jalr t9                   |     t9 ();
    0x00025fd8 lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     do {
    0x00025fdc lw s4, -0x7f7c(gp)        |         s4 = *((gp - 8159));
    0x00025fe0 lui v0, 0x8000            |         v0 = 0x80000003;
    0x00025fe4 addiu v0, v0, 3           |         
    0x00025fe8 lw v1, -0x3f7c(s4)        |         v1 = *((s4 - 4063));
    0x00025fec addiu v1, v1, 1           |         v1++;
    0x00025ff0 and v1, v1, v0            |         v1 &= v0;
    0x00025ff4 sll a0, v1, 1             |         a0 = v1 << 1;
                                         |         if (v1 < 0) {
    0x00025ff8 bgez v1, 0x26010          |             
    0x00025ffc addiu v1, v1, -1          |             v1 += -1;
    0x00026000 addiu v0, zero, -4        |             v0 = -4;
    0x00026004 or v1, v1, v0             |             v1 |= v0;
    0x00026008 addiu v1, v1, 1           |             v1++;
    0x0002600c sll a0, v1, 1             |             a0 = v1 << 1;
                                         |         }
    0x00026010 lw s2, -0x7f7c(gp)        |         s2 = *((gp - 8159));
    0x00026014 addu a0, a0, v1           |         a0 += v1;
    0x00026018 addiu s2, s2, -0x3fdc     |         s2 += -0x3fdc;
    0x0002601c lw t9, -0x7ba0(gp)        |         t9 = sym.imp.__sprintf_chk;
    0x00026020 sll a0, a0, 3             |         a0 <<= 3;
    0x00026024 sw s0, 0x10(sp)           |         *(var_10h) = s0;
    0x00026028 sw s1, 0x14(sp)           |         *(var_14h) = s1;
    0x0002602c addiu a3, s3, -0x6680     |         a3 = s3 + -0x6680;
    0x00026030 addu a0, s2, a0           |         a0 = s2 + a0;
    0x00026034 sw v1, -0x3f7c(s4)        |         *((s4 - 4063)) = v1;
    0x00026038 addiu a2, zero, -1        |         a2 = -1;
    0x0002603c addiu a1, zero, 1         |         a1 = 1;
    0x00026040 jalr t9                   |         t9 ();
    0x00026044 lw v1, -0x3f7c(s4)        |         v1 = *((s4 - 4063));
    0x00026048 lw ra, 0x34(sp)           |         ra = *(var_34h);
    0x0002604c sll v0, v1, 1             |         v0 = v1 << 1;
    0x00026050 addu v0, v0, v1           |         v0 += v1;
    0x00026054 sll v0, v0, 3             |         v0 <<= 3;
    0x00026058 addu v0, s2, v0           |         v0 = s2 + v0;
    0x0002605c lw s4, 0x30(sp)           |         s4 = *(var_30h);
    0x00026060 lw s3, 0x2c(sp)           |         s3 = *(var_2ch);
    0x00026064 lw s2, 0x28(sp)           |         s2 = *(var_28h);
    0x00026068 lw s1, 0x24(sp)           |         s1 = *(var_24h);
    0x0002606c lw s0, 0x20(sp)           |         s0 = *(var_20h);
    0x00026070 addiu sp, sp, 0x38        |         
    0x00026074 jr ra                     |         return v0;
                                         | label_3:
    0x00026078 addiu v1, zero, 0x64      |         v1 = 0x64;
    0x0002607c sb v1, 2(v0)              |         *((v0 + 2)) = v1;
    0x00026080 sb zero, 1(a0)            |         *((a0 + 1)) = 0;
    0x00026084 b 0x25fdc                 |         
                                         |     } while (1);
                                         | label_1:
    0x00026088 lw a1, -0x7f90(gp)        |     a1 = *(gp);
    0x0002608c lw t9, -0x7a10(gp)        |     t9 = sym.imp.__strcat_chk;
    0x00026090 addiu a2, zero, 0x10      |     a2 = 0x10;
                                         |     /* esilref: '16' */
    0x00026094 addiu a1, a1, 0x7cb0      |     a1 += 0x7cb0;
    0x00026098 move a0, s2               |     a0 = s2;
    0x0002609c jalr t9                   |     t9 ();
    0x000260a0 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x000260a4 b 0x25f9c                 |     goto label_0;
                                         | label_2:
    0x000260a8 lw t9, -0x7ae0(gp)        |     t9 = sym.imp.strlen;
    0x000260ac move a0, s2               |     a0 = s2;
    0x000260b0 jalr t9                   |     t9 ();
    0x000260b4 addu v0, s2, v0           |     v0 = s2 + v0;
    0x000260b8 addiu a0, zero, 0x2e      |     a0 = 0x2e;
    0x000260bc lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x000260c0 addiu v1, v0, 1           |     v1 = v0 + 1;
    0x000260c4 sb a0, (v0)               |     *(v0) = a0;
    0x000260c8 addiu a0, zero, 0x31      |     a0 = 0x31;
    0x000260cc sb a0, 1(v0)              |     *((v0 + 1)) = a0;
    0x000260d0 addiu v0, zero, 0x36      |     v0 = 0x36;
    0x000260d4 sb v0, 1(v1)              |     *((v1 + 1)) = v0;
    0x000260d8 sb zero, 2(v1)            |     *((v1 + 2)) = 0;
    0x000260dc b 0x25f9c                 |     goto label_0;
                                         | }

[*] Function strcpy used 9 times zip