[*] Binary protection state of debugfs

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


[*] Function sprintf tear down of debugfs

    ; assembly                           | /* r2dec pseudo code output */
                                         | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/debugfs @ 0x6ca8 */
                                         | #include <stdint.h>
                                         |  
    ; (fcn) fcn.00006ca8 ()              | void fcn_00006ca8 () {
    0x00006ca8 lui gp, 4                 |     
    0x00006cac addiu gp, gp, 0x7498      |     
    0x00006cb0 addu gp, gp, t9           |     gp += t9;
    0x00006cb4 lw v0, -0x7aa4(gp)        |     v0 = *((gp - 7849));
    0x00006cb8 addiu sp, sp, -0x58       |     
    0x00006cbc or a3, a2, a3             |     a3 = a2 | a3;
    0x00006cc0 lw v1, (v0)               |     v1 = *(v0);
    0x00006cc4 sw gp, 0x18(sp)           |     *(var_18h) = gp;
    0x00006cc8 sw v1, 0x2c(sp)           |     *(var_2ch) = v1;
    0x00006ccc lw v1, -0x7d44(gp)        |     v1 = *((gp - 8017));
    0x00006cd0 sw s7, 0x4c(sp)           |     *(var_4ch) = s7;
    0x00006cd4 sw s5, 0x44(sp)           |     *(var_44h) = s5;
    0x00006cd8 sw s4, 0x40(sp)           |     *(var_40h) = s4;
    0x00006cdc sw s3, 0x3c(sp)           |     *(var_3ch) = s3;
    0x00006ce0 sw s2, 0x38(sp)           |     *(var_38h) = s2;
    0x00006ce4 sw s1, 0x34(sp)           |     *(var_34h) = s1;
    0x00006ce8 sw s0, 0x30(sp)           |     *(var_30h) = s0;
    0x00006cec sw v0, 0x20(sp)           |     *(var_20h) = v0;
    0x00006cf0 sw ra, 0x54(sp)           |     *(var_54h) = ra;
    0x00006cf4 sw fp, 0x50(sp)           |     *(var_50h) = fp;
    0x00006cf8 sw s6, 0x48(sp)           |     *(var_48h) = s6;
    0x00006cfc move s3, a2               |     s3 = a2;
    0x00006d00 move s4, a0               |     s4 = a0;
    0x00006d04 move s0, a1               |     s0 = a1;
    0x00006d08 lw s7, 0x68(sp)           |     s7 = *(arg_68h);
    0x00006d0c lw v0, 0x6c(sp)           |     v0 = *(arg_6ch);
    0x00006d10 lw s1, 0x74(sp)           |     s1 = *(arg_74h);
    0x00006d14 lw s2, 0x78(sp)           |     s2 = *(arg_78h);
    0x00006d18 sw zero, 0x28(sp)         |     *(var_28h) = 0;
    0x00006d1c lw s5, (v1)               |     s5 = *(v1);
                                         |     if (a3 != 0) {
    0x00006d20 beqz a3, 0x6d30           |         
    0x00006d24 or v0, s7, v0             |         v0 = s7 | v0;
    0x00006d28 lw a2, -0x7fdc(gp)        |         a2 = *(gp);
                                         |         if (v0 == 0) {
    0x00006d2c beqz v0, 0x6edc           |             goto label_9;
                                         |         }
                                         |     }
    0x00006d30 andi v0, s0, 0x2000       |     v0 = s0 & 0x2000;
                                         |     if (s1 != 0) {
    0x00006d34 beqz s1, 0x6d58           |         
    0x00006d38 addiu a2, sp, 0x28        |         a2 = sp + 0x28;
                                         |         if (v0 == 0) {
    0x00006d3c beqz v0, 0x7094           |             goto label_10;
                                         |         }
    0x00006d40 lw t9, 8(s5)              |         t9 = *((s5 + 2));
    0x00006d44 move a1, zero             |         a1 = 0;
    0x00006d48 move a0, s1               |         a0 = s1;
    0x00006d4c jalr t9                   |         t9 ();
    0x00006d50 lw gp, 0x18(sp)           |         gp = *(var_18h);
                                         |         if (v0 != 0) {
    0x00006d54 bnez v0, 0x6efc           |             goto label_11;
                                         |         }
                                         |     }
    0x00006d58 lw v0, 0x70(sp)           |     v0 = *(arg_70h);
    0x00006d5c lui v0, 0x90              |     v0 = 0x900000;
                                         |     if (v0 != 0) {
    0x00006d60 beqz v0, 0x6d68           |         
    0x00006d64 or s0, s0, v0             |         s0 |= v0;
                                         |     }
    0x00006d68 lw fp, -0x7fdc(gp)        |     fp = *(gp);
                                         |     if (s2 != 0) {
    0x00006d6c beqz s2, 0x6dc0           |         
    0x00006d70 lb v0, (s2)               |         v0 = *(s2);
    0x00006d74 lw a0, -0x7fdc(gp)        |         a0 = *(gp);
                                         |         if (v0 != 0) {
    0x00006d78 bnez v0, 0x6f24           |             goto label_12;
                                         |         }
    0x00006d7c lw t9, -0x7a84(gp)        |         t9 = sym.imp.ss_safe_getenv;
                                         |         /* str.E2FSPROGS_UNDO_DIR */
    0x00006d80 addiu a0, a0, -0x1be0     |         a0 += -0x1be0;
    0x00006d84 jalr t9                   |         t9 ();
    0x00006d88 move s6, v0               |         s6 = v0;
    0x00006d8c lw gp, 0x18(sp)           |         gp = *(var_18h);
                                         |         if (v0 == 0) {
    0x00006d90 beqz v0, 0x6f64           |             goto label_13;
                                         |         }
    0x00006d94 lw a1, -0x7fdc(gp)        |         a1 = *(gp);
    0x00006d98 lw t9, -0x7a28(gp)        |         t9 = sym.imp.strcmp;
                                         |         /* str.none */
    0x00006d9c addiu a1, a1, -0x1bcc     |         a1 += -0x1bcc;
    0x00006da0 move a0, v0               |         a0 = v0;
    0x00006da4 jalr t9                   |         t9 ();
    0x00006da8 lw gp, 0x18(sp)           |         gp = *(var_18h);
                                         |         if (v0 != 0) {
    0x00006dac beqz v0, 0x6dbc           |             
    0x00006db0 lb v0, (s6)               |             v0 = *(s6);
    0x00006db4 lw t9, -0x7cb4(gp)        |             t9 = sym.imp.access;
                                         |             if (v0 != 0) {
    0x00006db8 bnez v0, 0x6f70           |                 goto label_14;
                                         |             }
                                         |         }
                                         | label_1:
    0x00006dbc lw fp, -0x7fdc(gp)        |         fp = *(gp);
                                         |     }
    0x00006dc0 lui s2, 0x7f2b            |     s2 = 0x7f2b0000;
    0x00006dc4 lw s6, -0x7fd8(gp)        |     s6 = *(gp);
    0x00006dc8 ori s2, s2, 0xb798        |     s2 |= 0xb798;
    0x00006dcc lui s1, 0x20              |     s1 = 0x200000;
                                         |     /* str.Checksum_errors_in_superblock___Retrying... */
    0x00006dd0 addiu fp, fp, -0x1b64     |     fp += -0x1b64;
    0x00006dd4 b 0x6df4                  |     
                                         |     while (v0 == s2) {
    0x00006dd8 and v0, s0, s1            |         v0 = s0 & s1;
    0x00006ddc lw t9, -0x7be8(gp)        |         t9 = sym.imp.puts;
                                         |         if (v0 != 0) {
    0x00006de0 bnez v0, 0x70bc           |             goto label_15;
                                         |         }
    0x00006de4 move a0, fp               |         a0 = fp;
    0x00006de8 jalr t9                   |         t9 ();
    0x00006dec lw gp, 0x18(sp)           |         gp = *(var_18h);
    0x00006df0 or s0, s0, s1             |         s0 |= s1;
    0x00006df4 lw t9, -0x7b00(gp)        |         t9 = sym.imp.ext2fs_open;
    0x00006df8 sw s6, 0x14(sp)           |         *(var_14h) = s6;
    0x00006dfc sw s5, 0x10(sp)           |         *(var_10h) = s5;
    0x00006e00 move a3, s7               |         a3 = s7;
    0x00006e04 move a2, s3               |         a2 = s3;
    0x00006e08 move a1, s0               |         a1 = s0;
    0x00006e0c move a0, s4               |         a0 = s4;
    0x00006e10 jalr t9                   |         t9 ();
    0x00006e14 lw gp, 0x18(sp)           |         gp = *(var_18h);
    0x00006e18 beq v0, s2, 0x6dd8        |         
                                         |     }
    0x00006e1c lw v1, -0x7fd4(gp)        |     v1 = *(gp);
                                         |     if (v0 != 0) {
    0x00006e20 bnez v0, 0x71f8           |         goto label_16;
                                         |     }
    0x00006e24 lw a0, (s6)               |     a0 = *(s6);
    0x00006e28 addiu v0, zero, 2         |     v0 = 2;
    0x00006e2c sh v0, 0x68(a0)           |     *((a0 + 52)) = v0;
    0x00006e30 lw v0, 0x70(sp)           |     v0 = *(arg_70h);
    0x00006e34 lw a2, -0x7fdc(gp)        |     a2 = *(gp);
                                         |     if (v0 != 0) {
    0x00006e38 bnez v0, 0x6ec0           |         goto label_17;
                                         |     }
    0x00006e3c lw t9, -0x7a64(gp)        |     t9 = sym.imp.ext2fs_read_bitmaps;
    0x00006e40 jalr t9                   |     t9 ();
    0x00006e44 nop                       |     
    0x00006e48 lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     if (v0 != 0) {
    0x00006e4c bnez v0, 0x70e8           |         goto label_18;
                                         |     }
                                         |     do {
    0x00006e50 lw a1, 0x28(sp)           |         a1 = *(var_28h);
    0x00006e54 lw t9, -0x7a10(gp)        |         t9 = sym.imp.ext2fs_set_data_io;
                                         |         if (a1 != 0) {
    0x00006e58 beqz a1, 0x6e6c           |             
    0x00006e5c lw a0, (s6)               |             a0 = *(s6);
    0x00006e60 jalr t9                   |             t9 ();
    0x00006e64 lw gp, 0x18(sp)           |             gp = *(var_18h);
                                         |             if (v0 != 0) {
    0x00006e68 bnez v0, 0x713c           |                 goto label_19;
                                         |             }
                                         |         }
    0x00006e6c lw v1, -0x7fd0(gp)        |         v1 = *(gp);
    0x00006e70 addiu v0, zero, 2         |         v0 = 2;
    0x00006e74 sw v0, (v1)               |         *(v1) = v0;
    0x00006e78 lw v1, -0x7fcc(gp)        |         v1 = *(gp);
    0x00006e7c sw v0, (v1)               |         *(v1) = v0;
                                         | label_0:
    0x00006e80 lw v0, 0x20(sp)           |         v0 = *(var_20h);
    0x00006e84 lw v1, 0x2c(sp)           |         v1 = *(var_2ch);
    0x00006e88 lw v0, (v0)               |         v0 = *(v0);
    0x00006e8c lw ra, 0x54(sp)           |         ra = *(var_54h);
                                         |         if (v1 != v0) {
    0x00006e90 bne v1, v0, 0x72cc        |             goto label_20;
                                         |         }
    0x00006e94 lw fp, 0x50(sp)           |         fp = *(var_50h);
    0x00006e98 lw s7, 0x4c(sp)           |         s7 = *(var_4ch);
    0x00006e9c lw s6, 0x48(sp)           |         s6 = *(var_48h);
    0x00006ea0 lw s5, 0x44(sp)           |         s5 = *(var_44h);
    0x00006ea4 lw s4, 0x40(sp)           |         s4 = *(var_40h);
    0x00006ea8 lw s3, 0x3c(sp)           |         s3 = *(var_3ch);
    0x00006eac lw s2, 0x38(sp)           |         s2 = *(var_38h);
    0x00006eb0 lw s1, 0x34(sp)           |         s1 = *(var_34h);
    0x00006eb4 lw s0, 0x30(sp)           |         s0 = *(var_30h);
    0x00006eb8 addiu sp, sp, 0x58        |         
    0x00006ebc jr ra                     |         return v0;
                                         | label_17:
    0x00006ec0 lw t9, -0x7b4c(gp)        |         t9 = sym.imp.com_err;
                                         |         /* str.catastrophic_mode___not_reading_inode_or_group_bitmaps */
    0x00006ec4 addiu a2, a2, -0x1b20     |         a2 += -0x1b20;
    0x00006ec8 move a1, zero             |         a1 = 0;
    0x00006ecc move a0, s4               |         a0 = s4;
    0x00006ed0 jalr t9                   |         t9 ();
    0x00006ed4 lw gp, 0x18(sp)           |         gp = *(var_18h);
    0x00006ed8 b 0x6e50                  |         
                                         |     } while (1);
                                         | label_9:
    0x00006edc lw t9, -0x7b4c(gp)        |     t9 = sym.imp.com_err;
                                         |     /* str.if_you_specify_the_superblock__you_must_also_specify_the_block_size */
    0x00006ee0 addiu a2, a2, -0x1cd8     |     a2 += -0x1cd8;
    0x00006ee4 move a1, zero             |     a1 = 0;
    0x00006ee8 jalr t9                   |     t9 ();
    0x00006eec lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x00006ef0 lw v0, -0x7fd8(gp)        |     v0 = *(gp);
    0x00006ef4 sw zero, (v0)             |     *(v0) = 0;
    0x00006ef8 b 0x6e80                  |     goto label_0;
                                         | label_11:
    0x00006efc lw a2, -0x7fdc(gp)        |     a2 = *(gp);
    0x00006f00 lw t9, -0x7b4c(gp)        |     t9 = sym.imp.com_err;
                                         |     /* str.while_opening_data_source */
    0x00006f04 addiu a2, a2, -0x1c58     |     a2 += -0x1c58;
    0x00006f08 move a1, zero             |     a1 = 0;
    0x00006f0c move a0, s1               |     a0 = s1;
    0x00006f10 jalr t9                   |     t9 ();
    0x00006f14 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x00006f18 lw v0, -0x7fd8(gp)        |     v0 = *(gp);
    0x00006f1c sw zero, (v0)             |     *(v0) = 0;
    0x00006f20 b 0x6e80                  |     goto label_0;
                                         | label_12:
    0x00006f24 lw t9, -0x7c08(gp)        |     t9 = sym.imp.set_undo_io_backing_manager;
    0x00006f28 move a0, s5               |     a0 = s5;
    0x00006f2c jalr t9                   |     t9 ();
    0x00006f30 lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     if (v0 == 0) {
    0x00006f34 beqz v0, 0x715c           |         goto label_21;
                                         |     }
                                         | label_4:
    0x00006f38 lw a2, -0x7fdc(gp)        |     a2 = *(gp);
    0x00006f3c lw t9, -0x7b4c(gp)        |     t9 = sym.imp.com_err;
                                         |     /* str.while_trying_to_setup_undo_file_n */
    0x00006f40 addiu a2, a2, -0x1bc4     |     a2 += -0x1bc4;
                                         | label_2:
    0x00006f44 lw a0, -0x7fdc(gp)        |     a0 = *(gp);
    0x00006f48 move a1, v0               |     a1 = v0;
                                         |     /* str.debugfs */
    0x00006f4c addiu a0, a0, -0x1ba0     |     a0 += -0x1ba0;
    0x00006f50 jalr t9                   |     t9 ();
    0x00006f54 lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         | label_7:
    0x00006f58 lw t9, -0x7bfc(gp)        |     t9 = sym.imp.exit;
                                         | label_5:
    0x00006f5c addiu a0, zero, 1         |     a0 = 1;
    0x00006f60 jalr t9                   |     t9 ();
                                         | label_13:
    0x00006f64 lw s6, -0x7fdc(gp)        |     s6 = *(gp);
                                         |     /* str._var_lib_e2fsprogs */
    0x00006f68 addiu s6, s6, -0x1cec     |     s6 += -0x1cec;
    0x00006f6c lw t9, -0x7cb4(gp)        |     t9 = sym.imp.access;
                                         | label_14:
    0x00006f70 addiu a1, zero, 2         |     a1 = 2;
    0x00006f74 move a0, s6               |     a0 = s6;
    0x00006f78 jalr t9                   |     t9 ();
    0x00006f7c lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     if (v0 != 0) {
    0x00006f80 bnez v0, 0x6dbc           |         goto label_1;
                                         |     }
    0x00006f84 lw t9, -0x7a90(gp)        |     t9 = sym.imp.strdup;
    0x00006f88 move a0, s4               |     a0 = s4;
    0x00006f8c jalr t9                   |     t9 ();
    0x00006f90 move fp, v0               |     fp = v0;
    0x00006f94 lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     if (v0 == 0) {
    0x00006f98 beqz v0, 0x7258           |         goto label_22;
                                         |     }
    0x00006f9c lw t9, -0x7c9c(gp)        |     t9 = sym.imp.__xpg_basename;
    0x00006fa0 move a0, v0               |     a0 = v0;
    0x00006fa4 jalr t9                   |     t9 ();
    0x00006fa8 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x00006fac move a0, s6               |     a0 = s6;
    0x00006fb0 lw t9, -0x7c30(gp)        |     t9 = sym.imp.strlen;
    0x00006fb4 move s2, v0               |     s2 = v0;
    0x00006fb8 jalr t9                   |     t9 ();
    0x00006fbc lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x00006fc0 move a0, s2               |     a0 = s2;
    0x00006fc4 lw t9, -0x7c30(gp)        |     t9 = sym.imp.strlen;
    0x00006fc8 move s1, v0               |     s1 = v0;
    0x00006fcc jalr t9                   |     t9 ();
    0x00006fd0 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x00006fd4 addu v0, s1, v0           |     v0 = s1 + v0;
    0x00006fd8 lw t9, -0x7bd4(gp)        |     t9 = sym.imp.malloc;
    0x00006fdc addiu a0, v0, 0x11        |     a0 = v0 + 0x11;
    0x00006fe0 jalr t9                   |     t9 ();
    0x00006fe4 move s1, v0               |     s1 = v0;
    0x00006fe8 lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     if (v0 == 0) {
    0x00006fec beqz v0, 0x7248           |         goto label_23;
                                         |     }
    0x00006ff0 lw a3, -0x7fdc(gp)        |     a3 = *(gp);
    0x00006ff4 lw t9, -0x7e0c(gp)        |     t9 = sym.imp.__sprintf_chk
                                         |     /* str._s_debugfs__s.e2undo */
    0x00006ff8 addiu a3, a3, -0x1b98     |     a3 += -0x1b98;
    0x00006ffc addiu a2, zero, -1        |     a2 = -1;
    0x00007000 addiu a1, zero, 1         |     a1 = 1;
    0x00007004 move a0, v0               |     a0 = v0;
    0x00007008 sw s2, 0x14(sp)           |     *(var_14h) = s2;
    0x0000700c sw s6, 0x10(sp)           |     *(var_10h) = s6;
    0x00007010 jalr t9                   |     t9 ();
    0x00007014 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x00007018 lw t9, -0x7a8c(gp)        |     t9 = sym.imp.free;
    0x0000701c move a0, fp               |     a0 = fp;
    0x00007020 jalr t9                   |     t9 ();
    0x00007024 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x00007028 lw t9, -0x7b2c(gp)        |     t9 = sym.imp.unlink;
    0x0000702c move a0, s1               |     a0 = s1;
    0x00007030 jalr t9                   |     t9 ();
    0x00007034 lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     if (v0 < 0) {
    0x00007038 bgez v0, 0x7058           |         
    0x0000703c lw t9, -0x7c74(gp)        |         t9 = sym.imp.__errno_location;
    0x00007040 jalr t9                   |         t9 ();
    0x00007044 nop                       |         
    0x00007048 lw s2, (v0)               |         s2 = *(v0);
    0x0000704c addiu v0, zero, 2         |         v0 = 2;
    0x00007050 lw gp, 0x18(sp)           |         gp = *(var_18h);
                                         |         if (s2 != v0) {
    0x00007054 bne s2, v0, 0x719c        |             goto label_24;
                                         |         }
                                         |     }
    0x00007058 lw t9, -0x7c08(gp)        |     t9 = sym.imp.set_undo_io_backing_manager;
    0x0000705c move a0, s5               |     a0 = s5;
    0x00007060 jalr t9                   |     t9 ();
    0x00007064 lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     if (v0 == 0) {
    0x00007068 beqz v0, 0x727c           |         goto label_25;
                                         |     }
                                         | label_8:
    0x0000706c lw t9, -0x7a8c(gp)        |     t9 = sym.imp.free;
    0x00007070 sw v0, 0x20(sp)           |     *(var_20h) = v0;
    0x00007074 move a0, s1               |     a0 = s1;
    0x00007078 jalr t9                   |     t9 ();
    0x0000707c lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x00007080 lw v0, 0x20(sp)           |     v0 = *(var_20h);
    0x00007084 lw a2, -0x7fdc(gp)        |     a2 = *(gp);
    0x00007088 lw t9, -0x7b4c(gp)        |     t9 = sym.imp.com_err;
                                         |     /* str.while_trying_to_setup_undo_file_n */
    0x0000708c addiu a2, a2, -0x1bc4     |     a2 += -0x1bc4;
    0x00007090 b 0x6f44                  |     goto label_2;
                                         | label_10:
    0x00007094 lw a2, -0x7fdc(gp)        |     a2 = *(gp);
    0x00007098 lw t9, -0x7b4c(gp)        |     t9 = sym.imp.com_err;
                                         |     /* str.The__d_option_is_only_valid_when_reading_an_e2image_file */
    0x0000709c addiu a2, a2, -0x1c94     |     a2 += -0x1c94;
    0x000070a0 move a1, zero             |     a1 = 0;
    0x000070a4 move a0, s4               |     a0 = s4;
    0x000070a8 jalr t9                   |     t9 ();
    0x000070ac lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x000070b0 lw v0, -0x7fd8(gp)        |     v0 = *(gp);
    0x000070b4 sw zero, (v0)             |     *(v0) = 0;
    0x000070b8 b 0x6e80                  |     goto label_0;
                                         | label_15:
    0x000070bc lw v0, -0x7fd4(gp)        |     v0 = *(gp);
    0x000070c0 lw a2, -0x7fdc(gp)        |     a2 = *(gp);
    0x000070c4 lw t9, -0x7b4c(gp)        |     t9 = sym.imp.com_err;
    0x000070c8 lw a0, (v0)               |     a0 = *(v0);
    0x000070cc move a3, s4               |     a3 = s4;
                                         |     /* str.while_trying_to_open__s */
    0x000070d0 addiu a2, a2, -0x1b38     |     a2 += -0x1b38;
    0x000070d4 move a1, s2               |     a1 = s2;
    0x000070d8 jalr t9                   |     t9 ();
    0x000070dc lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         | label_6:
    0x000070e0 sw zero, (s6)             |     *(s6) = 0;
    0x000070e4 b 0x6e80                  |     goto label_0;
                                         | label_18:
    0x000070e8 lw a2, -0x7fdc(gp)        |     a2 = *(gp);
    0x000070ec lw t9, -0x7b4c(gp)        |     t9 = sym.imp.com_err;
                                         |     /* str.while_reading_allocation_bitmaps */
    0x000070f0 addiu a2, a2, -0x1ae8     |     a2 += -0x1ae8;
    0x000070f4 move a1, v0               |     a1 = v0;
    0x000070f8 move a0, s4               |     a0 = s4;
    0x000070fc jalr t9                   |     t9 ();
    0x00007100 nop                       |     
                                         | label_3:
    0x00007104 nop                       |     
    0x00007108 lw a0, -0x7fd8(gp)        |     a0 = *(gp);
    0x0000710c jalr t9                   |     t9 ();
    0x00007110 nop                       |     
    0x00007114 lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     if (v0 == 0) {
    0x00007118 beqz v0, 0x6e80           |         goto label_0;
                                         |     }
    0x0000711c lw a2, -0x7fdc(gp)        |     a2 = *(gp);
    0x00007120 lw t9, -0x7b4c(gp)        |     t9 = sym.imp.com_err;
                                         |     /* str.while_trying_to_close_filesystem */
    0x00007124 addiu a2, a2, -0x1aa8     |     a2 += -0x1aa8;
    0x00007128 move a1, v0               |     a1 = v0;
    0x0000712c move a0, s4               |     a0 = s4;
    0x00007130 jalr t9                   |     t9 ();
    0x00007134 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x00007138 b 0x6e80                  |     goto label_0;
                                         | label_19:
    0x0000713c lw a2, -0x7fdc(gp)        |     a2 = *(gp);
    0x00007140 lw t9, -0x7b4c(gp)        |     t9 = sym.imp.com_err;
                                         |     /* str.while_setting_data_source */
    0x00007144 addiu a2, a2, -0x1ac4     |     a2 += -0x1ac4;
    0x00007148 move a1, v0               |     a1 = v0;
    0x0000714c move a0, s4               |     a0 = s4;
    0x00007150 jalr t9                   |     t9 ();
    0x00007154 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x00007158 b 0x7104                  |     goto label_3;
                                         | label_21:
    0x0000715c lw v0, -0x7d5c(gp)        |     v0 = *((gp - 8023));
    0x00007160 lw t9, -0x7cd0(gp)        |     t9 = sym.imp.set_undo_io_backup_file;
    0x00007164 move a0, s2               |     a0 = s2;
    0x00007168 lw s5, (v0)               |     s5 = *(v0);
    0x0000716c jalr t9                   |     t9 ();
    0x00007170 lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     if (v0 != 0) {
    0x00007174 bnez v0, 0x6f38           |         goto label_4;
                                         |     }
    0x00007178 lw a1, -0x7fdc(gp)        |     a1 = *(gp);
    0x0000717c lw t9, -0x7cd4(gp)        |     t9 = sym.imp.__printf_chk;
    0x00007180 move a3, s4               |     a3 = s4;
    0x00007184 move a2, s2               |     a2 = s2;
                                         |     /* str.Overwriting_existing_filesystem__this_can_be_undone_using_the_command:_n____e2undo__s__s_n_n */
    0x00007188 addiu a1, a1, -0x1c3c     |     a1 += -0x1c3c;
    0x0000718c addiu a0, zero, 1         |     a0 = 1;
    0x00007190 jalr t9                   |     t9 ();
    0x00007194 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x00007198 b 0x6dbc                  |     goto label_1;
                                         | label_24:
    0x0000719c lw s6, -0x7fdc(gp)        |     s6 = *(gp);
    0x000071a0 lw a2, -0x7fdc(gp)        |     a2 = *(gp);
    0x000071a4 lw t9, -0x7b4c(gp)        |     t9 = sym.imp.com_err;
    0x000071a8 move a3, s1               |     a3 = s1;
                                         |     /* str.while_trying_to_delete__s */
    0x000071ac addiu a2, a2, -0x1b80     |     a2 += -0x1b80;
    0x000071b0 move a1, s2               |     a1 = s2;
                                         |     /* str.debugfs */
    0x000071b4 addiu a0, s6, -0x1ba0     |     a0 = s6 + -0x1ba0;
    0x000071b8 jalr t9                   |     t9 ();
    0x000071bc lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x000071c0 lw t9, -0x7a8c(gp)        |     t9 = sym.imp.free;
    0x000071c4 move a0, s1               |     a0 = s1;
    0x000071c8 jalr t9                   |     t9 ();
    0x000071cc lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x000071d0 move a1, s2               |     a1 = s2;
                                         |     /* str.debugfs */
    0x000071d4 addiu a0, s6, -0x1ba0     |     a0 = s6 + -0x1ba0;
    0x000071d8 lw a2, -0x7fdc(gp)        |     a2 = *(gp);
    0x000071dc lw t9, -0x7b4c(gp)        |     t9 = sym.imp.com_err;
                                         |     /* str.while_trying_to_setup_undo_file_n */
    0x000071e0 addiu a2, a2, -0x1bc4     |     a2 += -0x1bc4;
    0x000071e4 jalr t9                   |     t9 ();
    0x000071e8 lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     if (s2 == 0) {
    0x000071ec beqz s2, 0x6dbc           |         goto label_1;
                                         |     }
    0x000071f0 lw t9, -0x7bfc(gp)        |     t9 = sym.imp.exit;
    0x000071f4 b 0x6f5c                  |     goto label_5;
                                         | label_16:
    0x000071f8 lw a2, -0x7fdc(gp)        |     a2 = *(gp);
    0x000071fc lw t9, -0x7b4c(gp)        |     t9 = sym.imp.com_err;
    0x00007200 lw a0, (v1)               |     a0 = *(v1);
    0x00007204 move a1, v0               |     a1 = v0;
    0x00007208 sw v0, 0x24(sp)           |     *(var_24h) = v0;
    0x0000720c move a3, s4               |     a3 = s4;
                                         |     /* str.while_trying_to_open__s */
    0x00007210 addiu a2, a2, -0x1b38     |     a2 += -0x1b38;
    0x00007214 jalr t9                   |     t9 ();
    0x00007218 lw v0, 0x24(sp)           |     v0 = *(var_24h);
    0x0000721c addiu s2, s2, -0x85       |     s2 += -0x85;
    0x00007220 lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     if (v0 != s2) {
    0x00007224 bne v0, s2, 0x70e0        |         goto label_6;
                                         |     }
    0x00007228 lw t9, -0x7fc8(gp)        |     t9 = sym.check_plausibility;
    0x0000722c move a2, zero             |     a2 = 0;
    0x00007230 addiu a1, zero, 4         |     a1 = 4;
    0x00007234 move a0, s4               |     a0 = s4;
    0x00007238 bal 0x25ec0               |     sym_check_plausibility ();
    0x0000723c lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x00007240 sw zero, (s6)             |     *(s6) = 0;
    0x00007244 b 0x6e80                  |     goto label_0;
                                         | label_23:
    0x00007248 lw t9, -0x7a8c(gp)        |     t9 = sym.imp.free;
    0x0000724c move a0, fp               |     a0 = fp;
    0x00007250 jalr t9                   |     t9 ();
    0x00007254 lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         | label_22:
    0x00007258 lw a2, -0x7fdc(gp)        |     a2 = *(gp);
    0x0000725c lw a0, -0x7fdc(gp)        |     a0 = *(gp);
    0x00007260 lw t9, -0x7b4c(gp)        |     t9 = sym.imp.com_err;
                                         |     /* str.while_trying_to_setup_undo_file_n */
    0x00007264 addiu a2, a2, -0x1bc4     |     a2 += -0x1bc4;
    0x00007268 addiu a1, zero, 0xc       |     a1 = 0xc;
                                         |     /* str.debugfs */
    0x0000726c addiu a0, a0, -0x1ba0     |     a0 += -0x1ba0;
    0x00007270 jalr t9                   |     t9 ();
    0x00007274 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x00007278 b 0x6f58                  |     goto label_7;
                                         | label_25:
    0x0000727c lw v0, -0x7d5c(gp)        |     v0 = *((gp - 8023));
    0x00007280 lw t9, -0x7cd0(gp)        |     t9 = sym.imp.set_undo_io_backup_file;
    0x00007284 move a0, s1               |     a0 = s1;
    0x00007288 lw s5, (v0)               |     s5 = *(v0);
    0x0000728c jalr t9                   |     t9 ();
    0x00007290 lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     if (v0 != 0) {
    0x00007294 bnez v0, 0x706c           |         goto label_8;
                                         |     }
    0x00007298 lw a1, -0x7fdc(gp)        |     a1 = *(gp);
    0x0000729c lw t9, -0x7cd4(gp)        |     t9 = sym.imp.__printf_chk;
    0x000072a0 move a3, s4               |     a3 = s4;
    0x000072a4 move a2, s1               |     a2 = s1;
                                         |     /* str.Overwriting_existing_filesystem__this_can_be_undone_using_the_command:_n____e2undo__s__s_n_n */
    0x000072a8 addiu a1, a1, -0x1c3c     |     a1 += -0x1c3c;
    0x000072ac addiu a0, zero, 1         |     a0 = 1;
    0x000072b0 jalr t9                   |     t9 ();
    0x000072b4 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x000072b8 lw t9, -0x7a8c(gp)        |     t9 = sym.imp.free;
    0x000072bc move a0, s1               |     a0 = s1;
    0x000072c0 jalr t9                   |     t9 ();
    0x000072c4 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x000072c8 b 0x6dbc                  |     goto label_1;
                                         | label_20:
    0x000072cc lw t9, -0x7b08(gp)        |     t9 = sym.imp.__stack_chk_fail;
    0x000072d0 jalr t9                   |     t9 ();
    0x000072d4 nop                       |     
                                         | }
    ; assembly                           | /* r2dec pseudo code output */
                                         | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/debugfs @ 0x78e4 */
                                         | #include <stdint.h>
                                         |  
    ; (fcn) fcn.000078e4 ()              | void fcn_000078e4 () {
    0x000078e4 lui gp, 4                 |     
    0x000078e8 addiu gp, gp, 0x685c      |     
    0x000078ec addu gp, gp, t9           |     gp += t9;
    0x000078f0 addiu sp, sp, -0x108      |     
    0x000078f4 lhu v1, (a3)              |     v1 = *(a3);
    0x000078f8 sw s1, 0xf4(sp)           |     *(var_f4h_2) = s1;
    0x000078fc lw s1, -0x7aa4(gp)        |     s1 = *((gp - 7849));
    0x00007900 lw t9, -0x7e0c(gp)        |     t9 = sym.imp.__sprintf_chk
    0x00007904 sw s0, 0xf0(sp)           |     *(var_f0h_2) = s0;
    0x00007908 lw v0, (s1)               |     v0 = *(s1);
    0x0000790c addiu s0, sp, 0x24        |     s0 = sp + 0x24;
    0x00007910 sw ra, 0x104(sp)          |     *(var_104h) = ra;
    0x00007914 sw gp, 0x18(sp)           |     *(var_18h) = gp;
    0x00007918 sw v1, 0x10(sp)           |     *(var_10h) = v1;
    0x0000791c sw s4, 0x100(sp)          |     *(var_100h) = s4;
    0x00007920 sw s3, 0xfc(sp)           |     *(var_fch) = s3;
    0x00007924 sw s2, 0xf8(sp)           |     *(var_f8h) = s2;
    0x00007928 move s4, a1               |     s4 = a1;
    0x0000792c move s2, a3               |     s2 = a3;
    0x00007930 addiu a1, zero, 1         |     a1 = 1;
    0x00007934 move a3, a2               |     a3 = a2;
    0x00007938 move s3, a0               |     s3 = a0;
    0x0000793c addiu a2, zero, 0xc8      |     a2 = 0xc8;
    0x00007940 move a0, s0               |     a0 = s0;
    0x00007944 sw v0, 0xec(sp)           |     *(var_ech_2) = v0;
    0x00007948 jalr t9                   |     t9 ();
    0x0000794c nop                       |     
    0x00007950 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x00007954 move a3, s0               |     a3 = s0;
    0x00007958 move a2, s4               |     a2 = s4;
    0x0000795c lw a1, -0x7fdc(gp)        |     a1 = *(gp);
    0x00007960 lw t9, -0x7cd4(gp)        |     t9 = sym.imp.__printf_chk;
                                         |     /* str._30s______s__ */
    0x00007964 addiu a1, a1, -0x1948     |     a1 += -0x1948;
    0x00007968 addiu a0, zero, 1         |     a0 = 1;
    0x0000796c jalr t9                   |     t9 ();
    0x00007970 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x00007974 addiu a1, zero, 0xc8      |     a1 = 0xc8;
    0x00007978 move a0, s0               |     a0 = s0;
    0x0000797c lw v0, -0x7c50(gp)        |     v0 = *((gp - 7956));
    0x00007980 lw t9, -0x7ab8(gp)        |     t9 = sym.imp.fgets;
    0x00007984 lw a2, (v0)               |     a2 = *(v0);
    0x00007988 jalr t9                   |     t9 ();
    0x0000798c lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     if (v0 == 0) {
    0x00007990 beqz v0, 0x79cc           |         goto label_0;
                                         |     }
    0x00007994 lw t9, -0x7c30(gp)        |     t9 = sym.imp.strlen;
    0x00007998 move a0, s0               |     a0 = s0;
    0x0000799c jalr t9                   |     t9 ();
    0x000079a0 addiu v0, v0, -1          |     v0 += -1;
    0x000079a4 addiu v1, sp, 0xf0        |     v1 = sp + 0xf0;
    0x000079a8 addu v0, v1, v0           |     v0 = v1 + v0;
    0x000079ac addiu v1, zero, 0xa       |     v1 = 0xa;
    0x000079b0 lb a0, -0xcc(v0)          |     a0 = *((v0 - 204));
    0x000079b4 lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     if (a0 == v1) {
    0x000079b8 bne a0, v1, 0x79c0        |         
    0x000079bc sb zero, -0xcc(v0)        |         *((v0 - 204)) = 0;
                                         |     }
    0x000079c0 lb v0, 0x24(sp)           |     v0 = *(var_24h);
    0x000079c4 lw t9, -0x7c24(gp)        |     t9 = sym.imp.strtoul;
    0x000079c8 bnez v0, 0x79f8           |     
                                         |     while (1) {
                                         | label_0:
    0x000079cc lw v1, 0xec(sp)           |         v1 = *(var_ech_2);
    0x000079d0 lw v0, (s1)               |         v0 = *(s1);
    0x000079d4 lw ra, 0x104(sp)          |         ra = *(var_104h);
                                         |         if (v1 != v0) {
    0x000079d8 bne v1, v0, 0x7a44        |             goto label_1;
                                         |         }
    0x000079dc lw s4, 0x100(sp)          |         s4 = *(var_100h);
    0x000079e0 lw s3, 0xfc(sp)           |         s3 = *(var_fch);
    0x000079e4 lw s2, 0xf8(sp)           |         s2 = *(var_f8h);
    0x000079e8 lw s1, 0xf4(sp)           |         s1 = *(var_f4h_2);
    0x000079ec lw s0, 0xf0(sp)           |         s0 = *(var_f0h_2);
    0x000079f0 addiu sp, sp, 0x108       |         
    0x000079f4 jr ra                     |         return v0;
    0x000079f8 move a2, zero             |         a2 = 0;
    0x000079fc addiu a1, sp, 0x20        |         a1 = sp + 0x20;
    0x00007a00 move a0, s0               |         a0 = s0;
    0x00007a04 jalr t9                   |         t9 ();
    0x00007a08 lw v1, 0x20(sp)           |         v1 = *(var_20h_3);
    0x00007a0c lb v1, (v1)               |         v1 = *(v1);
    0x00007a10 lw gp, 0x18(sp)           |         gp = *(var_18h);
                                         |         if (v1 != 0) {
    0x00007a14 bnez v1, 0x7a20           |             goto label_2;
                                         |         }
    0x00007a18 sh v0, (s2)               |         *(s2) = v0;
    0x00007a1c b 0x79cc                  |         
                                         |     }
                                         | label_2:
    0x00007a20 lw a2, -0x7fdc(gp)        |     a2 = *(gp);
    0x00007a24 lw t9, -0x7b4c(gp)        |     t9 = sym.imp.com_err;
    0x00007a28 move a3, s0               |     a3 = s0;
                                         |     /* str.Bad_value____s */
    0x00007a2c addiu a2, a2, -0x1938     |     a2 += -0x1938;
    0x00007a30 move a1, zero             |     a1 = 0;
    0x00007a34 move a0, s3               |     a0 = s3;
    0x00007a38 jalr t9                   |     t9 ();
    0x00007a3c lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x00007a40 b 0x79cc                  |     goto label_0;
                                         | label_1:
    0x00007a44 lw t9, -0x7b08(gp)        |     t9 = sym.imp.__stack_chk_fail;
    0x00007a48 jalr t9                   |     t9 ();
    0x00007a4c nop                       |     
                                         | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/debugfs @ 0x7a50 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) fcn.00007a50 ()                  | void fcn_00007a50 () {
    0x00007a50 lui gp, 4                     |     
    0x00007a54 addiu gp, gp, 0x66f0          |     
    0x00007a58 addu gp, gp, t9               |     gp += t9;
    0x00007a5c addiu sp, sp, -0x108          |     
    0x00007a60 lw v1, (a3)                   |     v1 = *(a3);
    0x00007a64 sw s1, 0xf4(sp)               |     *(var_f4h_3) = s1;
    0x00007a68 lw s1, -0x7aa4(gp)            |     s1 = *((gp - 7849));
    0x00007a6c lw t9, -0x7e0c(gp)            |     t9 = sym.imp.__sprintf_chk
    0x00007a70 sw s0, 0xf0(sp)               |     *(var_f0h_3) = s0;
    0x00007a74 lw v0, (s1)                   |     v0 = *(s1);
    0x00007a78 addiu s0, sp, 0x24            |     s0 = sp + 0x24;
    0x00007a7c sw ra, 0x104(sp)              |     *(var_104h_2) = ra;
    0x00007a80 sw gp, 0x18(sp)               |     *(var_18h_2) = gp;
    0x00007a84 sw v1, 0x10(sp)               |     *(var_10h_2) = v1;
    0x00007a88 sw s4, 0x100(sp)              |     *(var_100h_2) = s4;
    0x00007a8c sw s3, 0xfc(sp)               |     *(var_fch_2) = s3;
    0x00007a90 sw s2, 0xf8(sp)               |     *(var_f8h_2) = s2;
    0x00007a94 move s4, a1                   |     s4 = a1;
    0x00007a98 move s2, a3                   |     s2 = a3;
    0x00007a9c addiu a1, zero, 1             |     a1 = 1;
    0x00007aa0 move a3, a2                   |     a3 = a2;
    0x00007aa4 move s3, a0                   |     s3 = a0;
    0x00007aa8 addiu a2, zero, 0xc8          |     a2 = 0xc8;
    0x00007aac move a0, s0                   |     a0 = s0;
    0x00007ab0 sw v0, 0xec(sp)               |     *(var_ech_3) = v0;
    0x00007ab4 jalr t9                       |     t9 ();
    0x00007ab8 nop                           |     
    0x00007abc lw gp, 0x18(sp)               |     gp = *(var_18h_2);
    0x00007ac0 move a3, s0                   |     a3 = s0;
    0x00007ac4 move a2, s4                   |     a2 = s4;
    0x00007ac8 lw a1, -0x7fdc(gp)            |     a1 = *(gp);
    0x00007acc lw t9, -0x7cd4(gp)            |     t9 = sym.imp.__printf_chk;
                                             |     /* str._30s______s__ */
    0x00007ad0 addiu a1, a1, -0x1948         |     a1 += -0x1948;
    0x00007ad4 addiu a0, zero, 1             |     a0 = 1;
    0x00007ad8 jalr t9                       |     t9 ();
    0x00007adc lw gp, 0x18(sp)               |     gp = *(var_18h_2);
    0x00007ae0 addiu a1, zero, 0xc8          |     a1 = 0xc8;
    0x00007ae4 move a0, s0                   |     a0 = s0;
    0x00007ae8 lw v0, -0x7c50(gp)            |     v0 = *((gp - 7956));
    0x00007aec lw t9, -0x7ab8(gp)            |     t9 = sym.imp.fgets;
    0x00007af0 lw a2, (v0)                   |     a2 = *(v0);
    0x00007af4 jalr t9                       |     t9 ();
    0x00007af8 lw gp, 0x18(sp)               |     gp = *(var_18h_2);
                                             |     if (v0 == 0) {
    0x00007afc beqz v0, 0x7b38               |         goto label_0;
                                             |     }
    0x00007b00 lw t9, -0x7c30(gp)            |     t9 = sym.imp.strlen;
    0x00007b04 move a0, s0                   |     a0 = s0;
    0x00007b08 jalr t9                       |     t9 ();
    0x00007b0c addiu v0, v0, -1              |     v0 += -1;
    0x00007b10 addiu v1, sp, 0xf0            |     v1 = sp + 0xf0;
    0x00007b14 addu v0, v1, v0               |     v0 = v1 + v0;
    0x00007b18 addiu v1, zero, 0xa           |     v1 = 0xa;
    0x00007b1c lb a0, -0xcc(v0)              |     a0 = *((v0 - 204));
    0x00007b20 lw gp, 0x18(sp)               |     gp = *(var_18h_2);
                                             |     if (a0 == v1) {
    0x00007b24 bne a0, v1, 0x7b2c            |         
    0x00007b28 sb zero, -0xcc(v0)            |         *((v0 - 204)) = 0;
                                             |     }
    0x00007b2c lb v0, 0x24(sp)               |     v0 = *(var_24h_2);
    0x00007b30 lw t9, -0x7c24(gp)            |     t9 = sym.imp.strtoul;
    0x00007b34 bnez v0, 0x7b64               |     
                                             |     while (1) {
                                             | label_0:
    0x00007b38 lw v1, 0xec(sp)               |         v1 = *(var_ech_3);
    0x00007b3c lw v0, (s1)                   |         v0 = *(s1);
    0x00007b40 lw ra, 0x104(sp)              |         ra = *(var_104h_2);
                                             |         if (v1 != v0) {
    0x00007b44 bne v1, v0, 0x7bb0            |             goto label_1;
                                             |         }
    0x00007b48 lw s4, 0x100(sp)              |         s4 = *(var_100h_2);
    0x00007b4c lw s3, 0xfc(sp)               |         s3 = *(var_fch_2);
    0x00007b50 lw s2, 0xf8(sp)               |         s2 = *(var_f8h_2);
    0x00007b54 lw s1, 0xf4(sp)               |         s1 = *(var_f4h_3);
    0x00007b58 lw s0, 0xf0(sp)               |         s0 = *(var_f0h_3);
    0x00007b5c addiu sp, sp, 0x108           |         
    0x00007b60 jr ra                         |         return v0;
    0x00007b64 move a2, zero                 |         a2 = 0;
    0x00007b68 addiu a1, sp, 0x20            |         a1 = sp + 0x20;
    0x00007b6c move a0, s0                   |         a0 = s0;
    0x00007b70 jalr t9                       |         t9 ();
    0x00007b74 lw v1, 0x20(sp)               |         v1 = *(var_20h_2);
    0x00007b78 lb v1, (v1)                   |         v1 = *(v1);
    0x00007b7c lw gp, 0x18(sp)               |         gp = *(var_18h_2);
                                             |         if (v1 != 0) {
    0x00007b80 bnez v1, 0x7b8c               |             goto label_2;
                                             |         }
    0x00007b84 sw v0, (s2)                   |         *(s2) = v0;
    0x00007b88 b 0x7b38                      |         
                                             |     }
                                             | label_2:
    0x00007b8c lw a2, -0x7fdc(gp)            |     a2 = *(gp);
    0x00007b90 lw t9, -0x7b4c(gp)            |     t9 = sym.imp.com_err;
    0x00007b94 move a3, s0                   |     a3 = s0;
                                             |     /* str.Bad_value____s */
    0x00007b98 addiu a2, a2, -0x1938         |     a2 += -0x1938;
    0x00007b9c move a1, zero                 |     a1 = 0;
    0x00007ba0 move a0, s3                   |     a0 = s3;
    0x00007ba4 jalr t9                       |     t9 ();
    0x00007ba8 lw gp, 0x18(sp)               |     gp = *(var_18h_2);
    0x00007bac b 0x7b38                      |     goto label_0;
                                             | label_1:
    0x00007bb0 lw t9, -0x7b08(gp)            |     t9 = sym.imp.__stack_chk_fail;
    0x00007bb4 jalr t9                       |     t9 ();
    0x00007bb8 nop                           |     
                                             | }
    ; assembly                           | /* r2dec pseudo code output */
                                         | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/debugfs @ 0x88e4 */
                                         | #include <stdint.h>
                                         |  
    ; (fcn) fcn.000088e4 ()              | void fcn_000088e4 () {
    0x000088e4 lui gp, 4                 |     
    0x000088e8 addiu gp, gp, 0x585c      |     
    0x000088ec addu gp, gp, t9           |     gp += t9;
    0x000088f0 addiu sp, sp, -0x108      |     
    0x000088f4 lw a3, -0x7fdc(gp)        |     a3 = *(gp);
    0x000088f8 sw s1, 0xf4(sp)           |     *(var_f4h) = s1;
    0x000088fc lw s1, -0x7aa4(gp)        |     s1 = *((gp - 7849));
    0x00008900 sw ra, 0x104(sp)          |     *(var_104h) = ra;
    0x00008904 sw gp, 0x18(sp)           |     *(var_18h) = gp;
    0x00008908 sw s4, 0x100(sp)          |     *(var_100h) = s4;
    0x0000890c sw s3, 0xfc(sp)           |     *(var_fch) = s3;
    0x00008910 sw s2, 0xf8(sp)           |     *(var_f8h) = s2;
    0x00008914 sw s0, 0xf0(sp)           |     *(var_f0h) = s0;
    0x00008918 lbu v1, (a2)              |     v1 = *(a2);
    0x0000891c lw v0, (s1)               |     v0 = *(s1);
    0x00008920 lw t9, -0x7e0c(gp)        |     t9 = sym.imp.__sprintf_chk
    0x00008924 addiu s0, sp, 0x24        |     s0 = sp + 0x24;
    0x00008928 sw v1, 0x10(sp)           |     *(var_10h) = v1;
    0x0000892c move s4, a1               |     s4 = a1;
                                         |     /* esilref: '&d' */
    0x00008930 addiu a3, a3, 0x810       |     a3 += 0x810;
    0x00008934 addiu a1, zero, 1         |     a1 = 1;
    0x00008938 move s2, a2               |     s2 = a2;
    0x0000893c move s3, a0               |     s3 = a0;
    0x00008940 addiu a2, zero, 0xc8      |     a2 = 0xc8;
    0x00008944 move a0, s0               |     a0 = s0;
    0x00008948 sw v0, 0xec(sp)           |     *(var_ech) = v0;
    0x0000894c jalr t9                   |     t9 ();
    0x00008950 nop                       |     
    0x00008954 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x00008958 move a3, s0               |     a3 = s0;
    0x0000895c move a2, s4               |     a2 = s4;
    0x00008960 lw a1, -0x7fdc(gp)        |     a1 = *(gp);
    0x00008964 lw t9, -0x7cd4(gp)        |     t9 = sym.imp.__printf_chk;
                                         |     /* str._30s______s__ */
    0x00008968 addiu a1, a1, -0x1948     |     a1 += -0x1948;
    0x0000896c addiu a0, zero, 1         |     a0 = 1;
    0x00008970 jalr t9                   |     t9 ();
    0x00008974 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x00008978 addiu a1, zero, 0xc8      |     a1 = 0xc8;
    0x0000897c move a0, s0               |     a0 = s0;
    0x00008980 lw v0, -0x7c50(gp)        |     v0 = *((gp - 7956));
    0x00008984 lw t9, -0x7ab8(gp)        |     t9 = sym.imp.fgets;
    0x00008988 lw a2, (v0)               |     a2 = *(v0);
    0x0000898c jalr t9                   |     t9 ();
    0x00008990 lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     if (v0 == 0) {
    0x00008994 beqz v0, 0x89d0           |         goto label_0;
                                         |     }
    0x00008998 lw t9, -0x7c30(gp)        |     t9 = sym.imp.strlen;
    0x0000899c move a0, s0               |     a0 = s0;
    0x000089a0 jalr t9                   |     t9 ();
    0x000089a4 addiu v0, v0, -1          |     v0 += -1;
    0x000089a8 addiu v1, sp, 0xf0        |     v1 = sp + 0xf0;
    0x000089ac addu v0, v1, v0           |     v0 = v1 + v0;
    0x000089b0 addiu v1, zero, 0xa       |     v1 = 0xa;
    0x000089b4 lb a0, -0xcc(v0)          |     a0 = *(var_1h);
    0x000089b8 lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     if (a0 == v1) {
    0x000089bc bne a0, v1, 0x89c4        |         
    0x000089c0 sb zero, -0xcc(v0)        |         *(var_1h) = 0;
                                         |     }
    0x000089c4 lb v0, 0x24(sp)           |     v0 = *(var_24h);
    0x000089c8 lw t9, -0x7c24(gp)        |     t9 = sym.imp.strtoul;
    0x000089cc bnez v0, 0x89fc           |     
                                         |     while (1) {
                                         | label_0:
    0x000089d0 lw v1, 0xec(sp)           |         v1 = *(var_ech);
    0x000089d4 lw v0, (s1)               |         v0 = *(s1);
    0x000089d8 lw ra, 0x104(sp)          |         ra = *(var_104h);
                                         |         if (v1 != v0) {
    0x000089dc bne v1, v0, 0x8a48        |             goto label_2;
                                         |         }
    0x000089e0 lw s4, 0x100(sp)          |         s4 = *(var_100h);
    0x000089e4 lw s3, 0xfc(sp)           |         s3 = *(var_fch);
    0x000089e8 lw s2, 0xf8(sp)           |         s2 = *(var_f8h);
    0x000089ec lw s1, 0xf4(sp)           |         s1 = *(var_f4h);
    0x000089f0 lw s0, 0xf0(sp)           |         s0 = *(var_f0h);
    0x000089f4 addiu sp, sp, 0x108       |         
    0x000089f8 jr ra                     |         return v0;
    0x000089fc move a2, zero             |         a2 = 0;
    0x00008a00 addiu a1, sp, 0x20        |         a1 = sp + 0x20;
    0x00008a04 move a0, s0               |         a0 = s0;
    0x00008a08 jalr t9                   |         t9 ();
    0x00008a0c lw v1, 0x20(sp)           |         v1 = *(var_20h_3);
    0x00008a10 lb v1, (v1)               |         v1 = *(v1);
    0x00008a14 lw gp, 0x18(sp)           |         gp = *(var_18h);
                                         |         if (v1 != 0) {
    0x00008a18 bnez v1, 0x8a24           |             goto label_3;
                                         |         }
    0x00008a1c sb v0, (s2)               |         *(s2) = v0;
    0x00008a20 b 0x89d0                  |         
                                         |     }
                                         | label_3:
    0x00008a24 lw a2, -0x7fdc(gp)        |     a2 = *(gp);
    0x00008a28 lw t9, -0x7b4c(gp)        |     t9 = sym.imp.com_err;
    0x00008a2c move a3, s0               |     a3 = s0;
                                         |     /* str.Bad_value____s */
    0x00008a30 addiu a2, a2, -0x1938     |     a2 += -0x1938;
    0x00008a34 move a1, zero             |     a1 = 0;
    0x00008a38 move a0, s3               |     a0 = s3;
    0x00008a3c jalr t9                   |     t9 ();
    0x00008a40 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x00008a44 b 0x89d0                  |     goto label_0;
                                         | label_2:
    0x00008a48 lw t9, -0x7b08(gp)        |     t9 = sym.imp.__stack_chk_fail;
    0x00008a4c jalr t9                   |     t9 ();
    0x00008a50 nop                       |     
    0x00008a54 lui gp, 4                 |     
    0x00008a58 addiu gp, gp, 0x56ec      |     
    0x00008a5c addu gp, gp, t9           |     gp += t9;
    0x00008a60 addiu sp, sp, -0x80       |     
    0x00008a64 lw t9, -0x7fa4(gp)        |     t9 = sym.reset_getopt;
    0x00008a68 sw s5, 0x6c(sp)           |     *(var_6ch) = s5;
    0x00008a6c lw s5, -0x7aa4(gp)        |     s5 = *((gp - 7849));
    0x00008a70 move v1, zero             |     v1 = 0;
    0x00008a74 sw gp, 0x28(sp)           |     *(var_28h) = gp;
    0x00008a78 lw v0, (s5)               |     v0 = *(s5);
    0x00008a7c sw fp, 0x78(sp)           |     *(var_78h) = fp;
    0x00008a80 sw v0, 0x54(sp)           |     *(var_54h) = v0;
    0x00008a84 move v0, zero             |     v0 = 0;
    0x00008a88 sw s7, 0x74(sp)           |     *(var_74h) = s7;
    0x00008a8c sw s6, 0x70(sp)           |     *(var_70h) = s6;
    0x00008a90 sw s4, 0x68(sp)           |     *(var_68h) = s4;
    0x00008a94 sw s3, 0x64(sp)           |     *(var_64h) = s3;
    0x00008a98 sw s2, 0x60(sp)           |     *(var_60h) = s2;
    0x00008a9c sw s1, 0x5c(sp)           |     *(var_5ch) = s1;
    0x00008aa0 sw s0, 0x58(sp)           |     *(var_58h) = s0;
    0x00008aa4 sw v0, 0x48(sp)           |     *(var_48h) = v0;
    0x00008aa8 sw ra, 0x7c(sp)           |     *(var_7ch) = ra;
    0x00008aac sw v1, 0x4c(sp)           |     *(var_4ch) = v1;
    0x00008ab0 move s3, a0               |     s3 = a0;
    0x00008ab4 move s0, a1               |     s0 = a1;
    0x00008ab8 bal 0xe400                |     sym_reset_getopt ();
    0x00008abc lw gp, 0x28(sp)           |     gp = *(var_28h);
    0x00008ac0 lui s2, 2                 |     s2 = 0x20000;
    0x00008ac4 move fp, zero             |     fp = 0;
    0x00008ac8 lw v0, -0x7fdc(gp)        |     v0 = *(gp);
    0x00008acc lw s1, -0x7fdc(gp)        |     s1 = *(gp);
                                         |     /* str.superblock_block_number */
    0x00008ad0 addiu v0, v0, -0x1890     |     v0 += -0x1890;
    0x00008ad4 sw v0, 0x38(sp)           |     *(var_38h) = v0;
    0x00008ad8 lw v0, -0x7fdc(gp)        |     v0 = *(gp);
    0x00008adc lw s4, -0x7fdc(gp)        |     s4 = *(gp);
    0x00008ae0 sw zero, 0x34(sp)         |     *(var_34h) = 0;
    0x00008ae4 ori s2, s2, 0x8000        |     s2 |= 0x8000;
    0x00008ae8 move s7, zero             |     s7 = 0;
    0x00008aec move s6, zero             |     s6 = 0;
    0x00008af0 addiu s1, s1, -0x710      |     s1 += -0x710;
    0x00008af4 sw v0, 0x3c(sp)           |     *(var_3ch) = v0;
    0x00008af8 lw t9, -0x7c40(gp)        |     t9 = sym.imp.getopt;
                                         |     /* str.iwfecb:s:d:Dz: */
    0x00008afc addiu a2, s4, -0x1878     |     a2 = s4 + -0x1878;
    0x00008b00 move a1, s0               |     a1 = s0;
    0x00008b04 move a0, s3               |     a0 = s3;
    0x00008b08 jalr t9                   |     t9 ();
    0x00008b0c addiu v1, zero, -1        |     v1 = -1;
    0x00008b10 lw gp, 0x28(sp)           |     gp = *(var_28h);
                                         |     if (v0 == v1) {
    0x00008b14 beq v0, v1, 0x8c50        |         goto label_4;
                                         |     }
                                         |     /* esilref: 'Dec' */
    0x00008b18 addiu v0, v0, -0x44       |     v0 += -0x44;
    0x00008b1c sltiu v1, v0, 0x37        |     v1 = (v0 < 0x37) ? 1 : 0;
    0x00008b20 sll v0, v0, 2             |     v0 <<= 2;
                                         |     if (v1 != 0) {
    0x00008b24 beqz v1, 0x8bf0           |         
    0x00008b28 lwx v0, v0(s1)            |         __asm ("lwx v0, v0(s1)");
    0x00008b2c addu v0, v0, gp           |         v0 += gp;
    0x00008b30 jr v0                     |         v0 ();
    0x00008b34 nop                       |         
                                         |     }
    0x00008bf0 lw a3, (s0)               |     a3 = *(s0);
                                         |     do {
    0x00008bf4 lw v0, -0x7a6c(gp)        |         v0 = *((gp - 7835));
    0x00008bf8 lw a2, -0x7fdc(gp)        |         a2 = *(gp);
    0x00008bfc lw t9, -0x7d90(gp)        |         t9 = sym.imp.__fprintf_chk;
    0x00008c00 lw a0, (v0)               |         a0 = *(v0);
                                         |         /* str._s:_Usage:_open___s_superblock____b_blocksize____d_image_filename____z_undo_file____c____i____f____e____D____w___device__n */
    0x00008c04 addiu a2, a2, -0x1868     |         a2 += -0x1868;
    0x00008c08 addiu a1, zero, 1         |         a1 = 1;
    0x00008c0c jalr t9                   |         t9 ();
    0x00008c10 lw gp, 0x28(sp)           |         gp = *(var_28h);
                                         | label_1:
    0x00008c14 lw v1, 0x54(sp)           |         v1 = *(var_54h);
    0x00008c18 lw v0, (s5)               |         v0 = *(s5);
    0x00008c1c lw ra, 0x7c(sp)           |         ra = *(var_7ch);
                                         |         if (v1 != v0) {
    0x00008c20 bne v1, v0, 0x8cbc        |             goto label_5;
                                         |         }
    0x00008c24 lw fp, 0x78(sp)           |         fp = *(var_78h);
    0x00008c28 lw s7, 0x74(sp)           |         s7 = *(var_74h);
    0x00008c2c lw s6, 0x70(sp)           |         s6 = *(var_70h);
    0x00008c30 lw s5, 0x6c(sp)           |         s5 = *(var_6ch);
    0x00008c34 lw s4, 0x68(sp)           |         s4 = *(var_68h);
    0x00008c38 lw s3, 0x64(sp)           |         s3 = *(var_64h);
    0x00008c3c lw s2, 0x60(sp)           |         s2 = *(var_60h);
    0x00008c40 lw s1, 0x5c(sp)           |         s1 = *(var_5ch);
    0x00008c44 lw s0, 0x58(sp)           |         s0 = *(var_58h);
    0x00008c48 addiu sp, sp, 0x80        |         
    0x00008c4c jr ra                     |         return v0;
                                         | label_4:
    0x00008c50 lw s1, -0x7af8(gp)        |         s1 = *((gp - 7870));
    0x00008c54 addiu s3, s3, -1          |         s3 += -1;
    0x00008c58 lw v0, (s1)               |         v0 = *(s1);
    0x00008c5c lw a3, (s0)               |         a3 = *(s0);
    0x00008c60 bne s3, v0, 0x8bf4        |         
                                         |     } while (s3 != v0);
    0x00008c64 lw t9, -0x7f98(gp)        |     t9 = sym.check_fs_not_open;
    0x00008c68 move a0, a3               |     a0 = a3;
    0x00008c6c bal 0xe7c8                |     sym_check_fs_not_open ();
    0x00008c70 lw gp, 0x28(sp)           |     gp = *(var_28h);
                                         |     if (v0 != 0) {
    0x00008c74 bnez v0, 0x8c14           |         goto label_1;
                                         |     }
    0x00008c78 lw a0, (s1)               |     a0 = *(s1);
    0x00008c7c lw t9, -0x7fac(gp)        |     t9 = *((gp - 8171));
    0x00008c80 sll a0, a0, 2             |     a0 <<= 2;
    0x00008c84 lw v0, 0x34(sp)           |     v0 = *(var_34h);
    0x00008c88 lwx a0, a0(s0)            |     __asm ("lwx a0, a0(s0)");
    0x00008c8c lw a2, 0x48(sp)           |     a2 = *(var_48h);
    0x00008c90 lw a3, 0x4c(sp)           |     a3 = *(var_4ch);
    0x00008c94 sw fp, 0x20(sp)           |     *(var_20h_2) = fp;
    0x00008c98 sw v0, 0x1c(sp)           |     *(var_1ch) = v0;
    0x00008c9c sw s6, 0x18(sp)           |     *(var_18h_3) = s6;
    0x00008ca0 sw s7, 0x10(sp)           |     *(var_10h_3) = s7;
    0x00008ca4 sw zero, 0x14(sp)         |     *(var_14h) = 0;
    0x00008ca8 addiu t9, t9, 0x6ca8      |     t9 += fcn.00006ca8;
    0x00008cac move a1, s2               |     a1 = s2;
    0x00008cb0 bal 0x6ca8                |     fcn_00006ca8 ();
    0x00008cb4 lw gp, 0x28(sp)           |     gp = *(var_28h);
    0x00008cb8 b 0x8c14                  |     goto label_1;
                                         | label_5:
    0x00008cbc lw t9, -0x7b08(gp)        |     t9 = sym.imp.__stack_chk_fail;
    0x00008cc0 jalr t9                   |     t9 ();
    0x00008cc4 nop                       |     
    0x00008cc8 lui gp, 4                 |     
    0x00008ccc addiu gp, gp, 0x5478      |     
    0x00008cd0 addu gp, gp, t9           |     gp += t9;
    0x00008cd4 addiu sp, sp, -0x28       |     
    0x00008cd8 addiu v0, zero, 2         |     v0 = 2;
    0x00008cdc sw gp, 0x18(sp)           |     *(var_18h_2) = gp;
    0x00008ce0 sw s0, 0x20(sp)           |     *(var_20h) = s0;
    0x00008ce4 sw ra, 0x24(sp)           |     *(var_24h_2) = ra;
    0x00008ce8 move s0, a1               |     s0 = a1;
                                         |     if (a0 == v0) {
    0x00008cec beq a0, v0, 0x8d28        |         goto label_6;
                                         |     }
    0x00008cf0 lw v0, -0x7fdc(gp)        |     v0 = *(gp);
    0x00008cf4 lw a3, (a1)               |     a3 = *(a1);
    0x00008cf8 lw a2, -0x7fdc(gp)        |     a2 = *(gp);
    0x00008cfc lw t9, -0x7b4c(gp)        |     t9 = sym.imp.com_err;
                                         |     /* str._native_dir_ */
    0x00008d00 addiu v0, v0, -0x17dc     |     v0 += -0x17dc;
    0x00008d04 sw v0, 0x10(sp)           |     *(var_10h_2) = v0;
                                         |     /* str.Usage:__s__s */
    0x00008d08 addiu a2, a2, -0x17ec     |     a2 += -0x17ec;
    0x00008d0c move a1, zero             |     a1 = 0;
    0x00008d10 move a0, a3               |     a0 = a3;
    0x00008d14 jalr t9                   |     t9 ();
                                         |     do {
    0x00008d18 lw ra, 0x24(sp)           |         ra = *(var_24h_2);
    0x00008d1c lw s0, 0x20(sp)           |         s0 = *(var_20h);
    0x00008d20 addiu sp, sp, 0x28        |         
    0x00008d24 jr ra                     |         return v0;
                                         | label_6:
    0x00008d28 lw t9, -0x7af0(gp)        |         t9 = sym.imp.chdir;
    0x00008d2c lw a0, 4(a1)              |         a0 = *((a1 + 1));
    0x00008d30 jalr t9                   |         t9 ();
    0x00008d34 addiu v1, zero, -1        |         v1 = -1;
    0x00008d38 lw gp, 0x18(sp)           |         gp = *(var_18h_2);
    0x00008d3c bne v0, v1, 0x8d18        |         
                                         |     } while (v0 != v1);
    0x00008d40 lw t9, -0x7c74(gp)        |     t9 = sym.imp.__errno_location;
    0x00008d44 jalr t9                   |     t9 ();
    0x00008d48 nop                       |     
    0x00008d4c lw gp, 0x18(sp)           |     gp = *(var_18h_2);
    0x00008d50 lw a3, 4(s0)              |     a3 = *((s0 + 1));
    0x00008d54 lw a0, (s0)               |     a0 = *(s0);
    0x00008d58 lw a2, -0x7fdc(gp)        |     a2 = *(gp);
    0x00008d5c lw ra, 0x24(sp)           |     ra = *(var_24h_2);
    0x00008d60 lw s0, 0x20(sp)           |     s0 = *(var_20h);
    0x00008d64 lw a1, (v0)               |     a1 = *(v0);
    0x00008d68 lw t9, -0x7b4c(gp)        |     t9 = sym.imp.com_err;
                                         |     /* str.while_trying_to_change_native_directory_to__s */
    0x00008d6c addiu a2, a2, -0x17cc     |     a2 += -0x17cc;
    0x00008d70 addiu sp, sp, 0x28        |     
    0x00008d74 jr t9                     |     return t9 ();
                                         | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/debugfs @ 0x11b80 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) fcn.00011b80 ()                  | void fcn_00011b80 () {
                                             | label_5:
    0x00011b80 lui gp, 4                     |     
    0x00011b84 addiu gp, gp, -0x3a40         |     
    0x00011b88 addu gp, gp, t9               |     gp += t9;
    0x00011b8c addiu sp, sp, -0x50           |     
    0x00011b90 lw t9, -0x7c30(gp)            |     t9 = sym.imp.strlen;
    0x00011b94 sw s2, 0x38(sp)               |     *(var_38h_2) = s2;
    0x00011b98 lw s2, -0x7aa4(gp)            |     s2 = *((gp - 7849));
    0x00011b9c sw ra, 0x4c(sp)               |     *(var_4ch) = ra;
    0x00011ba0 sw gp, 0x18(sp)               |     *(var_18h_2) = gp;
    0x00011ba4 lw v0, (s2)                   |     v0 = *(s2);
    0x00011ba8 sw s5, 0x44(sp)               |     *(var_44h) = s5;
    0x00011bac sw s4, 0x40(sp)               |     *(var_40h) = s4;
    0x00011bb0 sw s3, 0x3c(sp)               |     *(var_3ch_2) = s3;
    0x00011bb4 sw s1, 0x34(sp)               |     *(var_34h_2) = s1;
    0x00011bb8 sw s0, 0x30(sp)               |     *(var_30h_2) = s0;
    0x00011bbc sw s6, 0x48(sp)               |     *(var_48h) = s6;
    0x00011bc0 move s4, a0                   |     s4 = a0;
    0x00011bc4 sw v0, 0x2c(sp)               |     *(var_2ch_3) = v0;
    0x00011bc8 move a0, a3                   |     a0 = a3;
    0x00011bcc move s1, a2                   |     s1 = a2;
    0x00011bd0 move s5, a3                   |     s5 = a3;
    0x00011bd4 move s3, a1                   |     s3 = a1;
    0x00011bd8 jalr t9                       |     t9 ();
    0x00011bdc lw gp, 0x18(sp)               |     gp = *(var_18h_2);
    0x00011be0 move a0, s1                   |     a0 = s1;
    0x00011be4 lw t9, -0x7c30(gp)            |     t9 = sym.imp.strlen;
    0x00011be8 move s0, v0                   |     s0 = v0;
    0x00011bec jalr t9                       |     t9 ();
    0x00011bf0 lw gp, 0x18(sp)               |     gp = *(var_18h_2);
    0x00011bf4 addu v0, s0, v0               |     v0 = s0 + v0;
    0x00011bf8 lw t9, -0x7bd4(gp)            |     t9 = sym.imp.malloc;
    0x00011bfc addiu a0, v0, 2               |     a0 = v0 + 2;
    0x00011c00 jalr t9                       |     t9 ();
    0x00011c04 lw gp, 0x18(sp)               |     gp = *(var_18h_2);
                                             |     if (v0 == 0) {
    0x00011c08 beqz v0, 0x11d50              |         goto label_6;
                                             |     }
    0x00011c0c lw a3, -0x7fdc(gp)            |     a3 = *(gp);
    0x00011c10 lw t9, -0x7e0c(gp)            |     t9 = sym.imp.__sprintf_chk
    0x00011c14 sw s1, 0x14(sp)               |     *(var_14h) = s1;
    0x00011c18 sw s5, 0x10(sp)               |     *(var_1d0h) = s5;
                                             |     /* str._s__s */
    0x00011c1c addiu a3, a3, -0x530          |     a3 += -0x530;
    0x00011c20 addiu a2, zero, -1            |     a2 = -1;
    0x00011c24 addiu a1, zero, 1             |     a1 = 1;
    0x00011c28 move a0, v0                   |     a0 = v0;
    0x00011c2c move s0, v0                   |     s0 = v0;
    0x00011c30 jalr t9                       |     t9 ();
    0x00011c34 lhu v0, (s3)                  |     v0 = *(s3);
    0x00011c38 ori v1, zero, 0xa000          |     v1 = 0xa000;
    0x00011c3c andi v0, v0, 0xf000           |     v0 &= 0xf000;
    0x00011c40 lw gp, 0x18(sp)               |     gp = *(var_18h_2);
                                             |     if (v0 == v1) {
    0x00011c44 beq v0, v1, 0x11db4           |         goto label_7;
                                             |     }
    0x00011c48 ori v1, zero, 0x8000          |     v1 = 0x8000;
    0x00011c4c addiu v1, zero, 0x4000        |     v1 = 0x4000;
                                             |     if (v0 == v1) {
    0x00011c50 beq v0, v1, 0x11e28           |         goto label_8;
                                             |     }
    0x00011c54 lw a1, -0x7fdc(gp)            |     a1 = *(gp);
    0x00011c58 beq v0, v1, 0x11c98           |     
                                             |     while (v0 == 0) {
                                             | label_0:
    0x00011c5c lw v1, 0x2c(sp)               |         v1 = *(var_2ch_3);
    0x00011c60 lw v0, (s2)                   |         v0 = *(s2);
    0x00011c64 lw ra, 0x4c(sp)               |         ra = *(var_4ch);
                                             |         if (v1 != v0) {
    0x00011c68 bne v1, v0, 0x120a4           |             goto label_9;
                                             |         }
    0x00011c6c lw s6, 0x48(sp)               |         s6 = *(var_48h);
    0x00011c70 lw s5, 0x44(sp)               |         s5 = *(var_44h);
    0x00011c74 lw s4, 0x40(sp)               |         s4 = *(var_40h);
    0x00011c78 lw s3, 0x3c(sp)               |         s3 = *(var_3ch_2);
    0x00011c7c lw s2, 0x38(sp)               |         s2 = *(var_38h_2);
    0x00011c80 lw s1, 0x34(sp)               |         s1 = *(var_34h_2);
    0x00011c84 move a0, s0                   |         a0 = s0;
    0x00011c88 lw t9, -0x7a8c(gp)            |         t9 = sym.imp.free;
    0x00011c8c lw s0, 0x30(sp)               |         s0 = *(var_30h_2);
    0x00011c90 addiu sp, sp, 0x50            |         
    0x00011c94 jr t9                         |         t9 ();
    0x00011c98 lw t9, -0x7a28(gp)            |         t9 = sym.imp.strcmp;
                                             |         /* esilref: '(' */
    0x00011c9c addiu a1, a1, -0x314          |         a1 += -0x314;
    0x00011ca0 move a0, s1                   |         a0 = s1;
    0x00011ca4 jalr t9                       |         t9 ();
    0x00011ca8 lw gp, 0x18(sp)               |         gp = *(var_18h_2);
    0x00011cac beqz v0, 0x11c5c              |         
                                             |     }
    0x00011cb0 lw a1, -0x7fdc(gp)            |     a1 = *(gp);
    0x00011cb4 lw t9, -0x7a28(gp)            |     t9 = sym.imp.strcmp;
                                             |     /* esilref: '..' */
    0x00011cb8 addiu a1, a1, 0x288           |     a1 += 0x288;
    0x00011cbc move a0, s1                   |     a0 = s1;
    0x00011cc0 jalr t9                       |     t9 ();
    0x00011cc4 lw gp, 0x18(sp)               |     gp = *(var_18h_2);
                                             |     if (v0 == 0) {
    0x00011cc8 beqz v0, 0x11c5c              |         goto label_0;
                                             |     }
    0x00011ccc lb v0, (s1)                   |     v0 = *(s1);
    0x00011cd0 lw v0, -0x7fd8(gp)            |     v0 = *(gp);
                                             |     if (v0 != 0) {
    0x00011cd4 beqz v0, 0x11cf8              |         
    0x00011cd8 lw t9, -0x7c64(gp)            |         t9 = sym.imp.mkdir;
    0x00011cdc addiu a1, zero, 0x1c0         |         a1 = 0x1c0;
    0x00011ce0 move a0, s0                   |         a0 = s0;
    0x00011ce4 jalr t9                       |         t9 ();
    0x00011ce8 addiu v1, zero, -1            |         v1 = -1;
    0x00011cec lw gp, 0x18(sp)               |         gp = *(var_18h_2);
                                             |         if (v0 == v1) {
    0x00011cf0 beq v0, v1, 0x1206c           |             goto label_10;
                                             |         }
    0x00011cf4 lw v0, -0x7fd8(gp)            |         v0 = *(gp);
                                             |     }
    0x00011cf8 lw t9, -0x7c2c(gp)            |     t9 = sym.imp.ext2fs_dir_iterate;
    0x00011cfc move a3, zero                 |     a3 = 0;
    0x00011d00 lw a0, (v0)                   |     a0 = *(v0);
    0x00011d04 lw v0, -0x7fa8(gp)            |     v0 = *(gp);
    0x00011d08 sw s0, 0x14(sp)               |     *(var_14h) = s0;
    0x00011d0c addiu v0, v0, 0x20b0          |     v0 += 0x20b0;
    0x00011d10 sw v0, 0x10(sp)               |     *(var_1d0h) = v0;
    0x00011d14 move a2, zero                 |     a2 = 0;
    0x00011d18 move a1, s4                   |     a1 = s4;
    0x00011d1c jalr t9                       |     t9 ();
    0x00011d20 lw gp, 0x18(sp)               |     gp = *(var_18h_2);
    0x00011d24 lw s1, -0x7fdc(gp)            |     s1 = *(gp);
                                             |     if (v0 != 0) {
    0x00011d28 bnez v0, 0x11ffc              |         goto label_11;
                                             |     }
                                             | label_3:
    0x00011d2c lw t9, -0x7fa8(gp)            |     t9 = *(gp);
    0x00011d30 move a3, s0                   |     a3 = s0;
    0x00011d34 addiu a2, zero, -1            |     a2 = -1;
    0x00011d38 move a1, s3                   |     a1 = s3;
                                             |     /* fcn.000116b0 */
    0x00011d3c addiu t9, t9, 0x16b0          |     t9 += aav.0x000016b0;
                                             |     /* str.rdump */
    0x00011d40 addiu a0, s1, -0x1f74         |     a0 = s1 + -0x1f74;
    0x00011d44 bal 0x116b0                   |     fcn_000116b0 ();
    0x00011d48 lw gp, 0x18(sp)               |     gp = *(var_18h_2);
    0x00011d4c b 0x11c5c                     |     goto label_0;
                                             | label_6:
    0x00011d50 lw t9, -0x7c74(gp)            |     t9 = sym.imp.__errno_location;
    0x00011d54 jalr t9                       |     t9 ();
    0x00011d58 nop                           |     
    0x00011d5c lw gp, 0x18(sp)               |     gp = *(var_18h_2);
    0x00011d60 lw a1, (v0)                   |     a1 = *(v0);
    0x00011d64 lw a2, -0x7fdc(gp)            |     a2 = *(gp);
    0x00011d68 lw a0, -0x7fdc(gp)            |     a0 = *(gp);
    0x00011d6c lw t9, -0x7b4c(gp)            |     t9 = sym.imp.com_err;
                                             |     /* str.while_allocating_memory */
    0x00011d70 addiu a2, a2, -0xab4          |     a2 += -0xab4;
                                             |     /* str.rdump */
    0x00011d74 addiu a0, a0, -0x1f74         |     a0 += -0x1f74;
    0x00011d78 jalr t9                       |     t9 ();
    0x00011d7c lw v1, 0x2c(sp)               |     v1 = *(var_2ch_3);
    0x00011d80 lw v0, (s2)                   |     v0 = *(s2);
    0x00011d84 lw gp, 0x18(sp)               |     gp = *(var_18h_2);
                                             |     if (v1 != v0) {
    0x00011d88 bne v1, v0, 0x120a4           |         goto label_9;
                                             |     }
    0x00011d8c lw ra, 0x4c(sp)               |     ra = *(var_4ch);
    0x00011d90 lw s6, 0x48(sp)               |     s6 = *(var_48h);
    0x00011d94 lw s5, 0x44(sp)               |     s5 = *(var_44h);
    0x00011d98 lw s4, 0x40(sp)               |     s4 = *(var_40h);
    0x00011d9c lw s3, 0x3c(sp)               |     s3 = *(var_3ch_2);
    0x00011da0 lw s2, 0x38(sp)               |     s2 = *(var_38h_2);
    0x00011da4 lw s1, 0x34(sp)               |     s1 = *(var_34h_2);
    0x00011da8 lw s0, 0x30(sp)               |     s0 = *(var_30h_2);
    0x00011dac addiu sp, sp, 0x50            |     
    0x00011db0 jr ra                         |     return v0;
                                             | label_7:
    0x00011db4 lw a0, 4(s3)                  |     a0 = *((s3 + 1));
    0x00011db8 lw t9, -0x7bd4(gp)            |     t9 = sym.imp.malloc;
    0x00011dbc addiu a0, a0, 1               |     a0++;
    0x00011dc0 jalr t9                       |     t9 ();
    0x00011dc4 move s5, v0                   |     s5 = v0;
    0x00011dc8 lw gp, 0x18(sp)               |     gp = *(var_18h_2);
                                             |     if (v0 == 0) {
    0x00011dcc beqz v0, 0x11f90              |         goto label_12;
                                             |     }
    0x00011dd0 lw t9, -0x7a14(gp)            |     t9 = sym.imp.ext2fs_is_fast_symlink;
    0x00011dd4 move a0, s3                   |     a0 = s3;
    0x00011dd8 jalr t9                       |     t9 ();
    0x00011ddc lw gp, 0x18(sp)               |     gp = *(var_18h_2);
                                             |     if (v0 == 0) {
    0x00011de0 beqz v0, 0x11ebc              |         goto label_13;
                                             |     }
    0x00011de4 lw t9, -0x7b98(gp)            |     t9 = sym.imp.strcpy;
    0x00011de8 addiu a1, s3, 0x28            |     a1 = s3 + 0x28;
    0x00011dec move a0, s5                   |     a0 = s5;
    0x00011df0 jalr t9                       |     t9 ();
    0x00011df4 lw gp, 0x18(sp)               |     gp = *(var_18h_2);
                                             | label_2:
    0x00011df8 lw t9, -0x7d40(gp)            |     t9 = sym.imp.symlink;
    0x00011dfc move a1, s0                   |     a1 = s0;
    0x00011e00 move a0, s5                   |     a0 = s5;
    0x00011e04 jalr t9                       |     t9 ();
    0x00011e08 addiu v1, zero, -1            |     v1 = -1;
    0x00011e0c lw gp, 0x18(sp)               |     gp = *(var_18h_2);
                                             |     if (v0 == v1) {
    0x00011e10 beq v0, v1, 0x12030           |         goto label_14;
                                             |     }
                                             | label_1:
    0x00011e14 lw t9, -0x7a8c(gp)            |     t9 = sym.imp.free;
    0x00011e18 move a0, s5                   |     a0 = s5;
    0x00011e1c jalr t9                       |     t9 ();
    0x00011e20 lw gp, 0x18(sp)               |     gp = *(var_18h_2);
    0x00011e24 b 0x11c5c                     |     goto label_0;
                                             | label_8:
    0x00011e28 lw t9, -0x7c0c(gp)            |     t9 = sym.imp.open;
    0x00011e2c addiu a2, zero, 0x1c0         |     a2 = 0x1c0;
    0x00011e30 addiu a1, zero, 0x2301        |     a1 = 0x2301;
    0x00011e34 move a0, s0                   |     a0 = s0;
    0x00011e38 jalr t9                       |     t9 ();
    0x00011e3c move s1, v0                   |     s1 = v0;
    0x00011e40 addiu v0, zero, -1            |     v0 = -1;
    0x00011e44 lw gp, 0x18(sp)               |     gp = *(var_18h_2);
                                             |     if (s1 == v0) {
    0x00011e48 beq s1, v0, 0x11fc4           |         goto label_15;
                                             |     }
    0x00011e4c lw s3, -0x7fdc(gp)            |     s3 = *(gp);
    0x00011e50 lw t9, -0x7fa8(gp)            |     t9 = *(gp);
    0x00011e54 addiu a3, zero, 1             |     a3 = 1;
    0x00011e58 move a2, s1                   |     a2 = s1;
    0x00011e5c move a1, s4                   |     a1 = s4;
                                             |     /* str.rdump */
    0x00011e60 addiu a0, s3, -0x1f74         |     a0 = s3 + -0x1f74;
                                             |     /* fcn.00011910 */
    0x00011e64 addiu t9, t9, 0x1910          |     t9 += 0x1910;
    0x00011e68 sw s0, 0x10(sp)               |     *(var_1d0h) = s0;
    0x00011e6c bal 0x11910                   |     fcn_00011910 ();
    0x00011e70 lw gp, 0x18(sp)               |     gp = *(var_18h_2);
    0x00011e74 lw t9, -0x7de8(gp)            |     t9 = sym.imp.close;
    0x00011e78 move a0, s1                   |     a0 = s1;
    0x00011e7c jalr t9                       |     t9 ();
    0x00011e80 lw gp, 0x18(sp)               |     gp = *(var_18h_2);
                                             |     if (v0 == 0) {
    0x00011e84 beqz v0, 0x11c5c              |         goto label_0;
                                             |     }
    0x00011e88 lw t9, -0x7c74(gp)            |     t9 = sym.imp.__errno_location;
    0x00011e8c jalr t9                       |     t9 ();
    0x00011e90 nop                           |     
    0x00011e94 lw gp, 0x18(sp)               |     gp = *(var_18h_2);
    0x00011e98 lw a1, (v0)                   |     a1 = *(v0);
    0x00011e9c move a3, s0                   |     a3 = s0;
    0x00011ea0 lw a2, -0x7fdc(gp)            |     a2 = *(gp);
    0x00011ea4 lw t9, -0x7b4c(gp)            |     t9 = sym.imp.com_err;
                                             |     /* str.while_closing__s */
    0x00011ea8 addiu a2, a2, 0x274           |     a2 += aav.0x00000274;
                                             |     /* str.rdump */
    0x00011eac addiu a0, s3, -0x1f74         |     a0 = s3 + -0x1f74;
    0x00011eb0 jalr t9                       |     t9 ();
    0x00011eb4 lw gp, 0x18(sp)               |     gp = *(var_18h_2);
    0x00011eb8 b 0x11c5c                     |     goto label_0;
                                             | label_13:
    0x00011ebc lw v0, -0x7fd8(gp)            |     v0 = *(gp);
    0x00011ec0 lw t9, -0x7abc(gp)            |     t9 = sym.imp.ext2fs_file_open;
    0x00011ec4 addiu a3, sp, 0x24            |     a3 = sp + 0x24;
    0x00011ec8 lw a0, (v0)                   |     a0 = *(v0);
    0x00011ecc move a2, zero                 |     a2 = 0;
    0x00011ed0 move a1, s4                   |     a1 = s4;
    0x00011ed4 lw s1, 4(s3)                  |     s1 = *((s3 + 1));
    0x00011ed8 jalr t9                       |     t9 ();
    0x00011edc lw gp, 0x18(sp)               |     gp = *(var_18h_2);
                                             |     if (v0 != 0) {
    0x00011ee0 bnez v0, 0x12020              |         goto label_16;
                                             |     }
    0x00011ee4 move s4, s5                   |     s4 = s5;
    0x00011ee8 addiu s6, sp, 0x28            |     s6 = sp + 0x28;
    0x00011eec b 0x11f08                     |     
                                             |     while (v0 == 0) {
    0x00011ef0 lw v0, 0x28(sp)               |         v0 = *(var_28h_3);
    0x00011ef4 subu s1, s1, v0               |         __asm ("subu s1, s1, v0");
    0x00011ef8 addu s4, s4, v0               |         s4 += v0;
                                             |         if (v0 == 0) {
    0x00011efc beqz v0, 0x11f4c              |             goto label_17;
                                             |         }
                                             |         if (s1 == 0) {
    0x00011f00 beql s1, zero, 0x11f50        |             goto label_18;
                                             |         }
    0x00011f04 lw v0, 4(s3)                  |         v0 = *((s3 + 1));
    0x00011f08 lw t9, -0x7a30(gp)            |         t9 = sym.imp.ext2fs_file_read;
    0x00011f0c lw a0, 0x24(sp)               |         a0 = *(var_24h_4);
    0x00011f10 move a3, s6                   |         a3 = s6;
    0x00011f14 move a2, s1                   |         a2 = s1;
    0x00011f18 move a1, s4                   |         a1 = s4;
    0x00011f1c jalr t9                       |         t9 ();
    0x00011f20 lw gp, 0x18(sp)               |         gp = *(var_18h_2);
    0x00011f24 beqz v0, 0x11ef0              |         
                                             |     }
    0x00011f28 lw a2, -0x7fdc(gp)            |     a2 = *(gp);
    0x00011f2c lw t9, -0x7b4c(gp)            |     t9 = sym.imp.com_err;
                                             |     /* str.while_reading_symlink */
    0x00011f30 addiu a2, a2, 0x210           |     a2 += 0x210;
                                             | label_4:
    0x00011f34 lw a0, -0x7fdc(gp)            |     a0 = *(gp);
    0x00011f38 move a1, v0                   |     a1 = v0;
                                             |     /* str.rdump */
    0x00011f3c addiu a0, a0, -0x1f74         |     a0 += -0x1f74;
    0x00011f40 jalr t9                       |     t9 ();
    0x00011f44 lw gp, 0x18(sp)               |     gp = *(var_18h_2);
    0x00011f48 b 0x11e14                     |     goto label_1;
                                             | label_17:
    0x00011f4c lw v0, 4(s3)                  |     v0 = *((s3 + 1));
                                             | label_18:
    0x00011f50 lw t9, -0x7a80(gp)            |     t9 = sym.imp.ext2fs_file_close;
    0x00011f54 addu v0, s5, v0               |     v0 = s5 + v0;
    0x00011f58 lw a0, 0x24(sp)               |     a0 = *(var_24h_4);
    0x00011f5c sb zero, (v0)                 |     *(v0) = 0;
    0x00011f60 jalr t9                       |     t9 ();
    0x00011f64 lw gp, 0x18(sp)               |     gp = *(var_18h_2);
                                             |     if (v0 == 0) {
    0x00011f68 beqz v0, 0x11df8              |         goto label_2;
                                             |     }
    0x00011f6c lw a2, -0x7fdc(gp)            |     a2 = *(gp);
    0x00011f70 lw a0, -0x7fdc(gp)            |     a0 = *(gp);
    0x00011f74 lw t9, -0x7b4c(gp)            |     t9 = sym.imp.com_err;
                                             |     /* str.while_closing_symlink */
    0x00011f78 addiu a2, a2, 0x228           |     a2 += aav.0x00000228;
    0x00011f7c move a1, v0                   |     a1 = v0;
                                             |     /* str.rdump */
    0x00011f80 addiu a0, a0, -0x1f74         |     a0 += -0x1f74;
    0x00011f84 jalr t9                       |     t9 ();
    0x00011f88 lw gp, 0x18(sp)               |     gp = *(var_18h_2);
    0x00011f8c b 0x11df8                     |     goto label_2;
                                             | label_12:
    0x00011f90 lw t9, -0x7c74(gp)            |     t9 = sym.imp.__errno_location;
    0x00011f94 jalr t9                       |     t9 ();
    0x00011f98 nop                           |     
    0x00011f9c lw gp, 0x18(sp)               |     gp = *(var_18h_2);
    0x00011fa0 lw a1, (v0)                   |     a1 = *(v0);
    0x00011fa4 lw a2, -0x7fdc(gp)            |     a2 = *(gp);
    0x00011fa8 lw a0, -0x7fdc(gp)            |     a0 = *(gp);
    0x00011fac lw t9, -0x7b4c(gp)            |     t9 = sym.imp.com_err;
                                             |     /* str.while_allocating_for_symlink */
    0x00011fb0 addiu a2, a2, 0x1d8           |     a2 += 0x1d8;
                                             |     /* str.rdump */
    0x00011fb4 addiu a0, a0, -0x1f74         |     a0 += -0x1f74;
    0x00011fb8 jalr t9                       |     t9 ();
    0x00011fbc lw gp, 0x18(sp)               |     gp = *(var_18h_2);
    0x00011fc0 b 0x11e14                     |     goto label_1;
                                             | label_15:
    0x00011fc4 lw t9, -0x7c74(gp)            |     t9 = sym.imp.__errno_location;
    0x00011fc8 jalr t9                       |     t9 ();
    0x00011fcc nop                           |     
    0x00011fd0 lw gp, 0x18(sp)               |     gp = *(var_18h_2);
    0x00011fd4 lw a1, (v0)                   |     a1 = *(v0);
    0x00011fd8 move a3, s0                   |     a3 = s0;
    0x00011fdc lw a2, -0x7fdc(gp)            |     a2 = *(gp);
    0x00011fe0 lw a0, -0x7fdc(gp)            |     a0 = *(gp);
    0x00011fe4 lw t9, -0x7b4c(gp)            |     t9 = sym.imp.com_err;
                                             |     /* str.while_opening__s */
    0x00011fe8 addiu a2, a2, 0x260           |     a2 += 0x260;
                                             |     /* str.rdump */
    0x00011fec addiu a0, a0, -0x1f74         |     a0 += -0x1f74;
    0x00011ff0 jalr t9                       |     t9 ();
    0x00011ff4 lw gp, 0x18(sp)               |     gp = *(var_18h_2);
    0x00011ff8 b 0x11c5c                     |     goto label_0;
                                             | label_11:
    0x00011ffc lw a2, -0x7fdc(gp)            |     a2 = *(gp);
    0x00012000 lw t9, -0x7b4c(gp)            |     t9 = sym.imp.com_err;
    0x00012004 move a3, s0                   |     a3 = s0;
                                             |     /* str.while_dumping__s */
    0x00012008 addiu a2, a2, 0x2a8           |     a2 += 0x2a8;
    0x0001200c move a1, v0                   |     a1 = v0;
                                             |     /* str.rdump */
    0x00012010 addiu a0, s1, -0x1f74         |     a0 = s1 + -0x1f74;
    0x00012014 jalr t9                       |     t9 ();
    0x00012018 lw gp, 0x18(sp)               |     gp = *(var_18h_2);
    0x0001201c b 0x11d2c                     |     goto label_3;
                                             | label_16:
    0x00012020 lw a2, -0x7fdc(gp)            |     a2 = *(gp);
    0x00012024 lw t9, -0x7b4c(gp)            |     t9 = sym.imp.com_err;
                                             |     /* str.while_opening_symlink */
    0x00012028 addiu a2, a2, 0x1f8           |     a2 += segment.DYNAMIC;
    0x0001202c b 0x11f34                     |     goto label_4;
                                             | label_14:
    0x00012030 lw t9, -0x7c74(gp)            |     t9 = sym.imp.__errno_location;
    0x00012034 jalr t9                       |     t9 ();
    0x00012038 nop                           |     
    0x0001203c lw gp, 0x18(sp)               |     gp = *(var_18h_2);
    0x00012040 lw a1, (v0)                   |     a1 = *(v0);
    0x00012044 move a3, s5                   |     a3 = s5;
    0x00012048 lw a2, -0x7fdc(gp)            |     a2 = *(gp);
    0x0001204c lw a0, -0x7fdc(gp)            |     a0 = *(gp);
    0x00012050 lw t9, -0x7b4c(gp)            |     t9 = sym.imp.com_err;
    0x00012054 sw s0, 0x10(sp)               |     *(var_1d0h) = s0;
                                             |     /* str.while_creating_symlink__s_____s */
    0x00012058 addiu a2, a2, 0x240           |     a2 += 0x240;
                                             |     /* str.rdump */
    0x0001205c addiu a0, a0, -0x1f74         |     a0 += -0x1f74;
    0x00012060 jalr t9                       |     t9 ();
    0x00012064 lw gp, 0x18(sp)               |     gp = *(var_18h_2);
    0x00012068 b 0x11e14                     |     goto label_1;
                                             | label_10:
    0x0001206c lw t9, -0x7c74(gp)            |     t9 = sym.imp.__errno_location;
    0x00012070 jalr t9                       |     t9 ();
    0x00012074 nop                           |     
    0x00012078 lw gp, 0x18(sp)               |     gp = *(var_18h_2);
    0x0001207c lw a1, (v0)                   |     a1 = *(v0);
    0x00012080 move a3, s0                   |     a3 = s0;
    0x00012084 lw a2, -0x7fdc(gp)            |     a2 = *(gp);
    0x00012088 lw a0, -0x7fdc(gp)            |     a0 = *(gp);
    0x0001208c lw t9, -0x7b4c(gp)            |     t9 = sym.imp.com_err;
                                             |     /* str.while_making_directory__s */
    0x00012090 addiu a2, a2, 0x28c           |     a2 += 0x28c;
                                             |     /* str.rdump */
    0x00012094 addiu a0, a0, -0x1f74         |     a0 += -0x1f74;
    0x00012098 jalr t9                       |     t9 ();
    0x0001209c lw gp, 0x18(sp)               |     gp = *(var_18h_2);
    0x000120a0 b 0x11c5c                     |     goto label_0;
                                             | label_9:
    0x000120a4 lw t9, -0x7b08(gp)            |     t9 = sym.imp.__stack_chk_fail;
    0x000120a8 jalr t9                       |     t9 ();
    0x000120ac nop                           |     
    0x000120b0 lui gp, 4                     |     
    0x000120b4 addiu gp, gp, -0x3f70         |     
    0x000120b8 addu gp, gp, t9               |     gp += t9;
    0x000120bc addiu sp, sp, -0x1c0          |     
    0x000120c0 lw t9, -0x7cb0(gp)            |     t9 = sym.imp.__strncpy_chk;
    0x000120c4 sw s3, 0x1b0(sp)              |     *(var_1b0h) = s3;
    0x000120c8 lw s3, -0x7aa4(gp)            |     s3 = *((gp - 7849));
    0x000120cc sw s0, 0x1a4(sp)              |     *(var_1a4h) = s0;
    0x000120d0 lbu s0, 6(a0)                 |     s0 = *((a0 + 6));
    0x000120d4 lw v0, (s3)                   |     v0 = *(s3);
    0x000120d8 sw s2, 0x1ac(sp)              |     *(var_1ach) = s2;
    0x000120dc addiu s2, sp, 0x9c            |     s2 = sp + 0x9c;
    0x000120e0 sw gp, 0x10(sp)               |     *(var_10h_3) = gp;
    0x000120e4 move a2, s0                   |     a2 = s0;
    0x000120e8 addiu a1, a0, 8               |     a1 = a0 + 8;
    0x000120ec sw ra, 0x1bc(sp)              |     *(var_1bch) = ra;
    0x000120f0 sw s5, 0x1b8(sp)              |     *(var_1b8h) = s5;
    0x000120f4 sw s4, 0x1b4(sp)              |     *(var_1b4h) = s4;
    0x000120f8 sw s1, 0x1a8(sp)              |     *(var_1a8h) = s1;
    0x000120fc addiu a3, zero, 0x100         |     a3 = aav.0x00000100;
    0x00012100 move s1, a0                   |     s1 = a0;
    0x00012104 sw v0, 0x19c(sp)              |     *(var_19ch) = v0;
    0x00012108 move a0, s2                   |     a0 = s2;
    0x0001210c lw s5, 0x1d0(sp)              |     s5 = *(var_1d0h);
    0x00012110 jalr t9                       |     t9 ();
    0x00012114 lw gp, 0x10(sp)               |     gp = *(var_10h_3);
    0x00012118 addiu v0, sp, 0x1a0           |     v0 = sp + 0x1a0;
    0x0001211c addu s0, v0, s0               |     s0 = v0 + s0;
    0x00012120 addiu s4, sp, 0x1c            |     s4 = sp + 0x1c;
    0x00012124 lw t9, -0x7fb8(gp)            |     t9 = sym.debugfs_read_inode;
    0x00012128 lw a0, (s1)                   |     a0 = *(s1);
    0x0001212c move a2, s2                   |     a2 = s2;
    0x00012130 move a1, s4                   |     a1 = s4;
    0x00012134 sb zero, -0x104(s0)           |     *(s0) = 0;
    0x00012138 bal 0xf3cc                    |     sym_debugfs_read_inode ();
    0x0001213c lw gp, 0x10(sp)               |     gp = *(var_10h_3);
                                             |     if (v0 == 0) {
    0x00012140 bnez v0, 0x12164              |         
    0x00012144 lw t9, -0x7fa8(gp)            |         t9 = *(gp);
    0x00012148 lw a0, (s1)                   |         a0 = *(s1);
    0x0001214c move a3, s5                   |         a3 = s5;
    0x00012150 move a2, s2                   |         a2 = s2;
                                             |         /* fcn.00011b80 */
    0x00012154 addiu t9, t9, 0x1b80          |         t9 += 0x1b80;
    0x00012158 move a1, s4                   |         a1 = s4;
    0x0001215c bal 0x11b80                   |         fcn_00011b80 ();
                                             |         goto label_5;
    0x00012160 lw gp, 0x10(sp)               |         gp = *(var_10h_3);
                                             |     }
    0x00012164 lw a0, 0x19c(sp)              |     a0 = *(var_19ch);
    0x00012168 lw v1, (s3)                   |     v1 = *(s3);
    0x0001216c move v0, zero                 |     v0 = 0;
                                             |     if (a0 == v1) {
    0x00012170 bne a0, v1, 0x12198           |         
    0x00012174 lw ra, 0x1bc(sp)              |         ra = *(var_1bch);
    0x00012178 lw s5, 0x1b8(sp)              |         s5 = *(var_1b8h);
    0x0001217c lw s4, 0x1b4(sp)              |         s4 = *(var_1b4h);
    0x00012180 lw s3, 0x1b0(sp)              |         s3 = *(var_1b0h);
    0x00012184 lw s2, 0x1ac(sp)              |         s2 = *(var_1ach);
    0x00012188 lw s1, 0x1a8(sp)              |         s1 = *(var_1a8h);
    0x0001218c lw s0, 0x1a4(sp)              |         s0 = *(var_1a4h);
    0x00012190 addiu sp, sp, 0x1c0           |         
    0x00012194 jr ra                         |         return v0;
                                             |     }
    0x00012198 lw t9, -0x7b08(gp)            |     t9 = sym.imp.__stack_chk_fail;
    0x0001219c jalr t9                       |     t9 ();
    0x000121a0 nop                           |     
    0x000121a4 lui gp, 4                     |     
    0x000121a8 addiu gp, gp, -0x4064         |     
    0x000121ac addu gp, gp, t9               |     gp += t9;
    0x000121b0 addiu sp, sp, -0x40           |     
    0x000121b4 lw t9, -0x7fa4(gp)            |     t9 = sym.reset_getopt;
    0x000121b8 sw gp, 0x18(sp)               |     *(var_18h_3) = gp;
    0x000121bc sw s5, 0x38(sp)               |     *(var_38h_3) = s5;
    0x000121c0 sw s4, 0x34(sp)               |     *(var_34h_3) = s4;
    0x000121c4 sw s3, 0x30(sp)               |     *(var_30h_3) = s3;
    0x000121c8 sw s2, 0x2c(sp)               |     *(var_2ch_4) = s2;
    0x000121cc sw s1, 0x28(sp)               |     *(var_28h_2) = s1;
    0x000121d0 sw s0, 0x24(sp)               |     *(var_24h_3) = s0;
    0x000121d4 sw ra, 0x3c(sp)               |     *(var_3ch_3) = ra;
    0x000121d8 move s2, a0                   |     s2 = a0;
    0x000121dc move s3, a1                   |     s3 = a1;
    0x000121e0 bal 0xe400                    |     sym_reset_getopt ();
    0x000121e4 lw gp, 0x18(sp)               |     gp = *(var_18h_3);
    0x000121e8 move s0, zero                 |     s0 = 0;
    0x000121ec addiu s4, zero, -1            |     s4 = -1;
    0x000121f0 lw s1, -0x7fdc(gp)            |     s1 = *(gp);
    0x000121f4 addiu s5, zero, 0x70          |     s5 = 0x70;
    0x000121f8 addiu s1, s1, -0x1a6c         |     s1 += -0x1a6c;
    0x000121fc b 0x12208                     |     
                                             |     while (v0 != s4) {
    0x00012200 addiu s0, s0, 1               |         s0++;
                                             |         if (v0 != s5) {
    0x00012204 bne v0, s5, 0x1226c           |             goto label_19;
                                             |         }
    0x00012208 lw t9, -0x7c40(gp)            |         t9 = sym.imp.getopt;
    0x0001220c move a2, s1                   |         a2 = s1;
    0x00012210 move a1, s3                   |         a1 = s3;
    0x00012214 move a0, s2                   |         a0 = s2;
    0x00012218 jalr t9                       |         t9 ();
    0x0001221c lw gp, 0x18(sp)               |         gp = *(var_18h_3);
    0x00012220 bne v0, s4, 0x12200           |         
                                             |     }
    0x00012224 lw s1, -0x7af8(gp)            |     s1 = *((gp - 7870));
    0x00012228 addiu s2, s2, -2              |     s2 += -2;
    0x0001222c lw v0, (s1)                   |     v0 = *(s1);
    0x00012230 lw a0, (s3)                   |     a0 = *(s3);
                                             |     if (s2 != v0) {
    0x00012234 beq s2, v0, 0x122a4           |         
    0x00012238 lw a2, -0x7fdc(gp)            |         a2 = *(gp);
    0x0001223c lw ra, 0x3c(sp)               |         ra = *(var_3ch_3);
    0x00012240 lw s5, 0x38(sp)               |         s5 = *(var_38h_3);
    0x00012244 lw s4, 0x34(sp)               |         s4 = *(var_34h_3);
    0x00012248 lw s3, 0x30(sp)               |         s3 = *(var_30h_3);
    0x0001224c lw s2, 0x2c(sp)               |         s2 = *(var_2ch_4);
    0x00012250 lw s1, 0x28(sp)               |         s1 = *(var_28h_2);
    0x00012254 lw s0, 0x24(sp)               |         s0 = *(var_24h_3);
    0x00012258 lw t9, -0x7b4c(gp)            |         t9 = sym.imp.com_err;
                                             |         /* str.Usage:_dump_inode___p___file___output_file_ */
    0x0001225c addiu a2, a2, 0x2bc           |         a2 += 0x2bc;
    0x00012260 move a1, zero                 |         a1 = 0;
    0x00012264 addiu sp, sp, 0x40            |         
    0x00012268 jr t9                         |         t9 ();
                                             | label_19:
    0x0001226c lw a2, -0x7fdc(gp)            |         a2 = *(gp);
    0x00012270 lw a0, (s3)                   |         a0 = *(s3);
    0x00012274 lw ra, 0x3c(sp)               |         ra = *(var_3ch_3);
    0x00012278 lw s5, 0x38(sp)               |         s5 = *(var_38h_3);
    0x0001227c lw s4, 0x34(sp)               |         s4 = *(var_34h_3);
    0x00012280 lw s3, 0x30(sp)               |         s3 = *(var_30h_3);
    0x00012284 lw s2, 0x2c(sp)               |         s2 = *(var_2ch_4);
    0x00012288 lw s1, 0x28(sp)               |         s1 = *(var_28h_2);
    0x0001228c lw s0, 0x24(sp)               |         s0 = *(var_24h_3);
    0x00012290 lw t9, -0x7b4c(gp)            |         t9 = sym.imp.com_err;
                                             |         /* str.Usage:_dump_inode___p___file___output_file_ */
    0x00012294 addiu a2, a2, 0x2bc           |         a2 += 0x2bc;
    0x00012298 move a1, zero                 |         a1 = 0;
    0x0001229c addiu sp, sp, 0x40            |         
    0x000122a0 jr t9                         |         t9 ();
                                             |     }
    0x000122a4 lw t9, -0x7f94(gp)            |     t9 = sym.check_fs_open;
    0x000122a8 bal 0xe778                    |     sym_check_fs_open ();
    0x000122ac nop                           |     
    0x000122b0 lw gp, 0x18(sp)               |     gp = *(var_18h_3);
                                             |     if (v0 != 0) {
    0x000122b4 bnez v0, 0x122e0              |         goto label_20;
                                             |     }
    0x000122b8 lw v0, (s1)                   |     v0 = *(s1);
    0x000122bc lw t9, -0x7fbc(gp)            |     t9 = sym.string_to_inode;
    0x000122c0 sll v0, v0, 2                 |     v0 <<= 2;
    0x000122c4 addu v0, s3, v0               |     v0 = s3 + v0;
    0x000122c8 lw a0, (v0)                   |     a0 = *(v0);
    0x000122cc lw s2, 4(v0)                  |     s2 = *((v0 + 1));
    0x000122d0 bal 0xe600                    |     sym_string_to_inode ();
    0x000122d4 move s1, v0                   |     s1 = v0;
    0x000122d8 lw gp, 0x18(sp)               |     gp = *(var_18h_3);
    0x000122dc bnez v0, 0x12304              |     
                                             |     while (v0 == 0) {
                                             | label_20:
    0x000122e0 lw ra, 0x3c(sp)               |         ra = *(var_3ch_3);
    0x000122e4 lw s5, 0x38(sp)               |         s5 = *(var_38h_3);
    0x000122e8 lw s4, 0x34(sp)               |         s4 = *(var_34h_3);
    0x000122ec lw s3, 0x30(sp)               |         s3 = *(var_30h_3);
    0x000122f0 lw s2, 0x2c(sp)               |         s2 = *(var_2ch_4);
    0x000122f4 lw s1, 0x28(sp)               |         s1 = *(var_28h_2);
    0x000122f8 lw s0, 0x24(sp)               |         s0 = *(var_24h_3);
    0x000122fc addiu sp, sp, 0x40            |         
    0x00012300 jr ra                         |         return v0;
    0x00012304 lw t9, -0x7c0c(gp)            |         t9 = sym.imp.open;
    0x00012308 addiu a2, zero, 0x1b6         |         a2 = 0x1b6;
    0x0001230c addiu a1, zero, 0x2301        |         a1 = 0x2301;
    0x00012310 move a0, s2                   |         a0 = s2;
    0x00012314 jalr t9                       |         t9 ();
    0x00012318 move s4, v0                   |         s4 = v0;
    0x0001231c lw gp, 0x18(sp)               |         gp = *(var_18h_3);
                                             |         if (v0 < 0) {
    0x00012320 bltz v0, 0x123a8              |             goto label_21;
                                             |         }
    0x00012324 lw t9, -0x7fa8(gp)            |         t9 = *(gp);
    0x00012328 lw a0, (s3)                   |         a0 = *(s3);
    0x0001232c move a3, s0                   |         a3 = s0;
    0x00012330 move a2, v0                   |         a2 = v0;
    0x00012334 move a1, s1                   |         a1 = s1;
                                             |         /* fcn.00011910 */
    0x00012338 addiu t9, t9, 0x1910          |         t9 += 0x1910;
    0x0001233c sw s2, 0x10(sp)               |         *(var_10h_4) = s2;
    0x00012340 bal 0x11910                   |         fcn_00011910 ();
    0x00012344 lw gp, 0x18(sp)               |         gp = *(var_18h_3);
    0x00012348 lw t9, -0x7de8(gp)            |         t9 = sym.imp.close;
    0x0001234c move a0, s4                   |         a0 = s4;
    0x00012350 jalr t9                       |         t9 ();
    0x00012354 lw gp, 0x18(sp)               |         gp = *(var_18h_3);
    0x00012358 beqz v0, 0x122e0              |         
                                             |     }
    0x0001235c lw t9, -0x7c74(gp)            |     t9 = sym.imp.__errno_location;
    0x00012360 jalr t9                       |     t9 ();
    0x00012364 nop                           |     
    0x00012368 lw gp, 0x18(sp)               |     gp = *(var_18h_3);
    0x0001236c lw a1, (v0)                   |     a1 = *(v0);
    0x00012370 lw a0, (s3)                   |     a0 = *(s3);
    0x00012374 lw a2, -0x7fdc(gp)            |     a2 = *(gp);
    0x00012378 lw t9, -0x7b4c(gp)            |     t9 = sym.imp.com_err;
    0x0001237c move a3, s2                   |     a3 = s2;
                                             |     /* str.while_closing__s_for_dump_inode */
    0x00012380 addiu a2, a2, 0x308           |     a2 += 0x308;
                                             |     do {
    0x00012384 lw ra, 0x3c(sp)               |         ra = *(var_3ch_3);
    0x00012388 lw s5, 0x38(sp)               |         s5 = *(var_38h_3);
    0x0001238c lw s4, 0x34(sp)               |         s4 = *(var_34h_3);
    0x00012390 lw s3, 0x30(sp)               |         s3 = *(var_30h_3);
    0x00012394 lw s2, 0x2c(sp)               |         s2 = *(var_2ch_4);
    0x00012398 lw s1, 0x28(sp)               |         s1 = *(var_28h_2);
    0x0001239c lw s0, 0x24(sp)               |         s0 = *(var_24h_3);
    0x000123a0 addiu sp, sp, 0x40            |         
    0x000123a4 jr t9                         |         t9 ();
                                             | label_21:
    0x000123a8 lw t9, -0x7c74(gp)            |         t9 = sym.imp.__errno_location;
    0x000123ac jalr t9                       |         t9 ();
    0x000123b0 nop                           |         
    0x000123b4 lw gp, 0x18(sp)               |         gp = *(var_18h_3);
    0x000123b8 lw a1, (v0)                   |         a1 = *(v0);
    0x000123bc lw a0, (s3)                   |         a0 = *(s3);
    0x000123c0 lw a2, -0x7fdc(gp)            |         a2 = *(gp);
    0x000123c4 lw t9, -0x7b4c(gp)            |         t9 = sym.imp.com_err;
    0x000123c8 move a3, s2                   |         a3 = s2;
                                             |         /* str.while_opening__s_for_dump_inode */
    0x000123cc addiu a2, a2, 0x2e8           |         a2 += aav.0x000002e8;
    0x000123d0 b 0x12384                     |         
                                             |     } while (1);
                                             | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/debugfs @ 0x133b4 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) fcn.000133b4 ()                  | void fcn_000133b4 () {
    0x000133b4 lui gp, 4                     |     
    0x000133b8 addiu gp, gp, -0x5274         |     
    0x000133bc addu gp, gp, t9               |     gp += t9;
    0x000133c0 lw v0, -0x7aa4(gp)            |     v0 = *((gp - 7849));
    0x000133c4 addiu sp, sp, -0xb0           |     
    0x000133c8 sw s7, 0xa4(sp)               |     *(var_a4h) = s7;
    0x000133cc sw v0, 0x2c(sp)               |     *(var_2ch) = v0;
    0x000133d0 move s7, a0                   |     s7 = a0;
    0x000133d4 lw a0, (v0)                   |     a0 = *(v0);
    0x000133d8 lw v0, -0x7f30(gp)            |     v0 = *((gp - 8140));
    0x000133dc sw gp, 0x18(sp)               |     *(var_18h) = gp;
                                             |     /* esilref: 'inodes_count' */
    0x000133e0 addiu v0, v0, 0x575c          |     v0 += 0x575c;
    0x000133e4 sw ra, 0xac(sp)               |     *(var_ach) = ra;
    0x000133e8 sw fp, 0xa8(sp)               |     *(var_a8h) = fp;
    0x000133ec sw s6, 0xa0(sp)               |     *(var_a0h) = s6;
    0x000133f0 sw s5, 0x9c(sp)               |     *(var_9ch) = s5;
    0x000133f4 sw s4, 0x98(sp)               |     *(var_98h) = s4;
    0x000133f8 sw s3, 0x94(sp)               |     *(var_94h) = s3;
    0x000133fc sw s2, 0x90(sp)               |     *(var_90h) = s2;
    0x00013400 sw s1, 0x8c(sp)               |     *(var_8ch) = s1;
    0x00013404 sw s0, 0x88(sp)               |     *(var_88h) = s0;
    0x00013408 sw a0, 0x84(sp)               |     *(var_84h) = a0;
    0x0001340c lw v0, -0x7f30(gp)            |     v0 = *((gp - 8140));
                                             |     if (s7 == v0) {
    0x00013410 beq s7, v0, 0x1368c           |         goto label_5;
                                             |     }
                                             |     /* esilref: 'mode' */
    0x00013414 addiu v0, v0, 0x53c0          |     v0 += 0x53c0;
    0x00013418 lw v0, -0x7f30(gp)            |     v0 = *((gp - 8140));
                                             |     if (s7 == v0) {
    0x0001341c beq s7, v0, 0x135dc           |         goto label_6;
                                             |     }
                                             |     /* esilref: 'clear' */
    0x00013420 addiu v0, v0, 0x5040          |     v0 += 0x5040;
    0x00013424 lw s2, -0x7fdc(gp)            |     s2 = *(gp);
                                             |     if (s7 == v0) {
    0x00013428 beq s7, v0, 0x136b4           |         goto label_7;
                                             |     }
    0x0001342c lw s2, -0x7fdc(gp)            |     s2 = *(gp);
    0x00013430 lw s0, -0x7fdc(gp)            |     s0 = *(gp);
                                             |     /* str.set_block_group */
    0x00013434 addiu s2, s2, -0x1fb4         |     s2 += -0x1fb4;
                                             |     /* str.Block_group_descriptor */
    0x00013438 addiu s0, s0, 0x520           |     s0 += 0x520;
                                             | label_1:
    0x0001343c lw t9, -0x7f8c(gp)            |     t9 = sym.open_pager;
    0x00013440 bal 0xe418                    |     sym_open_pager ();
    0x00013444 nop                           |     
    0x00013448 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0001344c addiu a1, zero, 1             |     a1 = 1;
    0x00013450 sw s2, 0x10(sp)               |     *(var_10h) = s2;
    0x00013454 lw a2, -0x7fdc(gp)            |     a2 = *(gp);
    0x00013458 lw t9, -0x7d90(gp)            |     t9 = sym.imp.__fprintf_chk;
    0x0001345c move a3, s0                   |     a3 = s0;
                                             |     /* str._s_fields_supported_by_the__s_command:_n */
    0x00013460 addiu a2, a2, 0x5c4           |     a2 += 0x5c4;
    0x00013464 move a0, v0                   |     a0 = v0;
    0x00013468 move s1, v0                   |     s1 = v0;
    0x0001346c jalr t9                       |     t9 ();
    0x00013470 lw a1, (s7)                   |     a1 = *(s7);
    0x00013474 lw gp, 0x18(sp)               |     gp = *(var_18h);
                                             |     if (a1 == 0) {
    0x00013478 beqz a1, 0x13618              |         goto label_8;
                                             |     }
    0x0001347c lw v0, -0x7fdc(gp)            |     v0 = *(gp);
    0x00013480 lw s6, -0x7fdc(gp)            |     s6 = *(gp);
    0x00013484 sw v0, 0x24(sp)               |     *(var_24h_3) = v0;
    0x00013488 lw v0, -0x7fdc(gp)            |     v0 = *(gp);
    0x0001348c lw s2, -0x7fa8(gp)            |     s2 = *(gp);
    0x00013490 lw s4, -0x7fa8(gp)            |     s4 = *(gp);
    0x00013494 lw s5, -0x7fa8(gp)            |     s5 = *(gp);
    0x00013498 sw v0, 0x28(sp)               |     *(var_28h_2) = v0;
                                             |     /* str.string */
    0x0001349c addiu v0, s6, 0x560           |     v0 = s6 + 0x560;
    0x000134a0 lw s3, -0x7fdc(gp)            |     s3 = *(gp);
    0x000134a4 addiu s2, s2, 0x2740          |     s2 += 0x2740;
    0x000134a8 addiu fp, sp, 0x34            |     fp = sp + 0x34;
    0x000134ac sw v0, 0x20(sp)               |     *(var_20h_3) = v0;
    0x000134b0 addiu s4, s4, 0x3164          |     s4 += 0x3164;
    0x000134b4 addiu s5, s5, 0x2940          |     s5 += 0x2940;
    0x000134b8 b 0x135c8                     |     
                                             |     while (v0 != s2) {
                                             |         if (v0 == s4) {
    0x000134bc beql v0, s4, 0x135f0          |             goto label_9;
                                             |         }
    0x000134c0 lw v0, 0x24(sp)               |         v0 = *(var_24h_3);
    0x000134c4 lw a0, -0x7fa8(gp)            |         a0 = *(gp);
                                             |         if (v0 == s5) {
    0x000134c8 beq v0, s5, 0x1360c           |             goto label_10;
                                             |         }
    0x000134cc addiu a0, a0, 0x27ec          |         a0 += 0x27ec;
    0x000134d0 lw a0, -0x7fa8(gp)            |         a0 = *(gp);
                                             |         if (v0 == a0) {
    0x000134d4 beq v0, a0, 0x13668           |             goto label_11;
                                             |         }
    0x000134d8 addiu a0, a0, 0x30e4          |         a0 += 0x30e4;
    0x000134dc lw a0, -0x7fa8(gp)            |         a0 = *(gp);
                                             |         if (v0 == a0) {
    0x000134e0 beq v0, a0, 0x13674           |             goto label_12;
                                             |         }
    0x000134e4 addiu a0, a0, 0x327c          |         a0 += 0x327c;
    0x000134e8 lw a0, -0x7fa8(gp)            |         a0 = *(gp);
                                             |         if (v0 == a0) {
    0x000134ec beq v0, a0, 0x13680           |             goto label_13;
                                             |         }
    0x000134f0 addiu a0, a0, 0x36d0          |         a0 += 0x36d0;
    0x000134f4 lw a0, -0x7fa8(gp)            |         a0 = *(gp);
                                             |         if (v0 == a0) {
    0x000134f8 beq v0, a0, 0x136a0           |             goto label_14;
                                             |         }
    0x000134fc addiu a0, a0, 0x2d6c          |         a0 += 0x2d6c;
    0x00013500 lw s0, -0x7fdc(gp)            |         s0 = *(gp);
                                             |         if (v0 == a0) {
    0x00013504 beq v0, a0, 0x136ac           |             goto label_15;
                                             |         }
    0x00013508 lw s0, -0x7fdc(gp)            |         s0 = *(gp);
                                             |         /* str.unknown */
    0x0001350c addiu s0, s0, 0x558           |         s0 += 0x558;
                                             | label_2:
    0x00013510 lw t9, -0x7cbc(gp)            |         t9 = sym.imp.__strcpy_chk;
                                             | label_0:
    0x00013514 addiu a2, zero, 0x28          |         a2 = 0x28;
    0x00013518 move a0, fp                   |         a0 = fp;
    0x0001351c jalr t9                       |         t9 ();
    0x00013520 lw v0, 0x14(s7)               |         v0 = *((s7 + 5));
    0x00013524 andi v0, v0, 1                |         v0 &= 1;
    0x00013528 lw gp, 0x18(sp)               |         gp = *(var_18h);
                                             |         if (v0 != 0) {
    0x0001352c beqz v0, 0x13578              |             
    0x00013530 lw v0, 0x18(s7)               |             v0 = *((s7 + 6));
    0x00013534 lw a3, -0x7fdc(gp)            |             a3 = *(gp);
                                             |             if (v0 <= 0) {
    0x00013538 blez v0, 0x135f8              |                 goto label_16;
                                             |             }
    0x0001353c lw t9, -0x7e0c(gp)            |             t9 = sym.imp.__sprintf_chk
    0x00013540 addiu s6, sp, 0x5c            |             s6 = sp + 0x5c;
    0x00013544 sw v0, 0x10(sp)               |             *(var_10h) = v0;
                                             |             /* str.__d_ */
    0x00013548 addiu a3, a3, 0x5ec           |             a3 += 0x5ec;
    0x0001354c addiu a2, zero, 0x28          |             a2 = 0x28;
    0x00013550 addiu a1, zero, 1             |             a1 = 1;
    0x00013554 move a0, s6                   |             a0 = s6;
    0x00013558 jalr t9                       |             t9 ();
    0x0001355c lw gp, 0x18(sp)               |             gp = *(var_18h);
                                             | label_3:
    0x00013560 lw t9, -0x79f4(gp)            |             t9 = sym.imp.__strcat_chk;
    0x00013564 addiu a2, zero, 0x28          |             a2 = 0x28;
    0x00013568 move a1, s6                   |             a1 = s6;
    0x0001356c move a0, fp                   |             a0 = fp;
    0x00013570 jalr t9                       |             t9 ();
    0x00013574 lw gp, 0x18(sp)               |             gp = *(var_18h);
                                             |         }
    0x00013578 lw v0, 8(s7)                  |         v0 = *((s7 + 2));
    0x0001357c lw a1, -0x7fdc(gp)            |         a1 = *(gp);
                                             |         if (v0 != 0) {
    0x00013580 beqz v0, 0x1359c              |             
    0x00013584 lw t9, -0x79f4(gp)            |             t9 = sym.imp.__strcat_chk;
    0x00013588 addiu a2, zero, 0x28          |             a2 = 0x28;
                                             |             /* str.__hi_lo_ */
    0x0001358c addiu a1, a1, 0x5f4           |             a1 += 0x5f4;
    0x00013590 move a0, fp                   |             a0 = fp;
    0x00013594 jalr t9                       |             t9 ();
    0x00013598 lw gp, 0x18(sp)               |             gp = *(var_18h);
                                             |         }
    0x0001359c lw t9, -0x7d90(gp)            |         t9 = sym.imp.__fprintf_chk;
    0x000135a0 addiu s7, s7, 0x1c            |         s7 += 0x1c;
    0x000135a4 addiu a1, zero, 1             |         a1 = 1;
    0x000135a8 sw s0, 0x10(sp)               |         *(var_10h) = s0;
    0x000135ac move a3, fp                   |         a3 = fp;
                                             |         /* str._t__25s_t_s_n */
    0x000135b0 addiu a2, s3, 0x600           |         a2 = s3 + 0x600;
    0x000135b4 move a0, s1                   |         a0 = s1;
    0x000135b8 jalr t9                       |         t9 ();
    0x000135bc lw a1, (s7)                   |         a1 = *(s7);
    0x000135c0 lw gp, 0x18(sp)               |         gp = *(var_18h);
                                             |         if (a1 == 0) {
    0x000135c4 beqz a1, 0x13618              |             goto label_8;
                                             |         }
    0x000135c8 lw v0, 0x10(s7)               |         v0 = *((s7 + 4));
    0x000135cc lw s0, 0x20(sp)               |         s0 = *(var_20h_3);
    0x000135d0 bne v0, s2, 0x134bc           |         
                                             |     }
    0x000135d4 lw t9, -0x7cbc(gp)            |     t9 = sym.imp.__strcpy_chk;
    0x000135d8 b 0x13514                     |     goto label_0;
                                             | label_6:
    0x000135dc lw s2, -0x7fdc(gp)            |     s2 = *(gp);
    0x000135e0 lw s0, -0x7fdc(gp)            |     s0 = *(gp);
                                             |     /* str.set_inode */
    0x000135e4 addiu s2, s2, 0x50c           |     s2 += 0x50c;
                                             |     /* str.Inode */
    0x000135e8 addiu s0, s0, 0x518           |     s0 += 0x518;
    0x000135ec b 0x1343c                     |     goto label_1;
                                             | label_9:
    0x000135f0 addiu s0, v0, 0x568           |     s0 = v0 + 0x568;
    0x000135f4 b 0x13510                     |     goto label_2;
                                             | label_16:
    0x000135f8 addiu s6, sp, 0x5c            |     s6 = sp + 0x5c;
    0x000135fc addiu v0, zero, 0x5d5b        |     v0 = 0x5d5b;
    0x00013600 sh v0, 0x5c(sp)               |     *(var_5ch_2) = v0;
    0x00013604 sb zero, 2(s6)                |     *(var_2h) = 0;
    0x00013608 b 0x13560                     |     goto label_3;
                                             | label_10:
    0x0001360c lw v0, 0x28(sp)               |     v0 = *(var_28h_2);
    0x00013610 addiu s0, v0, 0x570           |     s0 = v0 + 0x570;
    0x00013614 b 0x13510                     |     goto label_2;
                                             | label_8:
    0x00013618 lw t9, -0x7f88(gp)            |     t9 = sym.close_pager;
    0x0001361c move a0, s1                   |     a0 = s1;
    0x00013620 bal 0xe5d0                    |     sym_close_pager ();
    0x00013624 lw v0, 0x2c(sp)               |     v0 = *(var_2ch);
    0x00013628 lw v1, 0x84(sp)               |     v1 = *(var_84h);
    0x0001362c lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x00013630 lw v0, (v0)                   |     v0 = *(v0);
    0x00013634 lw ra, 0xac(sp)               |     ra = *(var_ach);
                                             |     if (v1 == v0) {
    0x00013638 bne v1, v0, 0x136c4           |         
    0x0001363c lw fp, 0xa8(sp)               |         fp = *(var_a8h);
    0x00013640 lw s7, 0xa4(sp)               |         s7 = *(var_a4h);
    0x00013644 lw s6, 0xa0(sp)               |         s6 = *(var_a0h);
    0x00013648 lw s5, 0x9c(sp)               |         s5 = *(var_9ch);
    0x0001364c lw s4, 0x98(sp)               |         s4 = *(var_98h);
    0x00013650 lw s3, 0x94(sp)               |         s3 = *(var_94h);
    0x00013654 lw s2, 0x90(sp)               |         s2 = *(var_90h);
    0x00013658 lw s1, 0x8c(sp)               |         s1 = *(var_8ch);
    0x0001365c lw s0, 0x88(sp)               |         s0 = *(var_88h);
    0x00013660 addiu sp, sp, 0xb0            |         
    0x00013664 jr ra                         |         return v0;
                                             | label_11:
    0x00013668 lw s0, -0x7fdc(gp)            |         s0 = *(gp);
                                             |         /* str.UUID */
    0x0001366c addiu s0, s0, 0x584           |         s0 += 0x584;
    0x00013670 b 0x13510                     |         goto label_2;
                                             | label_12:
    0x00013674 lw s0, -0x7fdc(gp)            |         s0 = *(gp);
                                             |         /* str.hash_algorithm */
    0x00013678 addiu s0, s0, 0x58c           |         s0 += 0x58c;
    0x0001367c b 0x13510                     |         goto label_2;
                                             | label_13:
    0x00013680 lw s0, -0x7fdc(gp)            |         s0 = *(gp);
                                             |         /* str.date_time */
    0x00013684 addiu s0, s0, 0x59c           |         s0 += 0x59c;
    0x00013688 b 0x13510                     |         goto label_2;
                                             | label_5:
    0x0001368c lw s2, -0x7fdc(gp)            |         s2 = *(gp);
    0x00013690 lw s0, -0x7fdc(gp)            |         s0 = *(gp);
                                             |         /* str.set_super_value */
    0x00013694 addiu s2, s2, -0x1f88         |         s2 += -0x1f88;
                                             |         /* str.Superblock */
    0x00013698 addiu s0, s0, 0x500           |         s0 += aav.0x00000500;
    0x0001369c b 0x1343c                     |         goto label_1;
                                             | label_14:
    0x000136a0 lw s0, -0x7fdc(gp)            |         s0 = *(gp);
                                             |         /* str.set_physical__logical_block_map */
    0x000136a4 addiu s0, s0, 0x538           |         s0 += 0x538;
    0x000136a8 b 0x13510                     |         goto label_2;
                                             |         /* str.unsigned_integer_OR__calc_ */
                                             | label_15:
    0x000136ac addiu s0, s0, 0x5a8           |         s0 += 0x5a8;
    0x000136b0 b 0x13510                     |         goto label_2;
                                             | label_7:
    0x000136b4 lw s0, -0x7fdc(gp)            |         s0 = *(gp);
                                             |         /* str.set_mmp_value */
    0x000136b8 addiu s2, s2, -0x2074         |         s2 += -0x2074;
                                             |         /* esilref: 'MMP' */
    0x000136bc addiu s0, s0, 0x4fc           |         s0 += 0x4fc;
    0x000136c0 b 0x1343c                     |         goto label_1;
                                             |     }
    0x000136c4 lw t9, -0x7b08(gp)            |     t9 = sym.imp.__stack_chk_fail;
    0x000136c8 jalr t9                       |     t9 ();
    0x000136cc nop                           |     
    0x000136d0 lui gp, 4                     |     
    0x000136d4 addiu gp, gp, -0x5590         |     
    0x000136d8 addu gp, gp, t9               |     gp += t9;
    0x000136dc addiu sp, sp, -0x60           |     
    0x000136e0 lw t9, -0x7c80(gp)            |     t9 = sym.imp.strtoull;
    0x000136e4 sw s0, 0x50(sp)               |     *(var_50h) = s0;
    0x000136e8 lw s0, -0x7aa4(gp)            |     s0 = *((gp - 7849));
    0x000136ec sw s1, 0x54(sp)               |     *(var_54h) = s1;
    0x000136f0 move s1, a2                   |     s1 = a2;
    0x000136f4 lw v0, (s0)                   |     v0 = *(s0);
    0x000136f8 sw gp, 0x28(sp)               |     *(var_28h) = gp;
    0x000136fc sw s2, 0x58(sp)               |     *(var_58h) = s2;
    0x00013700 sw ra, 0x5c(sp)               |     *(var_5ch) = ra;
    0x00013704 move s2, a0                   |     s2 = a0;
    0x00013708 move a2, zero                 |     a2 = 0;
    0x0001370c addiu a1, sp, 0x3c            |     a1 = sp + 0x3c;
    0x00013710 move a0, s1                   |     a0 = s1;
    0x00013714 sw v0, 0x4c(sp)               |     *(var_4ch) = v0;
    0x00013718 jalr t9                       |     t9 ();
    0x0001371c nop                           |     
    0x00013720 sw v0, 0x40(sp)               |     *(var_40h) = v0;
    0x00013724 lw v0, 0x3c(sp)               |     v0 = *(var_3ch);
    0x00013728 sw v1, 0x44(sp)               |     *(var_44h) = v1;
    0x0001372c lb v0, (v0)                   |     v0 = *(v0);
    0x00013730 lw gp, 0x28(sp)               |     gp = *(var_28h);
                                             |     if (v0 != 0) {
    0x00013734 bnez v0, 0x137dc              |         goto label_17;
                                             |     }
    0x00013738 lw a0, -0x7f30(gp)            |     a0 = *((gp - 8140));
    0x0001373c lw v0, -0x7f30(gp)            |     v0 = *((gp - 8140));
    0x00013740 addiu a2, sp, 0x40            |     a2 = sp + 0x40;
    0x00013744 lw a1, 0x6798(a0)             |     a1 = *((a0 + 6630));
    0x00013748 lw a0, -0x7fd8(gp)            |     a0 = *(gp);
    0x0001374c lw v0, 0x6794(v0)             |     v0 = *((v0 + 6629));
    0x00013750 lw t9, -0x7c1c(gp)            |     t9 = sym.imp.ext2fs_bmap2;
    0x00013754 lw a0, (a0)                   |     a0 = *(a0);
    0x00013758 sw a2, 0x24(sp)               |     *(var_24h_2) = a2;
    0x0001375c lw a2, -0x7f30(gp)            |     a2 = *((gp - 8140));
    0x00013760 sra v1, v0, 0x1f              |     v1 = v0 >> 0x1f;
    0x00013764 sw v0, 0x18(sp)               |     *(var_18h_2) = v0;
    0x00013768 addiu v0, zero, 3             |     v0 = 3;
    0x0001376c sw zero, 0x20(sp)             |     *(var_20h_2) = 0;
    0x00013770 sw v1, 0x1c(sp)               |     *(var_1ch_2) = v1;
    0x00013774 sw v0, 0x10(sp)               |     *(var_10h_2) = v0;
    0x00013778 move a3, zero                 |     a3 = 0;
    0x0001377c addiu a2, a2, 0x6c00          |     a2 += 0x6c00;
    0x00013780 jalr t9                       |     t9 ();
    0x00013784 lw gp, 0x28(sp)               |     gp = *(var_28h);
    0x00013788 bnez v0, 0x137b0              |     
                                             |     while (1) {
                                             | label_4:
    0x0001378c lw a0, 0x4c(sp)               |         a0 = *(var_4ch);
    0x00013790 lw v1, (s0)                   |         v1 = *(s0);
    0x00013794 lw ra, 0x5c(sp)               |         ra = *(var_5ch);
                                             |         if (a0 != v1) {
    0x00013798 bne a0, v1, 0x13810           |             goto label_18;
                                             |         }
    0x0001379c lw s2, 0x58(sp)               |         s2 = *(var_58h);
    0x000137a0 lw s1, 0x54(sp)               |         s1 = *(var_54h);
    0x000137a4 lw s0, 0x50(sp)               |         s0 = *(var_50h);
    0x000137a8 addiu sp, sp, 0x60            |         
    0x000137ac jr ra                         |         return v0;
    0x000137b0 lw a2, -0x7fdc(gp)            |         a2 = *(gp);
    0x000137b4 lw a0, -0x7fdc(gp)            |         a0 = *(gp);
    0x000137b8 lw t9, -0x7b4c(gp)            |         t9 = sym.imp.com_err;
    0x000137bc move a1, v0                   |         a1 = v0;
    0x000137c0 sw v0, 0x34(sp)               |         *(var_34h) = v0;
                                             |         /* str.while_setting_block_map */
    0x000137c4 addiu a2, a2, 0x60c           |         a2 += 0x60c;
                                             |         /* str.set_inode */
    0x000137c8 addiu a0, a0, 0x50c           |         a0 += 0x50c;
    0x000137cc jalr t9                       |         t9 ();
    0x000137d0 lw gp, 0x28(sp)               |         gp = *(var_28h);
    0x000137d4 lw v0, 0x34(sp)               |         v0 = *(var_34h);
    0x000137d8 b 0x1378c                     |         
                                             |     }
                                             | label_17:
    0x000137dc lw v1, -0x7a6c(gp)            |     v1 = *((gp - 7835));
    0x000137e0 lw a2, -0x7fdc(gp)            |     a2 = *(gp);
    0x000137e4 lw v0, (s2)                   |     v0 = *(s2);
    0x000137e8 lw t9, -0x7d90(gp)            |     t9 = sym.imp.__fprintf_chk;
    0x000137ec lw a0, (v1)                   |     a0 = *(v1);
    0x000137f0 move a3, s1                   |     a3 = s1;
    0x000137f4 sw v0, 0x10(sp)               |     *(var_10h_2) = v0;
                                             |     /* str.Couldnt_parse__s_for_field__s._n */
    0x000137f8 addiu a2, a2, 0x428           |     a2 += 0x428;
    0x000137fc addiu a1, zero, 1             |     a1 = 1;
    0x00013800 jalr t9                       |     t9 ();
    0x00013804 lw gp, 0x28(sp)               |     gp = *(var_28h);
    0x00013808 addiu v0, zero, 0x16          |     v0 = 0x16;
    0x0001380c b 0x1378c                     |     goto label_4;
                                             | label_18:
    0x00013810 lw t9, -0x7b08(gp)            |     t9 = sym.imp.__stack_chk_fail;
    0x00013814 jalr t9                       |     t9 ();
    0x00013818 nop                           |     
    0x0001381c lui gp, 4                     |     
    0x00013820 addiu gp, gp, -0x56dc         |     
    0x00013824 addu gp, gp, t9               |     gp += t9;
    0x00013828 addiu sp, sp, -0x28           |     
    0x0001382c lw t9, -0x7cdc(gp)            |     t9 = sym.imp.ext2fs_mmp_clear;
    0x00013830 sw s0, 0x1c(sp)               |     *(var_1ch) = s0;
    0x00013834 lw s0, -0x7fd8(gp)            |     s0 = *(gp);
    0x00013838 sw s1, 0x20(sp)               |     *(var_20h) = s1;
    0x0001383c move s1, a0                   |     s1 = a0;
    0x00013840 lw a0, (s0)                   |     a0 = *(s0);
    0x00013844 sw gp, 0x10(sp)               |     *(var_10h_3) = gp;
    0x00013848 sw ra, 0x24(sp)               |     *(var_24h) = ra;
    0x0001384c jalr t9                       |     t9 ();
    0x00013850 nop                           |     
    0x00013854 lw gp, 0x10(sp)               |     gp = *(var_10h_3);
                                             |     if (v0 != 0) {
    0x00013858 beqz v0, 0x13890              |         
    0x0001385c lw a2, -0x7fdc(gp)            |         a2 = *(gp);
    0x00013860 lw a0, -0x7fdc(gp)            |         a0 = *(gp);
    0x00013864 lw t9, -0x7b4c(gp)            |         t9 = sym.imp.com_err;
    0x00013868 move a1, v0                   |         a1 = v0;
                                             |         /* str.while_clearing_MMP_block_n */
    0x0001386c addiu a2, a2, 0x624           |         a2 += 0x624;
                                             |         /* str.set_mmp_value */
    0x00013870 addiu a0, a0, -0x2074         |         a0 += -0x2074;
    0x00013874 jalr t9                       |         t9 ();
    0x00013878 lw ra, 0x24(sp)               |         ra = *(var_24h);
    0x0001387c lw s1, 0x20(sp)               |         s1 = *(var_20h);
    0x00013880 lw s0, 0x1c(sp)               |         s0 = *(var_1ch);
    0x00013884 addiu v0, zero, 1             |         v0 = 1;
    0x00013888 addiu sp, sp, 0x28            |         
    0x0001388c jr ra                         |         return v0;
                                             |     }
    0x00013890 lw v0, (s0)                   |     v0 = *(s0);
    0x00013894 lw t9, -0x7aa0(gp)            |     t9 = sym.imp.memcpy;
    0x00013898 lw a2, 0xc(s1)                |     a2 = *((s1 + 3));
    0x0001389c lw a0, 4(s1)                  |     a0 = *((s1 + 1));
    0x000138a0 lw a1, 0x98(v0)               |     a1 = *((v0 + 38));
    0x000138a4 jalr t9                       |     t9 ();
    0x000138a8 lw ra, 0x24(sp)               |     ra = *(var_24h);
    0x000138ac lw s1, 0x20(sp)               |     s1 = *(var_20h);
    0x000138b0 lw s0, 0x1c(sp)               |     s0 = *(var_1ch);
    0x000138b4 addiu v0, zero, 1             |     v0 = 1;
    0x000138b8 addiu sp, sp, 0x28            |     
    0x000138bc jr ra                         |     return v0;
                                             | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/debugfs @ 0x18250 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) fcn.00018250 ()                  | void fcn_00018250 () {
                                             | label_3:
    0x00018250 lui gp, 3                     |     
    0x00018254 addiu gp, gp, 0x5ef0          |     
    0x00018258 addu gp, gp, t9               |     gp += t9;
    0x0001825c addiu sp, sp, -0x1c8          |     
    0x00018260 lw t9, -0x7cb0(gp)            |     t9 = sym.imp.__strncpy_chk;
    0x00018264 sw s3, 0x1b8(sp)              |     *(var_1b8h) = s3;
    0x00018268 lw s3, -0x7aa4(gp)            |     s3 = *((gp - 7849));
    0x0001826c sw s0, 0x1ac(sp)              |     *(var_1ach) = s0;
    0x00018270 lbu s0, 6(a0)                 |     s0 = *((a0 + 6));
    0x00018274 lw v0, (s3)                   |     v0 = *(s3);
    0x00018278 sw s2, 0x1b4(sp)              |     *(var_1b4h) = s2;
    0x0001827c sw s1, 0x1b0(sp)              |     *(var_1b0h) = s1;
    0x00018280 move s2, a0                   |     s2 = a0;
    0x00018284 addiu s1, sp, 0xa4            |     s1 = sp + 0xa4;
    0x00018288 sw gp, 0x18(sp)               |     *(var_18h) = gp;
    0x0001828c move a2, s0                   |     a2 = s0;
    0x00018290 sw ra, 0x1c4(sp)              |     *(var_1c4h) = ra;
    0x00018294 sw s4, 0x1bc(sp)              |     *(var_1bch) = s4;
    0x00018298 addiu a3, zero, 0x100         |     a3 = aav.0x00000100;
    0x0001829c move a0, s1                   |     a0 = s1;
    0x000182a0 sw s5, 0x1c0(sp)              |     *(var_1c0h) = s5;
    0x000182a4 move s4, a1                   |     s4 = a1;
    0x000182a8 sw v0, 0x1a4(sp)              |     *(var_1a4h) = v0;
    0x000182ac addiu a1, s2, 8               |     a1 = s2 + 8;
    0x000182b0 jalr t9                       |     t9 ();
    0x000182b4 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x000182b8 addiu v0, sp, 0x1a8           |     v0 = sp + 0x1a8;
    0x000182bc addu s0, v0, s0               |     s0 = v0 + s0;
    0x000182c0 lw a1, -0x7fdc(gp)            |     a1 = *(gp);
    0x000182c4 lw t9, -0x7a28(gp)            |     t9 = sym.imp.strcmp;
                                             |     /* esilref: '(' */
    0x000182c8 addiu a1, a1, -0x314          |     a1 += -0x314;
    0x000182cc move a0, s1                   |     a0 = s1;
    0x000182d0 sb zero, -0x104(s0)           |     *(s0) = 0;
    0x000182d4 jalr t9                       |     t9 ();
    0x000182d8 lw gp, 0x18(sp)               |     gp = *(var_18h);
                                             |     if (v0 == 0) {
    0x000182dc beqz v0, 0x182fc              |         goto label_2;
                                             |     }
    0x000182e0 lw a1, -0x7fdc(gp)            |     a1 = *(gp);
    0x000182e4 lw t9, -0x7a28(gp)            |     t9 = sym.imp.strcmp;
                                             |     /* esilref: '..' */
    0x000182e8 addiu a1, a1, 0x288           |     a1 += 0x288;
    0x000182ec move a0, s1                   |     a0 = s1;
    0x000182f0 jalr t9                       |     t9 ();
    0x000182f4 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x000182f8 bnez v0, 0x1832c              |     
                                             |     while (1) {
                                             | label_2:
    0x000182fc lw v1, 0x1a4(sp)              |         v1 = *(var_1a4h);
    0x00018300 lw v0, (s3)                   |         v0 = *(s3);
    0x00018304 lw ra, 0x1c4(sp)              |         ra = *(var_1c4h);
                                             |         if (v1 != v0) {
    0x00018308 bne v1, v0, 0x184a8           |             goto label_4;
                                             |         }
    0x0001830c lw s5, 0x1c0(sp)              |         s5 = *(var_1c0h);
    0x00018310 lw s4, 0x1bc(sp)              |         s4 = *(var_1bch);
    0x00018314 lw s3, 0x1b8(sp)              |         s3 = *(var_1b8h);
    0x00018318 lw s2, 0x1b4(sp)              |         s2 = *(var_1b4h);
    0x0001831c lw s1, 0x1b0(sp)              |         s1 = *(var_1b0h);
    0x00018320 lw s0, 0x1ac(sp)              |         s0 = *(var_1ach);
    0x00018324 addiu sp, sp, 0x1c8           |         
    0x00018328 jr ra                         |         return v0;
    0x0001832c lw s5, 8(s4)                  |         s5 = *((s4 + 2));
    0x00018330 lw t9, -0x7c30(gp)            |         t9 = sym.imp.strlen;
    0x00018334 move a0, s5                   |         a0 = s5;
    0x00018338 jalr t9                       |         t9 ();
    0x0001833c lw gp, 0x18(sp)               |         gp = *(var_18h);
    0x00018340 move a0, s1                   |         a0 = s1;
    0x00018344 lw t9, -0x7c30(gp)            |         t9 = sym.imp.strlen;
    0x00018348 move s0, v0                   |         s0 = v0;
    0x0001834c jalr t9                       |         t9 ();
    0x00018350 lw gp, 0x18(sp)               |         gp = *(var_18h);
    0x00018354 addu v0, s0, v0               |         v0 = s0 + v0;
    0x00018358 addiu a0, v0, 2               |         a0 = v0 + 2;
    0x0001835c lw t9, -0x7bd4(gp)            |         t9 = sym.imp.malloc;
    0x00018360 lw s2, (s2)                   |         s2 = *(s2);
    0x00018364 jalr t9                       |         t9 ();
    0x00018368 move s0, v0                   |         s0 = v0;
    0x0001836c lw gp, 0x18(sp)               |         gp = *(var_18h);
                                             |         if (v0 == 0) {
    0x00018370 beqz v0, 0x18448              |             goto label_5;
                                             |         }
    0x00018374 lw a3, -0x7fdc(gp)            |         a3 = *(gp);
    0x00018378 lw t9, -0x7e0c(gp)            |         t9 = sym.imp.__sprintf_chk
                                             |         /* str._s__s */
    0x0001837c addiu a3, a3, -0x530          |         a3 += -0x530;
    0x00018380 addiu a2, zero, -1            |         a2 = -1;
    0x00018384 addiu a1, zero, 1             |         a1 = 1;
    0x00018388 move a0, v0                   |         a0 = v0;
    0x0001838c sw s1, 0x14(sp)               |         *(var_14h) = s1;
    0x00018390 sw s5, 0x10(sp)               |         *(var_10h_2) = s5;
    0x00018394 jalr t9                       |         t9 ();
    0x00018398 lw gp, 0x18(sp)               |         gp = *(var_18h);
    0x0001839c addiu s1, sp, 0x24            |         s1 = sp + 0x24;
    0x000183a0 sw s0, 4(s4)                  |         *((s4 + 1)) = s0;
    0x000183a4 lw t9, -0x7fb8(gp)            |         t9 = sym.debugfs_read_inode;
    0x000183a8 move a2, s0                   |         a2 = s0;
    0x000183ac move a1, s1                   |         a1 = s1;
    0x000183b0 move a0, s2                   |         a0 = s2;
    0x000183b4 bal 0xf3cc                    |         sym_debugfs_read_inode ();
    0x000183b8 lw gp, 0x18(sp)               |         gp = *(var_18h);
                                             |         if (v0 == 0) {
    0x000183bc beqz v0, 0x183d8              |             goto label_6;
                                             |         }
                                             | label_0:
    0x000183c0 lw t9, -0x7a8c(gp)            |         t9 = sym.imp.free;
                                             | label_1:
    0x000183c4 move a0, s0                   |         a0 = s0;
    0x000183c8 jalr t9                       |         t9 ();
    0x000183cc lw gp, 0x18(sp)               |         gp = *(var_18h);
    0x000183d0 sw zero, 4(s4)                |         *((s4 + 1)) = 0;
    0x000183d4 b 0x182fc                     |         
                                             |     }
                                             | label_6:
    0x000183d8 lw t9, -0x7fa8(gp)            |     t9 = *(gp);
    0x000183dc move a2, s4                   |     a2 = s4;
    0x000183e0 move a1, s1                   |     a1 = s1;
                                             |     /* fcn.00017d04 */
    0x000183e4 addiu t9, t9, 0x7d04          |     t9 += 0x7d04;
    0x000183e8 move a0, s2                   |     a0 = s2;
    0x000183ec bal 0x17d04                   |     fcn_00017d04 ();
    0x000183f0 lw v0, 0xc(s4)                |     v0 = *((s4 + 3));
    0x000183f4 andi v0, v0, 4                |     v0 &= 4;
    0x000183f8 lw gp, 0x18(sp)               |     gp = *(var_18h);
                                             |     if (v0 == 0) {
    0x000183fc beqz v0, 0x183c0              |         goto label_0;
                                             |     }
    0x00018400 lhu v0, 0x24(sp)              |     v0 = *(var_24h);
    0x00018404 addiu v1, zero, 0x4000        |     v1 = 0x4000;
    0x00018408 andi v0, v0, 0xf000           |     v0 &= 0xf000;
    0x0001840c lw t9, -0x7a8c(gp)            |     t9 = sym.imp.free;
                                             |     if (v0 != v1) {
    0x00018410 bne v0, v1, 0x183c4           |         goto label_1;
                                             |     }
    0x00018414 lw t9, -0x7bd4(gp)            |     t9 = sym.imp.malloc;
    0x00018418 addiu a0, zero, 0xc           |     a0 = 0xc;
    0x0001841c jalr t9                       |     t9 ();
    0x00018420 lw gp, 0x18(sp)               |     gp = *(var_18h);
                                             |     if (v0 != 0) {
    0x00018424 beqz v0, 0x18474              |         
    0x00018428 lw v1, 0x44(s4)               |         v1 = *((s4 + 17));
    0x0001842c sw zero, 8(v0)                |         *((v0 + 2)) = 0;
    0x00018430 sw s0, (v0)                   |         *(v0) = s0;
    0x00018434 sw s2, 4(v0)                  |         *((v0 + 1)) = s2;
                                             |         if (v1 == 0) {
    0x00018438 beqz v1, 0x1849c              |             goto label_7;
                                             |         }
    0x0001843c sw v0, 8(v1)                  |         *((v1 + 2)) = v0;
    0x00018440 sw v0, 0x44(s4)               |         *((s4 + 17)) = v0;
    0x00018444 b 0x182fc                     |         goto label_2;
                                             | label_5:
    0x00018448 lw v0, -0x7a6c(gp)            |         v0 = *((gp - 7835));
    0x0001844c lw a2, -0x7fdc(gp)            |         a2 = *(gp);
    0x00018450 lw t9, -0x7d90(gp)            |         t9 = sym.imp.__fprintf_chk;
    0x00018454 lw a0, (v0)                   |         a0 = *(v0);
    0x00018458 move a3, s5                   |         a3 = s5;
    0x0001845c sw s1, 0x10(sp)               |         *(var_10h_2) = s1;
                                             |         /* str.Couldnt_allocate_memory_for__s__s_n */
    0x00018460 addiu a2, a2, 0x1dac          |         a2 += 0x1dac;
    0x00018464 addiu a1, zero, 1             |         a1 = 1;
    0x00018468 jalr t9                       |         t9 ();
    0x0001846c lw gp, 0x18(sp)               |         gp = *(var_18h);
    0x00018470 b 0x182fc                     |         goto label_2;
                                             |     }
    0x00018474 lw v0, -0x7a6c(gp)            |     v0 = *((gp - 7835));
    0x00018478 lw a2, -0x7fdc(gp)            |     a2 = *(gp);
    0x0001847c lw t9, -0x7d90(gp)            |     t9 = sym.imp.__fprintf_chk;
    0x00018480 lw a3, 4(s4)                  |     a3 = *((s4 + 1));
    0x00018484 lw a0, (v0)                   |     a0 = *(v0);
                                             |     /* str.Couldnt_allocate_dir_list_for__s_n */
    0x00018488 addiu a2, a2, 0x1dd0          |     a2 += 0x1dd0;
    0x0001848c addiu a1, zero, 1             |     a1 = 1;
    0x00018490 jalr t9                       |     t9 ();
    0x00018494 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x00018498 b 0x183c0                     |     goto label_0;
                                             | label_7:
    0x0001849c sw v0, 0x40(s4)               |     *((s4 + 16)) = v0;
    0x000184a0 sw v0, 0x44(s4)               |     *((s4 + 17)) = v0;
    0x000184a4 b 0x182fc                     |     goto label_2;
                                             | label_4:
    0x000184a8 lw t9, -0x7b08(gp)            |     t9 = sym.imp.__stack_chk_fail;
    0x000184ac jalr t9                       |     t9 ();
    0x000184b0 nop                           |     
    0x000184b4 lui gp, 3                     |     
    0x000184b8 addiu gp, gp, 0x5c8c          |     
    0x000184bc addu gp, gp, t9               |     gp += t9;
    0x000184c0 addiu v0, zero, 4             |     v0 = 4;
    0x000184c4 lw t9, -0x7f0c(gp)            |     t9 = *(gp);
                                             |     if (a1 != v0) {
    0x000184c8 beq a1, v0, 0x184f8           |         
    0x000184cc addiu sp, sp, -0x20           |         
    0x000184d0 lw a1, 0x38(sp)               |         a1 = *(var_18h);
    0x000184d4 sw ra, 0x1c(sp)               |         *(var_1ch) = ra;
    0x000184d8 sw gp, 0x10(sp)               |         *(var_10h) = gp;
                                             |         /* fcn.00018250 */
    0x000184dc addiu t9, t9, -0x7db0         |         t9 += -0x7db0;
    0x000184e0 move a0, a2                   |         a0 = a2;
    0x000184e4 bal 0x18250                   |         fcn_00018250 ();
                                             |         goto label_3;
    0x000184e8 lw ra, 0x1c(sp)               |         ra = *(var_1ch);
    0x000184ec move v0, zero                 |         v0 = 0;
    0x000184f0 addiu sp, sp, 0x20            |         
    0x000184f4 jr ra                         |         return v0;
                                             |     }
    0x000184f8 move v0, zero                 |     v0 = 0;
    0x000184fc jr ra                         |     return v0;
                                             | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/debugfs @ 0x1bef4 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) fcn.0001bef4 ()                  | void fcn_0001bef4 () {
    0x0001bef4 lui gp, 3                     |     
    0x0001bef8 addiu gp, gp, 0x224c          |     
    0x0001befc addu gp, gp, t9               |     gp += t9;
    0x0001bf00 addiu sp, sp, -0x1d0          |     
    0x0001bf04 lw v0, -0x7aa4(gp)            |     v0 = *((gp - 7849));
    0x0001bf08 lw v1, 0x1e0(sp)              |     v1 = *(arg_1e0h);
    0x0001bf0c sw v0, 0x44(sp)               |     *(var_44h) = v0;
    0x0001bf10 sw v1, 0x3c(sp)               |     *(var_3ch) = v1;
    0x0001bf14 lw v0, (v0)                   |     v0 = *(v0);
    0x0001bf18 lw v1, 0x1e8(sp)              |     v1 = *(arg_1e8h);
    0x0001bf1c lw t9, -0x7af0(gp)            |     t9 = sym.imp.chdir;
    0x0001bf20 sw gp, 0x20(sp)               |     *(var_20h) = gp;
    0x0001bf24 sw s3, 0x1b4(sp)              |     *(var_1b4h) = s3;
    0x0001bf28 sw s1, 0x1ac(sp)              |     *(var_1ach) = s1;
    0x0001bf2c sw s0, 0x1a8(sp)              |     *(var_1a8h) = s0;
    0x0001bf30 sw ra, 0x1cc(sp)              |     *(var_1cch) = ra;
    0x0001bf34 sw fp, 0x1c8(sp)              |     *(var_1c8h) = fp;
    0x0001bf38 sw s7, 0x1c4(sp)              |     *(var_1c4h) = s7;
    0x0001bf3c sw s6, 0x1c0(sp)              |     *(var_1c0h) = s6;
    0x0001bf40 sw s5, 0x1bc(sp)              |     *(var_1bch) = s5;
    0x0001bf44 sw s4, 0x1b8(sp)              |     *(var_1b8h) = s4;
    0x0001bf48 sw s2, 0x1b0(sp)              |     *(var_1b0h) = s2;
    0x0001bf4c move s1, a0                   |     s1 = a0;
    0x0001bf50 sw a1, 0x1d4(sp)              |     *(arg_1d4h) = a1;
    0x0001bf54 move a0, a2                   |     a0 = a2;
    0x0001bf58 sw a3, 0x1dc(sp)              |     *(arg_1dch) = a3;
    0x0001bf5c sw v1, 0x2c(sp)               |     *(var_2ch) = v1;
    0x0001bf60 sw v0, 0x1a4(sp)              |     *(var_1a4h) = v0;
    0x0001bf64 move s0, a2                   |     s0 = a2;
    0x0001bf68 lw s3, 0x1e4(sp)              |     s3 = *(arg_1e4h);
    0x0001bf6c jalr t9                       |     t9 ();
    0x0001bf70 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 < 0) {
    0x0001bf74 bltz v0, 0x1c840              |         goto label_25;
                                             |     }
    0x0001bf78 lw v0, -0x7fdc(gp)            |     v0 = *(gp);
    0x0001bf7c lw t9, -0x7dc0(gp)            |     t9 = sym.imp.scandir64;
    0x0001bf80 lw a3, -0x7a50(gp)            |     a3 = *(gp);
    0x0001bf84 sw v0, 0x30(sp)               |     *(var_30h) = v0;
    0x0001bf88 move a2, zero                 |     a2 = 0;
    0x0001bf8c addiu a1, sp, 0x74            |     a1 = sp + 0x74;
                                             |     /* esilref: '(' */
    0x0001bf90 addiu a0, v0, -0x314          |     a0 = v0 + -0x314;
    0x0001bf94 jalr t9                       |     t9 ();
    0x0001bf98 move s6, v0                   |     s6 = v0;
    0x0001bf9c lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 < 0) {
    0x0001bfa0 bltz v0, 0x1cac4              |         goto label_26;
                                             |     }
    0x0001bfa4 move s0, zero                 |     s0 = 0;
                                             |     if (v0 == 0) {
    0x0001bfa8 beqz v0, 0x1c358              |         goto label_27;
                                             |     }
    0x0001bfac lw v0, -0x7fdc(gp)            |     v0 = *(gp);
    0x0001bfb0 move s5, s1                   |     s5 = s1;
                                             |     /* esilref: '..' */
    0x0001bfb4 addiu v0, v0, 0x288           |     v0 += 0x288;
    0x0001bfb8 sw v0, 0x34(sp)               |     *(var_34h) = v0;
    0x0001bfbc lw v0, -0x7fdc(gp)            |     v0 = *(gp);
    0x0001bfc0 sw v0, 0x40(sp)               |     *(var_40h) = v0;
    0x0001bfc4 lw v0, -0x7fdc(gp)            |     v0 = *(gp);
                                             |     /* str.while_listing_attributes_of___s_ */
    0x0001bfc8 addiu v0, v0, 0x28f4          |     v0 += 0x28f4;
    0x0001bfcc sw v0, 0x54(sp)               |     *(var_54h_2) = v0;
    0x0001bfd0 lw v0, -0x7fdc(gp)            |     v0 = *(gp);
    0x0001bfd4 sw v0, 0x50(sp)               |     *(var_50h) = v0;
    0x0001bfd8 lw v0, -0x7f0c(gp)            |     v0 = *(gp);
                                             |     /* fcn.0001bef4 */
    0x0001bfdc addiu v0, v0, -0x410c         |     v0 += -0x410c;
    0x0001bfe0 sw v0, 0x4c(sp)               |     *(var_4ch_2) = v0;
                                             |     do {
    0x0001bfe4 lw s4, 0x74(sp)               |         s4 = *(var_74h);
    0x0001bfe8 sll s2, s0, 2                 |         s2 = s0 << 2;
    0x0001bfec lw v0, 0x30(sp)               |         v0 = *(var_30h);
    0x0001bff0 lwx s4, s2(s4)                |         __asm ("lwx s4, s2(s4)");
    0x0001bff4 lw t9, -0x7a28(gp)            |         t9 = sym.imp.strcmp;
    0x0001bff8 addiu s1, s4, 0x13            |         s1 = s4 + 0x13;
    0x0001bffc addiu a1, v0, -0x314          |         a1 = v0 + -0x314;
    0x0001c000 move a0, s1                   |         a0 = s1;
    0x0001c004 jalr t9                       |         t9 ();
    0x0001c008 lw gp, 0x20(sp)               |         gp = *(var_20h);
                                             |         if (v0 != 0) {
    0x0001c00c beqz v0, 0x1c340              |             
    0x0001c010 lw t9, -0x7a28(gp)            |             t9 = sym.imp.strcmp;
    0x0001c014 lw a1, 0x34(sp)               |             a1 = *(var_34h);
    0x0001c018 move a0, s1                   |             a0 = s1;
    0x0001c01c jalr t9                       |             t9 ();
    0x0001c020 lw gp, 0x20(sp)               |             gp = *(var_20h);
                                             |             if (v0 == 0) {
    0x0001c024 beqz v0, 0x1c340              |                 goto label_28;
                                             |             }
    0x0001c028 lw t9, -0x7dd8(gp)            |             t9 = sym.imp.__lxstat64;
    0x0001c02c addiu a2, sp, 0x100           |             a2 = sp + aav.0x00000100;
    0x0001c030 move a1, s1                   |             a1 = s1;
    0x0001c034 addiu a0, zero, 3             |             a0 = 3;
    0x0001c038 jalr t9                       |             t9 ();
    0x0001c03c lw gp, 0x20(sp)               |             gp = *(var_20h);
                                             |             if (v0 != 0) {
    0x0001c040 bnez v0, 0x1caec              |                 goto label_29;
                                             |             }
    0x0001c044 lw v0, 0x118(sp)              |             v0 = *(var_118h);
    0x0001c048 addiu v1, zero, 0x4000        |             v1 = 0x4000;
    0x0001c04c andi v0, v0, 0xf000           |             v0 &= 0xf000;
    0x0001c050 ori v1, zero, 0xa000          |             v1 = 0xa000;
                                             |             if (v0 != v1) {
    0x0001c054 beq v0, v1, 0x1c070           |                 
                                             |                 if (v0 == v1) {
    0x0001c058 beql v0, v1, 0x1c074          |                     goto label_11;
                                             |                 }
    0x0001c05c sw zero, 0x38(sp)             |                 *(var_38h) = 0;
    0x0001c060 lw v0, 0x11c(sp)              |                 v0 = *(var_11ch);
    0x0001c064 sltiu v0, v0, 2               |                 v0 = (v0 < 2) ? 1 : 0;
                                             |                 if (v0 == 0) {
    0x0001c068 beql v0, zero, 0x1c584        |                     goto label_30;
                                             |                 }
    0x0001c06c lw v0, 0x3c(sp)               |                 v0 = *(var_3ch);
                                             |             }
    0x0001c070 sw zero, 0x38(sp)             |             *(var_38h) = 0;
                                             | label_11:
    0x0001c074 lw t9, -0x7c30(gp)            |             t9 = sym.imp.strlen;
    0x0001c078 lw s4, 4(s3)                  |             s4 = *((s3 + 1));
    0x0001c07c move a0, s1                   |             a0 = s1;
    0x0001c080 jalr t9                       |             t9 ();
    0x0001c084 lw a1, 8(s3)                  |             a1 = *((s3 + 2));
    0x0001c088 addiu v1, s4, 1               |             v1 = s4 + 1;
    0x0001c08c addu v1, v1, v0               |             v1 += v0;
    0x0001c090 sltu v1, a1, v1               |             v1 = (a1 < v1) ? 1 : 0;
    0x0001c094 lw gp, 0x20(sp)               |             gp = *(var_20h);
    0x0001c098 lw v0, (s3)                   |             v0 = *(s3);
                                             |             if (v1 == 0) {
    0x0001c09c beqz v1, 0x1c520              |                 goto label_31;
                                             |             }
    0x0001c0a0 lw t9, -0x7bc8(gp)            |             t9 = sym.imp.realloc;
    0x0001c0a4 sll a1, a1, 1                 |             a1 <<= 1;
    0x0001c0a8 move a0, v0                   |             a0 = v0;
    0x0001c0ac sw a1, 8(s3)                  |             *((s3 + 2)) = a1;
    0x0001c0b0 jalr t9                       |             t9 ();
    0x0001c0b4 lw gp, 0x20(sp)               |             gp = *(var_20h);
                                             |             if (v0 == 0) {
    0x0001c0b8 beqz v0, 0x1ca48              |                 goto label_32;
                                             |             }
    0x0001c0bc lw a0, 4(s3)                  |             a0 = *((s3 + 1));
    0x0001c0c0 sw v0, (s3)                   |             *(s3) = v0;
                                             | label_2:
    0x0001c0c4 lw v1, 0x40(sp)               |             v1 = *(var_40h);
    0x0001c0c8 lw t9, -0x7e0c(gp)            |             t9 = sym.imp.__sprintf_chk
    0x0001c0cc addiu a3, v1, 0x27d8          |             a3 = v1 + 0x27d8;
    0x0001c0d0 sw s1, 0x10(sp)               |             *(var_80h) = s1;
    0x0001c0d4 addiu a2, zero, -1            |             a2 = -1;
    0x0001c0d8 addiu a1, zero, 1             |             a1 = 1;
    0x0001c0dc addu a0, v0, a0               |             a0 = v0 + a0;
    0x0001c0e0 jalr t9                       |             t9 ();
    0x0001c0e4 lw v1, 4(s3)                  |             v1 = *((s3 + 1));
    0x0001c0e8 lw gp, 0x20(sp)               |             gp = *(var_20h);
    0x0001c0ec addu v0, v1, v0               |             v0 = v1 + v0;
    0x0001c0f0 sw v0, 4(s3)                  |             *((s3 + 1)) = v0;
    0x0001c0f4 lw v0, 0x2c(sp)               |             v0 = *(var_2ch);
    0x0001c0f8 lw a3, 0x118(sp)              |             a3 = *(var_118h);
                                             |             if (v0 != 0) {
    0x0001c0fc beqz v0, 0x1c13c              |                 
    0x0001c100 lw v0, 0x2c(sp)               |                 v0 = *(var_2ch);
    0x0001c104 lw t9, (v0)                   |                 t9 = *(v0);
    0x0001c108 andi v0, a3, 0xf000           |                 v0 = a3 & 0xf000;
                                             |                 if (t9 == 0) {
    0x0001c10c beqz t9, 0x1c140              |                     goto label_33;
                                             |                 }
    0x0001c110 lw a1, (s3)                   |                 a1 = *(s3);
    0x0001c114 sw v0, 0x14(sp)               |                 *(var_14h) = v0;
    0x0001c118 lw v0, 0x1dc(sp)              |                 v0 = *(arg_1dch);
    0x0001c11c lw a3, 0x1d4(sp)              |                 a3 = *(arg_1d4h);
    0x0001c120 sw v0, 0x10(sp)               |                 *(var_80h) = v0;
    0x0001c124 move a2, s1                   |                 a2 = s1;
    0x0001c128 move a0, s5                   |                 a0 = s5;
    0x0001c12c jalr t9                       |                 t9 ();
    0x0001c130 lw gp, 0x20(sp)               |                 gp = *(var_20h);
                                             |                 if (v0 != 0) {
    0x0001c134 bnez v0, 0x1cb14              |                     goto label_34;
                                             |                 }
    0x0001c138 lw a3, 0x118(sp)              |                 a3 = *(var_118h);
                                             |             }
    0x0001c13c andi v0, a3, 0xf000           |             v0 = a3 & 0xf000;
                                             | label_33:
    0x0001c140 addiu v1, zero, 0x6000        |             v1 = 0x6000;
    0x0001c144 sltiu v1, v0, 0x6001          |             v1 = (v0 < 0x6001) ? 1 : 0;
                                             |             if (v0 == v1) {
    0x0001c148 beq v0, v1, 0x1c7dc           |                 goto label_35;
                                             |             }
    0x0001c14c ori v1, zero, 0xa000          |             v1 = 0xa000;
                                             |             if (v1 != 0) {
    0x0001c150 bnez v1, 0x1c3b0              |                 goto label_36;
                                             |             }
    0x0001c154 ori v1, zero, 0xc000          |             v1 = 0xc000;
                                             |             if (v0 == v1) {
    0x0001c158 beq v0, v1, 0x1c720           |                 goto label_37;
                                             |             }
    0x0001c15c ori v1, zero, 0x8000          |             v1 = 0x8000;
                                             |             if (v0 == v1) {
    0x0001c160 beq v0, v1, 0x1c7dc           |                 goto label_35;
                                             |             }
    0x0001c164 lw v0, 0x1dc(sp)              |             v0 = *(arg_1dch);
                                             |             if (v0 != v1) {
    0x0001c168 bne v0, v1, 0x1c4f4           |                 goto label_38;
                                             |             }
    0x0001c16c lw t9, -0x7f5c(gp)            |             t9 = sym.do_write_internal;
    0x0001c170 lw a1, 0x1d4(sp)              |             a1 = *(arg_1d4h);
    0x0001c174 sw v0, 0x10(sp)               |             *(var_80h) = v0;
    0x0001c178 move a3, s1                   |             a3 = s1;
    0x0001c17c move a2, s1                   |             a2 = s1;
    0x0001c180 move a0, s5                   |             a0 = s5;
    0x0001c184 bal 0x1b57c                   |             sym_do_write_internal ();
    0x0001c188 lw gp, 0x20(sp)               |             gp = *(var_20h);
                                             |             if (v0 != 0) {
    0x0001c18c bnez v0, 0x1cb58              |                 goto label_39;
                                             |             }
                                             | label_9:
    0x0001c190 addiu s7, sp, 0x78            |             s7 = sp + 0x78;
                                             | label_0:
    0x0001c194 lw t9, -0x7ac0(gp)            |             t9 = sym.imp.ext2fs_namei;
    0x0001c198 lw a2, 0x1d4(sp)              |             a2 = *(arg_1d4h);
    0x0001c19c lw a1, 0x1dc(sp)              |             a1 = *(arg_1dch);
    0x0001c1a0 sw s7, 0x10(sp)               |             *(var_80h) = s7;
    0x0001c1a4 move a3, s1                   |             a3 = s1;
    0x0001c1a8 move a0, s5                   |             a0 = s5;
    0x0001c1ac jalr t9                       |             t9 ();
    0x0001c1b0 lw gp, 0x20(sp)               |             gp = *(var_20h);
                                             |             if (v0 != 0) {
    0x0001c1b4 bnez v0, 0x1cb70              |                 goto label_40;
                                             |             }
    0x0001c1b8 lw fp, 0x78(sp)               |             fp = *(var_78h);
    0x0001c1bc lw t9, -0x7a08(gp)            |             t9 = sym.imp.ext2fs_read_inode;
    0x0001c1c0 addiu s7, sp, 0x80            |             s7 = sp + 0x80;
    0x0001c1c4 move a2, s7                   |             a2 = s7;
    0x0001c1c8 move a1, fp                   |             a1 = fp;
    0x0001c1cc move a0, s5                   |             a0 = s5;
    0x0001c1d0 jalr t9                       |             t9 ();
    0x0001c1d4 lw gp, 0x20(sp)               |             gp = *(var_20h);
                                             |             if (v0 != 0) {
    0x0001c1d8 bnez v0, 0x1c818              |                 goto label_41;
                                             |             }
    0x0001c1dc lw a1, 0x120(sp)              |             a1 = *(var_120h);
    0x0001c1e0 lw v0, 0x118(sp)              |             v0 = *(var_118h);
    0x0001c1e4 sh a1, 0x82(sp)               |             *(var_82h) = a1;
    0x0001c1e8 lw a1, 0x124(sp)              |             a1 = *(var_124h);
    0x0001c1ec andi a0, v0, 0xf000           |             a0 = v0 & 0xf000;
    0x0001c1f0 addiu v1, zero, 0x4000        |             v1 = 0x4000;
    0x0001c1f4 sh a1, 0x98(sp)               |             *(var_98h) = a1;
    0x0001c1f8 andi v0, v0, 0xffff           |             v0 &= 0xffff;
                                             |             if (a0 == v1) {
    0x0001c1fc beq a0, v1, 0x1c528           |                 goto label_42;
                                             |             }
    0x0001c200 lhu v1, 0x80(sp)              |             v1 = *(var_80h_2);
    0x0001c204 or v0, v0, v1                 |             v0 |= v1;
                                             | label_3:
    0x0001c208 sh v0, 0x80(sp)               |             *(var_80h_2) = v0;
    0x0001c20c lw v0, 0x140(sp)              |             v0 = *(var_140h);
    0x0001c210 lw t9, -0x7cc0(gp)            |             t9 = sym.imp.ext2fs_write_inode;
    0x0001c214 sw v0, 0x88(sp)               |             *(var_88h) = v0;
    0x0001c218 lw v0, 0x148(sp)              |             v0 = *(var_148h);
    0x0001c21c move a2, s7                   |             a2 = s7;
    0x0001c220 sw v0, 0x90(sp)               |             *(var_90h) = v0;
    0x0001c224 lw v0, 0x150(sp)              |             v0 = *(var_150h);
    0x0001c228 move a1, fp                   |             a1 = fp;
    0x0001c22c move a0, s5                   |             a0 = s5;
    0x0001c230 sw v0, 0x8c(sp)               |             *(var_8ch) = v0;
    0x0001c234 jalr t9                       |             t9 ();
    0x0001c238 lw gp, 0x20(sp)               |             gp = *(var_20h);
                                             |             if (v0 != 0) {
    0x0001c23c bnez v0, 0x1c530              |                 goto label_43;
                                             |             }
    0x0001c240 lw v0, -0x7f00(gp)            |             v0 = *(gp);
    0x0001c244 lw s7, (v0)                   |             s7 = *(v0);
    0x0001c248 lw v0, 0x2c(sp)               |             v0 = *(var_2ch);
                                             |             if (s7 == 0) {
    0x0001c24c bnez s7, 0x1c288              |                 
    0x0001c250 lw v0, 0x78(sp)               |                 v0 = *(var_78h);
    0x0001c254 lw t9, -0x7a9c(gp)            |                 t9 = sym.imp.llistxattr;
    0x0001c258 move a2, zero                 |                 a2 = 0;
    0x0001c25c move a1, zero                 |                 a1 = 0;
    0x0001c260 move a0, s1                   |                 a0 = s1;
    0x0001c264 sw v0, 0x48(sp)               |                 *(var_48h) = v0;
    0x0001c268 jalr t9                       |                 t9 ();
    0x0001c26c addiu v1, zero, -1            |                 v1 = -1;
    0x0001c270 lw gp, 0x20(sp)               |                 gp = *(var_20h);
    0x0001c274 move fp, v0                   |                 fp = v0;
                                             |                 if (v0 == v1) {
    0x0001c278 beq v0, v1, 0x1ca78           |                     goto label_44;
                                             |                 }
    0x0001c27c lw t9, -0x7aa8(gp)            |                 t9 = sym.imp.ext2fs_xattrs_open;
                                             |                 if (v0 != 0) {
    0x0001c280 bnez v0, 0x1c6b4              |                     goto label_45;
                                             |                 }
                                             | label_18:
    0x0001c284 lw v0, 0x2c(sp)               |                 v0 = *(var_2ch);
                                             |             }
                                             | label_7:
    0x0001c288 lw v0, 0x2c(sp)               |             v0 = *(var_2ch);
                                             |             if (v0 != 0) {
    0x0001c28c beqz v0, 0x1c2c8              |                 
    0x0001c290 lw t9, 4(v0)                  |                 t9 = *((v0 + 1));
    0x0001c294 lw v0, 0x118(sp)              |                 v0 = *(var_118h);
                                             |                 if (t9 == 0) {
    0x0001c298 beqz t9, 0x1c2c8              |                     goto label_46;
                                             |                 }
    0x0001c29c lw a1, (s3)                   |                 a1 = *(s3);
    0x0001c2a0 andi v0, v0, 0xf000           |                 v0 &= 0xf000;
    0x0001c2a4 sw v0, 0x14(sp)               |                 *(var_14h) = v0;
    0x0001c2a8 lw v0, 0x1dc(sp)              |                 v0 = *(arg_1dch);
    0x0001c2ac lw a3, 0x1d4(sp)              |                 a3 = *(arg_1d4h);
    0x0001c2b0 sw v0, 0x10(sp)               |                 *(var_80h) = v0;
    0x0001c2b4 move a2, s1                   |                 a2 = s1;
    0x0001c2b8 move a0, s5                   |                 a0 = s5;
    0x0001c2bc jalr t9                       |                 t9 ();
    0x0001c2c0 lw gp, 0x20(sp)               |                 gp = *(var_20h);
                                             |                 if (v0 != 0) {
    0x0001c2c4 bnez v0, 0x1cb14              |                     goto label_34;
                                             |                 }
                                             |             }
                                             | label_46:
    0x0001c2c8 lw v0, 0x38(sp)               |             v0 = *(var_38h);
                                             |             if (v0 != 0) {
    0x0001c2cc beql v0, zero, 0x1c32c        |                 
    0x0001c2d0 lw v0, (s3)                   |                 v0 = *(s3);
    0x0001c2d4 lw v0, 0x3c(sp)               |                 v0 = *(var_3ch);
    0x0001c2d8 lw v1, (v0)                   |                 v1 = *(v0);
    0x0001c2dc lw a0, 4(v0)                  |                 a0 = *((v0 + 1));
    0x0001c2e0 lw v0, 8(v0)                  |                 v0 = *((v0 + 2));
                                             |                 if (v1 == a0) {
    0x0001c2e4 beq v1, a0, 0x1c87c           |                     goto label_47;
                                             |                 }
                                             | label_13:
    0x0001c2e8 sll a0, v1, 1                 |                 a0 = v1 << 1;
    0x0001c2ec addu a0, a0, v1               |                 a0 += v1;
    0x0001c2f0 sll a0, a0, 3                 |                 a0 <<= 3;
    0x0001c2f4 addu v0, v0, a0               |                 v0 += a0;
    0x0001c2f8 lw a1, 0x114(sp)              |                 a1 = *(var_114h);
    0x0001c2fc lw a0, 0x110(sp)              |                 a0 = *(var_110h);
    0x0001c300 lw a2, 0x78(sp)               |                 a2 = *(var_78h);
    0x0001c304 lw a3, 0x100(sp)              |                 a3 = *(var_100h);
    0x0001c308 sw zero, 4(v0)                |                 *((v0 + 1)) = 0;
    0x0001c30c sw a3, (v0)                   |                 *(v0) = a3;
    0x0001c310 sw a0, 8(v0)                  |                 *((v0 + 2)) = a0;
    0x0001c314 sw a1, 0xc(v0)                |                 *((v0 + 3)) = a1;
    0x0001c318 sw a2, 0x10(v0)               |                 *((v0 + 4)) = a2;
    0x0001c31c lw v0, 0x3c(sp)               |                 v0 = *(var_3ch);
    0x0001c320 addiu v1, v1, 1               |                 v1++;
    0x0001c324 sw v1, (v0)                   |                 *(v0) = v1;
    0x0001c328 lw v0, (s3)                   |                 v0 = *(s3);
                                             |             }
    0x0001c32c sw s4, 4(s3)                  |             *((s3 + 1)) = s4;
    0x0001c330 addu s4, v0, s4               |             s4 = v0 + s4;
    0x0001c334 sb zero, (s4)                 |             *(s4) = 0;
                                             | label_6:
    0x0001c338 lw s4, 0x74(sp)               |             s4 = *(var_74h);
    0x0001c33c lwx s4, s2(s4)                |             __asm ("lwx s4, s2(s4)");
                                             |         }
                                             | label_28:
    0x0001c340 lw t9, -0x7a8c(gp)            |         t9 = sym.imp.free;
    0x0001c344 move a0, s4                   |         a0 = s4;
    0x0001c348 addiu s0, s0, 1               |         s0++;
    0x0001c34c jalr t9                       |         t9 ();
    0x0001c350 lw gp, 0x20(sp)               |         gp = *(var_20h);
    0x0001c354 bne s6, s0, 0x1bfe4           |         
                                             |     } while (s6 != s0);
                                             | label_27:
    0x0001c358 move fp, zero                 |     fp = 0;
    0x0001c35c lw t9, -0x7a8c(gp)            |     t9 = sym.imp.free;
                                             | label_1:
    0x0001c360 lw a0, 0x74(sp)               |     a0 = *(var_74h);
    0x0001c364 jalr t9                       |     t9 ();
    0x0001c368 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             | label_12:
    0x0001c36c lw v0, 0x44(sp)               |     v0 = *(var_44h);
    0x0001c370 lw a1, 0x1a4(sp)              |     a1 = *(var_1a4h);
    0x0001c374 lw a0, (v0)                   |     a0 = *(v0);
    0x0001c378 move v0, fp                   |     v0 = fp;
                                             |     if (a1 != a0) {
    0x0001c37c bne a1, a0, 0x1cf78           |         goto label_48;
                                             |     }
    0x0001c380 lw ra, 0x1cc(sp)              |     ra = *(var_1cch);
    0x0001c384 lw fp, 0x1c8(sp)              |     fp = *(var_1c8h);
    0x0001c388 lw s7, 0x1c4(sp)              |     s7 = *(var_1c4h);
    0x0001c38c lw s6, 0x1c0(sp)              |     s6 = *(var_1c0h);
    0x0001c390 lw s5, 0x1bc(sp)              |     s5 = *(var_1bch);
    0x0001c394 lw s4, 0x1b8(sp)              |     s4 = *(var_1b8h);
    0x0001c398 lw s3, 0x1b4(sp)              |     s3 = *(var_1b4h);
    0x0001c39c lw s2, 0x1b0(sp)              |     s2 = *(var_1b0h);
    0x0001c3a0 lw s1, 0x1ac(sp)              |     s1 = *(var_1ach);
    0x0001c3a4 lw s0, 0x1a8(sp)              |     s0 = *(var_1a8h);
    0x0001c3a8 addiu sp, sp, 0x1d0           |     
    0x0001c3ac jr ra                         |     return v0;
                                             | label_36:
    0x0001c3b0 addiu v1, zero, 0x2000        |     v1 = 0x2000;
    0x0001c3b4 addiu v1, zero, 0x4000        |     v1 = 0x4000;
                                             |     if (v0 == v1) {
    0x0001c3b8 beq v0, v1, 0x1c7dc           |         goto label_35;
                                             |     }
    0x0001c3bc lw v1, 0x1d4(sp)              |     v1 = *(arg_1d4h);
                                             |     if (v0 != v1) {
    0x0001c3c0 bne v0, v1, 0x1c4e8           |         goto label_49;
                                             |     }
    0x0001c3c4 addiu v0, zero, 2             |     v0 = 2;
    0x0001c3c8 lw a1, -0x7fdc(gp)            |     a1 = *(gp);
                                             |     if (v1 == v0) {
    0x0001c3cc bne v1, v0, 0x1c3e8           |         
    0x0001c3d0 lw t9, -0x7a28(gp)            |         t9 = sym.imp.strcmp;
                                             |         /* str.lostfound */
    0x0001c3d4 addiu a1, a1, 0x28a0          |         a1 += 0x28a0;
    0x0001c3d8 move a0, s1                   |         a0 = s1;
    0x0001c3dc jalr t9                       |         t9 ();
    0x0001c3e0 lw gp, 0x20(sp)               |         gp = *(var_20h);
                                             |         if (v0 == 0) {
    0x0001c3e4 beqz v0, 0x1c408              |             goto label_50;
                                             |         }
                                             |     }
    0x0001c3e8 lw t9, -0x7f54(gp)            |     t9 = sym.do_mkdir_internal;
    0x0001c3ec lw a3, 0x1dc(sp)              |     a3 = *(arg_1dch);
    0x0001c3f0 lw a1, 0x1d4(sp)              |     a1 = *(arg_1d4h);
    0x0001c3f4 move a2, s1                   |     a2 = s1;
    0x0001c3f8 move a0, s5                   |     a0 = s5;
    0x0001c3fc bal 0x1b3b0                   |     sym_do_mkdir_internal ();
    0x0001c400 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 != 0) {
    0x0001c404 bnez v0, 0x1cee0              |         goto label_51;
                                             |     }
                                             | label_50:
    0x0001c408 lw t9, -0x7ac0(gp)            |     t9 = sym.imp.ext2fs_namei;
    0x0001c40c addiu s7, sp, 0x78            |     s7 = sp + 0x78;
    0x0001c410 lw a2, 0x1d4(sp)              |     a2 = *(arg_1d4h);
    0x0001c414 lw a1, 0x1dc(sp)              |     a1 = *(arg_1dch);
    0x0001c418 sw s7, 0x10(sp)               |     *(var_80h) = s7;
    0x0001c41c move a3, s1                   |     a3 = s1;
    0x0001c420 move a0, s5                   |     a0 = s5;
    0x0001c424 jalr t9                       |     t9 ();
    0x0001c428 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 != 0) {
    0x0001c42c bnez v0, 0x1ceb8              |         goto label_52;
                                             |     }
    0x0001c430 lw v0, 0x2c(sp)               |     v0 = *(var_2ch);
    0x0001c434 lw a1, 0x78(sp)               |     a1 = *(var_78h);
    0x0001c438 sw v0, 0x18(sp)               |     *(var_18h) = v0;
    0x0001c43c lw v0, 0x3c(sp)               |     v0 = *(var_3ch);
    0x0001c440 lw a3, 0x1dc(sp)              |     a3 = *(arg_1dch);
    0x0001c444 lw t9, 0x4c(sp)               |     t9 = *(var_4ch_2);
    0x0001c448 sw s3, 0x14(sp)               |     *(var_14h) = s3;
    0x0001c44c sw v0, 0x10(sp)               |     *(var_80h) = v0;
    0x0001c450 move a2, s1                   |     a2 = s1;
    0x0001c454 move a0, s5                   |     a0 = s5;
    0x0001c458 jalr t9                       |     t9 ();
    0x0001c45c lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 != 0) {
    0x0001c460 bnez v0, 0x1cb14              |         goto label_34;
                                             |     }
    0x0001c464 lw t9, -0x7af0(gp)            |     t9 = sym.imp.chdir;
    0x0001c468 lw a0, 0x34(sp)               |     a0 = *(var_34h);
    0x0001c46c jalr t9                       |     t9 ();
    0x0001c470 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 == 0) {
    0x0001c474 beqz v0, 0x1c194              |         goto label_0;
                                             |     }
    0x0001c478 lw t9, -0x7c74(gp)            |     t9 = sym.imp.__errno_location;
    0x0001c47c jalr t9                       |     t9 ();
    0x0001c480 nop                           |     
    0x0001c484 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x0001c488 lw fp, (v0)                   |     fp = *(v0);
    0x0001c48c lw a2, -0x7fdc(gp)            |     a2 = *(gp);
    0x0001c490 lw a0, -0x7fdc(gp)            |     a0 = *(gp);
    0x0001c494 lw t9, -0x7b4c(gp)            |     t9 = sym.imp.com_err;
                                             |     /* str.while_changing_directory */
    0x0001c498 addiu a2, a2, 0x28c4          |     a2 += 0x28c4;
    0x0001c49c move a1, fp                   |     a1 = fp;
                                             |     /* str.__populate_fs */
    0x0001c4a0 addiu a0, a0, 0x2a5c          |     a0 += 0x2a5c;
    0x0001c4a4 jalr t9                       |     t9 ();
    0x0001c4a8 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             | label_4:
    0x0001c4ac slt v0, s0, s6                |     v0 = (s0 < s6) ? 1 : 0;
    0x0001c4b0 move a0, s2                   |     a0 = s2;
                                             |     if (v0 != 0) {
    0x0001c4b4 bnez v0, 0x1c4c4              |         goto label_53;
                                             |     }
    0x0001c4b8 lw t9, -0x7a8c(gp)            |     t9 = sym.imp.free;
    0x0001c4bc b 0x1c360                     |     goto label_1;
                                             |     do {
    0x0001c4c0 sll a0, s0, 2                 |         a0 = s0 << 2;
                                             | label_53:
    0x0001c4c4 lw v0, 0x74(sp)               |         v0 = *(var_74h);
    0x0001c4c8 lw t9, -0x7a8c(gp)            |         t9 = sym.imp.free;
    0x0001c4cc addiu s0, s0, 1               |         s0++;
    0x0001c4d0 lwx a0, a0(v0)                |         __asm ("lwx a0, a0(v0)");
    0x0001c4d4 jalr t9                       |         t9 ();
    0x0001c4d8 lw gp, 0x20(sp)               |         gp = *(var_20h);
    0x0001c4dc bne s6, s0, 0x1c4c0           |         
                                             |     } while (s6 != s0);
    0x0001c4e0 lw t9, -0x7a8c(gp)            |     t9 = sym.imp.free;
    0x0001c4e4 b 0x1c360                     |     goto label_1;
                                             | label_49:
    0x0001c4e8 addiu v1, zero, 0x1000        |     v1 = 0x1000;
    0x0001c4ec lw v0, 0x128(sp)              |     v0 = *(var_128h);
                                             |     if (v0 == v1) {
    0x0001c4f0 beq v0, v1, 0x1c7e0           |         goto label_54;
                                             |     }
                                             | label_38:
    0x0001c4f4 lw a2, -0x7fdc(gp)            |     a2 = *(gp);
    0x0001c4f8 lw a0, -0x7fdc(gp)            |     a0 = *(gp);
    0x0001c4fc lw t9, -0x7b4c(gp)            |     t9 = sym.imp.com_err;
    0x0001c500 move a3, s1                   |     a3 = s1;
                                             |     /* str.ignoring_entry___s_ */
    0x0001c504 addiu a2, a2, 0x28e0          |     a2 += 0x28e0;
    0x0001c508 move a1, zero                 |     a1 = 0;
                                             |     /* str.__populate_fs */
    0x0001c50c addiu a0, a0, 0x2a5c          |     a0 += 0x2a5c;
    0x0001c510 jalr t9                       |     t9 ();
    0x0001c514 addiu s7, sp, 0x78            |     s7 = sp + 0x78;
    0x0001c518 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x0001c51c b 0x1c194                     |     goto label_0;
                                             | label_31:
    0x0001c520 move a0, s4                   |     a0 = s4;
    0x0001c524 b 0x1c0c4                     |     goto label_2;
                                             | label_42:
    0x0001c528 ori v0, v0, 0x4000            |     v0 |= 0x4000;
    0x0001c52c b 0x1c208                     |     goto label_3;
                                             | label_43:
    0x0001c530 lw a2, -0x7fdc(gp)            |     a2 = *(gp);
    0x0001c534 move s7, fp                   |     s7 = fp;
    0x0001c538 lw t9, -0x7b4c(gp)            |     t9 = sym.imp.com_err;
    0x0001c53c move fp, v0                   |     fp = v0;
    0x0001c540 move a3, s7                   |     a3 = s7;
                                             |     /* str.while_writing_inode__u */
    0x0001c544 addiu a2, a2, -0x3f0          |     a2 += -0x3f0;
                                             | label_10:
    0x0001c548 lw a0, -0x7fdc(gp)            |     a0 = *(gp);
    0x0001c54c move a1, fp                   |     a1 = fp;
                                             |     /* str.set_inode_extra */
    0x0001c550 addiu a0, a0, 0x2a40          |     a0 += 0x2a40;
    0x0001c554 jalr t9                       |     t9 ();
    0x0001c558 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x0001c55c move a3, s1                   |     a3 = s1;
    0x0001c560 lw a2, -0x7fdc(gp)            |     a2 = *(gp);
    0x0001c564 lw t9, -0x7b4c(gp)            |     t9 = sym.imp.com_err;
                                             |     /* str.while_setting_inode_for___s_ */
    0x0001c568 addiu a2, a2, 0x29e8          |     a2 += 0x29e8;
                                             | label_8:
    0x0001c56c lw a0, -0x7fdc(gp)            |     a0 = *(gp);
    0x0001c570 move a1, fp                   |     a1 = fp;
                                             |     /* str.__populate_fs */
    0x0001c574 addiu a0, a0, 0x2a5c          |     a0 += 0x2a5c;
    0x0001c578 jalr t9                       |     t9 ();
    0x0001c57c lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x0001c580 b 0x1c4ac                     |     goto label_4;
                                             | label_30:
    0x0001c584 lw a2, 0x100(sp)              |     a2 = *(var_100h);
    0x0001c588 lw a3, 0x110(sp)              |     a3 = *(var_110h);
    0x0001c58c lw a1, (v0)                   |     a1 = *(v0);
    0x0001c590 lw t0, 0x114(sp)              |     t0 = *(var_114h);
                                             |     if (a1 <= 0) {
    0x0001c594 blez a1, 0x1c834              |         goto label_55;
                                             |     }
    0x0001c598 lw v0, 8(v0)                  |     v0 = *((v0 + 2));
    0x0001c59c move v1, zero                 |     v1 = 0;
    0x0001c5a0 b 0x1c5ac                     |     
                                             |     while (a0 == a2) {
                                             | label_5:
    0x0001c5a4 addiu v0, v0, 0x18            |         v0 += 0x18;
                                             |         if (a1 == v1) {
    0x0001c5a8 beq a1, v1, 0x1c834           |             goto label_55;
                                             |         }
    0x0001c5ac lw a0, (v0)                   |         a0 = *(v0);
    0x0001c5b0 addiu v1, v1, 1               |         v1++;
    0x0001c5b4 bnel a0, a2, 0x1c5a4          |         
                                             |     }
    0x0001c5b8 lw a0, 4(v0)                  |     a0 = *((v0 + 1));
    0x0001c5bc addiu v1, v1, 1               |     v1++;
                                             |     if (a0 != 0) {
    0x0001c5c0 bnez a0, 0x1c5a4              |         goto label_5;
                                             |     }
    0x0001c5c4 lw a0, 8(v0)                  |     a0 = *((v0 + 2));
                                             |     if (a0 != a3) {
    0x0001c5c8 bne a0, a3, 0x1c5a4           |         goto label_5;
                                             |     }
    0x0001c5cc nop                           |     
    0x0001c5d0 lw a0, 0xc(v0)                |     a0 = *((v0 + 3));
    0x0001c5d4 lw t9, -0x7a08(gp)            |     t9 = sym.imp.ext2fs_read_inode;
                                             |     if (a0 != t0) {
    0x0001c5d8 bne a0, t0, 0x1c5a4           |         goto label_5;
                                             |     }
    0x0001c5dc lw s4, 0x10(v0)               |     s4 = *((v0 + 4));
    0x0001c5e0 addiu s7, sp, 0x80            |     s7 = sp + 0x80;
    0x0001c5e4 move a2, s7                   |     a2 = s7;
    0x0001c5e8 move a1, s4                   |     a1 = s4;
    0x0001c5ec move a0, s5                   |     a0 = s5;
    0x0001c5f0 jalr t9                       |     t9 ();
    0x0001c5f4 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 != 0) {
    0x0001c5f8 bnez v0, 0x1cb98              |         goto label_56;
                                             |     }
    0x0001c5fc lhu v0, 0x80(sp)              |     v0 = *(var_80h_2);
    0x0001c600 ori v1, zero, 0x8000          |     v1 = 0x8000;
    0x0001c604 andi v0, v0, 0xf000           |     v0 &= 0xf000;
    0x0001c608 addiu v1, zero, 0x4000        |     v1 = 0x4000;
                                             |     if (v0 == v1) {
    0x0001c60c beq v0, v1, 0x1cbb0           |         goto label_57;
                                             |     }
    0x0001c610 addiu v1, zero, 0x2000        |     v1 = 0x2000;
                                             |     if (v0 == v1) {
    0x0001c614 beq v0, v1, 0x1cda8           |         goto label_58;
                                             |     }
    0x0001c618 addiu v1, zero, 0x6000        |     v1 = 0x6000;
                                             |     if (v0 == v1) {
    0x0001c61c beq v0, v1, 0x1cdb0           |         goto label_59;
                                             |     }
    0x0001c620 ori v1, zero, 0xa000          |     v1 = 0xa000;
                                             |     if (v0 == v1) {
    0x0001c624 beq v0, v1, 0x1cdb8           |         goto label_60;
                                             |     }
    0x0001c628 addiu v1, zero, 0x1000        |     v1 = 0x1000;
                                             |     if (v0 == v1) {
    0x0001c62c beq v0, v1, 0x1cdf8           |         goto label_61;
                                             |     }
    0x0001c630 addiu v1, zero, 6             |     v1 = 6;
                                             |     if (v0 == v1) {
    0x0001c634 beq v0, v1, 0x1ced8           |         goto label_62;
                                             |     }
    0x0001c638 xori v0, v0, 0xc000           |     v0 ^= 0xc000;
                                             |     if (v0 == 0) {
    0x0001c63c movn v1, zero, v0             |         v1 = 0;
                                             |     }
    0x0001c640 move v0, v1                   |     v0 = v1;
                                             | label_16:
    0x0001c644 lw t9, -0x7d78(gp)            |     t9 = sym.imp.ext2fs_link;
    0x0001c648 lw a1, 0x1d4(sp)              |     a1 = *(arg_1d4h);
    0x0001c64c sw v0, 0x10(sp)               |     *(var_80h) = v0;
    0x0001c650 move a3, s4                   |     a3 = s4;
    0x0001c654 move a2, s1                   |     a2 = s1;
    0x0001c658 move a0, s5                   |     a0 = s5;
    0x0001c65c jalr t9                       |     t9 ();
    0x0001c660 lui v1, 0x7f2b                |     v1 = 0x7f2bb726;
    0x0001c664 ori v1, v1, 0xb726            |     
    0x0001c668 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 == v1) {
    0x0001c66c beq v0, v1, 0x1cbb8           |         goto label_63;
                                             |     }
                                             | label_17:
    0x0001c670 move a1, s4                   |     a1 = s4;
                                             |     if (v0 != 0) {
    0x0001c674 bnez v0, 0x1cb1c              |         goto label_64;
                                             |     }
    0x0001c678 lhu v0, 0x9a(sp)              |     v0 = *(var_9ah);
    0x0001c67c lw t9, -0x7cc0(gp)            |     t9 = sym.imp.ext2fs_write_inode;
    0x0001c680 addiu v0, v0, 1               |     v0++;
    0x0001c684 move a2, s7                   |     a2 = s7;
    0x0001c688 move a0, s5                   |     a0 = s5;
    0x0001c68c sh v0, 0x9a(sp)               |     *(var_9ah) = v0;
    0x0001c690 jalr t9                       |     t9 ();
    0x0001c694 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 == 0) {
    0x0001c698 beqz v0, 0x1c338              |         goto label_6;
                                             |     }
    0x0001c69c lw a2, -0x7fdc(gp)            |     a2 = *(gp);
    0x0001c6a0 move fp, v0                   |     fp = v0;
    0x0001c6a4 lw t9, -0x7b4c(gp)            |     t9 = sym.imp.com_err;
    0x0001c6a8 move a3, s4                   |     a3 = s4;
                                             |     /* str.while_writing_inode__u */
    0x0001c6ac addiu a2, a2, -0x3f0          |     a2 += -0x3f0;
    0x0001c6b0 b 0x1cb30                     |     goto label_65;
                                             | label_45:
    0x0001c6b4 addiu v0, sp, 0x7c            |     v0 = sp + 0x7c;
    0x0001c6b8 lw a1, 0x48(sp)               |     a1 = *(var_48h);
    0x0001c6bc sw v0, 0x58(sp)               |     *(var_58h_2) = v0;
    0x0001c6c0 move a2, v0                   |     a2 = v0;
    0x0001c6c4 move a0, s5                   |     a0 = s5;
    0x0001c6c8 jalr t9                       |     t9 ();
    0x0001c6cc lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 == 0) {
    0x0001c6d0 beqz v0, 0x1c8bc              |         goto label_66;
                                             |     }
    0x0001c6d4 lui v1, 0x7f2b                |     v1 = 0x7f2bb7a4;
    0x0001c6d8 ori v1, v1, 0xb7a4            |     
                                             |     if (v0 == v1) {
    0x0001c6dc beql v0, v1, 0x1c288          |         goto label_7;
                                             |     }
    0x0001c6e0 lw v0, 0x2c(sp)               |     v0 = *(var_2ch);
    0x0001c6e4 lw a2, -0x7fdc(gp)            |     a2 = *(gp);
    0x0001c6e8 lw a0, -0x7fdc(gp)            |     a0 = *(gp);
    0x0001c6ec lw t9, -0x7b4c(gp)            |     t9 = sym.imp.com_err;
    0x0001c6f0 lw a3, 0x48(sp)               |     a3 = *(var_48h);
                                             |     /* str.while_opening_inode__u */
    0x0001c6f4 addiu a2, a2, 0x2918          |     a2 += 0x2918;
    0x0001c6f8 move a1, v0                   |     a1 = v0;
                                             |     /* str.set_inode_xattr */
    0x0001c6fc addiu a0, a0, 0x2a30          |     a0 += 0x2a30;
    0x0001c700 move fp, v0                   |     fp = v0;
    0x0001c704 jalr t9                       |     t9 ();
    0x0001c708 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             | label_14:
    0x0001c70c lw a2, -0x7fdc(gp)            |     a2 = *(gp);
    0x0001c710 lw t9, -0x7b4c(gp)            |     t9 = sym.imp.com_err;
    0x0001c714 move a3, s1                   |     a3 = s1;
                                             |     /* str.while_setting_xattrs_for___s_ */
    0x0001c718 addiu a2, a2, 0x299c          |     a2 += 0x299c;
    0x0001c71c b 0x1c56c                     |     goto label_8;
                                             | label_37:
    0x0001c720 lw fp, 0x138(sp)              |     fp = *(var_138h);
    0x0001c724 lw t9, -0x7bd4(gp)            |     t9 = sym.imp.malloc;
    0x0001c728 addiu fp, fp, 1               |     fp++;
    0x0001c72c move a0, fp                   |     a0 = fp;
    0x0001c730 jalr t9                       |     t9 ();
    0x0001c734 move s7, v0                   |     s7 = v0;
    0x0001c738 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 == 0) {
    0x0001c73c beqz v0, 0x1ce00              |         goto label_67;
                                             |     }
    0x0001c740 lw t9, -0x7b48(gp)            |     t9 = sym.imp.readlink;
    0x0001c744 move a2, fp                   |     a2 = fp;
    0x0001c748 move a1, v0                   |     a1 = v0;
    0x0001c74c move a0, s1                   |     a0 = s1;
    0x0001c750 jalr t9                       |     t9 ();
    0x0001c754 addiu v1, zero, -1            |     v1 = -1;
    0x0001c758 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 == v1) {
    0x0001c75c beq v0, v1, 0x1ce6c           |         goto label_68;
                                             |     }
    0x0001c760 lw a0, 0x13c(sp)              |     a0 = *(var_13ch);
    0x0001c764 sra v1, v0, 0x1f              |     v1 = v0 >> 0x1f;
    0x0001c768 slt a1, a0, v1                |     a1 = (a0 < v1) ? 1 : 0;
    0x0001c76c lw a2, -0x7fdc(gp)            |     a2 = *(gp);
                                             |     if (a1 != 0) {
    0x0001c770 bnez a1, 0x1ce38              |         goto label_69;
                                             |     }
    0x0001c774 lw v1, 0x138(sp)              |     v1 = *(var_138h);
                                             |     if (a0 == v1) {
    0x0001c778 beq a0, v1, 0x1ce28           |         goto label_70;
                                             |     }
    0x0001c77c lw v1, 0x1dc(sp)              |     v1 = *(arg_1dch);
                                             | label_22:
    0x0001c780 addu v0, s7, v0               |     v0 = s7 + v0;
    0x0001c784 lw t9, -0x7f44(gp)            |     t9 = sym.do_symlink_internal;
    0x0001c788 lw a1, 0x1d4(sp)              |     a1 = *(arg_1d4h);
    0x0001c78c sw v1, 0x10(sp)               |     *(var_80h) = v1;
    0x0001c790 move a3, s7                   |     a3 = s7;
    0x0001c794 move a2, s1                   |     a2 = s1;
    0x0001c798 move a0, s5                   |     a0 = s5;
    0x0001c79c sb zero, (v0)                 |     *(v0) = 0;
    0x0001c7a0 bal 0x1b1e4                   |     sym_do_symlink_internal ();
    0x0001c7a4 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x0001c7a8 sw v0, 0x48(sp)               |     *(var_48h) = v0;
    0x0001c7ac lw t9, -0x7a8c(gp)            |     t9 = sym.imp.free;
    0x0001c7b0 move a0, s7                   |     a0 = s7;
    0x0001c7b4 jalr t9                       |     t9 ();
    0x0001c7b8 lw v0, 0x48(sp)               |     v0 = *(var_48h);
    0x0001c7bc lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 == 0) {
    0x0001c7c0 beqz v0, 0x1c190              |         goto label_9;
                                             |     }
    0x0001c7c4 lw a2, -0x7fdc(gp)            |     a2 = *(gp);
    0x0001c7c8 move fp, v0                   |     fp = v0;
    0x0001c7cc lw t9, -0x7b4c(gp)            |     t9 = sym.imp.com_err;
    0x0001c7d0 move a3, s1                   |     a3 = s1;
                                             |     /* str.while_writing_symlink__s_ */
    0x0001c7d4 addiu a2, a2, 0x286c          |     a2 += 0x286c;
    0x0001c7d8 b 0x1c56c                     |     goto label_8;
                                             | label_35:
    0x0001c7dc lw v0, 0x128(sp)              |     v0 = *(var_128h);
                                             | label_54:
    0x0001c7e0 lw t9, -0x7f58(gp)            |     t9 = sym.do_mknod_internal;
    0x0001c7e4 lw a1, 0x1d4(sp)              |     a1 = *(arg_1d4h);
    0x0001c7e8 sw v0, 0x10(sp)               |     *(var_80h) = v0;
    0x0001c7ec move a2, s1                   |     a2 = s1;
    0x0001c7f0 move a0, s5                   |     a0 = s5;
    0x0001c7f4 bal 0x1ae84                   |     sym_do_mknod_internal ();
    0x0001c7f8 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 == 0) {
    0x0001c7fc beqz v0, 0x1c190              |         goto label_9;
                                             |     }
    0x0001c800 lw a2, -0x7fdc(gp)            |     a2 = *(gp);
    0x0001c804 move fp, v0                   |     fp = v0;
    0x0001c808 lw t9, -0x7b4c(gp)            |     t9 = sym.imp.com_err;
    0x0001c80c move a3, s1                   |     a3 = s1;
                                             |     /* str.while_creating_special_file___s_ */
    0x0001c810 addiu a2, a2, 0x27dc          |     a2 += 0x27dc;
    0x0001c814 b 0x1c56c                     |     goto label_8;
                                             | label_41:
    0x0001c818 lw a2, -0x7fdc(gp)            |     a2 = *(gp);
    0x0001c81c move s7, fp                   |     s7 = fp;
    0x0001c820 lw t9, -0x7b4c(gp)            |     t9 = sym.imp.com_err;
    0x0001c824 move fp, v0                   |     fp = v0;
    0x0001c828 move a3, s7                   |     a3 = s7;
                                             |     /* str.while_reading_inode__u */
    0x0001c82c addiu a2, a2, -0xa9c          |     a2 += -0xa9c;
    0x0001c830 b 0x1c548                     |     goto label_10;
                                             | label_55:
    0x0001c834 addiu v0, zero, 1             |     v0 = 1;
    0x0001c838 sw v0, 0x38(sp)               |     *(var_38h) = v0;
    0x0001c83c b 0x1c074                     |     goto label_11;
                                             | label_25:
    0x0001c840 lw t9, -0x7c74(gp)            |     t9 = sym.imp.__errno_location;
    0x0001c844 jalr t9                       |     t9 ();
    0x0001c848 nop                           |     
    0x0001c84c lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x0001c850 lw fp, (v0)                   |     fp = *(v0);
    0x0001c854 move a3, s0                   |     a3 = s0;
    0x0001c858 lw a2, -0x7fdc(gp)            |     a2 = *(gp);
    0x0001c85c lw t9, -0x7b4c(gp)            |     t9 = sym.imp.com_err;
                                             |     /* str.while_changing_working_directory_to___s_ */
    0x0001c860 addiu a2, a2, 0x2750          |     a2 += 0x2750;
                                             | label_15:
    0x0001c864 lw a0, -0x7fdc(gp)            |     a0 = *(gp);
    0x0001c868 move a1, fp                   |     a1 = fp;
                                             |     /* str.__populate_fs */
    0x0001c86c addiu a0, a0, 0x2a5c          |     a0 += 0x2a5c;
    0x0001c870 jalr t9                       |     t9 ();
    0x0001c874 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x0001c878 b 0x1c36c                     |     goto label_12;
                                             | label_47:
    0x0001c87c addiu v1, v1, 4               |     v1 += 4;
    0x0001c880 sll a1, v1, 1                 |     a1 = v1 << 1;
    0x0001c884 lw t9, -0x7bc8(gp)            |     t9 = sym.imp.realloc;
    0x0001c888 addu a1, a1, v1               |     a1 += v1;
    0x0001c88c move a0, v0                   |     a0 = v0;
    0x0001c890 sll a1, a1, 3                 |     a1 <<= 3;
    0x0001c894 jalr t9                       |     t9 ();
    0x0001c898 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 == 0) {
    0x0001c89c beqz v0, 0x1cf28              |         goto label_71;
                                             |     }
    0x0001c8a0 lw a1, 0x3c(sp)               |     a1 = *(var_3ch);
    0x0001c8a4 lw a0, 4(a1)                  |     a0 = *((a1 + 1));
    0x0001c8a8 lw v1, (a1)                   |     v1 = *(a1);
    0x0001c8ac addiu a0, a0, 4               |     a0 += 4;
    0x0001c8b0 sw v0, 8(a1)                  |     *((a1 + 2)) = v0;
    0x0001c8b4 sw a0, 4(a1)                  |     *((a1 + 1)) = a0;
    0x0001c8b8 b 0x1c2e8                     |     goto label_13;
                                             | label_66:
    0x0001c8bc lw t9, -0x7bd4(gp)            |     t9 = sym.imp.malloc;
    0x0001c8c0 move a0, fp                   |     a0 = fp;
    0x0001c8c4 jalr t9                       |     t9 ();
    0x0001c8c8 sw v0, 0x5c(sp)               |     *(var_5ch_2) = v0;
    0x0001c8cc lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x0001c8d0 move a1, v0                   |     a1 = v0;
                                             |     if (v0 == 0) {
    0x0001c8d4 beqz v0, 0x1c9d8              |         goto label_72;
                                             |     }
    0x0001c8d8 lw t9, -0x7a9c(gp)            |     t9 = sym.imp.llistxattr;
    0x0001c8dc move a2, fp                   |     a2 = fp;
    0x0001c8e0 move a0, s1                   |     a0 = s1;
    0x0001c8e4 jalr t9                       |     t9 ();
    0x0001c8e8 addiu v1, zero, -1            |     v1 = -1;
    0x0001c8ec lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 == v1) {
    0x0001c8f0 beq v0, v1, 0x1cdc0           |         goto label_73;
                                             |     }
    0x0001c8f4 lw t9, -0x7a8c(gp)            |     t9 = sym.imp.free;
                                             |     if (v0 <= 0) {
    0x0001c8f8 blez v0, 0x1cc50              |         goto label_74;
                                             |     }
    0x0001c8fc sw s4, 0x64(sp)               |     *(var_64h_2) = s4;
    0x0001c900 sw s3, 0x6c(sp)               |     *(var_6ch_2) = s3;
    0x0001c904 sw s0, 0x60(sp)               |     *(var_60h_2) = s0;
    0x0001c908 move s4, v0                   |     s4 = v0;
    0x0001c90c sw s5, 0x68(sp)               |     *(var_68h_2) = s5;
    0x0001c910 lw s3, 0x5c(sp)               |     s3 = *(var_5ch_2);
    0x0001c914 b 0x1c990                     |     
                                             |     while (v0 != 0) {
    0x0001c918 lw t9, -0x7ad0(gp)            |         t9 = sym.imp.lgetxattr;
    0x0001c91c move a3, s5                   |         a3 = s5;
    0x0001c920 move a2, v0                   |         a2 = v0;
    0x0001c924 move a1, fp                   |         a1 = fp;
    0x0001c928 move a0, s1                   |         a0 = s1;
    0x0001c92c jalr t9                       |         t9 ();
    0x0001c930 addiu v1, zero, -1            |         v1 = -1;
    0x0001c934 lw gp, 0x20(sp)               |         gp = *(var_20h);
                                             |         if (v0 == v1) {
    0x0001c938 beq v0, v1, 0x1cd44           |             goto label_75;
                                             |         }
    0x0001c93c lw t9, -0x7d58(gp)            |         t9 = sym.imp.ext2fs_xattr_set;
    0x0001c940 lw a0, 0x7c(sp)               |         a0 = *(var_7ch);
    0x0001c944 move a3, v0                   |         a3 = v0;
    0x0001c948 move a2, s0                   |         a2 = s0;
    0x0001c94c move a1, fp                   |         a1 = fp;
    0x0001c950 jalr t9                       |         t9 ();
    0x0001c954 lw gp, 0x20(sp)               |         gp = *(var_20h);
    0x0001c958 move s5, v0                   |         s5 = v0;
    0x0001c95c lw t9, -0x7a8c(gp)            |         t9 = sym.imp.free;
    0x0001c960 move a0, s0                   |         a0 = s0;
    0x0001c964 jalr t9                       |         t9 ();
    0x0001c968 lw gp, 0x20(sp)               |         gp = *(var_20h);
                                             |         if (s5 != 0) {
    0x0001c96c bnez s5, 0x1cd6c              |             goto label_76;
                                             |         }
    0x0001c970 lw t9, -0x7c30(gp)            |         t9 = sym.imp.strlen;
    0x0001c974 move a0, fp                   |         a0 = fp;
    0x0001c978 jalr t9                       |         t9 ();
    0x0001c97c addiu s7, s7, 1               |         s7++;
    0x0001c980 addu s7, s7, v0               |         s7 += v0;
    0x0001c984 slt v0, s7, s4                |         v0 = (s7 < s4) ? 1 : 0;
    0x0001c988 lw gp, 0x20(sp)               |         gp = *(var_20h);
                                             |         if (v0 == 0) {
    0x0001c98c beqz v0, 0x1cc3c              |             goto label_77;
                                             |         }
    0x0001c990 lw t9, -0x7ad0(gp)            |         t9 = sym.imp.lgetxattr;
    0x0001c994 addu fp, s3, s7               |         fp = s3 + s7;
    0x0001c998 move a3, zero                 |         a3 = 0;
    0x0001c99c move a2, zero                 |         a2 = 0;
    0x0001c9a0 move a1, fp                   |         a1 = fp;
    0x0001c9a4 move a0, s1                   |         a0 = s1;
    0x0001c9a8 jalr t9                       |         t9 ();
    0x0001c9ac move s5, v0                   |         s5 = v0;
    0x0001c9b0 addiu v0, zero, -1            |         v0 = -1;
    0x0001c9b4 lw gp, 0x20(sp)               |         gp = *(var_20h);
                                             |         if (s5 == v0) {
    0x0001c9b8 beq s5, v0, 0x1cc9c           |             goto label_78;
                                             |         }
    0x0001c9bc lw t9, -0x7bd4(gp)            |         t9 = sym.imp.malloc;
    0x0001c9c0 move a0, s5                   |         a0 = s5;
    0x0001c9c4 jalr t9                       |         t9 ();
    0x0001c9c8 move s0, v0                   |         s0 = v0;
    0x0001c9cc lw gp, 0x20(sp)               |         gp = *(var_20h);
    0x0001c9d0 bnez v0, 0x1c918              |         
                                             |     }
    0x0001c9d4 lw s0, 0x60(sp)               |     s0 = *(var_60h_2);
                                             | label_72:
    0x0001c9d8 lw s3, -0x7fdc(gp)            |     s3 = *(gp);
    0x0001c9dc lw a2, -0x7fdc(gp)            |     a2 = *(gp);
    0x0001c9e0 lw t9, -0x7b4c(gp)            |     t9 = sym.imp.com_err;
    0x0001c9e4 lui fp, 0x7f2b                |     fp = 0x7f2b0000;
    0x0001c9e8 ori a1, fp, 0xb746            |     a1 = 0x7f2bb746;
                                             |     /* str.while_allocating_memory */
    0x0001c9ec addiu a2, a2, -0xab4          |     a2 += -0xab4;
                                             |     /* str.set_inode_xattr */
    0x0001c9f0 addiu a0, s3, 0x2a30          |     a0 = s3 + 0x2a30;
    0x0001c9f4 jalr t9                       |     t9 ();
    0x0001c9f8 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x0001c9fc ori fp, fp, 0xb746            |     fp |= 0xb746;
                                             | label_20:
    0x0001ca00 lw t9, -0x7a8c(gp)            |     t9 = sym.imp.free;
    0x0001ca04 lw a0, 0x5c(sp)               |     a0 = *(var_5ch_2);
    0x0001ca08 jalr t9                       |     t9 ();
    0x0001ca0c lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x0001ca10 lw t9, -0x7dc4(gp)            |     t9 = sym.imp.ext2fs_xattrs_close;
    0x0001ca14 lw a0, 0x58(sp)               |     a0 = *(var_58h_2);
    0x0001ca18 jalr t9                       |     t9 ();
    0x0001ca1c lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 == 0) {
    0x0001ca20 beqz v0, 0x1c70c              |         goto label_14;
                                             |     }
    0x0001ca24 lw a2, -0x7fdc(gp)            |     a2 = *(gp);
    0x0001ca28 lw t9, -0x7b4c(gp)            |     t9 = sym.imp.com_err;
    0x0001ca2c lw a3, 0x48(sp)               |     a3 = *(var_48h);
                                             |     /* str.while_closing_inode__u */
    0x0001ca30 addiu a2, a2, 0x2984          |     a2 += 0x2984;
    0x0001ca34 move a1, fp                   |     a1 = fp;
                                             |     /* str.set_inode_xattr */
    0x0001ca38 addiu a0, s3, 0x2a30          |     a0 = s3 + 0x2a30;
    0x0001ca3c jalr t9                       |     t9 ();
    0x0001ca40 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x0001ca44 b 0x1c70c                     |     goto label_14;
                                             | label_32:
    0x0001ca48 lw a2, -0x7fdc(gp)            |     a2 = *(gp);
    0x0001ca4c lw a0, -0x7fdc(gp)            |     a0 = *(gp);
    0x0001ca50 lw t9, -0x7b4c(gp)            |     t9 = sym.imp.com_err;
    0x0001ca54 lui fp, 0x7f2b                |     fp = 0x7f2b0000;
    0x0001ca58 ori a1, fp, 0xb746            |     a1 = 0x7f2bb746;
    0x0001ca5c move a3, s1                   |     a3 = s1;
                                             |     /* str.while_appending__s */
    0x0001ca60 addiu a2, a2, 0x27c4          |     a2 += 0x27c4;
                                             |     /* str.__populate_fs */
    0x0001ca64 addiu a0, a0, 0x2a5c          |     a0 += 0x2a5c;
    0x0001ca68 jalr t9                       |     t9 ();
    0x0001ca6c ori fp, fp, 0xb746            |     fp |= 0xb746;
    0x0001ca70 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x0001ca74 b 0x1c4ac                     |     goto label_4;
                                             | label_44:
    0x0001ca78 lw t9, -0x7c74(gp)            |     t9 = sym.imp.__errno_location;
    0x0001ca7c jalr t9                       |     t9 ();
    0x0001ca80 nop                           |     
    0x0001ca84 lw v0, (v0)                   |     v0 = *(v0);
    0x0001ca88 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x0001ca8c move a1, v0                   |     a1 = v0;
    0x0001ca90 sw v0, 0x48(sp)               |     *(var_48h) = v0;
    0x0001ca94 lw v0, 0x50(sp)               |     v0 = *(var_50h);
    0x0001ca98 lw a2, 0x54(sp)               |     a2 = *(var_54h_2);
    0x0001ca9c lw t9, -0x7b4c(gp)            |     t9 = sym.imp.com_err;
    0x0001caa0 addiu a0, v0, 0x2a30          |     a0 = v0 + 0x2a30;
    0x0001caa4 move a3, s1                   |     a3 = s1;
    0x0001caa8 jalr t9                       |     t9 ();
    0x0001caac lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x0001cab0 lw v0, 0x48(sp)               |     v0 = *(var_48h);
                                             |     if (v0 == 0) {
                                             | label_19:
    0x0001cab4 beql v0, zero, 0x1c288        |         goto label_7;
                                             |     }
    0x0001cab8 lw v0, 0x2c(sp)               |     v0 = *(var_2ch);
    0x0001cabc move fp, v0                   |     fp = v0;
    0x0001cac0 b 0x1c70c                     |     goto label_14;
                                             | label_26:
    0x0001cac4 lw t9, -0x7c74(gp)            |     t9 = sym.imp.__errno_location;
    0x0001cac8 jalr t9                       |     t9 ();
    0x0001cacc nop                           |     
    0x0001cad0 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x0001cad4 lw fp, (v0)                   |     fp = *(v0);
    0x0001cad8 move a3, s0                   |     a3 = s0;
    0x0001cadc lw a2, -0x7fdc(gp)            |     a2 = *(gp);
    0x0001cae0 lw t9, -0x7b4c(gp)            |     t9 = sym.imp.com_err;
                                             |     /* str.while_scanning_directory___s_ */
    0x0001cae4 addiu a2, a2, 0x277c          |     a2 += 0x277c;
    0x0001cae8 b 0x1c864                     |     goto label_15;
                                             | label_29:
    0x0001caec lw t9, -0x7c74(gp)            |     t9 = sym.imp.__errno_location;
    0x0001caf0 jalr t9                       |     t9 ();
    0x0001caf4 nop                           |     
    0x0001caf8 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x0001cafc lw fp, (v0)                   |     fp = *(v0);
    0x0001cb00 move a3, s1                   |     a3 = s1;
    0x0001cb04 lw a2, -0x7fdc(gp)            |     a2 = *(gp);
    0x0001cb08 lw t9, -0x7b4c(gp)            |     t9 = sym.imp.com_err;
                                             |     /* str.while_lstat___s_ */
    0x0001cb0c addiu a2, a2, 0x279c          |     a2 += 0x279c;
    0x0001cb10 b 0x1c56c                     |     goto label_8;
                                             | label_34:
    0x0001cb14 move fp, v0                   |     fp = v0;
    0x0001cb18 b 0x1c4ac                     |     goto label_4;
                                             | label_64:
    0x0001cb1c lw a2, -0x7fdc(gp)            |     a2 = *(gp);
    0x0001cb20 lw t9, -0x7b4c(gp)            |     t9 = sym.imp.com_err;
    0x0001cb24 move fp, v0                   |     fp = v0;
    0x0001cb28 move a3, s1                   |     a3 = s1;
                                             |     /* str.while_linking___s_ */
    0x0001cb2c addiu a2, a2, 0x27b0          |     a2 += 0x27b0;
                                             |     do {
                                             | label_65:
    0x0001cb30 lw a0, -0x7fdc(gp)            |         a0 = *(gp);
    0x0001cb34 move a1, fp                   |         a1 = fp;
                                             |         /* str.add_link */
    0x0001cb38 addiu a0, a0, 0x2a50          |         a0 += 0x2a50;
    0x0001cb3c jalr t9                       |         t9 ();
    0x0001cb40 lw gp, 0x20(sp)               |         gp = *(var_20h);
                                             | label_23:
    0x0001cb44 lw a2, -0x7fdc(gp)            |         a2 = *(gp);
    0x0001cb48 lw t9, -0x7b4c(gp)            |         t9 = sym.imp.com_err;
    0x0001cb4c move a3, s1                   |         a3 = s1;
                                             |         /* str.while_linking__s */
    0x0001cb50 addiu a2, a2, 0x29d4          |         a2 += 0x29d4;
    0x0001cb54 b 0x1c56c                     |         goto label_8;
                                             | label_39:
    0x0001cb58 lw a2, -0x7fdc(gp)            |         a2 = *(gp);
    0x0001cb5c move fp, v0                   |         fp = v0;
    0x0001cb60 lw t9, -0x7b4c(gp)            |         t9 = sym.imp.com_err;
    0x0001cb64 move a3, s1                   |         a3 = s1;
                                             |         /* str.while_writing_file___s_ */
    0x0001cb68 addiu a2, a2, 0x2888          |         a2 += 0x2888;
    0x0001cb6c b 0x1c56c                     |         goto label_8;
                                             | label_40:
    0x0001cb70 lw a2, -0x7fdc(gp)            |         a2 = *(gp);
    0x0001cb74 lw t9, -0x7b4c(gp)            |         t9 = sym.imp.com_err;
    0x0001cb78 move a3, s1                   |         a3 = s1;
                                             |         /* str.while_looking_up___s_ */
    0x0001cb7c addiu a2, a2, 0x26ec          |         a2 += 0x26ec;
    0x0001cb80 move a1, v0                   |         a1 = v0;
    0x0001cb84 move a0, s1                   |         a0 = s1;
    0x0001cb88 move fp, v0                   |         fp = v0;
    0x0001cb8c jalr t9                       |         t9 ();
    0x0001cb90 lw gp, 0x20(sp)               |         gp = *(var_20h);
    0x0001cb94 b 0x1c4ac                     |         goto label_4;
                                             | label_56:
    0x0001cb98 lw a2, -0x7fdc(gp)            |         a2 = *(gp);
    0x0001cb9c move fp, v0                   |         fp = v0;
    0x0001cba0 lw t9, -0x7b4c(gp)            |         t9 = sym.imp.com_err;
    0x0001cba4 move a3, s4                   |         a3 = s4;
                                             |         /* str.while_reading_inode__u */
    0x0001cba8 addiu a2, a2, -0xa9c          |         a2 += -0xa9c;
    0x0001cbac b 0x1cb30                     |         
                                             |     } while (1);
                                             | label_57:
    0x0001cbb0 addiu v0, zero, 1             |     v0 = 1;
    0x0001cbb4 b 0x1c644                     |     goto label_16;
                                             | label_63:
    0x0001cbb8 lw t9, -0x7c54(gp)            |     t9 = sym.imp.ext2fs_expand_dir;
    0x0001cbbc lw a1, 0x1d4(sp)              |     a1 = *(arg_1d4h);
    0x0001cbc0 move a0, s5                   |     a0 = s5;
    0x0001cbc4 jalr t9                       |     t9 ();
    0x0001cbc8 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 != 0) {
    0x0001cbcc bnez v0, 0x1cef8              |         goto label_79;
                                             |     }
    0x0001cbd0 lhu v0, 0x80(sp)              |     v0 = *(var_80h_2);
    0x0001cbd4 ori v1, zero, 0x8000          |     v1 = 0x8000;
    0x0001cbd8 andi v0, v0, 0xf000           |     v0 &= 0xf000;
    0x0001cbdc addiu v1, zero, 0x4000        |     v1 = 0x4000;
                                             |     if (v0 == v1) {
    0x0001cbe0 beq v0, v1, 0x1cf20           |         goto label_80;
                                             |     }
    0x0001cbe4 addiu v1, zero, 0x2000        |     v1 = 0x2000;
                                             |     if (v0 == v1) {
    0x0001cbe8 beq v0, v1, 0x1cf58           |         goto label_81;
                                             |     }
    0x0001cbec addiu v1, zero, 0x6000        |     v1 = 0x6000;
                                             |     if (v0 == v1) {
    0x0001cbf0 beq v0, v1, 0x1cf50           |         goto label_82;
                                             |     }
    0x0001cbf4 ori v1, zero, 0xa000          |     v1 = 0xa000;
                                             |     if (v0 == v1) {
    0x0001cbf8 beq v0, v1, 0x1cf70           |         goto label_83;
                                             |     }
    0x0001cbfc addiu v1, zero, 0x1000        |     v1 = 0x1000;
                                             |     if (v0 == v1) {
    0x0001cc00 beq v0, v1, 0x1cf68           |         goto label_84;
                                             |     }
    0x0001cc04 addiu v1, zero, 6             |     v1 = 6;
                                             |     if (v0 == v1) {
    0x0001cc08 beq v0, v1, 0x1cf60           |         goto label_85;
                                             |     }
    0x0001cc0c xori v0, v0, 0xc000           |     v0 ^= 0xc000;
                                             |     if (v0 == 0) {
    0x0001cc10 movn v1, zero, v0             |         v1 = 0;
                                             |     }
    0x0001cc14 move v0, v1                   |     v0 = v1;
                                             | label_24:
    0x0001cc18 lw t9, -0x7d78(gp)            |     t9 = sym.imp.ext2fs_link;
    0x0001cc1c lw a1, 0x1d4(sp)              |     a1 = *(arg_1d4h);
    0x0001cc20 sw v0, 0x10(sp)               |     *(var_80h) = v0;
    0x0001cc24 move a3, s4                   |     a3 = s4;
    0x0001cc28 move a2, s1                   |     a2 = s1;
    0x0001cc2c move a0, s5                   |     a0 = s5;
    0x0001cc30 jalr t9                       |     t9 ();
    0x0001cc34 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x0001cc38 b 0x1c670                     |     goto label_17;
                                             | label_77:
    0x0001cc3c lw s4, 0x64(sp)               |     s4 = *(var_64h_2);
    0x0001cc40 lw s0, 0x60(sp)               |     s0 = *(var_60h_2);
    0x0001cc44 lw s5, 0x68(sp)               |     s5 = *(var_68h_2);
    0x0001cc48 lw s3, 0x6c(sp)               |     s3 = *(var_6ch_2);
    0x0001cc4c lw t9, -0x7a8c(gp)            |     t9 = sym.imp.free;
                                             | label_74:
    0x0001cc50 lw a0, 0x5c(sp)               |     a0 = *(var_5ch_2);
    0x0001cc54 jalr t9                       |     t9 ();
    0x0001cc58 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x0001cc5c lw t9, -0x7dc4(gp)            |     t9 = sym.imp.ext2fs_xattrs_close;
    0x0001cc60 lw a0, 0x58(sp)               |     a0 = *(var_58h_2);
    0x0001cc64 jalr t9                       |     t9 ();
    0x0001cc68 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 == 0) {
    0x0001cc6c beqz v0, 0x1c284              |         goto label_18;
                                             |     }
    0x0001cc70 lw a2, -0x7fdc(gp)            |     a2 = *(gp);
    0x0001cc74 lw a0, -0x7fdc(gp)            |     a0 = *(gp);
    0x0001cc78 lw t9, -0x7b4c(gp)            |     t9 = sym.imp.com_err;
    0x0001cc7c lw a3, 0x48(sp)               |     a3 = *(var_48h);
                                             |     /* str.while_closing_inode__u */
    0x0001cc80 addiu a2, a2, 0x2984          |     a2 += 0x2984;
    0x0001cc84 move a1, zero                 |     a1 = 0;
                                             |     /* str.set_inode_xattr */
    0x0001cc88 addiu a0, a0, 0x2a30          |     a0 += 0x2a30;
    0x0001cc8c move fp, v0                   |     fp = v0;
    0x0001cc90 jalr t9                       |     t9 ();
    0x0001cc94 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x0001cc98 b 0x1c70c                     |     goto label_14;
                                             | label_78:
    0x0001cc9c lw s4, 0x64(sp)               |     s4 = *(var_64h_2);
    0x0001cca0 lw s0, 0x60(sp)               |     s0 = *(var_60h_2);
    0x0001cca4 lw s5, 0x68(sp)               |     s5 = *(var_68h_2);
    0x0001cca8 lw s3, 0x6c(sp)               |     s3 = *(var_6ch_2);
                                             |     do {
    0x0001ccac lw t9, -0x7c74(gp)            |         t9 = sym.imp.__errno_location;
    0x0001ccb0 jalr t9                       |         t9 ();
    0x0001ccb4 nop                           |         
    0x0001ccb8 lw gp, 0x20(sp)               |         gp = *(var_20h);
    0x0001ccbc lw s7, (v0)                   |         s7 = *(v0);
    0x0001ccc0 lw v0, 0x50(sp)               |         v0 = *(var_50h);
    0x0001ccc4 lw a2, -0x7fdc(gp)            |         a2 = *(gp);
    0x0001ccc8 lw t9, -0x7b4c(gp)            |         t9 = sym.imp.com_err;
    0x0001cccc sw s1, 0x10(sp)               |         *(var_80h) = s1;
    0x0001ccd0 move a3, fp                   |         a3 = fp;
                                             |         /* str.while_reading_attribute___s__of___s_ */
    0x0001ccd4 addiu a2, a2, 0x2930          |         a2 += aav.0x00002930;
    0x0001ccd8 move a1, s7                   |         a1 = s7;
    0x0001ccdc addiu a0, v0, 0x2a30          |         a0 = v0 + 0x2a30;
    0x0001cce0 jalr t9                       |         t9 ();
    0x0001cce4 lw gp, 0x20(sp)               |         gp = *(var_20h);
                                             | label_21:
    0x0001cce8 lw t9, -0x7a8c(gp)            |         t9 = sym.imp.free;
    0x0001ccec lw a0, 0x5c(sp)               |         a0 = *(var_5ch_2);
    0x0001ccf0 jalr t9                       |         t9 ();
    0x0001ccf4 lw gp, 0x20(sp)               |         gp = *(var_20h);
    0x0001ccf8 lw t9, -0x7dc4(gp)            |         t9 = sym.imp.ext2fs_xattrs_close;
    0x0001ccfc lw a0, 0x58(sp)               |         a0 = *(var_58h_2);
    0x0001cd00 jalr t9                       |         t9 ();
    0x0001cd04 lw gp, 0x20(sp)               |         gp = *(var_20h);
                                             |         if (v0 == 0) {
    0x0001cd08 bnez v0, 0x1cd14              |             
    0x0001cd0c move v0, s7                   |             v0 = s7;
    0x0001cd10 b 0x1cab4                     |             goto label_19;
                                             |         }
    0x0001cd14 lw a2, -0x7fdc(gp)            |         a2 = *(gp);
    0x0001cd18 move fp, v0                   |         fp = v0;
    0x0001cd1c lw v0, 0x50(sp)               |         v0 = *(var_50h);
    0x0001cd20 lw t9, -0x7b4c(gp)            |         t9 = sym.imp.com_err;
    0x0001cd24 lw a3, 0x48(sp)               |         a3 = *(var_48h);
                                             |         /* str.while_closing_inode__u */
    0x0001cd28 addiu a2, a2, 0x2984          |         a2 += 0x2984;
    0x0001cd2c move a1, s7                   |         a1 = s7;
    0x0001cd30 addiu a0, v0, 0x2a30          |         a0 = v0 + 0x2a30;
    0x0001cd34 jalr t9                       |         t9 ();
                                             |         if (s7 == 0) {
    0x0001cd38 movn fp, s7, s7               |             fp = s7;
                                             |         }
    0x0001cd3c lw gp, 0x20(sp)               |         gp = *(var_20h);
    0x0001cd40 b 0x1c70c                     |         goto label_14;
                                             | label_75:
    0x0001cd44 move v1, s0                   |         v1 = s0;
    0x0001cd48 lw t9, -0x7a8c(gp)            |         t9 = sym.imp.free;
    0x0001cd4c move a0, v1                   |         a0 = v1;
    0x0001cd50 lw s4, 0x64(sp)               |         s4 = *(var_64h_2);
    0x0001cd54 lw s5, 0x68(sp)               |         s5 = *(var_68h_2);
    0x0001cd58 lw s3, 0x6c(sp)               |         s3 = *(var_6ch_2);
    0x0001cd5c lw s0, 0x60(sp)               |         s0 = *(var_60h_2);
    0x0001cd60 jalr t9                       |         t9 ();
    0x0001cd64 lw gp, 0x20(sp)               |         gp = *(var_20h);
    0x0001cd68 b 0x1ccac                     |         
                                             |     } while (1);
                                             | label_76:
    0x0001cd6c lw s3, -0x7fdc(gp)            |     s3 = *(gp);
    0x0001cd70 lw a2, -0x7fdc(gp)            |     a2 = *(gp);
    0x0001cd74 lw v0, 0x48(sp)               |     v0 = *(var_48h);
    0x0001cd78 lw t9, -0x7b4c(gp)            |     t9 = sym.imp.com_err;
    0x0001cd7c move s7, fp                   |     s7 = fp;
    0x0001cd80 sw v0, 0x10(sp)               |     *(var_80h) = v0;
    0x0001cd84 move a3, s7                   |     a3 = s7;
                                             |     /* str.while_writing_attribute___s__to_inode__u */
    0x0001cd88 addiu a2, a2, 0x2958          |     a2 += 0x2958;
    0x0001cd8c move a1, s5                   |     a1 = s5;
                                             |     /* str.set_inode_xattr */
    0x0001cd90 addiu a0, s3, 0x2a30          |     a0 = s3 + 0x2a30;
    0x0001cd94 lw s0, 0x60(sp)               |     s0 = *(var_60h_2);
    0x0001cd98 move fp, s5                   |     fp = s5;
    0x0001cd9c jalr t9                       |     t9 ();
    0x0001cda0 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x0001cda4 b 0x1ca00                     |     goto label_20;
                                             | label_58:
    0x0001cda8 addiu v0, zero, 2             |     v0 = 2;
    0x0001cdac b 0x1c644                     |     goto label_16;
                                             | label_59:
    0x0001cdb0 addiu v0, zero, 3             |     v0 = 3;
    0x0001cdb4 b 0x1c644                     |     goto label_16;
                                             | label_60:
    0x0001cdb8 addiu v0, zero, 4             |     v0 = 4;
    0x0001cdbc b 0x1c644                     |     goto label_16;
                                             | label_73:
    0x0001cdc0 lw t9, -0x7c74(gp)            |     t9 = sym.imp.__errno_location;
    0x0001cdc4 jalr t9                       |     t9 ();
    0x0001cdc8 nop                           |     
    0x0001cdcc lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x0001cdd0 lw s7, (v0)                   |     s7 = *(v0);
    0x0001cdd4 lw v0, 0x50(sp)               |     v0 = *(var_50h);
    0x0001cdd8 lw a2, 0x54(sp)               |     a2 = *(var_54h_2);
    0x0001cddc lw t9, -0x7b4c(gp)            |     t9 = sym.imp.com_err;
    0x0001cde0 move a3, s1                   |     a3 = s1;
    0x0001cde4 move a1, s7                   |     a1 = s7;
    0x0001cde8 addiu a0, v0, 0x2a30          |     a0 = v0 + 0x2a30;
    0x0001cdec jalr t9                       |     t9 ();
    0x0001cdf0 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x0001cdf4 b 0x1cce8                     |     goto label_21;
                                             | label_61:
    0x0001cdf8 addiu v0, zero, 7             |     v0 = 7;
    0x0001cdfc b 0x1c644                     |     goto label_16;
                                             | label_67:
    0x0001ce00 lw a2, -0x7fdc(gp)            |     a2 = *(gp);
    0x0001ce04 lw a0, -0x7fdc(gp)            |     a0 = *(gp);
    0x0001ce08 lw t9, -0x7b4c(gp)            |     t9 = sym.imp.com_err;
                                             |     /* str.malloc_failed */
    0x0001ce0c addiu a2, a2, 0x2800          |     a2 += 0x2800;
    0x0001ce10 move a1, zero                 |     a1 = 0;
                                             |     /* str.__populate_fs */
    0x0001ce14 addiu a0, a0, 0x2a5c          |     a0 += 0x2a5c;
    0x0001ce18 jalr t9                       |     t9 ();
    0x0001ce1c move fp, zero                 |     fp = 0;
    0x0001ce20 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x0001ce24 b 0x1c4ac                     |     goto label_4;
                                             | label_70:
    0x0001ce28 sltu v1, v1, v0               |     v1 = (v1 < v0) ? 1 : 0;
    0x0001ce2c lw v1, 0x1dc(sp)              |     v1 = *(arg_1dch);
                                             |     if (v1 == 0) {
    0x0001ce30 beqz v1, 0x1c780              |         goto label_22;
                                             |     }
    0x0001ce34 lw a2, -0x7fdc(gp)            |     a2 = *(gp);
                                             | label_69:
    0x0001ce38 lw a0, -0x7fdc(gp)            |     a0 = *(gp);
    0x0001ce3c lw t9, -0x7b4c(gp)            |     t9 = sym.imp.com_err;
                                             |     /* str.symlink_increased_in_size_between_lstat___and_readlink__ */
    0x0001ce40 addiu a2, a2, 0x2830          |     a2 += 0x2830;
    0x0001ce44 move a1, zero                 |     a1 = 0;
                                             |     /* str.__populate_fs */
    0x0001ce48 addiu a0, a0, 0x2a5c          |     a0 += 0x2a5c;
    0x0001ce4c jalr t9                       |     t9 ();
    0x0001ce50 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x0001ce54 move a0, s7                   |     a0 = s7;
    0x0001ce58 lw t9, -0x7a8c(gp)            |     t9 = sym.imp.free;
    0x0001ce5c move fp, zero                 |     fp = 0;
    0x0001ce60 jalr t9                       |     t9 ();
    0x0001ce64 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x0001ce68 b 0x1c4ac                     |     goto label_4;
                                             | label_68:
    0x0001ce6c lw t9, -0x7c74(gp)            |     t9 = sym.imp.__errno_location;
    0x0001ce70 jalr t9                       |     t9 ();
    0x0001ce74 nop                           |     
    0x0001ce78 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x0001ce7c lw fp, (v0)                   |     fp = *(v0);
    0x0001ce80 move a3, s1                   |     a3 = s1;
    0x0001ce84 lw a2, -0x7fdc(gp)            |     a2 = *(gp);
    0x0001ce88 lw a0, -0x7fdc(gp)            |     a0 = *(gp);
    0x0001ce8c lw t9, -0x7b4c(gp)            |     t9 = sym.imp.com_err;
                                             |     /* str.while_trying_to_read_link___s_ */
    0x0001ce90 addiu a2, a2, 0x2810          |     a2 += aav.0x00002810;
    0x0001ce94 move a1, fp                   |     a1 = fp;
                                             |     /* str.__populate_fs */
    0x0001ce98 addiu a0, a0, 0x2a5c          |     a0 += 0x2a5c;
    0x0001ce9c jalr t9                       |     t9 ();
    0x0001cea0 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x0001cea4 lw t9, -0x7a8c(gp)            |     t9 = sym.imp.free;
    0x0001cea8 move a0, s7                   |     a0 = s7;
    0x0001ceac jalr t9                       |     t9 ();
    0x0001ceb0 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x0001ceb4 b 0x1c4ac                     |     goto label_4;
                                             | label_52:
    0x0001ceb8 lw t9, -0x7b4c(gp)            |     t9 = sym.imp.com_err;
    0x0001cebc move a2, zero                 |     a2 = 0;
    0x0001cec0 move a1, v0                   |     a1 = v0;
    0x0001cec4 move a0, s1                   |     a0 = s1;
    0x0001cec8 move fp, v0                   |     fp = v0;
    0x0001cecc jalr t9                       |     t9 ();
    0x0001ced0 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x0001ced4 b 0x1c4ac                     |     goto label_4;
                                             | label_62:
    0x0001ced8 addiu v0, zero, 5             |     v0 = 5;
    0x0001cedc b 0x1c644                     |     goto label_16;
                                             | label_51:
    0x0001cee0 lw a2, -0x7fdc(gp)            |     a2 = *(gp);
    0x0001cee4 move fp, v0                   |     fp = v0;
    0x0001cee8 lw t9, -0x7b4c(gp)            |     t9 = sym.imp.com_err;
    0x0001ceec move a3, s1                   |     a3 = s1;
                                             |     /* str.while_making_dir___s_ */
    0x0001cef0 addiu a2, a2, 0x28ac          |     a2 += 0x28ac;
    0x0001cef4 b 0x1c56c                     |     goto label_8;
                                             | label_79:
    0x0001cef8 lw a2, -0x7fdc(gp)            |     a2 = *(gp);
    0x0001cefc lw a0, -0x7fdc(gp)            |     a0 = *(gp);
    0x0001cf00 lw t9, -0x7b4c(gp)            |     t9 = sym.imp.com_err;
                                             |     /* str.while_expanding_directory */
    0x0001cf04 addiu a2, a2, 0x2674          |     a2 += 0x2674;
    0x0001cf08 move a1, v0                   |     a1 = v0;
                                             |     /* str.add_link */
    0x0001cf0c addiu a0, a0, 0x2a50          |     a0 += 0x2a50;
    0x0001cf10 move fp, v0                   |     fp = v0;
    0x0001cf14 jalr t9                       |     t9 ();
    0x0001cf18 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x0001cf1c b 0x1cb44                     |     goto label_23;
                                             | label_80:
    0x0001cf20 addiu v0, zero, 1             |     v0 = 1;
    0x0001cf24 b 0x1cc18                     |     goto label_24;
                                             | label_71:
    0x0001cf28 lw a2, -0x7fdc(gp)            |     a2 = *(gp);
    0x0001cf2c lw t9, -0x7b4c(gp)            |     t9 = sym.imp.com_err;
    0x0001cf30 lui fp, 0x7f2b                |     fp = 0x7f2b0000;
    0x0001cf34 ori a1, fp, 0xb746            |     a1 = 0x7f2bb746;
                                             |     /* str.while_saving_inode_data */
    0x0001cf38 addiu a2, a2, 0x29bc          |     a2 += 0x29bc;
    0x0001cf3c move a0, s1                   |     a0 = s1;
    0x0001cf40 jalr t9                       |     t9 ();
    0x0001cf44 ori fp, fp, 0xb746            |     fp |= 0xb746;
    0x0001cf48 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x0001cf4c b 0x1c4ac                     |     goto label_4;
                                             | label_82:
    0x0001cf50 addiu v0, zero, 3             |     v0 = 3;
    0x0001cf54 b 0x1cc18                     |     goto label_24;
                                             | label_81:
    0x0001cf58 addiu v0, zero, 2             |     v0 = 2;
    0x0001cf5c b 0x1cc18                     |     goto label_24;
                                             | label_85:
    0x0001cf60 addiu v0, zero, 5             |     v0 = 5;
    0x0001cf64 b 0x1cc18                     |     goto label_24;
                                             | label_84:
    0x0001cf68 addiu v0, zero, 7             |     v0 = 7;
    0x0001cf6c b 0x1cc18                     |     goto label_24;
                                             | label_83:
    0x0001cf70 addiu v0, zero, 4             |     v0 = 4;
    0x0001cf74 b 0x1cc18                     |     goto label_24;
                                             | label_48:
    0x0001cf78 lw t9, -0x7b08(gp)            |     t9 = sym.imp.__stack_chk_fail;
    0x0001cf7c jalr t9                       |     t9 ();
    0x0001cf80 nop                           |     
                                             | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/debugfs @ 0xe418 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) sym.open_pager ()                | void open_pager () {
    0x0000e418 lui gp, 4                     |     
    0x0000e41c addiu gp, gp, -0x2d8          |     
    0x0000e420 addu gp, gp, t9               |     gp += t9;
    0x0000e424 addiu sp, sp, -0x98           |     
    0x0000e428 lw a0, -0x7fdc(gp)            |     a0 = *(gp);
    0x0000e42c sw s2, 0x84(sp)               |     *(var_84h) = s2;
    0x0000e430 lw s2, -0x7aa4(gp)            |     s2 = *((gp - 7849));
    0x0000e434 lw t9, -0x7a84(gp)            |     t9 = sym.imp.ss_safe_getenv;
    0x0000e438 sw ra, 0x94(sp)               |     *(var_94h) = ra;
    0x0000e43c lw v0, (s2)                   |     v0 = *(s2);
    0x0000e440 sw gp, 0x18(sp)               |     *(var_18h) = gp;
    0x0000e444 sw s0, 0x7c(sp)               |     *(var_7ch) = s0;
                                             |     /* str.DEBUGFS_PAGER */
    0x0000e448 addiu a0, a0, -0x540          |     a0 += -0x540;
    0x0000e44c sw s5, 0x90(sp)               |     *(var_90h) = s5;
    0x0000e450 sw s4, 0x8c(sp)               |     *(var_8ch) = s4;
    0x0000e454 sw s3, 0x88(sp)               |     *(var_88h) = s3;
    0x0000e458 sw s1, 0x80(sp)               |     *(var_80h) = s1;
    0x0000e45c sw v0, 0x74(sp)               |     *(var_74h) = v0;
    0x0000e460 jalr t9                       |     t9 ();
    0x0000e464 nop                           |     
    0x0000e468 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0000e46c addiu a1, zero, 1             |     a1 = 1;
    0x0000e470 addiu a0, zero, 0xd           |     a0 = 0xd;
    0x0000e474 lw t9, -0x7ad4(gp)            |     t9 = sym.imp.signal;
    0x0000e478 move s0, v0                   |     s0 = v0;
    0x0000e47c jalr t9                       |     t9 ();
    0x0000e480 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0000e484 lw t9, -0x7db0(gp)            |     t9 = sym.imp.isatty;
    0x0000e488 addiu a0, zero, 1             |     a0 = 1;
    0x0000e48c jalr t9                       |     t9 ();
    0x0000e490 lw gp, 0x18(sp)               |     gp = *(var_18h);
                                             |     if (v0 != 0) {
    0x0000e494 beqz v0, 0xe4bc               |         
    0x0000e498 lw a0, -0x7fdc(gp)            |         a0 = *(gp);
                                             |         if (s0 == 0) {
    0x0000e49c beqz s0, 0xe518               |             goto label_5;
                                             |         }
                                             | label_1:
    0x0000e4a0 lw a1, -0x7fdc(gp)            |         a1 = *(gp);
    0x0000e4a4 lw t9, -0x7a28(gp)            |         t9 = sym.imp.strcmp;
                                             |         /* str.__none__ */
    0x0000e4a8 addiu a1, a1, -0x524          |         a1 += -0x524;
    0x0000e4ac move a0, s0                   |         a0 = s0;
    0x0000e4b0 jalr t9                       |         t9 ();
    0x0000e4b4 lw gp, 0x18(sp)               |         gp = *(var_18h);
                                             |         if (v0 != 0) {
    0x0000e4b8 bnez v0, 0xe4f4               |             goto label_6;
                                             |         }
                                             |     }
                                             | label_2:
    0x0000e4bc lw v0, -0x7cb8(gp)            |     v0 = *((gp - 7982));
                                             | label_0:
    0x0000e4c0 lw v0, (v0)                   |     v0 = *(v0);
                                             |     do {
    0x0000e4c4 lw a0, 0x74(sp)               |         a0 = *(var_74h);
    0x0000e4c8 lw v1, (s2)                   |         v1 = *(s2);
    0x0000e4cc lw ra, 0x94(sp)               |         ra = *(var_94h);
                                             |         if (a0 != v1) {
    0x0000e4d0 bne a0, v1, 0xe5c4            |             goto label_7;
                                             |         }
    0x0000e4d4 lw s5, 0x90(sp)               |         s5 = *(var_90h);
    0x0000e4d8 lw s4, 0x8c(sp)               |         s4 = *(var_8ch);
    0x0000e4dc lw s3, 0x88(sp)               |         s3 = *(var_88h);
    0x0000e4e0 lw s2, 0x84(sp)               |         s2 = *(var_84h);
    0x0000e4e4 lw s1, 0x80(sp)               |         s1 = *(var_80h);
    0x0000e4e8 lw s0, 0x7c(sp)               |         s0 = *(var_7ch);
    0x0000e4ec addiu sp, sp, 0x98            |         
    0x0000e4f0 jr ra                         |         return v0;
                                             | label_6:
    0x0000e4f4 lw a1, -0x7fdc(gp)            |         a1 = *(gp);
    0x0000e4f8 lw t9, -0x7d00(gp)            |         t9 = sym.imp.popen;
    0x0000e4fc addiu a1, a1, -0x528          |         a1 += -0x528;
    0x0000e500 move a0, s0                   |         a0 = s0;
    0x0000e504 jalr t9                       |         t9 ();
    0x0000e508 lw gp, 0x18(sp)               |         gp = *(var_18h);
    0x0000e50c bnez v0, 0xe4c4               |         
                                             |     } while (v0 != 0);
    0x0000e510 lw v0, -0x7cb8(gp)            |     v0 = *((gp - 7982));
    0x0000e514 b 0xe4c0                      |     goto label_0;
                                             | label_5:
    0x0000e518 lw t9, -0x7a84(gp)            |     t9 = sym.imp.ss_safe_getenv;
                                             |     /* esilref: 'PAGER' */
    0x0000e51c addiu a0, a0, -0x538          |     a0 += -0x538;
    0x0000e520 jalr t9                       |     t9 ();
    0x0000e524 move s0, v0                   |     s0 = v0;
    0x0000e528 lw gp, 0x18(sp)               |     gp = *(var_18h);
                                             |     if (v0 != 0) {
    0x0000e52c bnez v0, 0xe4a0               |         goto label_1;
                                             |     }
    0x0000e530 lw s5, -0x7f30(gp)            |     s5 = *((gp - 8140));
    0x0000e534 lw v0, 0x502c(s5)             |     v0 = *((s5 + 5131));
    0x0000e538 lw s3, -0x7fdc(gp)            |     s3 = *(gp);
                                             |     if (v0 == 0) {
    0x0000e53c beqz v0, 0xe4bc               |         goto label_2;
                                             |     }
    0x0000e540 lw s4, -0x7f30(gp)            |     s4 = *((gp - 8140));
                                             |     /* esilref: 'pager' */
    0x0000e544 addiu s5, s5, 0x502c          |     s5 += 0x502c;
    0x0000e548 addiu s0, sp, 0x24            |     s0 = sp + 0x24;
                                             |     /* str._s__s */
    0x0000e54c addiu s3, s3, -0x530          |     s3 += -0x530;
    0x0000e550 lw v0, 0x5020(s4)             |     v0 = *((s4 + 5128));
                                             |     /* esilref: '/usr/bin' */
                                             | label_4:
    0x0000e554 addiu s1, s4, 0x5020          |     s1 = s4 + 0x5020;
                                             |     if (v0 == 0) {
    0x0000e558 beqz v0, 0xe5ac               |         goto label_8;
                                             |     }
    0x0000e55c lw v1, (s5)                   |     v1 = *(s5);
                                             | label_3:
    0x0000e560 lw t9, -0x7e0c(gp)            |     t9 = sym.imp.__sprintf_chk
    0x0000e564 move a3, s3                   |     a3 = s3;
    0x0000e568 addiu a2, zero, 0x50          |     a2 = 0x50;
    0x0000e56c addiu a1, zero, 1             |     a1 = 1;
    0x0000e570 move a0, s0                   |     a0 = s0;
    0x0000e574 sw v1, 0x14(sp)               |     *(var_14h) = v1;
    0x0000e578 sw v0, 0x10(sp)               |     *(var_10h) = v0;
    0x0000e57c jalr t9                       |     t9 ();
    0x0000e580 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0000e584 addiu a1, zero, 1             |     a1 = 1;
    0x0000e588 lw t9, -0x7cb4(gp)            |     t9 = sym.imp.access;
    0x0000e58c move a0, s0                   |     a0 = s0;
    0x0000e590 jalr t9                       |     t9 ();
    0x0000e594 lw gp, 0x18(sp)               |     gp = *(var_18h);
                                             |     if (v0 == 0) {
    0x0000e598 beqz v0, 0xe4a0               |         goto label_1;
                                             |     }
    0x0000e59c addiu s1, s1, 4               |     s1 += 4;
    0x0000e5a0 lw v0, (s1)                   |     v0 = *(s1);
    0x0000e5a4 lw v1, (s5)                   |     v1 = *(s5);
                                             |     if (v0 == 0) {
    0x0000e5a8 bnel v0, zero, 0xe560         |         goto label_3;
                                             |     }
                                             | label_8:
    0x0000e5ac addiu s5, s5, 4               |     s5 += 4;
    0x0000e5b0 lw v0, (s5)                   |     v0 = *(s5);
    0x0000e5b4 lw v0, 0x5020(s4)             |     v0 = *((s4 + 5128));
                                             |     if (v0 == 0) {
    0x0000e5b8 bnel v0, zero, 0xe554         |         goto label_4;
                                             |     }
    0x0000e5bc lw v0, -0x7cb8(gp)            |     v0 = *((gp - 7982));
    0x0000e5c0 b 0xe4c0                      |     goto label_0;
                                             | label_7:
    0x0000e5c4 lw t9, -0x7b08(gp)            |     t9 = sym.imp.__stack_chk_fail;
    0x0000e5c8 jalr t9                       |     t9 ();
    0x0000e5cc nop                           |     
                                             | }

[*] Function sprintf used 10 times debugfs