[*] Binary protection state of fsck.ext3

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


[*] Function fprintf tear down of fsck.ext3

    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/fsck.ext3 @ 0xc13c */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) fcn.0000c13c ()                  | void fcn_0000c13c () {
    0x0000c13c lui gp, 6                     |     
    0x0000c140 addiu gp, gp, -0x237c         |     
    0x0000c144 addu gp, gp, t9               |     gp += t9;
    0x0000c148 addiu sp, sp, -0x20           |     
    0x0000c14c lw a2, -0x7fd0(gp)            |     a2 = *(gp);
    0x0000c150 sw s0, 0x18(sp)               |     *(var_18h) = s0;
    0x0000c154 lw s0, -0x77dc(gp)            |     s0 = *((gp - 7671));
    0x0000c158 lw t9, -0x7c2c(gp)            |     t9 = sym.imp.__fprintf_chk
    0x0000c15c move a3, a0                   |     a3 = a0;
    0x0000c160 lw a0, (s0)                   |     a0 = *(s0);
    0x0000c164 sw ra, 0x1c(sp)               |     *(var_1ch) = ra;
    0x0000c168 sw gp, 0x10(sp)               |     *(var_10h) = gp;
                                             |     /* str.Usage:__s___panyrcdfktvDFV____b_superblock____B_blocksize__n_t_t__l_L_bad_blocks_file____C_fd____j_external_journal__n_t_t__E_extended_options____z_undo_file__device_n */
    0x0000c16c addiu a2, a2, 0x4cc4          |     a2 += 0x4cc4;
    0x0000c170 addiu a1, zero, 1             |     a1 = 1;
    0x0000c174 jalr t9                       |     t9 ();
    0x0000c178 lw gp, 0x10(sp)               |     gp = *(var_10h);
    0x0000c17c lw a3, (s0)                   |     a3 = *(s0);
    0x0000c180 addiu a2, zero, 0x148         |     a2 = aav.0x00000148;
    0x0000c184 lw a0, -0x7fd0(gp)            |     a0 = *(gp);
    0x0000c188 lw t9, -0x7938(gp)            |     t9 = sym.imp.fwrite;
    0x0000c18c addiu a1, zero, 1             |     a1 = 1;
                                             |     /* str._nEmergency_help:_n__p___________________Automatic_repair__no_questions__n__n___________________Make_no_changes_to_the_filesystem_n__y___________________Assume__yes__to_all_questions_n__c___________________Check_for_bad_blocks_and_add_them_to_the_badblock_list_n__f___________________Force_checking_even_if_filesystem_is_marked_clean_n */
    0x0000c190 addiu a0, a0, 0x4d68          |     a0 += 0x4d68;
    0x0000c194 jalr t9                       |     t9 ();
    0x0000c198 lw gp, 0x10(sp)               |     gp = *(var_10h);
    0x0000c19c lw a3, (s0)                   |     a3 = *(s0);
    0x0000c1a0 addiu a2, zero, 0x14e         |     a2 = 0x14e;
    0x0000c1a4 lw a0, -0x7fd0(gp)            |     a0 = *(gp);
    0x0000c1a8 lw t9, -0x7938(gp)            |     t9 = sym.imp.fwrite;
                                             |     /* str.__v___________________Be_verbose_n__b_superblock________Use_alternative_superblock_n__B_blocksize_________Force_blocksize_when_looking_for_superblock_n__j_external_journal__Set_location_of_the_external_journal_n__l_bad_blocks_file___Add_to_badblocks_list_n__L_bad_blocks_file___Set_badblocks_list_n__z_undo_file_________Create_an_undo_file_n */
    0x0000c1ac addiu a0, a0, 0x4eb4          |     a0 += 0x4eb4;
    0x0000c1b0 addiu a1, zero, 1             |     a1 = 1;
    0x0000c1b4 jalr t9                       |     t9 ();
    0x0000c1b8 lw gp, 0x10(sp)               |     gp = *(var_10h);
    0x0000c1bc lw t9, -0x7a08(gp)            |     t9 = sym.imp.exit;
    0x0000c1c0 addiu a0, zero, 0x10          |     a0 = 0x10;
    0x0000c1c4 jalr t9                       |     return t9 ();
                                             | }
    ; assembly                                   | /* r2dec pseudo code output */
                                                 | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/fsck.ext3 @ 0xc1c8 */
                                                 | #include <stdint.h>
                                                 |  
    ; (fcn) fcn.0000c1c8 ()                      | void fcn_0000c1c8 () {
    0x0000c1c8 lui gp, 6                         |     
    0x0000c1cc addiu gp, gp, -0x2408             |     
    0x0000c1d0 addu gp, gp, t9                   |     gp += t9;
    0x0000c1d4 addiu sp, sp, -0x110              |     
    0x0000c1d8 lw t9, -0x7fcc(gp)                |     t9 = sym.e2fsck_allocate_context;
    0x0000c1dc sw s7, 0x104(sp)                  |     *(var_104h) = s7;
    0x0000c1e0 lw s7, -0x7838(gp)                |     s7 = *((gp - 7694));
    0x0000c1e4 sw gp, 0x18(sp)                   |     *(var_18h) = gp;
    0x0000c1e8 sw s6, 0x100(sp)                  |     *(var_100h) = s6;
    0x0000c1ec lw v0, (s7)                       |     v0 = *(s7);
    0x0000c1f0 sw s2, 0xf0(sp)                   |     *(var_f0h) = s2;
    0x0000c1f4 sw s1, 0xec(sp)                   |     *(var_ech) = s1;
    0x0000c1f8 sw s0, 0xe8(sp)                   |     *(var_e8h) = s0;
    0x0000c1fc sw ra, 0x10c(sp)                  |     *(var_10ch) = ra;
    0x0000c200 sw fp, 0x108(sp)                  |     *(var_108h) = fp;
    0x0000c204 sw s5, 0xfc(sp)                   |     *(var_fch) = s5;
    0x0000c208 sw s4, 0xf8(sp)                   |     *(var_f8h) = s4;
    0x0000c20c sw s3, 0xf4(sp)                   |     *(var_f4h) = s3;
    0x0000c210 move s0, a0                       |     s0 = a0;
    0x0000c214 sw v0, 0xe4(sp)                   |     *(var_e4h) = v0;
    0x0000c218 addiu a0, sp, 0x4c                |     a0 = sp + 0x4c;
    0x0000c21c move s1, a1                       |     s1 = a1;
    0x0000c220 move s2, a2                       |     s2 = a2;
    0x0000c224 bal 0xdff0                        |     sym_e2fsck_allocate_context ();
    0x0000c228 move s6, v0                       |     s6 = v0;
    0x0000c22c lw gp, 0x18(sp)                   |     gp = *(var_18h);
                                                 |     if (v0 != 0) {
    0x0000c230 beqz v0, 0xc274                   |         
                                                 | label_0:
    0x0000c234 lw a0, 0xe4(sp)                   |         a0 = *(var_e4h);
    0x0000c238 lw v1, (s7)                       |         v1 = *(s7);
    0x0000c23c move v0, s6                       |         v0 = s6;
                                                 |         if (a0 != v1) {
    0x0000c240 bne a0, v1, 0xd8d8                |             goto label_26;
                                                 |         }
    0x0000c244 lw ra, 0x10c(sp)                  |         ra = *(var_10ch);
    0x0000c248 lw fp, 0x108(sp)                  |         fp = *(var_108h);
    0x0000c24c lw s7, 0x104(sp)                  |         s7 = *(var_104h);
    0x0000c250 lw s6, 0x100(sp)                  |         s6 = *(var_100h);
    0x0000c254 lw s5, 0xfc(sp)                   |         s5 = *(var_fch);
    0x0000c258 lw s4, 0xf8(sp)                   |         s4 = *(var_f8h);
    0x0000c25c lw s3, 0xf4(sp)                   |         s3 = *(var_f4h);
    0x0000c260 lw s2, 0xf0(sp)                   |         s2 = *(var_f0h);
    0x0000c264 lw s1, 0xec(sp)                   |         s1 = *(var_ech);
    0x0000c268 lw s0, 0xe8(sp)                   |         s0 = *(var_e8h);
    0x0000c26c addiu sp, sp, 0x110               |         
    0x0000c270 jr ra                             |         return v0;
                                                 |     }
    0x0000c274 lw v1, -0x7b08(gp)                |     v1 = *((gp - 7874));
    0x0000c278 lw s3, -0x77dc(gp)                |     s3 = *((gp - 7671));
    0x0000c27c lw v0, 0x4c(sp)                   |     v0 = *(var_4ch);
    0x0000c280 lw a0, (v1)                       |     a0 = *(v1);
    0x0000c284 lw v1, -0x7fdc(gp)                |     v1 = *(gp);
    0x0000c288 lw t9, -0x7a94(gp)                |     t9 = sym.imp.setvbuf;
    0x0000c28c sw v0, (s2)                       |     *(s2) = v0;
    0x0000c290 addiu a3, zero, 0x2000            |     a3 = 0x2000;
    0x0000c294 sw v0, (v1)                       |     *(v1) = v0;
    0x0000c298 addiu a2, zero, 2                 |     a2 = 2;
    0x0000c29c move a1, zero                     |     a1 = 0;
    0x0000c2a0 sw s3, 0x38(sp)                   |     *(var_38h) = s3;
    0x0000c2a4 jalr t9                           |     t9 ();
    0x0000c2a8 lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0000c2ac lw a0, (s3)                       |     a0 = *(s3);
    0x0000c2b0 addiu a3, zero, 0x2000            |     a3 = 0x2000;
    0x0000c2b4 lw t9, -0x7a94(gp)                |     t9 = sym.imp.setvbuf;
    0x0000c2b8 addiu a2, zero, 2                 |     a2 = 2;
    0x0000c2bc move a1, zero                     |     a1 = 0;
    0x0000c2c0 jalr t9                           |     t9 ();
    0x0000c2c4 lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0000c2c8 lw a0, -0x7fd0(gp)                |     a0 = *(gp);
    0x0000c2cc lw t9, -0x79ac(gp)                |     t9 = sym.imp.getenv;
                                                 |     /* str.E2FSCK_FORCE_INTERACTIVE */
    0x0000c2d0 addiu a0, a0, 0x5004              |     a0 += 0x5004;
    0x0000c2d4 jalr t9                           |     t9 ();
    0x0000c2d8 lw gp, 0x18(sp)                   |     gp = *(var_18h);
                                                 |     if (v0 == 0) {
    0x0000c2dc beqz v0, 0xd34c                   |         goto label_27;
                                                 |     }
                                                 | label_19:
    0x0000c2e0 lw v0, 0x4c(sp)                   |     v0 = *(var_4ch);
    0x0000c2e4 addiu v1, zero, 1                 |     v1 = 1;
    0x0000c2e8 sw v1, 0x228(v0)                  |     *(v0) = v1;
                                                 | label_7:
    0x0000c2ec lw a0, -0x7fc8(gp)                |     a0 = *((gp - 8178));
    0x0000c2f0 lw t9, -0x7a9c(gp)                |     t9 = sym.imp.memset;
    0x0000c2f4 addiu a2, zero, 0x7f              |     a2 = 0x7f;
    0x0000c2f8 addiu a1, zero, 0x3d              |     a1 = 0x3d;
    0x0000c2fc addiu a0, a0, 0x2710              |     a0 += 0x2710;
    0x0000c300 jalr t9                           |     t9 ();
    0x0000c304 lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0000c308 addiu a2, zero, 0x7f              |     a2 = 0x7f;
    0x0000c30c addiu a1, zero, 0x20              |     a1 = 0x20;
    0x0000c310 lw a0, -0x7fc8(gp)                |     a0 = *((gp - 8178));
    0x0000c314 lw t9, -0x7a9c(gp)                |     t9 = sym.imp.memset;
    0x0000c318 addiu a0, a0, 0x2690              |     a0 += 0x2690;
    0x0000c31c jalr t9                           |     t9 ();
    0x0000c320 lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0000c324 lw a0, -0x7c4c(gp)                |     a0 = *((gp - 7955));
    0x0000c328 lw t9, -0x7c48(gp)                |     t9 = sym.imp.add_error_table;
    0x0000c32c jalr t9                           |     t9 ();
    0x0000c330 nop                               |     
    0x0000c334 lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0000c338 lw a0, -0x7fc4(gp)                |     a0 = *(gp);
    0x0000c33c lw t9, -0x7c48(gp)                |     t9 = sym.imp.add_error_table;
    0x0000c340 jalr t9                           |     t9 ();
    0x0000c344 nop                               |     
    0x0000c348 lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0000c34c lw a0, 0x4c(sp)                   |     a0 = *(var_4ch);
    0x0000c350 move a1, zero                     |     a1 = 0;
    0x0000c354 lw t9, -0x7c7c(gp)                |     t9 = sym.imp.blkid_get_cache;
    0x0000c358 addiu a0, a0, 0x5c                |     a0 += 0x5c;
    0x0000c35c jalr t9                           |     t9 ();
    0x0000c360 lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0000c364 lw v1, 0x4c(sp)                   |     v1 = *(var_4ch);
                                                 |     if (s0 == 0) {
    0x0000c368 beqz s0, 0xc790                   |         goto label_28;
                                                 |     }
    0x0000c36c lw v0, (s1)                       |     v0 = *(s1);
                                                 |     if (v0 == 0) {
    0x0000c370 beql v0, zero, 0xc794             |         goto label_29;
                                                 |     }
    0x0000c374 lw v0, -0x7fd0(gp)                |     v0 = *(gp);
                                                 |     do {
    0x0000c378 lw t9, -0x7fc0(gp)                |         t9 = sym.get_memory_size;
    0x0000c37c sw v0, 4(v1)                      |         *((v1 + 1)) = v0;
    0x0000c380 sw zero, 0x2c(sp)                 |         *(var_2ch) = 0;
    0x0000c384 bal 0x2bed8                       |         sym_get_memory_size ();
    0x0000c388 sw v0, 0x3c(sp)                   |         *(var_3ch) = v0;
    0x0000c38c lw gp, 0x18(sp)                   |         gp = *(var_18h);
    0x0000c390 lw v0, 0x4c(sp)                   |         v0 = *(var_4ch);
    0x0000c394 addiu a0, zero, -1                |         a0 = -1;
    0x0000c398 addiu a1, zero, -1                |         a1 = -1;
    0x0000c39c sw a0, 0x2c0(v0)                  |         *((v0 + 176)) = a0;
    0x0000c3a0 sw a1, 0x2c4(v0)                  |         *(v0) = a1;
    0x0000c3a4 lw v0, -0x7fc8(gp)                |         v0 = *((gp - 8178));
    0x0000c3a8 lw s2, -0x7fd0(gp)                |         s2 = *(gp);
    0x0000c3ac sw v0, 0x30(sp)                   |         *(var_30h) = v0;
    0x0000c3b0 lw v0, -0x7fd8(gp)                |         v0 = *(gp);
    0x0000c3b4 lw s5, -0x7fd0(gp)                |         s5 = *(gp);
    0x0000c3b8 addiu v0, v0, -0x2294             |         v0 += -0x2294;
    0x0000c3bc lw s3, -0x7fd0(gp)                |         s3 = *(gp);
    0x0000c3c0 lw fp, -0x7fc8(gp)                |         fp = *((gp - 8178));
    0x0000c3c4 sw v1, 0x40(sp)                   |         *(var_40h) = v1;
    0x0000c3c8 sw zero, 0x28(sp)                 |         *(var_28h) = 0;
    0x0000c3cc addiu s2, s2, 0x6840              |         s2 += 0x6840;
                                                 |         /* esilref: '&d' */
    0x0000c3d0 addiu s5, s5, 0x5028              |         s5 += 0x5028;
    0x0000c3d4 sw v0, 0x34(sp)                   |         *(var_34h) = v0;
    0x0000c3d8 lw t9, -0x7a68(gp)                |         t9 = sym.imp.getopt;
                                                 |         /* str.panyrcC:B:dE:fvtFVM:b:I:j:P:l:L:N:SsDkz: */
    0x0000c3dc addiu a2, s3, 0x50dc              |         a2 = s3 + 0x50dc;
    0x0000c3e0 move a1, s1                       |         a1 = s1;
    0x0000c3e4 move a0, s0                       |         a0 = s0;
    0x0000c3e8 jalr t9                           |         t9 ();
    0x0000c3ec addiu v1, zero, -1                |         v1 = -1;
    0x0000c3f0 lw gp, 0x18(sp)                   |         gp = *(var_18h);
    0x0000c3f4 sw v0, 0x48(sp)                   |         *(var_48h) = v0;
                                                 |         if (v0 == v1) {
    0x0000c3f8 beq v0, v1, 0xc7bc                |             goto label_30;
                                                 |         }
    0x0000c3fc addiu v0, v0, -0x42               |         v0 += -0x42;
    0x0000c400 sltiu v1, v0, 0x39                |         v1 = (v0 < 0x39) ? 1 : 0;
    0x0000c404 sll v0, v0, 2                     |         v0 <<= 2;
                                                 |         if (v1 == 0) {
    0x0000c408 beqz v1, 0xd554                   |             goto label_31;
                                                 |         }
    0x0000c40c lwx v0, v0(s2)                    |         __asm ("lwx v0, v0(s2)");
    0x0000c410 addu v0, v0, gp                   |         v0 += gp;
    0x0000c414 jr v0                             |         v0 ();
    0x0000c418 nop                               |         
                                                 | label_28:
    0x0000c790 lw v0, -0x7fd0(gp)                |         v0 = *(gp);
                                                 |         /* str.e2fsck */
                                                 | label_29:
    0x0000c794 addiu v0, v0, 0x5020              |         v0 += 0x5020;
    0x0000c798 b 0xc378                          |         
                                                 |     } while (1);
                                                 | label_30:
    0x0000c7bc lw v0, -0x7fc8(gp)                |     v0 = *((gp - 8178));
    0x0000c7c0 lw s2, 0x27a0(v0)                 |     s2 = *((v0 + 2536));
    0x0000c7c4 lw s3, -0x788c(gp)                |     s3 = *((gp - 7715));
                                                 |     if (s2 != 0) {
    0x0000c7c8 bnez s2, 0xc234                   |         goto label_0;
                                                 |     }
    0x0000c7cc addiu s0, s0, -1                  |     s0 += -1;
    0x0000c7d0 lw v0, (s3)                       |     v0 = *(s3);
    0x0000c7d4 lw s4, 0x4c(sp)                   |     s4 = *(var_4ch);
                                                 |     if (s0 != v0) {
    0x0000c7d8 bne s0, v0, 0xd898                |         goto label_32;
                                                 |     }
    0x0000c7dc lw v0, 0x28(s4)                   |     v0 = *((s4 + 10));
    0x0000c7e0 addiu v1, zero, 0x408             |     v1 = 0x408;
    0x0000c7e4 andi v0, v0, 0x408                |     v0 &= 0x408;
    0x0000c7e8 lw a3, -0x7fd0(gp)                |     a3 = *(gp);
                                                 |     if (v0 == v1) {
    0x0000c7ec beq v0, v1, 0xd388                |         goto label_33;
                                                 |     }
                                                 | label_8:
    0x0000c7f0 lw v0, 0x28(s4)                   |     v0 = *((s4 + 10));
    0x0000c7f4 andi v0, v0, 8                    |     v0 &= 8;
    0x0000c7f8 lw v0, -0x7fc8(gp)                |     v0 = *((gp - 8178));
                                                 |     if (v0 != 0) {
    0x0000c7fc bnez v0, 0xcd74                   |         goto label_34;
                                                 |     }
                                                 | label_2:
    0x0000c800 lw a0, (s3)                       |     a0 = *(s3);
                                                 | label_15:
    0x0000c804 lw t9, -0x7a44(gp)                |     t9 = sym.imp.strchr;
    0x0000c808 sll a0, a0, 2                     |     a0 <<= 2;
    0x0000c80c addiu a1, zero, 0x3f              |     a1 = 0x3f;
    0x0000c810 lwx a0, a0(s1)                    |     __asm ("lwx a0, a0(s1)");
    0x0000c814 jalr t9                           |     t9 ();
    0x0000c818 lw gp, 0x18(sp)                   |     gp = *(var_18h);
                                                 |     if (v0 == 0) {
    0x0000c81c beqz v0, 0xd344                   |         goto label_35;
                                                 |     }
    0x0000c820 addiu v1, v0, 1                   |     v1 = v0 + 1;
    0x0000c824 sw v1, 0x10(s4)                   |     *((s4 + 4)) = v1;
    0x0000c828 sb zero, (v0)                     |     *(v0) = 0;
    0x0000c82c lw s4, 0x4c(sp)                   |     s4 = *(var_4ch);
                                                 | label_6:
    0x0000c830 lw a1, (s3)                       |     a1 = *(s3);
    0x0000c834 lw t9, -0x79cc(gp)                |     t9 = sym.imp.blkid_get_devname;
    0x0000c838 sll a1, a1, 2                     |     a1 <<= 2;
    0x0000c83c lw a0, 0x5c(s4)                   |     a0 = *((s4 + 23));
    0x0000c840 lwx a1, a1(s1)                    |     __asm ("lwx a1, a1(s1)");
    0x0000c844 move a2, zero                     |     a2 = 0;
    0x0000c848 jalr t9                           |     t9 ();
    0x0000c84c lw v1, 0x4c(sp)                   |     v1 = *(var_4ch);
    0x0000c850 lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0000c854 sw v0, 8(s4)                      |     *((s4 + 2)) = v0;
    0x0000c858 lw v0, 8(v1)                      |     v0 = *((v1 + 2));
                                                 |     if (v0 == 0) {
    0x0000c85c beql v0, zero, 0xd500             |         goto label_36;
                                                 |     }
    0x0000c860 lw a3, (s3)                       |     a3 = *(s3);
                                                 | label_13:
    0x0000c864 lw a1, 0x2c(sp)                   |     a1 = *(var_2ch);
    0x0000c868 lw s3, 0x4c(sp)                   |     s3 = *(var_4ch);
                                                 |     if (a1 == 0) {
    0x0000c86c beqz a1, 0xc9ec                   |         goto label_5;
                                                 |     }
    0x0000c870 lw t9, -0x7fbc(gp)                |     t9 = sym.string_copy;
    0x0000c874 move a2, zero                     |     a2 = 0;
    0x0000c878 move a0, s3                       |     a0 = s3;
    0x0000c87c bal 0x29f78                       |     sym_string_copy ();
    0x0000c880 move s1, v0                       |     s1 = v0;
    0x0000c884 lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0000c888 sw v0, 0x30(sp)                   |     *(var_30h) = v0;
                                                 |     if (v0 == 0) {
    0x0000c88c beqz v0, 0xc9dc                   |         goto label_37;
                                                 |     }
    0x0000c890 lb v0, (v0)                       |     v0 = *(v0);
    0x0000c894 lw v0, -0x7fd0(gp)                |     v0 = *(gp);
                                                 |     if (v0 == 0) {
    0x0000c898 beqz v0, 0xc9dc                   |         goto label_37;
                                                 |     }
    0x0000c89c lw fp, -0x7fd0(gp)                |     fp = *(gp);
    0x0000c8a0 sw v0, 0x2c(sp)                   |     *(var_2ch) = v0;
    0x0000c8a4 lw v0, -0x7fd0(gp)                |     v0 = *(gp);
    0x0000c8a8 lw s4, -0x7fd0(gp)                |     s4 = *(gp);
    0x0000c8ac sw v0, 0x44(sp)                   |     *(var_44h) = v0;
    0x0000c8b0 lw v0, -0x7fd0(gp)                |     v0 = *(gp);
                                                 |     /* str.readahead_kb */
    0x0000c8b4 addiu fp, fp, 0x51a4              |     fp += 0x51a4;
                                                 |     /* str.fragcheck */
    0x0000c8b8 addiu v0, v0, 0x51d4              |     v0 += 0x51d4;
    0x0000c8bc sw v0, 0x24(sp)                   |     *(var_24h_2) = v0;
    0x0000c8c0 lw v0, -0x7fd0(gp)                |     v0 = *(gp);
                                                 |     /* str.discard */
    0x0000c8c4 addiu v0, v0, 0x51f0              |     v0 += 0x51f0;
    0x0000c8c8 sw v0, 0x34(sp)                   |     *(var_34h) = v0;
    0x0000c8cc b 0xc920                          |     
                                                 |     while (v0 == 0) {
    0x0000c8d0 lw t9, -0x7a40(gp)                |         t9 = sym.imp.strtoul;
                                                 |         if (s5 == 0) {
    0x0000c8d4 beqz s5, 0xcf78                   |             goto label_24;
                                                 |         }
    0x0000c8d8 move a2, zero                     |         a2 = 0;
    0x0000c8dc addiu a1, sp, 0x50                |         a1 = sp + 0x50;
    0x0000c8e0 move a0, s5                       |         a0 = s5;
    0x0000c8e4 jalr t9                           |         t9 ();
    0x0000c8e8 lw v1, 0x50(sp)                   |         v1 = *(var_50h);
    0x0000c8ec lb v1, (v1)                       |         v1 = *(v1);
    0x0000c8f0 lw gp, 0x18(sp)                   |         gp = *(var_18h);
                                                 |         if (v1 != 0) {
    0x0000c8f4 bnez v1, 0xcfcc                   |             goto label_38;
                                                 |         }
    0x0000c8f8 addiu v1, v0, -1                  |         v1 = v0 + -1;
    0x0000c8fc sltiu v1, v1, 2                   |         v1 = (v1 < 2) ? 1 : 0;
                                                 |         if (v1 == 0) {
    0x0000c900 beql v1, zero, 0xcfd0             |             goto label_39;
                                                 |         }
    0x0000c904 lw v0, 0x38(sp)                   |         v0 = *(var_38h);
    0x0000c908 sw v0, 0x298(s3)                  |         *((s3 + 166)) = v0;
                                                 | label_1:
    0x0000c90c lw t9, -0x7814(gp)                |         t9 = sym.imp.free;
                                                 |         if (s0 == 0) {
    0x0000c910 beqz s0, 0xcff8                   |             goto label_40;
                                                 |         }
    0x0000c914 lb v0, (s0)                       |         v0 = *(s0);
    0x0000c918 move s1, s0                       |         s1 = s0;
                                                 |         if (v0 == 0) {
    0x0000c91c beqz v0, 0xcff8                   |             goto label_40;
                                                 |         }
    0x0000c920 lw t9, -0x7a44(gp)                |         t9 = sym.imp.strchr;
    0x0000c924 addiu a1, zero, 0x2c              |         a1 = 0x2c;
    0x0000c928 move a0, s1                       |         a0 = s1;
    0x0000c92c jalr t9                           |         t9 ();
    0x0000c930 move s0, v0                       |         s0 = v0;
    0x0000c934 lw gp, 0x18(sp)                   |         gp = *(var_18h);
    0x0000c938 sw v0, 0x50(sp)                   |         *(var_50h) = v0;
                                                 |         if (v0 != 0) {
    0x0000c93c beqz v0, 0xc94c                   |             
    0x0000c940 sb zero, (v0)                     |             *(v0) = 0;
    0x0000c944 lw s0, 0x50(sp)                   |             s0 = *(var_50h);
    0x0000c948 addiu s0, s0, 1                   |             s0++;
                                                 |         }
    0x0000c94c lw t9, -0x7a44(gp)                |         t9 = sym.imp.strchr;
    0x0000c950 addiu a1, zero, 0x3d              |         a1 = 0x3d;
    0x0000c954 move a0, s1                       |         a0 = s1;
    0x0000c958 jalr t9                           |         t9 ();
    0x0000c95c lw gp, 0x18(sp)                   |         gp = *(var_18h);
    0x0000c960 move s5, v0                       |         s5 = v0;
    0x0000c964 lw t9, -0x778c(gp)                |         t9 = sym.imp.strcmp;
                                                 |         if (v0 == 0) {
    0x0000c968 beqz v0, 0xcf4c                   |             goto label_41;
                                                 |         }
    0x0000c96c sb zero, (v0)                     |         *(v0) = 0;
                                                 |         /* str.ea_ver */
    0x0000c970 addiu a1, s4, 0x5184              |         a1 = s4 + 0x5184;
    0x0000c974 move a0, s1                       |         a0 = s1;
    0x0000c978 jalr t9                           |         t9 ();
    0x0000c97c addiu s5, s5, 1                   |         s5++;
    0x0000c980 lw gp, 0x18(sp)                   |         gp = *(var_18h);
    0x0000c984 beqz v0, 0xc8d0                   |         
                                                 |     }
    0x0000c988 lw t9, -0x778c(gp)                |     t9 = sym.imp.strcmp;
    0x0000c98c move a1, fp                       |     a1 = fp;
    0x0000c990 move a0, s1                       |     a0 = s1;
    0x0000c994 jalr t9                           |     t9 ();
    0x0000c998 lw gp, 0x18(sp)                   |     gp = *(var_18h);
                                                 |     if (v0 != 0) {
    0x0000c99c bnez v0, 0xcf80                   |         goto label_42;
                                                 |     }
    0x0000c9a0 lw t9, -0x7aac(gp)                |     t9 = sym.imp.strtoull;
                                                 |     if (s5 == 0) {
    0x0000c9a4 beqz s5, 0xcf78                   |         goto label_24;
                                                 |     }
    0x0000c9a8 addiu a1, sp, 0x50                |     a1 = sp + 0x50;
    0x0000c9ac move a0, s5                       |     a0 = s5;
    0x0000c9b0 move a2, zero                     |     a2 = 0;
    0x0000c9b4 jalr t9                           |     t9 ();
    0x0000c9b8 move a1, v1                       |     a1 = v1;
    0x0000c9bc lw v1, 0x50(sp)                   |     v1 = *(var_50h);
    0x0000c9c0 lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0000c9c4 lb v1, (v1)                       |     v1 = *(v1);
    0x0000c9c8 move a0, v0                       |     a0 = v0;
                                                 |     if (v1 != 0) {
    0x0000c9cc bnez v1, 0xd5b4                   |         goto label_43;
                                                 |     }
    0x0000c9d0 sw a0, 0x2c0(s3)                  |     *((s3 + 176)) = a0;
    0x0000c9d4 sw a1, 0x2c4(s3)                  |     *(s3) = a1;
    0x0000c9d8 b 0xc90c                          |     goto label_1;
                                                 | label_37:
    0x0000c9dc lw t9, -0x7814(gp)                |     t9 = sym.imp.free;
    0x0000c9e0 lw a0, 0x30(sp)                   |     a0 = *(var_30h);
    0x0000c9e4 jalr t9                           |     t9 ();
    0x0000c9e8 lw gp, 0x18(sp)                   |     gp = *(var_18h);
                                                 | label_5:
    0x0000c9ec lw a0, -0x7fd0(gp)                |     a0 = *(gp);
    0x0000c9f0 lw t9, -0x79ac(gp)                |     t9 = sym.imp.getenv;
                                                 |     /* str.E2FSCK_FIXES_ONLY */
    0x0000c9f4 addiu a0, a0, 0x5444              |     a0 += 0x5444;
    0x0000c9f8 jalr t9                           |     t9 ();
    0x0000c9fc lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0000ca00 lw s4, 0x4c(sp)                   |     s4 = *(var_4ch);
                                                 |     if (v0 != 0) {
    0x0000ca04 beqz v0, 0xca14                   |         
    0x0000ca08 lw v0, 0x28(s4)                   |         v0 = *((s4 + 10));
    0x0000ca0c ori v0, v0, 0x8000                |         v0 |= 0x8000;
    0x0000ca10 sw v0, 0x28(s4)                   |         *((s4 + 10)) = v0;
                                                 |     }
    0x0000ca14 lw v0, 0x28(s4)                   |     v0 = *((s4 + 10));
    0x0000ca18 ori v1, zero, 0x8400              |     v1 = 0x8400;
    0x0000ca1c andi v0, v0, 0x8400               |     v0 &= 0x8400;
    0x0000ca20 lw a3, -0x7fd0(gp)                |     a3 = *(gp);
                                                 |     if (v0 == v1) {
    0x0000ca24 beq v0, v1, 0xd4c4                |         goto label_44;
                                                 |     }
                                                 | label_12:
    0x0000ca28 lw v0, 0x28(s4)                   |     v0 = *((s4 + 10));
    0x0000ca2c ori v1, zero, 0xc000              |     v1 = 0xc000;
    0x0000ca30 andi v0, v0, 0xc000               |     v0 &= 0xc000;
    0x0000ca34 lw a3, -0x7fd0(gp)                |     a3 = *(gp);
                                                 |     if (v0 == v1) {
    0x0000ca38 beq v0, v1, 0xd48c                |         goto label_45;
                                                 |     }
                                                 | label_11:
    0x0000ca3c lw a0, -0x7fd0(gp)                |     a0 = *(gp);
    0x0000ca40 lw t9, -0x79ac(gp)                |     t9 = sym.imp.getenv;
                                                 |     /* str.E2FSCK_CONFIG */
    0x0000ca44 addiu a0, a0, 0x54c8              |     a0 += 0x54c8;
    0x0000ca48 jalr t9                           |     t9 ();
    0x0000ca4c lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0000ca50 lw s0, -0x7fc8(gp)                |     s0 = *((gp - 8178));
                                                 |     if (v0 != 0) {
    0x0000ca54 beqz v0, 0xca5c                   |         
    0x0000ca58 sw v0, -0xff0(s0)                 |         *((s0 - 1020)) = v0;
                                                 |     }
    0x0000ca5c lw a0, -0x7fd8(gp)                |     a0 = *(gp);
    0x0000ca60 lw t9, -0x7fb4(gp)                |     t9 = sym.profile_set_syntax_err_cb;
    0x0000ca64 addiu a0, a0, -0x3f3c             |     a0 += -0x3f3c;
    0x0000ca68 jalr t9                           |     t9 ();
    0x0000ca6c lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0000ca70 lw a1, 0x4c(sp)                   |     a1 = *(var_4ch);
                                                 |     /* esilref: '/etc/e2fsck.conf' */
    0x0000ca74 addiu a0, s0, -0xff0              |     a0 = s0 + -0xff0;
    0x0000ca78 lw t9, -0x7fb0(gp)                |     t9 = sym.profile_init;
    0x0000ca7c addiu a1, a1, 0x29c               |     a1 += 0x29c;
    0x0000ca80 jalr t9                           |     t9 ();
    0x0000ca84 lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0000ca88 lw v0, 0x4c(sp)                   |     v0 = *(var_4ch);
    0x0000ca8c addiu s1, sp, 0x48                |     s1 = sp + 0x48;
    0x0000ca90 lw s0, -0x7fd0(gp)                |     s0 = *(gp);
    0x0000ca94 lw a2, -0x7fd0(gp)                |     a2 = *(gp);
    0x0000ca98 lw a0, 0x29c(v0)                  |     a0 = *((v0 + 167));
    0x0000ca9c lw t9, -0x7fac(gp)                |     t9 = sym.profile_get_boolean;
    0x0000caa0 sw s1, 0x14(sp)                   |     *(var_14h) = s1;
    0x0000caa4 sw zero, 0x10(sp)                 |     *(var_10h_2) = 0;
    0x0000caa8 move a3, zero                     |     a3 = 0;
                                                 |     /* str.report_time */
    0x0000caac addiu a2, a2, 0x54d8              |     a2 += 0x54d8;
                                                 |     /* str.options */
    0x0000cab0 addiu a1, s0, 0x54e4              |     a1 = s0 + 0x54e4;
    0x0000cab4 jalr t9                           |     t9 ();
    0x0000cab8 lw v0, 0x48(sp)                   |     v0 = *(var_48h);
    0x0000cabc lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0000cac0 lw s4, 0x4c(sp)                   |     s4 = *(var_4ch);
                                                 |     if (v0 != 0) {
    0x0000cac4 beqz v0, 0xcad4                   |         
    0x0000cac8 lw v0, 0x28(s4)                   |         v0 = *((s4 + 10));
    0x0000cacc ori v0, v0, 0x30                  |         v0 |= 0x30;
    0x0000cad0 sw v0, 0x28(s4)                   |         *((s4 + 10)) = v0;
                                                 |     }
    0x0000cad4 lw a2, -0x7fd0(gp)                |     a2 = *(gp);
    0x0000cad8 lw a0, 0x29c(s4)                  |     a0 = *((s4 + 167));
    0x0000cadc lw t9, -0x7fac(gp)                |     t9 = sym.profile_get_boolean;
    0x0000cae0 sw s1, 0x14(sp)                   |     *(var_14h) = s1;
    0x0000cae4 sw zero, 0x10(sp)                 |     *(var_10h_2) = 0;
    0x0000cae8 move a3, zero                     |     a3 = 0;
                                                 |     /* str.report_verbose */
    0x0000caec addiu a2, a2, 0x54ec              |     a2 += 0x54ec;
                                                 |     /* str.options */
    0x0000caf0 addiu a1, s0, 0x54e4              |     a1 = s0 + 0x54e4;
    0x0000caf4 jalr t9                           |     t9 ();
    0x0000caf8 lw v0, 0x48(sp)                   |     v0 = *(var_48h);
    0x0000cafc lw gp, 0x18(sp)                   |     gp = *(var_18h);
                                                 |     if (v0 != 0) {
    0x0000cb00 beqz v0, 0xcb10                   |         
    0x0000cb04 lw v0, -0x7fc8(gp)                |         v0 = *((gp - 8178));
    0x0000cb08 addiu v1, zero, 1                 |         v1 = 1;
    0x0000cb0c sw v1, 0x279c(v0)                 |         *((v0 + 2535)) = v1;
                                                 |     }
    0x0000cb10 lw v0, 0x4c(sp)                   |     v0 = *(var_4ch);
    0x0000cb14 lw a2, -0x7fd0(gp)                |     a2 = *(gp);
    0x0000cb18 lw t9, -0x7fac(gp)                |     t9 = sym.profile_get_boolean;
    0x0000cb1c lw a0, 0x29c(v0)                  |     a0 = *((v0 + 167));
    0x0000cb20 move a3, zero                     |     a3 = 0;
    0x0000cb24 sw s1, 0x14(sp)                   |     *(var_14h) = s1;
    0x0000cb28 sw zero, 0x10(sp)                 |     *(var_10h_2) = 0;
                                                 |     /* str.no_optimize_extents */
    0x0000cb2c addiu a2, a2, 0x5218              |     a2 += 0x5218;
                                                 |     /* str.options */
    0x0000cb30 addiu a1, s0, 0x54e4              |     a1 = s0 + 0x54e4;
    0x0000cb34 jalr t9                           |     t9 ();
    0x0000cb38 lw v0, 0x48(sp)                   |     v0 = *(var_48h);
    0x0000cb3c lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0000cb40 lw s4, 0x4c(sp)                   |     s4 = *(var_4ch);
                                                 |     if (v0 != 0) {
    0x0000cb44 beqz v0, 0xcb58                   |         
    0x0000cb48 lw v0, 0x28(s4)                   |         v0 = *((s4 + 10));
    0x0000cb4c lui v1, 1                         |         v1 = 0x10000;
    0x0000cb50 or v0, v0, v1                     |         v0 |= v1;
    0x0000cb54 sw v0, 0x28(s4)                   |         *((s4 + 10)) = v0;
                                                 |     }
    0x0000cb58 lw a2, -0x7fd0(gp)                |     a2 = *(gp);
    0x0000cb5c lw a0, 0x29c(s4)                  |     a0 = *((s4 + 167));
    0x0000cb60 lw t9, -0x7fac(gp)                |     t9 = sym.profile_get_boolean;
    0x0000cb64 sw s1, 0x14(sp)                   |     *(var_14h) = s1;
    0x0000cb68 sw zero, 0x10(sp)                 |     *(var_10h_2) = 0;
    0x0000cb6c move a3, zero                     |     a3 = 0;
                                                 |     /* str.inode_count_fullmap */
    0x0000cb70 addiu a2, a2, 0x522c              |     a2 += 0x522c;
                                                 |     /* str.options */
    0x0000cb74 addiu a1, s0, 0x54e4              |     a1 = s0 + 0x54e4;
    0x0000cb78 jalr t9                           |     t9 ();
    0x0000cb7c lw v0, 0x48(sp)                   |     v0 = *(var_48h);
    0x0000cb80 lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0000cb84 lw s4, 0x4c(sp)                   |     s4 = *(var_4ch);
    0x0000cb88 bnez v0, 0xcd60                   |     
                                                 |     while (1) {
    0x0000cb8c lw v0, 0x2c0(s4)                  |         v0 = *((s4 + 176));
    0x0000cb90 addiu v1, zero, -1                |         v1 = -1;
                                                 |         if (v0 == v1) {
    0x0000cb94 beql v0, v1, 0xd3c4               |             goto label_46;
                                                 |         }
    0x0000cb98 lw v1, 0x2c4(s4)                  |         v1 = *(s4);
                                                 | label_10:
    0x0000cb9c lw v0, 0x28(s4)                   |         v0 = *((s4 + 10));
                                                 | label_9:
    0x0000cba0 addiu v1, zero, 0x2008            |         v1 = 0x2008;
    0x0000cba4 andi a0, v0, 0x2008               |         a0 = v0 & 0x2008;
    0x0000cba8 addiu v1, zero, -0x2001           |         v1 = -0x2001;
                                                 |         if (a0 == v1) {
    0x0000cbac beq a0, v1, 0xce50                |             goto label_47;
                                                 |         }
                                                 | label_3:
    0x0000cbb0 lw v0, 0x28(sp)                   |         v0 = *(var_28h);
    0x0000cbb4 lw t9, -0x7a1c(gp)                |         t9 = sym.imp.open;
                                                 |         if (v0 != 0) {
    0x0000cbb8 bnez v0, 0xcf04                   |             goto label_48;
                                                 |         }
                                                 | label_4:
    0x0000cbbc lw v0, -0x7fc8(gp)                |         v0 = *((gp - 8178));
    0x0000cbc0 lw v0, 0x27a4(v0)                 |         v0 = *((v0 + 2537));
    0x0000cbc4 addiu s0, sp, 0x54                |         s0 = sp + 0x54;
                                                 |         if (v0 == 0) {
    0x0000cbc8 beqz v0, 0xce5c                   |             goto label_49;
                                                 |         }
    0x0000cbcc lw v0, -0x7fc8(gp)                |         v0 = *((gp - 8178));
    0x0000cbd0 lw v0, 0x2790(v0)                 |         v0 = *((v0 + 2532));
    0x0000cbd4 lw t9, -0x7a9c(gp)                |         t9 = sym.imp.memset;
                                                 |         if (v0 != 0) {
    0x0000cbd8 bnez v0, 0xd8a8                   |             goto label_50;
                                                 |         }
    0x0000cbdc addiu a2, zero, 0x90              |         a2 = 0x90;
    0x0000cbe0 move a1, zero                     |         a1 = 0;
    0x0000cbe4 move a0, s0                       |         a0 = s0;
    0x0000cbe8 jalr t9                           |         t9 ();
    0x0000cbec lw gp, 0x18(sp)                   |         gp = *(var_18h);
    0x0000cbf0 move a2, zero                     |         a2 = 0;
    0x0000cbf4 move a1, s0                       |         a1 = s0;
    0x0000cbf8 lw v0, -0x7fd8(gp)                |         v0 = *(gp);
    0x0000cbfc lw t9, -0x7c34(gp)                |         t9 = sym.imp.sigaction;
    0x0000cc00 addiu v0, v0, -0x4104             |         v0 += -0x4104;
    0x0000cc04 addiu a0, zero, 2                 |         a0 = 2;
    0x0000cc08 sw v0, 0x58(sp)                   |         *(var_58h) = v0;
    0x0000cc0c jalr t9                           |         t9 ();
    0x0000cc10 lw gp, 0x18(sp)                   |         gp = *(var_18h);
    0x0000cc14 move a2, zero                     |         a2 = 0;
    0x0000cc18 move a1, s0                       |         a1 = s0;
    0x0000cc1c lw t9, -0x7c34(gp)                |         t9 = sym.imp.sigaction;
    0x0000cc20 addiu a0, zero, 0xf               |         a0 = 0xf;
    0x0000cc24 jalr t9                           |         t9 ();
    0x0000cc28 lw gp, 0x18(sp)                   |         gp = *(var_18h);
    0x0000cc2c lui v0, 0x1000                    |         v0 = 0x10000000;
    0x0000cc30 sw v0, 0x54(sp)                   |         *(var_54h) = v0;
    0x0000cc34 lw v0, -0x7fd8(gp)                |         v0 = *(gp);
    0x0000cc38 lw t9, -0x7c34(gp)                |         t9 = sym.imp.sigaction;
    0x0000cc3c addiu v0, v0, -0x4130             |         v0 += -0x4130;
    0x0000cc40 move a2, zero                     |         a2 = 0;
    0x0000cc44 move a1, s0                       |         a1 = s0;
    0x0000cc48 addiu a0, zero, 0x10              |         a0 = 0x10;
    0x0000cc4c sw v0, 0x58(sp)                   |         *(var_58h) = v0;
    0x0000cc50 jalr t9                           |         t9 ();
    0x0000cc54 lw gp, 0x18(sp)                   |         gp = *(var_18h);
    0x0000cc58 move a2, zero                     |         a2 = 0;
    0x0000cc5c move a1, s0                       |         a1 = s0;
    0x0000cc60 lw v0, -0x7fd8(gp)                |         v0 = *(gp);
    0x0000cc64 lw t9, -0x7c34(gp)                |         t9 = sym.imp.sigaction;
    0x0000cc68 addiu v0, v0, -0x26a0             |         v0 += -0x26a0;
    0x0000cc6c addiu a0, zero, 0x11              |         a0 = 0x11;
    0x0000cc70 sw v0, 0x58(sp)                   |         *(var_58h) = v0;
    0x0000cc74 jalr t9                           |         t9 ();
    0x0000cc78 lw gp, 0x18(sp)                   |         gp = *(var_18h);
    0x0000cc7c lw a0, -0x7fd0(gp)                |         a0 = *(gp);
    0x0000cc80 lw t9, -0x79ac(gp)                |         t9 = sym.imp.getenv;
                                                 |         /* str.PATH */
    0x0000cc84 addiu a0, a0, 0x55d8              |         a0 += 0x55d8;
    0x0000cc88 jalr t9                           |         t9 ();
    0x0000cc8c move s1, v0                       |         s1 = v0;
    0x0000cc90 lw gp, 0x18(sp)                   |         gp = *(var_18h);
                                                 |         if (v0 == 0) {
    0x0000cc94 beqz v0, 0xd674                   |             goto label_51;
                                                 |         }
    0x0000cc98 lw t9, -0x7a54(gp)                |         t9 = sym.imp.strlen;
    0x0000cc9c move a0, s1                       |         a0 = s1;
    0x0000cca0 jalr t9                           |         t9 ();
    0x0000cca4 lw gp, 0x18(sp)                   |         gp = *(var_18h);
    0x0000cca8 lw t9, -0x79bc(gp)                |         t9 = sym.imp.malloc;
    0x0000ccac addiu a0, v0, 0xc                 |         a0 = v0 + 0xc;
    0x0000ccb0 jalr t9                           |         t9 ();
    0x0000ccb4 move s0, v0                       |         s0 = v0;
    0x0000ccb8 lw gp, 0x18(sp)                   |         gp = *(var_18h);
                                                 |         if (v0 == 0) {
    0x0000ccbc beqz v0, 0xd7ec                   |             goto label_52;
                                                 |         }
    0x0000ccc0 lw v1, -0x7fd0(gp)                |         v1 = *(gp);
                                                 |         /* str.PATH_sbin */
    0x0000ccc4 addiu v0, v1, 0x55e0              |         v0 = v1 + 0x55e0;
    0x0000ccc8 lw a1, 0x55e0(v1)                 |         a1 = *((v1 + 5496));
    0x0000cccc lw a0, 4(v0)                      |         a0 = *((v0 + 1));
    0x0000ccd0 lhu v1, 8(v0)                     |         v1 = *((v0 + 4));
    0x0000ccd4 lbu v0, 0xa(v0)                   |         v0 = *((v0 + 10));
    0x0000ccd8 sw a1, (s0)                       |         *(s0) = a1;
    0x0000ccdc sw a0, 4(s0)                      |         *((s0 + 1)) = a0;
    0x0000cce0 sh v1, 8(s0)                      |         *((s0 + 4)) = v1;
    0x0000cce4 sb v0, 0xa(s0)                    |         *((s0 + 10)) = v0;
                                                 | label_25:
    0x0000cce8 lw t9, -0x7a54(gp)                |         t9 = sym.imp.strlen;
    0x0000ccec move a0, s0                       |         a0 = s0;
    0x0000ccf0 jalr t9                           |         t9 ();
    0x0000ccf4 lw gp, 0x18(sp)                   |         gp = *(var_18h);
    0x0000ccf8 addu v0, s0, v0                   |         v0 = s0 + v0;
    0x0000ccfc addiu v1, zero, 0x3a              |         v1 = 0x3a;
    0x0000cd00 lw t9, -0x7960(gp)                |         t9 = sym.imp.strcpy;
    0x0000cd04 sb v1, (v0)                       |         *(v0) = v1;
    0x0000cd08 sb zero, 1(v0)                    |         *((v0 + 1)) = 0;
    0x0000cd0c move a1, s1                       |         a1 = s1;
    0x0000cd10 addiu a0, v0, 1                   |         a0 = v0 + 1;
    0x0000cd14 jalr t9                           |         t9 ();
    0x0000cd18 lw gp, 0x18(sp)                   |         gp = *(var_18h);
                                                 | label_18:
    0x0000cd1c lw t9, -0x7b74(gp)                |         t9 = sym.imp.putenv;
    0x0000cd20 move a0, s0                       |         a0 = s0;
    0x0000cd24 jalr t9                           |         t9 ();
    0x0000cd28 lw gp, 0x18(sp)                   |         gp = *(var_18h);
    0x0000cd2c b 0xc234                          |         goto label_0;
    0x0000cd60 lw v0, 0x28(s4)                   |         v0 = *((s4 + 10));
    0x0000cd64 lui v1, 2                         |         v1 = 0x20000;
    0x0000cd68 or v0, v0, v1                     |         v0 |= v1;
    0x0000cd6c sw v0, 0x28(s4)                   |         *((s4 + 10)) = v0;
    0x0000cd70 b 0xcb8c                          |         
                                                 |     }
                                                 | label_34:
    0x0000cd74 lw v0, 0x27a4(v0)                 |     v0 = *((v0 + 2537));
    0x0000cd78 lw a3, -0x7fd0(gp)                |     a3 = *(gp);
                                                 |     if (v0 != 0) {
    0x0000cd7c bnez v0, 0xd568                   |         goto label_53;
                                                 |     }
                                                 | label_14:
    0x0000cd80 lw v0, -0x7fc8(gp)                |     v0 = *((gp - 8178));
    0x0000cd84 lw v0, 0x2790(v0)                 |     v0 = *((v0 + 2532));
    0x0000cd88 lw a3, -0x7fd0(gp)                |     a3 = *(gp);
                                                 |     if (v0 == 0) {
    0x0000cd8c beqz v0, 0xd378                   |         goto label_54;
                                                 |     }
    0x0000cd90 lw a2, -0x7fd0(gp)                |     a2 = *(gp);
    0x0000cd94 lw t9, -0x7914(gp)                |     t9 = sym.imp.com_err;
    0x0000cd98 lw a0, 4(s4)                      |     a0 = *((s4 + 1));
                                                 |     /* str.The__n_and__l__L_options_are_incompatible. */
    0x0000cd9c addiu a3, a3, 0x5158              |     a3 += 0x5158;
                                                 |     /* esilref: '&s' */
    0x0000cda0 addiu a2, a2, 0x62f4              |     a2 += 0x62f4;
    0x0000cda4 move a1, zero                     |     a1 = 0;
    0x0000cda8 jalr t9                           |     t9 ();
    0x0000cdac lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0000cdb0 lw a0, 0x4c(sp)                   |     a0 = *(var_4ch);
    0x0000cdb4 lw t9, -0x7fb8(gp)                |     t9 = sym.fatal_error;
    0x0000cdb8 move a1, zero                     |     a1 = 0;
    0x0000cdbc bal 0x29d10                       |     sym_fatal_error ();
    0x0000cdc0 lw s4, 0x4c(sp)                   |     s4 = *(var_4ch);
    0x0000cdc4 lw v0, 0x28(s4)                   |     v0 = *((s4 + 10));
    0x0000cdc8 andi v1, v0, 8                    |     v1 = v0 & 8;
    0x0000cdcc lw gp, 0x18(sp)                   |     gp = *(var_18h);
                                                 |     if (v1 == 0) {
    0x0000cdd0 beqz v1, 0xc800                   |         goto label_2;
                                                 |     }
    0x0000cdd4 ori v0, v0, 1                     |     v0 |= 1;
    0x0000cdd8 sw v0, 0x28(s4)                   |     *((s4 + 10)) = v0;
    0x0000cddc b 0xc800                          |     goto label_2;
                                                 | label_47:
    0x0000ce50 and v0, v0, v1                    |     v0 &= v1;
    0x0000ce54 sw v0, 0x28(s4)                   |     *((s4 + 10)) = v0;
    0x0000ce58 b 0xcbb0                          |     goto label_3;
                                                 | label_49:
    0x0000ce5c lw t9, -0x7a9c(gp)                |     t9 = sym.imp.memset;
    0x0000ce60 addiu a2, zero, 0x90              |     a2 = 0x90;
    0x0000ce64 move a1, zero                     |     a1 = 0;
    0x0000ce68 move a0, s0                       |     a0 = s0;
    0x0000ce6c jalr t9                           |     t9 ();
    0x0000ce70 lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0000ce74 move a2, zero                     |     a2 = 0;
    0x0000ce78 move a1, s0                       |     a1 = s0;
    0x0000ce7c lw v0, -0x7fd8(gp)                |     v0 = *(gp);
    0x0000ce80 lw t9, -0x7c34(gp)                |     t9 = sym.imp.sigaction;
    0x0000ce84 addiu v0, v0, -0x4104             |     v0 += -0x4104;
    0x0000ce88 addiu a0, zero, 2                 |     a0 = 2;
    0x0000ce8c sw v0, 0x58(sp)                   |     *(var_58h) = v0;
    0x0000ce90 jalr t9                           |     t9 ();
    0x0000ce94 lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0000ce98 move a2, zero                     |     a2 = 0;
    0x0000ce9c move a1, s0                       |     a1 = s0;
    0x0000cea0 lw t9, -0x7c34(gp)                |     t9 = sym.imp.sigaction;
    0x0000cea4 addiu a0, zero, 0xf               |     a0 = 0xf;
    0x0000cea8 jalr t9                           |     t9 ();
    0x0000ceac lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0000ceb0 lui v0, 0x1000                    |     v0 = 0x10000000;
    0x0000ceb4 sw v0, 0x54(sp)                   |     *(var_54h) = v0;
    0x0000ceb8 lw v0, -0x7fd8(gp)                |     v0 = *(gp);
    0x0000cebc lw t9, -0x7c34(gp)                |     t9 = sym.imp.sigaction;
    0x0000cec0 addiu v0, v0, -0x4130             |     v0 += -0x4130;
    0x0000cec4 move a2, zero                     |     a2 = 0;
    0x0000cec8 move a1, s0                       |     a1 = s0;
    0x0000cecc addiu a0, zero, 0x10              |     a0 = 0x10;
    0x0000ced0 sw v0, 0x58(sp)                   |     *(var_58h) = v0;
    0x0000ced4 jalr t9                           |     t9 ();
    0x0000ced8 lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0000cedc move a2, zero                     |     a2 = 0;
    0x0000cee0 move a1, s0                       |     a1 = s0;
    0x0000cee4 lw v0, -0x7fd8(gp)                |     v0 = *(gp);
    0x0000cee8 lw t9, -0x7c34(gp)                |     t9 = sym.imp.sigaction;
    0x0000ceec addiu v0, v0, -0x26a0             |     v0 += -0x26a0;
    0x0000cef0 addiu a0, zero, 0x11              |     a0 = 0x11;
    0x0000cef4 sw v0, 0x58(sp)                   |     *(var_58h) = v0;
    0x0000cef8 jalr t9                           |     t9 ();
    0x0000cefc lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0000cf00 b 0xc234                          |     goto label_0;
                                                 | label_48:
    0x0000cf04 lw a0, 8(s4)                      |     a0 = *((s4 + 2));
    0x0000cf08 move a2, zero                     |     a2 = 0;
    0x0000cf0c move a1, zero                     |     a1 = 0;
    0x0000cf10 jalr t9                           |     t9 ();
    0x0000cf14 move s0, v0                       |     s0 = v0;
    0x0000cf18 lw gp, 0x18(sp)                   |     gp = *(var_18h);
                                                 |     if (v0 < 0) {
    0x0000cf1c bltz v0, 0xd6d4                   |         goto label_55;
                                                 |     }
                                                 | label_21:
    0x0000cf20 lw t9, -0x7818(gp)                |     t9 = sym.imp.ext2fs_sync_device;
    0x0000cf24 addiu a1, zero, 1                 |     a1 = 1;
    0x0000cf28 move a0, s0                       |     a0 = s0;
    0x0000cf2c jalr t9                           |     t9 ();
    0x0000cf30 lw gp, 0x18(sp)                   |     gp = *(var_18h);
                                                 |     if (v0 != 0) {
    0x0000cf34 bnez v0, 0xd5f0                   |         goto label_56;
                                                 |     }
                                                 | label_16:
    0x0000cf38 lw t9, -0x7cb0(gp)                |     t9 = sym.imp.close;
    0x0000cf3c move a0, s0                       |     a0 = s0;
    0x0000cf40 jalr t9                           |     t9 ();
    0x0000cf44 lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0000cf48 b 0xcbbc                          |     goto label_4;
                                                 |     /* str.ea_ver */
                                                 | label_41:
    0x0000cf4c addiu a1, s4, 0x5184              |     a1 = s4 + 0x5184;
    0x0000cf50 move a0, s1                       |     a0 = s1;
    0x0000cf54 jalr t9                           |     t9 ();
    0x0000cf58 lw gp, 0x18(sp)                   |     gp = *(var_18h);
                                                 |     if (v0 != 0) {
    0x0000cf5c beqz v0, 0xcf78                   |         
    0x0000cf60 lw t9, -0x778c(gp)                |         t9 = sym.imp.strcmp;
    0x0000cf64 move a1, fp                       |         a1 = fp;
    0x0000cf68 move a0, s1                       |         a0 = s1;
    0x0000cf6c jalr t9                           |         t9 ();
    0x0000cf70 lw gp, 0x18(sp)                   |         gp = *(var_18h);
                                                 |         if (v0 != 0) {
    0x0000cf74 bnez v0, 0xcf80                   |             goto label_42;
                                                 |         }
                                                 |     }
                                                 | label_24:
    0x0000cf78 addiu s2, s2, 1                   |     s2++;
    0x0000cf7c b 0xc90c                          |     goto label_1;
                                                 | label_42:
    0x0000cf80 lw t9, -0x778c(gp)                |     t9 = sym.imp.strcmp;
    0x0000cf84 lw a1, 0x24(sp)                   |     a1 = *(var_24h_2);
    0x0000cf88 move a0, s1                       |     a0 = s1;
    0x0000cf8c jalr t9                           |     t9 ();
    0x0000cf90 lw gp, 0x18(sp)                   |     gp = *(var_18h);
                                                 |     if (v0 == 0) {
    0x0000cf94 beqz v0, 0xd334                   |         goto label_57;
                                                 |     }
    0x0000cf98 lw v0, 0x2c(sp)                   |     v0 = *(var_2ch);
    0x0000cf9c lw t9, -0x778c(gp)                |     t9 = sym.imp.strcmp;
    0x0000cfa0 addiu a1, v0, 0x51e0              |     a1 = v0 + 0x51e0;
    0x0000cfa4 move a0, s1                       |     a0 = s1;
    0x0000cfa8 jalr t9                           |     t9 ();
    0x0000cfac lw gp, 0x18(sp)                   |     gp = *(var_18h);
                                                 |     if (v0 != 0) {
    0x0000cfb0 bnez v0, 0xd1ec                   |         goto label_58;
                                                 |     }
    0x0000cfb4 addiu s2, s2, 1                   |     s2++;
                                                 |     if (s5 == 0) {
    0x0000cfb8 bnel s5, zero, 0xc90c             |         goto label_1;
                                                 |     }
    0x0000cfbc lw v0, 0x28(s3)                   |     v0 = *((s3 + 10));
    0x0000cfc0 ori v0, v0, 0x1000                |     v0 |= 0x1000;
    0x0000cfc4 sw v0, 0x28(s3)                   |     *((s3 + 10)) = v0;
    0x0000cfc8 b 0xc90c                          |     goto label_1;
                                                 | label_38:
    0x0000cfcc lw v0, 0x38(sp)                   |     v0 = *(var_38h);
                                                 | label_39:
    0x0000cfd0 lw a0, -0x7fd0(gp)                |     a0 = *(gp);
    0x0000cfd4 lw t9, -0x7938(gp)                |     t9 = sym.imp.fwrite;
    0x0000cfd8 lw a3, (v0)                       |     a3 = *(v0);
    0x0000cfdc addiu a2, zero, 0x14              |     a2 = 0x14;
    0x0000cfe0 addiu a1, zero, 1                 |     a1 = 1;
                                                 |     /* str.Invalid_EA_version._n */
    0x0000cfe4 addiu a0, a0, 0x518c              |     a0 += 0x518c;
    0x0000cfe8 jalr t9                           |     t9 ();
    0x0000cfec addiu s2, s2, 1                   |     s2++;
    0x0000cff0 lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0000cff4 b 0xc90c                          |     goto label_1;
                                                 | label_40:
    0x0000cff8 lw a0, 0x30(sp)                   |     a0 = *(var_30h);
    0x0000cffc jalr t9                           |     t9 ();
    0x0000d000 lw gp, 0x18(sp)                   |     gp = *(var_18h);
                                                 |     if (s2 == 0) {
    0x0000d004 beqz s2, 0xc9ec                   |         goto label_5;
                                                 |     }
    0x0000d008 lw s0, 0x38(sp)                   |     s0 = *(var_38h);
    0x0000d00c lw a0, -0x7fd0(gp)                |     a0 = *(gp);
    0x0000d010 lw t9, -0x7938(gp)                |     t9 = sym.imp.fwrite;
    0x0000d014 lw a3, (s0)                       |     a3 = *(s0);
    0x0000d018 addiu a2, zero, 0x8c              |     a2 = 0x8c;
    0x0000d01c addiu a1, zero, 1                 |     a1 = 1;
                                                 |     /* str._nExtended_options_are_separated_by_commas__and_may_take_an_argument_which_nis_set_off_by_an_equals____sign.__Valid_extended_options_are:_n_n */
    0x0000d020 addiu a0, a0, 0x52ac              |     a0 += 0x52ac;
    0x0000d024 jalr t9                           |     t9 ();
    0x0000d028 lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0000d02c lw a3, (s0)                       |     a3 = *(s0);
    0x0000d030 addiu a2, zero, 0x1e              |     a2 = 0x1e;
    0x0000d034 lw a0, -0x7fd0(gp)                |     a0 = *(gp);
    0x0000d038 lw t9, -0x7938(gp)                |     t9 = sym.imp.fwrite;
    0x0000d03c addiu a1, zero, 1                 |     a1 = 1;
                                                 |     /* str._tea_ver_ea_version__1_or_2___n */
    0x0000d040 addiu a0, a0, 0x533c              |     a0 += 0x533c;
    0x0000d044 jalr t9                           |     t9 ();
    0x0000d048 lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0000d04c lw a3, (s0)                       |     a3 = *(s0);
    0x0000d050 addiu a2, zero, 0xb               |     a2 = 0xb;
    0x0000d054 lw a0, -0x7fd0(gp)                |     a0 = *(gp);
    0x0000d058 lw t9, -0x7938(gp)                |     t9 = sym.imp.fwrite;
    0x0000d05c addiu a1, zero, 1                 |     a1 = 1;
                                                 |     /* str._tfragcheck_n */
    0x0000d060 addiu a0, a0, 0x535c              |     a0 += 0x535c;
    0x0000d064 jalr t9                           |     t9 ();
    0x0000d068 lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0000d06c lw a3, (s0)                       |     a3 = *(s0);
    0x0000d070 addiu a2, zero, 0xe               |     a2 = 0xe;
    0x0000d074 lw a0, -0x7fd0(gp)                |     a0 = *(gp);
    0x0000d078 lw t9, -0x7938(gp)                |     t9 = sym.imp.fwrite;
    0x0000d07c addiu a1, zero, 1                 |     a1 = 1;
                                                 |     /* str._tjournal_only_n */
    0x0000d080 addiu a0, a0, 0x5368              |     a0 += 0x5368;
    0x0000d084 jalr t9                           |     t9 ();
    0x0000d088 lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0000d08c lw a3, (s0)                       |     a3 = *(s0);
    0x0000d090 addiu a2, zero, 9                 |     a2 = 9;
    0x0000d094 lw a0, -0x7fd0(gp)                |     a0 = *(gp);
    0x0000d098 lw t9, -0x7938(gp)                |     t9 = sym.imp.fwrite;
    0x0000d09c addiu a1, zero, 1                 |     a1 = 1;
                                                 |     /* str._tdiscard_n */
    0x0000d0a0 addiu a0, a0, 0x5378              |     a0 += 0x5378;
    0x0000d0a4 jalr t9                           |     t9 ();
    0x0000d0a8 lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0000d0ac lw a3, (s0)                       |     a3 = *(s0);
    0x0000d0b0 addiu a2, zero, 0xb               |     a2 = 0xb;
    0x0000d0b4 lw a0, -0x7fd0(gp)                |     a0 = *(gp);
    0x0000d0b8 lw t9, -0x7938(gp)                |     t9 = sym.imp.fwrite;
    0x0000d0bc addiu a1, zero, 1                 |     a1 = 1;
                                                 |     /* str._tnodiscard_n */
    0x0000d0c0 addiu a0, a0, 0x5384              |     a0 += 0x5384;
    0x0000d0c4 jalr t9                           |     t9 ();
    0x0000d0c8 lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0000d0cc lw a3, (s0)                       |     a3 = *(s0);
    0x0000d0d0 addiu a2, zero, 0x12              |     a2 = 0x12;
    0x0000d0d4 lw a0, -0x7fd0(gp)                |     a0 = *(gp);
    0x0000d0d8 lw t9, -0x7938(gp)                |     t9 = sym.imp.fwrite;
    0x0000d0dc addiu a1, zero, 1                 |     a1 = 1;
                                                 |     /* str._toptimize_extents_n */
    0x0000d0e0 addiu a0, a0, 0x5390              |     a0 += 0x5390;
    0x0000d0e4 jalr t9                           |     t9 ();
    0x0000d0e8 lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0000d0ec lw a3, (s0)                       |     a3 = *(s0);
    0x0000d0f0 addiu a2, zero, 0x15              |     a2 = 0x15;
    0x0000d0f4 lw a0, -0x7fd0(gp)                |     a0 = *(gp);
    0x0000d0f8 lw t9, -0x7938(gp)                |     t9 = sym.imp.fwrite;
    0x0000d0fc addiu a1, zero, 1                 |     a1 = 1;
                                                 |     /* str._tno_optimize_extents_n */
    0x0000d100 addiu a0, a0, 0x53a4              |     a0 += 0x53a4;
    0x0000d104 jalr t9                           |     t9 ();
    0x0000d108 lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0000d10c lw a3, (s0)                       |     a3 = *(s0);
    0x0000d110 addiu a2, zero, 0x15              |     a2 = 0x15;
    0x0000d114 lw a0, -0x7fd0(gp)                |     a0 = *(gp);
    0x0000d118 lw t9, -0x7938(gp)                |     t9 = sym.imp.fwrite;
    0x0000d11c addiu a1, zero, 1                 |     a1 = 1;
                                                 |     /* str._tinode_count_fullmap_n */
    0x0000d120 addiu a0, a0, 0x53bc              |     a0 += 0x53bc;
    0x0000d124 jalr t9                           |     t9 ();
    0x0000d128 lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0000d12c lw a3, (s0)                       |     a3 = *(s0);
    0x0000d130 addiu a2, zero, 0x18              |     a2 = 0x18;
    0x0000d134 lw a0, -0x7fd0(gp)                |     a0 = *(gp);
    0x0000d138 lw t9, -0x7938(gp)                |     t9 = sym.imp.fwrite;
    0x0000d13c addiu a1, zero, 1                 |     a1 = 1;
                                                 |     /* str._tno_inode_count_fullmap_n */
    0x0000d140 addiu a0, a0, 0x53d4              |     a0 += 0x53d4;
    0x0000d144 jalr t9                           |     t9 ();
    0x0000d148 lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0000d14c lw a3, (s0)                       |     a3 = *(s0);
    0x0000d150 addiu a2, zero, 0x1c              |     a2 = 0x1c;
    0x0000d154 lw a0, -0x7fd0(gp)                |     a0 = *(gp);
    0x0000d158 lw t9, -0x7938(gp)                |     t9 = sym.imp.fwrite;
    0x0000d15c addiu a1, zero, 1                 |     a1 = 1;
                                                 |     /* str._treadahead_kb_buffer_size__n */
    0x0000d160 addiu a0, a0, 0x53f0              |     a0 += 0x53f0;
    0x0000d164 jalr t9                           |     t9 ();
    0x0000d168 lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0000d16c lw a3, (s0)                       |     a3 = *(s0);
    0x0000d170 addiu a2, zero, 0xd               |     a2 = 0xd;
    0x0000d174 lw a0, -0x7fd0(gp)                |     a0 = *(gp);
    0x0000d178 lw t9, -0x7938(gp)                |     t9 = sym.imp.fwrite;
    0x0000d17c addiu a1, zero, 1                 |     a1 = 1;
                                                 |     /* str._tbmap2extent_n */
    0x0000d180 addiu a0, a0, 0x5410              |     a0 += 0x5410;
    0x0000d184 jalr t9                           |     t9 ();
    0x0000d188 lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0000d18c lw a3, (s0)                       |     a3 = *(s0);
    0x0000d190 addiu a2, zero, 0x10              |     a2 = 0x10;
    0x0000d194 lw a0, -0x7fd0(gp)                |     a0 = *(gp);
    0x0000d198 lw t9, -0x7938(gp)                |     t9 = sym.imp.fwrite;
    0x0000d19c addiu a1, zero, 1                 |     a1 = 1;
                                                 |     /* str._tunshare_blocks_n */
    0x0000d1a0 addiu a0, a0, 0x5420              |     a0 += 0x5420;
    0x0000d1a4 jalr t9                           |     t9 ();
    0x0000d1a8 lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0000d1ac lw a3, (s0)                       |     a3 = *(s0);
    0x0000d1b0 addiu a2, zero, 0xc               |     a2 = 0xc;
    0x0000d1b4 lw a0, -0x7fd0(gp)                |     a0 = *(gp);
    0x0000d1b8 lw t9, -0x7938(gp)                |     t9 = sym.imp.fwrite;
    0x0000d1bc addiu a1, zero, 1                 |     a1 = 1;
                                                 |     /* str._tfixes_only_n */
    0x0000d1c0 addiu a0, a0, 0x5434              |     a0 += 0x5434;
    0x0000d1c4 jalr t9                           |     t9 ();
    0x0000d1c8 lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0000d1cc lw a1, (s0)                       |     a1 = *(s0);
    0x0000d1d0 lw t9, -0x7b94(gp)                |     t9 = sym.imp.fputc;
    0x0000d1d4 addiu a0, zero, 0xa               |     a0 = 0xa;
    0x0000d1d8 jalr t9                           |     t9 ();
    0x0000d1dc lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0000d1e0 lw t9, -0x7a08(gp)                |     t9 = sym.imp.exit;
    0x0000d1e4 addiu a0, zero, 1                 |     a0 = 1;
    0x0000d1e8 jalr t9                           |     t9 ();
                                                 | label_58:
    0x0000d1ec lw t9, -0x778c(gp)                |     t9 = sym.imp.strcmp;
    0x0000d1f0 lw a1, 0x34(sp)                   |     a1 = *(var_34h);
    0x0000d1f4 move a0, s1                       |     a0 = s1;
    0x0000d1f8 jalr t9                           |     t9 ();
    0x0000d1fc lw gp, 0x18(sp)                   |     gp = *(var_18h);
                                                 |     if (v0 == 0) {
    0x0000d200 beqz v0, 0xd5e0                   |         goto label_59;
                                                 |     }
    0x0000d204 lw v0, 0x44(sp)                   |     v0 = *(var_44h);
    0x0000d208 lw t9, -0x778c(gp)                |     t9 = sym.imp.strcmp;
    0x0000d20c addiu a1, v0, 0x51f8              |     a1 = v0 + 0x51f8;
    0x0000d210 move a0, s1                       |     a0 = s1;
    0x0000d214 jalr t9                           |     t9 ();
    0x0000d218 lw gp, 0x18(sp)                   |     gp = *(var_18h);
                                                 |     if (v0 == 0) {
    0x0000d21c beqz v0, 0xd740                   |         goto label_60;
                                                 |     }
    0x0000d220 lw a1, -0x7fd0(gp)                |     a1 = *(gp);
    0x0000d224 lw t9, -0x778c(gp)                |     t9 = sym.imp.strcmp;
                                                 |     /* str.optimize_extents */
    0x0000d228 addiu a1, a1, 0x5204              |     a1 += 0x5204;
    0x0000d22c move a0, s1                       |     a0 = s1;
    0x0000d230 jalr t9                           |     t9 ();
    0x0000d234 lw gp, 0x18(sp)                   |     gp = *(var_18h);
                                                 |     if (v0 == 0) {
    0x0000d238 beqz v0, 0xd53c                   |         goto label_61;
                                                 |     }
    0x0000d23c lw a1, -0x7fd0(gp)                |     a1 = *(gp);
    0x0000d240 lw t9, -0x778c(gp)                |     t9 = sym.imp.strcmp;
                                                 |     /* str.no_optimize_extents */
    0x0000d244 addiu a1, a1, 0x5218              |     a1 += 0x5218;
    0x0000d248 move a0, s1                       |     a0 = s1;
    0x0000d24c jalr t9                           |     t9 ();
    0x0000d250 lw gp, 0x18(sp)                   |     gp = *(var_18h);
                                                 |     if (v0 == 0) {
    0x0000d254 beqz v0, 0xd754                   |         goto label_62;
                                                 |     }
    0x0000d258 lw a1, -0x7fd0(gp)                |     a1 = *(gp);
    0x0000d25c lw t9, -0x778c(gp)                |     t9 = sym.imp.strcmp;
                                                 |     /* str.inode_count_fullmap */
    0x0000d260 addiu a1, a1, 0x522c              |     a1 += 0x522c;
    0x0000d264 move a0, s1                       |     a0 = s1;
    0x0000d268 jalr t9                           |     t9 ();
    0x0000d26c lw gp, 0x18(sp)                   |     gp = *(var_18h);
                                                 |     if (v0 == 0) {
    0x0000d270 beqz v0, 0xd768                   |         goto label_63;
                                                 |     }
    0x0000d274 lw a1, -0x7fd0(gp)                |     a1 = *(gp);
    0x0000d278 lw t9, -0x778c(gp)                |     t9 = sym.imp.strcmp;
                                                 |     /* str.no_inode_count_fullmap */
    0x0000d27c addiu a1, a1, 0x5240              |     a1 += 0x5240;
    0x0000d280 move a0, s1                       |     a0 = s1;
    0x0000d284 jalr t9                           |     t9 ();
    0x0000d288 lw gp, 0x18(sp)                   |     gp = *(var_18h);
                                                 |     if (v0 == 0) {
    0x0000d28c beqz v0, 0xd77c                   |         goto label_64;
                                                 |     }
    0x0000d290 lw a1, -0x7fa8(gp)                |     a1 = *((gp - 8170));
    0x0000d294 lw t9, -0x778c(gp)                |     t9 = sym.imp.strcmp;
                                                 |     /* esilref: 'log_filename' */
    0x0000d298 addiu a1, a1, -0x3110             |     a1 += -0x3110;
    0x0000d29c move a0, s1                       |     a0 = s1;
    0x0000d2a0 jalr t9                           |     t9 ();
    0x0000d2a4 lw gp, 0x18(sp)                   |     gp = *(var_18h);
                                                 |     if (v0 == 0) {
    0x0000d2a8 beqz v0, 0xd794                   |         goto label_65;
                                                 |     }
    0x0000d2ac lw a1, -0x7fd0(gp)                |     a1 = *(gp);
    0x0000d2b0 lw t9, -0x778c(gp)                |     t9 = sym.imp.strcmp;
                                                 |     /* str.problem_log */
    0x0000d2b4 addiu a1, a1, 0x5258              |     a1 += 0x5258;
    0x0000d2b8 move a0, s1                       |     a0 = s1;
    0x0000d2bc jalr t9                           |     t9 ();
    0x0000d2c0 lw gp, 0x18(sp)                   |     gp = *(var_18h);
                                                 |     if (v0 == 0) {
    0x0000d2c4 beqz v0, 0xd7c8                   |         goto label_66;
                                                 |     }
    0x0000d2c8 lw a1, -0x7fd0(gp)                |     a1 = *(gp);
    0x0000d2cc lw t9, -0x778c(gp)                |     t9 = sym.imp.strcmp;
                                                 |     /* str.bmap2extent */
    0x0000d2d0 addiu a1, a1, 0x5264              |     a1 += 0x5264;
    0x0000d2d4 move a0, s1                       |     a0 = s1;
    0x0000d2d8 jalr t9                           |     t9 ();
    0x0000d2dc lw gp, 0x18(sp)                   |     gp = *(var_18h);
                                                 |     if (v0 == 0) {
    0x0000d2e0 beqz v0, 0xd7b8                   |         goto label_67;
                                                 |     }
    0x0000d2e4 lw a1, -0x7fd0(gp)                |     a1 = *(gp);
    0x0000d2e8 lw t9, -0x778c(gp)                |     t9 = sym.imp.strcmp;
                                                 |     /* str.fixes_only */
    0x0000d2ec addiu a1, a1, 0x5270              |     a1 += 0x5270;
    0x0000d2f0 move a0, s1                       |     a0 = s1;
    0x0000d2f4 jalr t9                           |     t9 ();
    0x0000d2f8 lw gp, 0x18(sp)                   |     gp = *(var_18h);
                                                 |     if (v0 == 0) {
    0x0000d2fc beqz v0, 0xd888                   |         goto label_68;
                                                 |     }
    0x0000d300 lw a1, -0x7fd0(gp)                |     a1 = *(gp);
    0x0000d304 lw t9, -0x778c(gp)                |     t9 = sym.imp.strcmp;
                                                 |     /* str.unshare_blocks */
    0x0000d308 addiu a1, a1, 0x527c              |     a1 += 0x527c;
    0x0000d30c move a0, s1                       |     a0 = s1;
    0x0000d310 jalr t9                           |     t9 ();
    0x0000d314 lw gp, 0x18(sp)                   |     gp = *(var_18h);
                                                 |     if (v0 != 0) {
    0x0000d318 bnez v0, 0xd85c                   |         goto label_69;
                                                 |     }
    0x0000d31c lw v0, 0x28(s3)                   |     v0 = *((s3 + 10));
    0x0000d320 lui v1, 4                         |     v1 = 0x40000;
    0x0000d324 addiu v1, v1, 0x100               |     
    0x0000d328 or v0, v0, v1                     |     v0 |= v1;
    0x0000d32c sw v0, 0x28(s3)                   |     *((s3 + 10)) = v0;
    0x0000d330 b 0xc90c                          |     goto label_1;
                                                 | label_57:
    0x0000d334 lw v0, 0x28(s3)                   |     v0 = *((s3 + 10));
    0x0000d338 ori v0, v0, 0x800                 |     v0 |= 0x800;
    0x0000d33c sw v0, 0x28(s3)                   |     *((s3 + 10)) = v0;
    0x0000d340 b 0xc90c                          |     goto label_1;
                                                 | label_35:
    0x0000d344 sw zero, 0x10(s4)                 |     *((s4 + 4)) = 0;
    0x0000d348 b 0xc830                          |     goto label_6;
                                                 | label_27:
    0x0000d34c lw t9, -0x7c5c(gp)                |     t9 = sym.imp.isatty;
    0x0000d350 move a0, zero                     |     a0 = 0;
    0x0000d354 jalr t9                           |     t9 ();
    0x0000d358 lw gp, 0x18(sp)                   |     gp = *(var_18h);
                                                 |     if (v0 != 0) {
    0x0000d35c bnez v0, 0xd6b8                   |         goto label_70;
                                                 |     }
    0x0000d360 lw v0, 0x4c(sp)                   |     v0 = *(var_4ch);
                                                 | label_20:
    0x0000d364 addiu v1, zero, 1                 |     v1 = 1;
    0x0000d368 sb v1, 0x22c(v0)                  |     *(v0) = v1;
    0x0000d36c addiu v1, zero, 2                 |     v1 = 2;
    0x0000d370 sb v1, 0x22e(v0)                  |     *((v0 + 558)) = v1;
    0x0000d374 b 0xc2ec                          |     goto label_7;
                                                 | label_54:
    0x0000d378 lw v0, 0x28(s4)                   |     v0 = *((s4 + 10));
    0x0000d37c ori v0, v0, 1                     |     v0 |= 1;
    0x0000d380 sw v0, 0x28(s4)                   |     *((s4 + 10)) = v0;
    0x0000d384 b 0xc800                          |     goto label_2;
                                                 | label_33:
    0x0000d388 lw a2, -0x7fd0(gp)                |     a2 = *(gp);
    0x0000d38c lw t9, -0x7914(gp)                |     t9 = sym.imp.com_err;
    0x0000d390 lw a0, 4(s4)                      |     a0 = *((s4 + 1));
                                                 |     /* str.The__n_and__D_options_are_incompatible. */
    0x0000d394 addiu a3, a3, 0x5108              |     a3 += 0x5108;
                                                 |     /* esilref: '&s' */
    0x0000d398 addiu a2, a2, 0x62f4              |     a2 += 0x62f4;
    0x0000d39c move a1, zero                     |     a1 = 0;
    0x0000d3a0 jalr t9                           |     t9 ();
    0x0000d3a4 lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0000d3a8 lw a0, 0x4c(sp)                   |     a0 = *(var_4ch);
    0x0000d3ac lw t9, -0x7fb8(gp)                |     t9 = sym.fatal_error;
    0x0000d3b0 move a1, zero                     |     a1 = 0;
    0x0000d3b4 bal 0x29d10                       |     sym_fatal_error ();
    0x0000d3b8 lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0000d3bc lw s4, 0x4c(sp)                   |     s4 = *(var_4ch);
    0x0000d3c0 b 0xc7f0                          |     goto label_8;
                                                 | label_46:
    0x0000d3c4 lw v0, 0x28(s4)                   |     v0 = *((s4 + 10));
                                                 |     if (v1 == v0) {
    0x0000d3c8 bnel v1, v0, 0xcba0               |         goto label_9;
                                                 |     }
    0x0000d3cc lw s3, 0x40(sp)                   |     s3 = *(var_40h);
    0x0000d3d0 lw a1, 0x3c(sp)                   |     a1 = *(var_3ch);
    0x0000d3d4 lw a2, -0x7fd0(gp)                |     a2 = *(gp);
    0x0000d3d8 lw a0, 0x29c(s4)                  |     a0 = *((s4 + 167));
    0x0000d3dc lw t9, -0x7fa4(gp)                |     t9 = sym.profile_get_integer;
    0x0000d3e0 sll v0, s3, 0x16                  |     v0 = s3 << 0x16;
    0x0000d3e4 srl s2, a1, 0xa                   |     s2 = a1 >> 0xa;
    0x0000d3e8 sw s1, 0x14(sp)                   |     *(var_14h) = s1;
    0x0000d3ec sw v1, 0x10(sp)                   |     *(var_10h_2) = v1;
    0x0000d3f0 move a3, zero                     |     a3 = 0;
                                                 |     /* str.readahead_mem_pct */
    0x0000d3f4 addiu a2, a2, 0x54fc              |     a2 += 0x54fc;
                                                 |     /* str.options */
    0x0000d3f8 addiu a1, s0, 0x54e4              |     a1 = s0 + 0x54e4;
    0x0000d3fc or s2, v0, s2                     |     s2 = v0 | s2;
    0x0000d400 jalr t9                           |     t9 ();
    0x0000d404 lw a0, 0x48(sp)                   |     a0 = *(var_48h);
    0x0000d408 lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0000d40c sltiu v0, a0, 0x65                |     v0 = (a0 < 0x65) ? 1 : 0;
    0x0000d410 srl s3, s3, 0xa                   |     s3 >>= 0xa;
                                                 |     if (v0 != 0) {
    0x0000d414 bnez v0, 0xd630                   |         goto label_71;
                                                 |     }
    0x0000d418 lw s4, 0x4c(sp)                   |     s4 = *(var_4ch);
                                                 | label_17:
    0x0000d41c lw a2, -0x7fd0(gp)                |     a2 = *(gp);
    0x0000d420 lw a0, 0x29c(s4)                  |     a0 = *((s4 + 167));
    0x0000d424 lw t9, -0x7fa4(gp)                |     t9 = sym.profile_get_integer;
    0x0000d428 addiu s5, zero, -1                |     s5 = -1;
    0x0000d42c sw s1, 0x14(sp)                   |     *(var_14h) = s1;
    0x0000d430 sw s5, 0x10(sp)                   |     *(var_10h_2) = s5;
    0x0000d434 move a3, zero                     |     a3 = 0;
                                                 |     /* str.readahead_kb */
    0x0000d438 addiu a2, a2, 0x51a4              |     a2 += 0x51a4;
                                                 |     /* str.options */
    0x0000d43c addiu a1, s0, 0x54e4              |     a1 = s0 + 0x54e4;
    0x0000d440 jalr t9                           |     t9 ();
    0x0000d444 lw v0, 0x48(sp)                   |     v0 = *(var_48h);
    0x0000d448 lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0000d44c lw s4, 0x4c(sp)                   |     s4 = *(var_4ch);
                                                 |     if (v0 < 0) {
    0x0000d450 bltz v0, 0xd724                   |         goto label_72;
                                                 |     }
    0x0000d454 sra v1, v0, 0x1f                  |     v1 = v0 >> 0x1f;
    0x0000d458 sw v0, 0x2c0(s4)                  |     *((s4 + 176)) = v0;
    0x0000d45c sw v1, 0x2c4(s4)                  |     *(s4) = v1;
                                                 | label_22:
    0x0000d460 sltu a0, s3, v1                   |     a0 = (s3 < v1) ? 1 : 0;
                                                 | label_23:
    0x0000d464 sw s2, 0x2c0(s4)                  |     *((s4 + 176)) = s2;
                                                 |     if (a0 == 0) {
    0x0000d468 bnel a0, zero, 0xd484             |         goto label_73;
                                                 |     }
    0x0000d46c lw v0, 0x28(s4)                   |     v0 = *((s4 + 10));
                                                 |     if (v1 == s3) {
    0x0000d470 bnel v1, s3, 0xcba0               |         goto label_9;
                                                 |     }
    0x0000d474 sltu v0, s2, v0                   |     v0 = (s2 < v0) ? 1 : 0;
                                                 |     if (v0 == 0) {
    0x0000d478 beql v0, zero, 0xcba0             |         goto label_9;
                                                 |     }
    0x0000d47c lw v0, 0x28(s4)                   |     v0 = *((s4 + 10));
    0x0000d480 sw s2, 0x2c0(s4)                  |     *((s4 + 176)) = s2;
                                                 | label_73:
    0x0000d484 sw s3, 0x2c4(s4)                  |     *(s4) = s3;
    0x0000d488 b 0xcb9c                          |     goto label_10;
                                                 | label_45:
    0x0000d48c lw a2, -0x7fd0(gp)                |     a2 = *(gp);
    0x0000d490 lw t9, -0x7914(gp)                |     t9 = sym.imp.com_err;
    0x0000d494 lw a0, 4(s4)                      |     a0 = *((s4 + 1));
                                                 |     /* str.The__E_bmap2extent_and_fixes_only_options_are_incompatible. */
    0x0000d498 addiu a3, a3, 0x548c              |     a3 += 0x548c;
                                                 |     /* esilref: '&s' */
    0x0000d49c addiu a2, a2, 0x62f4              |     a2 += 0x62f4;
    0x0000d4a0 move a1, zero                     |     a1 = 0;
    0x0000d4a4 jalr t9                           |     t9 ();
    0x0000d4a8 lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0000d4ac lw a0, 0x4c(sp)                   |     a0 = *(var_4ch);
    0x0000d4b0 lw t9, -0x7fb8(gp)                |     t9 = sym.fatal_error;
    0x0000d4b4 move a1, zero                     |     a1 = 0;
    0x0000d4b8 bal 0x29d10                       |     sym_fatal_error ();
    0x0000d4bc lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0000d4c0 b 0xca3c                          |     goto label_11;
                                                 | label_44:
    0x0000d4c4 lw a2, -0x7fd0(gp)                |     a2 = *(gp);
    0x0000d4c8 lw t9, -0x7914(gp)                |     t9 = sym.imp.com_err;
    0x0000d4cc lw a0, 4(s4)                      |     a0 = *((s4 + 1));
                                                 |     /* str.The__D_and__E_fixes_only_options_are_incompatible. */
    0x0000d4d0 addiu a3, a3, 0x5458              |     a3 += 0x5458;
                                                 |     /* esilref: '&s' */
    0x0000d4d4 addiu a2, a2, 0x62f4              |     a2 += 0x62f4;
    0x0000d4d8 move a1, zero                     |     a1 = 0;
    0x0000d4dc jalr t9                           |     t9 ();
    0x0000d4e0 lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0000d4e4 lw a0, 0x4c(sp)                   |     a0 = *(var_4ch);
    0x0000d4e8 lw t9, -0x7fb8(gp)                |     t9 = sym.fatal_error;
    0x0000d4ec move a1, zero                     |     a1 = 0;
    0x0000d4f0 bal 0x29d10                       |     sym_fatal_error ();
    0x0000d4f4 lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0000d4f8 lw s4, 0x4c(sp)                   |     s4 = *(var_4ch);
    0x0000d4fc b 0xca28                          |     goto label_12;
                                                 | label_36:
    0x0000d500 lw a2, -0x7fd0(gp)                |     a2 = *(gp);
    0x0000d504 sll a3, a3, 2                     |     a3 <<= 2;
    0x0000d508 lw t9, -0x7914(gp)                |     t9 = sym.imp.com_err;
    0x0000d50c lw a0, 4(v1)                      |     a0 = *((v1 + 1));
    0x0000d510 lwx a3, a3(s1)                    |     __asm ("lwx a3, a3(s1)");
                                                 |     /* str.Unable_to_resolve__s */
    0x0000d514 addiu a2, a2, 0x50c4              |     a2 += 0x50c4;
    0x0000d518 move a1, zero                     |     a1 = 0;
    0x0000d51c jalr t9                           |     t9 ();
    0x0000d520 lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0000d524 lw a0, 0x4c(sp)                   |     a0 = *(var_4ch);
    0x0000d528 lw t9, -0x7fb8(gp)                |     t9 = sym.fatal_error;
    0x0000d52c move a1, zero                     |     a1 = 0;
    0x0000d530 bal 0x29d10                       |     sym_fatal_error ();
    0x0000d534 lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0000d538 b 0xc864                          |     goto label_13;
                                                 | label_61:
    0x0000d53c lw v0, 0x28(s3)                   |     v0 = *((s3 + 10));
    0x0000d540 lui v1, 0xfffe                    |     v1 = 0xfffeffff;
    0x0000d544 ori v1, v1, 0xffff                |     
    0x0000d548 and v0, v0, v1                    |     v0 &= v1;
    0x0000d54c sw v0, 0x28(s3)                   |     *((s3 + 10)) = v0;
    0x0000d550 b 0xc90c                          |     goto label_1;
                                                 | label_31:
    0x0000d554 lw v0, 0x4c(sp)                   |     v0 = *(var_4ch);
    0x0000d558 lw t9, -0x7fd8(gp)                |     t9 = *(gp);
    0x0000d55c addiu t9, t9, -0x3ec4             |     t9 += -0x3ec4;
    0x0000d560 lw a0, 4(v0)                      |     a0 = *((v0 + 1));
    0x0000d564 bal 0xc13c                        |     fcn_0000c13c ();
                                                 | label_53:
    0x0000d568 lw a2, -0x7fd0(gp)                |     a2 = *(gp);
    0x0000d56c lw t9, -0x7914(gp)                |     t9 = sym.imp.com_err;
    0x0000d570 lw a0, 4(s4)                      |     a0 = *((s4 + 1));
                                                 |     /* str.The__n_and__c_options_are_incompatible. */
    0x0000d574 addiu a3, a3, 0x5130              |     a3 += 0x5130;
                                                 |     /* esilref: '&s' */
    0x0000d578 addiu a2, a2, 0x62f4              |     a2 += 0x62f4;
    0x0000d57c move a1, zero                     |     a1 = 0;
    0x0000d580 jalr t9                           |     t9 ();
    0x0000d584 lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0000d588 lw a0, 0x4c(sp)                   |     a0 = *(var_4ch);
    0x0000d58c lw t9, -0x7fb8(gp)                |     t9 = sym.fatal_error;
    0x0000d590 move a1, zero                     |     a1 = 0;
    0x0000d594 bal 0x29d10                       |     sym_fatal_error ();
    0x0000d598 lw s4, 0x4c(sp)                   |     s4 = *(var_4ch);
    0x0000d59c lw v0, 0x28(s4)                   |     v0 = *((s4 + 10));
    0x0000d5a0 andi v0, v0, 8                    |     v0 &= 8;
    0x0000d5a4 lw gp, 0x18(sp)                   |     gp = *(var_18h);
                                                 |     if (v0 != 0) {
    0x0000d5a8 bnez v0, 0xcd80                   |         goto label_14;
                                                 |     }
    0x0000d5ac lw a0, (s3)                       |     a0 = *(s3);
    0x0000d5b0 b 0xc804                          |     goto label_15;
                                                 | label_43:
    0x0000d5b4 lw v0, 0x38(sp)                   |     v0 = *(var_38h);
    0x0000d5b8 lw a0, -0x7fd0(gp)                |     a0 = *(gp);
    0x0000d5bc lw t9, -0x7938(gp)                |     t9 = sym.imp.fwrite;
    0x0000d5c0 lw a3, (v0)                       |     a3 = *(v0);
    0x0000d5c4 addiu a2, zero, 0x1f              |     a2 = 0x1f;
    0x0000d5c8 addiu a1, zero, 1                 |     a1 = 1;
                                                 |     /* str.Invalid_readahead_buffer_size._n */
    0x0000d5cc addiu a0, a0, 0x51b4              |     a0 += 0x51b4;
    0x0000d5d0 jalr t9                           |     t9 ();
    0x0000d5d4 addiu s2, s2, 1                   |     s2++;
    0x0000d5d8 lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0000d5dc b 0xc90c                          |     goto label_1;
                                                 | label_59:
    0x0000d5e0 lw v0, 0x28(s3)                   |     v0 = *((s3 + 10));
    0x0000d5e4 ori v0, v0, 0x2000                |     v0 |= 0x2000;
    0x0000d5e8 sw v0, 0x28(s3)                   |     *((s3 + 10)) = v0;
    0x0000d5ec b 0xc90c                          |     goto label_1;
                                                 | label_56:
    0x0000d5f0 lw v1, 0x4c(sp)                   |     v1 = *(var_4ch);
    0x0000d5f4 lw a2, -0x7fd0(gp)                |     a2 = *(gp);
    0x0000d5f8 lw a0, -0x7fd0(gp)                |     a0 = *(gp);
    0x0000d5fc lw t9, -0x7914(gp)                |     t9 = sym.imp.com_err;
    0x0000d600 lw a3, 8(v1)                      |     a3 = *((v1 + 2));
    0x0000d604 move a1, v0                       |     a1 = v0;
                                                 |     /* str.while_trying_to_flush__s */
    0x0000d608 addiu a2, a2, 0x5530              |     a2 += 0x5530;
                                                 |     /* str.ext2fs_sync_device */
    0x0000d60c addiu a0, a0, 0x554c              |     a0 += 0x554c;
    0x0000d610 jalr t9                           |     t9 ();
    0x0000d614 lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0000d618 lw a0, 0x4c(sp)                   |     a0 = *(var_4ch);
    0x0000d61c lw t9, -0x7fb8(gp)                |     t9 = sym.fatal_error;
    0x0000d620 move a1, zero                     |     a1 = 0;
    0x0000d624 bal 0x29d10                       |     sym_fatal_error ();
    0x0000d628 lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0000d62c b 0xcf38                          |     goto label_16;
                                                 | label_71:
    0x0000d630 sra v0, a0, 0x1f                  |     v0 = a0 >> 0x1f;
    0x0000d634 mult s3, a0                       |     __asm ("mult s3, a0");
    0x0000d638 multu ac1, a0, s2                 |     __asm ("multu ac1, a0, s2");
    0x0000d63c madd v0, s2                       |     __asm ("madd v0, s2");
    0x0000d640 mfhi a1, ac1                      |     __asm ("mfhi a1, ac1");
    0x0000d644 mflo v0                           |     __asm ("mflo v0");
    0x0000d648 mflo a0, ac1                      |     __asm ("mflo a0, ac1");
    0x0000d64c lw t9, -0x7fa0(gp)                |     t9 = *(gp);
    0x0000d650 lw s4, 0x4c(sp)                   |     s4 = *(var_4ch);
    0x0000d654 addiu a2, zero, 0x64              |     a2 = 0x64;
    0x0000d658 addu a1, v0, a1                   |     a1 = v0 + a1;
    0x0000d65c move a3, zero                     |     a3 = 0;
    0x0000d660 jalr t9                           |     t9 ();
    0x0000d664 lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0000d668 sw v0, 0x2c0(s4)                  |     *((s4 + 176)) = v0;
    0x0000d66c sw v1, 0x2c4(s4)                  |     *(s4) = v1;
    0x0000d670 b 0xd41c                          |     goto label_17;
                                                 | label_51:
    0x0000d674 lw t9, -0x79bc(gp)                |     t9 = sym.imp.malloc;
    0x0000d678 addiu a0, zero, 0xc               |     a0 = 0xc;
    0x0000d67c jalr t9                           |     t9 ();
    0x0000d680 move s0, v0                       |     s0 = v0;
    0x0000d684 lw gp, 0x18(sp)                   |     gp = *(var_18h);
                                                 |     if (v0 == 0) {
    0x0000d688 beqz v0, 0xd824                   |         goto label_74;
                                                 |     }
    0x0000d68c lw v1, -0x7fd0(gp)                |     v1 = *(gp);
                                                 |     /* str.PATH_sbin */
    0x0000d690 addiu v0, v1, 0x55e0              |     v0 = v1 + 0x55e0;
    0x0000d694 lw a1, 0x55e0(v1)                 |     a1 = *((v1 + 5496));
    0x0000d698 lw a0, 4(v0)                      |     a0 = *((v0 + 1));
    0x0000d69c lhu v1, 8(v0)                     |     v1 = *((v0 + 4));
    0x0000d6a0 lbu v0, 0xa(v0)                   |     v0 = *((v0 + 10));
    0x0000d6a4 sw a1, (s0)                       |     *(s0) = a1;
    0x0000d6a8 sw a0, 4(s0)                      |     *((s0 + 1)) = a0;
    0x0000d6ac sh v1, 8(s0)                      |     *((s0 + 4)) = v1;
    0x0000d6b0 sb v0, 0xa(s0)                    |     *((s0 + 10)) = v0;
    0x0000d6b4 b 0xcd1c                          |     goto label_18;
                                                 | label_70:
    0x0000d6b8 lw t9, -0x7c5c(gp)                |     t9 = sym.imp.isatty;
    0x0000d6bc addiu a0, zero, 1                 |     a0 = 1;
    0x0000d6c0 jalr t9                           |     t9 ();
    0x0000d6c4 lw gp, 0x18(sp)                   |     gp = *(var_18h);
                                                 |     if (v0 != 0) {
    0x0000d6c8 bnez v0, 0xc2e0                   |         goto label_19;
                                                 |     }
    0x0000d6cc lw v0, 0x4c(sp)                   |     v0 = *(var_4ch);
    0x0000d6d0 b 0xd364                          |     goto label_20;
                                                 | label_55:
    0x0000d6d4 lw t9, -0x7aa4(gp)                |     t9 = sym.imp.__errno_location;
    0x0000d6d8 jalr t9                           |     t9 ();
    0x0000d6dc nop                               |     
    0x0000d6e0 lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0000d6e4 lw a1, (v0)                       |     a1 = *(v0);
    0x0000d6e8 lw v0, 0x4c(sp)                   |     v0 = *(var_4ch);
    0x0000d6ec lw a2, -0x7fd0(gp)                |     a2 = *(gp);
    0x0000d6f0 lw a0, -0x7fa8(gp)                |     a0 = *((gp - 8170));
    0x0000d6f4 lw a3, 8(v0)                      |     a3 = *((v0 + 2));
    0x0000d6f8 lw t9, -0x7914(gp)                |     t9 = sym.imp.com_err;
                                                 |     /* str.while_opening__s_for_flushing */
    0x0000d6fc addiu a2, a2, 0x5510              |     a2 += 0x5510;
                                                 |     /* esilref: 'open' */
    0x0000d700 addiu a0, a0, -0x24a8             |     a0 += -0x24a8;
    0x0000d704 jalr t9                           |     t9 ();
    0x0000d708 lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0000d70c lw a0, 0x4c(sp)                   |     a0 = *(var_4ch);
    0x0000d710 lw t9, -0x7fb8(gp)                |     t9 = sym.fatal_error;
    0x0000d714 move a1, zero                     |     a1 = 0;
    0x0000d718 bal 0x29d10                       |     sym_fatal_error ();
    0x0000d71c lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0000d720 b 0xcf20                          |     goto label_21;
                                                 | label_72:
    0x0000d724 lw v0, 0x2c0(s4)                  |     v0 = *((s4 + 176));
    0x0000d728 lw v1, 0x2c4(s4)                  |     v1 = *(s4);
                                                 |     if (v0 != s5) {
    0x0000d72c bne v0, s5, 0xd460                |         goto label_22;
                                                 |     }
                                                 |     if (v1 == v0) {
    0x0000d730 beql v1, v0, 0xcba0               |         goto label_9;
                                                 |     }
    0x0000d734 lw v0, 0x28(s4)                   |     v0 = *((s4 + 10));
    0x0000d738 sltu a0, s3, v1                   |     a0 = (s3 < v1) ? 1 : 0;
    0x0000d73c b 0xd464                          |     goto label_23;
                                                 | label_60:
    0x0000d740 lw v0, 0x28(s3)                   |     v0 = *((s3 + 10));
    0x0000d744 addiu v1, zero, -0x2001           |     v1 = -0x2001;
    0x0000d748 and v0, v0, v1                    |     v0 &= v1;
    0x0000d74c sw v0, 0x28(s3)                   |     *((s3 + 10)) = v0;
    0x0000d750 b 0xc90c                          |     goto label_1;
                                                 | label_62:
    0x0000d754 lw v0, 0x28(s3)                   |     v0 = *((s3 + 10));
    0x0000d758 lui v1, 1                         |     v1 = 0x10000;
    0x0000d75c or v0, v0, v1                     |     v0 |= v1;
    0x0000d760 sw v0, 0x28(s3)                   |     *((s3 + 10)) = v0;
    0x0000d764 b 0xc90c                          |     goto label_1;
                                                 | label_63:
    0x0000d768 lw v0, 0x28(s3)                   |     v0 = *((s3 + 10));
    0x0000d76c lui v1, 2                         |     v1 = 0x20000;
    0x0000d770 or v0, v0, v1                     |     v0 |= v1;
    0x0000d774 sw v0, 0x28(s3)                   |     *((s3 + 10)) = v0;
    0x0000d778 b 0xc90c                          |     goto label_1;
                                                 | label_64:
    0x0000d77c lw v0, 0x28(s3)                   |     v0 = *((s3 + 10));
    0x0000d780 lui v1, 0xfffd                    |     v1 = 0xfffdffff;
    0x0000d784 ori v1, v1, 0xffff                |     
    0x0000d788 and v0, v0, v1                    |     v0 &= v1;
    0x0000d78c sw v0, 0x28(s3)                   |     *((s3 + 10)) = v0;
    0x0000d790 b 0xc90c                          |     goto label_1;
                                                 | label_65:
    0x0000d794 lw t9, -0x7fbc(gp)                |     t9 = sym.string_copy;
                                                 |     if (s5 == 0) {
    0x0000d798 beqz s5, 0xcf78                   |         goto label_24;
                                                 |     }
    0x0000d79c move a2, zero                     |     a2 = 0;
    0x0000d7a0 move a1, s5                       |     a1 = s5;
    0x0000d7a4 move a0, s3                       |     a0 = s3;
    0x0000d7a8 bal 0x29f78                       |     sym_string_copy ();
    0x0000d7ac lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0000d7b0 sw v0, 0x18(s3)                   |     *((s3 + 6)) = v0;
    0x0000d7b4 b 0xc90c                          |     goto label_1;
                                                 | label_67:
    0x0000d7b8 lw v0, 0x28(s3)                   |     v0 = *((s3 + 10));
    0x0000d7bc ori v0, v0, 0x4000                |     v0 |= 0x4000;
    0x0000d7c0 sw v0, 0x28(s3)                   |     *((s3 + 10)) = v0;
    0x0000d7c4 b 0xc90c                          |     goto label_1;
                                                 | label_66:
    0x0000d7c8 lw t9, -0x7fbc(gp)                |     t9 = sym.string_copy;
                                                 |     if (s5 == 0) {
    0x0000d7cc beqz s5, 0xcf78                   |         goto label_24;
                                                 |     }
    0x0000d7d0 move a2, zero                     |     a2 = 0;
    0x0000d7d4 move a1, s5                       |     a1 = s5;
    0x0000d7d8 move a0, s3                       |     a0 = s3;
    0x0000d7dc bal 0x29f78                       |     sym_string_copy ();
    0x0000d7e0 lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0000d7e4 sw v0, 0x20(s3)                   |     *((s3 + 8)) = v0;
    0x0000d7e8 b 0xc90c                          |     goto label_1;
                                                 | label_52:
    0x0000d7ec lw a1, -0x7fd0(gp)                |     a1 = *(gp);
    0x0000d7f0 lw t9, -0x7fb8(gp)                |     t9 = sym.fatal_error;
    0x0000d7f4 lw a0, 0x4c(sp)                   |     a0 = *(var_4ch);
                                                 |     /* str.Couldnt_malloc___newpath */
    0x0000d7f8 addiu a1, a1, 0x55ec              |     a1 += 0x55ec;
    0x0000d7fc bal 0x29d10                       |     sym_fatal_error ();
    0x0000d800 lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0000d804 addiu a2, zero, 0xb               |     a2 = 0xb;
    0x0000d808 move a0, zero                     |     a0 = 0;
    0x0000d80c lw a1, -0x7fd0(gp)                |     a1 = *(gp);
    0x0000d810 lw t9, -0x7834(gp)                |     t9 = sym.imp.memcpy;
                                                 |     /* str.PATH_sbin */
    0x0000d814 addiu a1, a1, 0x55e0              |     a1 += 0x55e0;
    0x0000d818 jalr t9                           |     t9 ();
    0x0000d81c lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0000d820 b 0xcce8                          |     goto label_25;
                                                 | label_74:
    0x0000d824 lw a1, -0x7fd0(gp)                |     a1 = *(gp);
    0x0000d828 lw t9, -0x7fb8(gp)                |     t9 = sym.fatal_error;
    0x0000d82c lw a0, 0x4c(sp)                   |     a0 = *(var_4ch);
                                                 |     /* str.Couldnt_malloc___newpath */
    0x0000d830 addiu a1, a1, 0x55ec              |     a1 += 0x55ec;
    0x0000d834 bal 0x29d10                       |     sym_fatal_error ();
    0x0000d838 lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0000d83c addiu a2, zero, 0xb               |     a2 = 0xb;
    0x0000d840 move a0, zero                     |     a0 = 0;
    0x0000d844 lw a1, -0x7fd0(gp)                |     a1 = *(gp);
    0x0000d848 lw t9, -0x7834(gp)                |     t9 = sym.imp.memcpy;
                                                 |     /* str.PATH_sbin */
    0x0000d84c addiu a1, a1, 0x55e0              |     a1 += 0x55e0;
    0x0000d850 jalr t9                           |     t9 ();
    0x0000d854 lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0000d858 b 0xcd1c                          |     goto label_18;
                                                 | label_69:
    0x0000d85c lw v0, 0x38(sp)                   |     v0 = *(var_38h);
    0x0000d860 lw a2, -0x7fd0(gp)                |     a2 = *(gp);
    0x0000d864 lw t9, -0x7c2c(gp)                |     t9 = sym.imp.__fprintf_chk
    0x0000d868 lw a0, (v0)                       |     a0 = *(v0);
    0x0000d86c move a3, s1                       |     a3 = s1;
                                                 |     /* str.Unknown_extended_option:__s_n */
    0x0000d870 addiu a2, a2, 0x528c              |     a2 += 0x528c;
    0x0000d874 addiu a1, zero, 1                 |     a1 = 1;
    0x0000d878 jalr t9                           |     t9 ();
    0x0000d87c addiu s2, s2, 1                   |     s2++;
    0x0000d880 lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0000d884 b 0xc90c                          |     goto label_1;
                                                 | label_68:
    0x0000d888 lw v0, 0x28(s3)                   |     v0 = *((s3 + 10));
    0x0000d88c ori v0, v0, 0x8000                |     v0 |= 0x8000;
    0x0000d890 sw v0, 0x28(s3)                   |     *((s3 + 10)) = v0;
    0x0000d894 b 0xc90c                          |     goto label_1;
                                                 | label_32:
    0x0000d898 lw t9, -0x7fd8(gp)                |     t9 = *(gp);
    0x0000d89c addiu t9, t9, -0x3ec4             |     t9 += -0x3ec4;
    0x0000d8a0 lw a0, 4(s4)                      |     a0 = *((s4 + 1));
    0x0000d8a4 bal 0xc13c                        |     fcn_0000c13c ();
                                                 | label_50:
    0x0000d8a8 lw v0, 0x38(sp)                   |     v0 = *(var_38h);
    0x0000d8ac lw a0, -0x7fd0(gp)                |     a0 = *(gp);
    0x0000d8b0 lw t9, -0x7938(gp)                |     t9 = sym.imp.fwrite;
    0x0000d8b4 lw a3, (v0)                       |     a3 = *(v0);
                                                 |     /* str.The__c_and_the__l__L_options_may_not_be_both_used_at_the_same_time._n */
    0x0000d8b8 addiu a0, a0, 0x5560              |     a0 += 0x5560;
    0x0000d8bc addiu a2, zero, 0x44              |     a2 = 0x44;
    0x0000d8c0 addiu a1, zero, 1                 |     a1 = 1;
    0x0000d8c4 jalr t9                           |     t9 ();
    0x0000d8c8 lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0000d8cc lw t9, -0x7a08(gp)                |     t9 = sym.imp.exit;
    0x0000d8d0 addiu a0, zero, 0x10              |     a0 = 0x10;
    0x0000d8d4 jalr t9                           |     t9 ();
                                                 | label_26:
    0x0000d8d8 lw t9, -0x78a4(gp)                |     t9 = sym.imp.__stack_chk_fail;
    0x0000d8dc jalr t9                           |     t9 ();
    0x0000d8e0 nop                               |     
                                                 | }
    ; assembly                           | /* r2dec pseudo code output */
                                         | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/fsck.ext3 @ 0x373e8 */
                                         | #include <stdint.h>
                                         |  
    ; (fcn) fcn.000373e8 ()              | void fcn_000373e8 () {
    0x000373e8 lui gp, 3                 |     
    0x000373ec addiu gp, gp, 0x29d8      |     
    0x000373f0 addu gp, gp, t9           |     gp += t9;
    0x000373f4 addiu sp, sp, -0x30       |     
    0x000373f8 lw t9, -0x7e0c(gp)        |     t9 = sym.dict_lookup;
    0x000373fc sw gp, 0x18(sp)           |     *(var_18h) = gp;
    0x00037400 sw s2, 0x28(sp)           |     *(var_28h) = s2;
    0x00037404 sw s1, 0x24(sp)           |     *(var_24h) = s1;
    0x00037408 sw ra, 0x2c(sp)           |     *(var_2ch) = ra;
    0x0003740c sw s0, 0x20(sp)           |     *(var_20h) = s0;
    0x00037410 move s2, a0               |     s2 = a0;
    0x00037414 move s1, a1               |     s1 = a1;
    0x00037418 bal 0x3f720               |     sym_dict_lookup ();
    0x0003741c lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     if (v0 == 0) {
    0x00037420 beqz v0, 0x37444          |         goto label_0;
                                         |     }
    0x00037424 lw s0, 0x14(v0)           |     s0 = *((v0 + 5));
    0x00037428 lw ra, 0x2c(sp)           |     ra = *(var_2ch);
                                         |     do {
    0x0003742c move v0, s0               |         v0 = s0;
    0x00037430 lw s2, 0x28(sp)           |         s2 = *(var_28h);
    0x00037434 lw s1, 0x24(sp)           |         s1 = *(var_24h);
    0x00037438 lw s0, 0x20(sp)           |         s0 = *(var_20h);
    0x0003743c addiu sp, sp, 0x30        |         
    0x00037440 jr ra                     |         return v0;
                                         | label_0:
    0x00037444 lw t9, -0x7cd0(gp)        |         t9 = sym.imp.calloc;
    0x00037448 addiu a1, zero, 1         |         a1 = 1;
    0x0003744c addiu a0, zero, 0x50      |         a0 = 0x50;
    0x00037450 jalr t9                   |         t9 ();
    0x00037454 move s0, v0               |         s0 = v0;
    0x00037458 lw gp, 0x18(sp)           |         gp = *(var_18h);
                                         |         if (v0 != 0) {
    0x0003745c beqz v0, 0x37494          |             
    0x00037460 lw t9, -0x7e08(gp)        |             t9 = sym.dict_alloc_insert;
    0x00037464 move a1, s1               |             a1 = s1;
    0x00037468 move a0, s2               |             a0 = s2;
    0x0003746c move a2, v0               |             a2 = v0;
    0x00037470 bal 0x3fa2c               |             sym_dict_alloc_insert ();
    0x00037474 lw ra, 0x2c(sp)           |             ra = *(var_2ch);
    0x00037478 sw s1, 4(s0)              |             *((s0 + 1)) = s1;
    0x0003747c move v0, s0               |             v0 = s0;
    0x00037480 lw s2, 0x28(sp)           |             s2 = *(var_28h);
    0x00037484 lw s1, 0x24(sp)           |             s1 = *(var_24h);
    0x00037488 lw s0, 0x20(sp)           |             s0 = *(var_20h);
    0x0003748c addiu sp, sp, 0x30        |             
    0x00037490 jr ra                     |             return v0;
                                         |         }
    0x00037494 lw v0, -0x77dc(gp)        |         v0 = *((gp - 7671));
    0x00037498 lw a3, -0x7fa8(gp)        |         a3 = *((gp - 8170));
    0x0003749c lw a2, -0x7fa8(gp)        |         a2 = *((gp - 8170));
    0x000374a0 lw a0, (v0)               |         a0 = *(v0);
    0x000374a4 lw v0, -0x7fa8(gp)        |         v0 = *((gp - 8170));
    0x000374a8 lw t9, -0x7c2c(gp)        |         t9 = sym.imp.__fprintf_chk
                                         |         /* str.get_dq */
    0x000374ac addiu v0, v0, -0x2a5c     |         v0 += -0x2a5c;
    0x000374b0 sw v0, 0x14(sp)           |         *(var_14h) = v0;
    0x000374b4 addiu v0, zero, 0x174     |         v0 = aav.0x00000174;
    0x000374b8 sw v0, 0x10(sp)           |         *(var_10h) = v0;
                                         |         /* str..._.._.._git_lib_support_mkquota.c */
    0x000374bc addiu a3, a3, -0x2c2c     |         a3 += -0x2c2c;
                                         |         /* str._ERROR___s:_d:_s::_Unable_to_allocate_dquot_n */
    0x000374c0 addiu a2, a2, -0x2c08     |         a2 += -0x2c08;
    0x000374c4 addiu a1, zero, 1         |         a1 = 1;
    0x000374c8 jalr t9                   |         t9 ();
    0x000374cc lw ra, 0x2c(sp)           |         ra = *(var_2ch);
    0x000374d0 b 0x3742c                 |         
                                         |     } while (1);
                                         | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/fsck.ext3 @ 0x3cbc0 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) fcn.0003cbc0 ()                  | void fcn_0003cbc0 () {
    0x0003cbc0 lui gp, 3                     |     
    0x0003cbc4 addiu gp, gp, -0x2e00         |     
    0x0003cbc8 addu gp, gp, t9               |     gp += t9;
    0x0003cbcc addiu sp, sp, -0x68           |     
    0x0003cbd0 lui v0, 0xd9c0                |     v0 = 0xd9c00000;
    0x0003cbd4 sw s1, 0x58(sp)               |     *(var_58h) = s1;
    0x0003cbd8 lw s1, -0x7838(gp)            |     s1 = *((gp - 7694));
    0x0003cbdc sw s0, 0x54(sp)               |     *(var_54h) = s0;
    0x0003cbe0 move s0, a0                   |     s0 = a0;
    0x0003cbe4 lw a3, (s1)                   |     a3 = *(s1);
    0x0003cbe8 lw a0, 4(a0)                  |     a0 = *((a0 + 1));
    0x0003cbec addiu a2, v0, 0x1f11          |     a2 = v0 + 0x1f11;
    0x0003cbf0 addiu a1, v0, 0x1927          |     a1 = v0 + 0x1927;
    0x0003cbf4 sw gp, 0x18(sp)               |     *(var_18h) = gp;
    0x0003cbf8 addiu v0, v0, 0x3f14          |     v0 += 0x3f14;
    0x0003cbfc addiu v1, zero, 4             |     v1 = 4;
    0x0003cc00 sw ra, 0x64(sp)               |     *(var_64h) = ra;
    0x0003cc04 sw s3, 0x60(sp)               |     *(var_60h) = s3;
    0x0003cc08 sw s2, 0x5c(sp)               |     *(var_5ch) = s2;
    0x0003cc0c sw a3, 0x4c(sp)               |     *(var_4ch) = a3;
    0x0003cc10 sw a2, 0x40(sp)               |     *(var_40h) = a2;
    0x0003cc14 sw a1, 0x44(sp)               |     *(var_44h) = a1;
    0x0003cc18 sw v0, 0x48(sp)               |     *(var_48h) = v0;
                                             |     if (a0 != v1) {
    0x0003cc1c bne a0, v1, 0x3cd1c           |         goto label_0;
                                             |     }
    0x0003cc20 lw v0, (s0)                   |     v0 = *(s0);
    0x0003cc24 addiu v1, sp, 0x50            |     v1 = sp + 0x50;
    0x0003cc28 sll v0, v0, 2                 |     v0 <<= 2;
    0x0003cc2c addu v0, v1, v0               |     v0 = v1 + v0;
    0x0003cc30 lw t9, 0x20(s0)               |     t9 = *((s0 + 8));
    0x0003cc34 lw v0, -0x10(v0)              |     v0 = *((v0 - 4));
    0x0003cc38 addiu s3, s0, 0x10            |     s3 = s0 + 0x10;
    0x0003cc3c sw v0, 0x20(sp)               |     *(var_20h) = v0;
    0x0003cc40 addiu v0, zero, 1             |     v0 = 1;
    0x0003cc44 sw v0, 0x24(sp)               |     *(var_24h_3) = v0;
    0x0003cc48 addiu s2, zero, 8             |     s2 = 8;
    0x0003cc4c addiu v0, sp, 0x20            |     v0 = sp + 0x20;
    0x0003cc50 sw s2, 0x14(sp)               |     *(var_14h_3) = s2;
    0x0003cc54 sw v0, 0x10(sp)               |     *(var_10h_3) = v0;
    0x0003cc58 move a2, zero                 |     a2 = 0;
    0x0003cc5c move a3, zero                 |     a3 = 0;
    0x0003cc60 move a0, s3                   |     a0 = s3;
    0x0003cc64 jalr t9                       |     t9 ();
    0x0003cc68 lw gp, 0x18(sp)               |     gp = *(var_18h);
                                             |     if (v0 != s2) {
    0x0003cc6c bne v0, s2, 0x3cd1c           |         goto label_0;
                                             |     }
    0x0003cc70 addiu v1, zero, 0x48          |     v1 = 0x48;
    0x0003cc74 sw v1, 0x3c(s0)               |     *((s0 + 15)) = v1;
    0x0003cc78 lui v0, 9                     |     v0 = 0x90000;
    0x0003cc7c lw v1, -0x7fc8(gp)            |     v1 = *((gp - 8178));
    0x0003cc80 addiu v0, v0, 0x3a80          |     v0 += 0x3a80;
    0x0003cc84 sw v0, 0x28(s0)               |     *((s0 + 10)) = v0;
    0x0003cc88 sw v0, 0x2c(s0)               |     *((s0 + 11)) = v0;
    0x0003cc8c addiu a0, zero, 2             |     a0 = 2;
    0x0003cc90 addiu v1, v1, 0x1d90          |     v1 += 0x1d90;
    0x0003cc94 sw v0, 0x28(sp)               |     *(var_28h_2) = v0;
    0x0003cc98 sw v0, 0x2c(sp)               |     *(var_2ch_2) = v0;
    0x0003cc9c addiu v0, zero, 0x18          |     v0 = 0x18;
    0x0003cca0 sw a0, 0x30(s0)               |     *((s0 + 12)) = a0;
    0x0003cca4 lw t9, 0x20(s0)               |     t9 = *((s0 + 8));
    0x0003cca8 sw zero, 0x44(s0)             |     *((s0 + 17)) = 0;
    0x0003ccac sw zero, 0x34(s0)             |     *((s0 + 13)) = 0;
    0x0003ccb0 sw zero, 0x38(s0)             |     *((s0 + 14)) = 0;
    0x0003ccb4 sw v1, 0x40(s0)               |     *((s0 + 16)) = v1;
    0x0003ccb8 sw v0, 0x14(sp)               |     *(var_14h_3) = v0;
    0x0003ccbc addiu v0, sp, 0x28            |     v0 = sp + 0x28;
    0x0003ccc0 sw a0, 0x34(sp)               |     *(var_34h_2) = a0;
    0x0003ccc4 sw zero, 0x30(sp)             |     *(var_30h_2) = 0;
    0x0003ccc8 sw zero, 0x38(sp)             |     *(var_38h_2) = 0;
    0x0003cccc sw zero, 0x3c(sp)             |     *(var_3ch_2) = 0;
    0x0003ccd0 sw v0, 0x10(sp)               |     *(var_10h_3) = v0;
    0x0003ccd4 addiu a2, zero, 8             |     a2 = 8;
    0x0003ccd8 move a3, zero                 |     a3 = 0;
    0x0003ccdc move a0, s3                   |     a0 = s3;
    0x0003cce0 jalr t9                       |     t9 ();
    0x0003cce4 xori v0, v0, 0x18             |     v0 ^= 0x18;
    0x0003cce8 sltu v0, zero, v0             |     v0 = (0 < v0) ? 1 : 0;
    0x0003ccec lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0003ccf0 negu v0, v0                   |     __asm ("negu v0, v0");
                                             |     do {
    0x0003ccf4 lw a0, 0x4c(sp)               |         a0 = *(var_4ch);
    0x0003ccf8 lw v1, (s1)                   |         v1 = *(s1);
    0x0003ccfc lw ra, 0x64(sp)               |         ra = *(var_64h);
                                             |         if (a0 != v1) {
    0x0003cd00 bne a0, v1, 0x3cd24           |             goto label_1;
                                             |         }
    0x0003cd04 lw s3, 0x60(sp)               |         s3 = *(var_60h);
    0x0003cd08 lw s2, 0x5c(sp)               |         s2 = *(var_5ch);
    0x0003cd0c lw s1, 0x58(sp)               |         s1 = *(var_58h);
    0x0003cd10 lw s0, 0x54(sp)               |         s0 = *(var_54h);
    0x0003cd14 addiu sp, sp, 0x68            |         
    0x0003cd18 jr ra                         |         return v0;
                                             | label_0:
    0x0003cd1c addiu v0, zero, -1            |         v0 = -1;
    0x0003cd20 b 0x3ccf4                     |         
                                             |     } while (1);
                                             | label_1:
    0x0003cd24 lw t9, -0x78a4(gp)            |     t9 = sym.imp.__stack_chk_fail;
    0x0003cd28 jalr t9                       |     t9 ();
    0x0003cd2c nop                           |     
    0x0003cd30 lui gp, 3                     |     
    0x0003cd34 addiu gp, gp, -0x2f70         |     
    0x0003cd38 addu gp, gp, t9               |     gp += t9;
    0x0003cd3c addiu sp, sp, -0x48           |     
    0x0003cd40 lw v1, 0x38(a0)               |     v1 = *((a0 + 14));
    0x0003cd44 sw s0, 0x40(sp)               |     *(var_40h_2) = s0;
    0x0003cd48 lw s0, -0x7838(gp)            |     s0 = *((gp - 7694));
    0x0003cd4c lw a3, 0x2c(a0)               |     a3 = *((a0 + 11));
    0x0003cd50 lw a2, 0x30(a0)               |     a2 = *((a0 + 12));
    0x0003cd54 lw t0, 0x28(a0)               |     t0 = *((a0 + 10));
    0x0003cd58 lw a1, 0x34(a0)               |     a1 = *((a0 + 13));
    0x0003cd5c lw v0, (s0)                   |     v0 = *(s0);
    0x0003cd60 sw v1, 0x38(sp)               |     *(var_38h) = v1;
    0x0003cd64 addiu v1, zero, 0x18          |     v1 = 0x18;
    0x0003cd68 lw t9, 0x20(a0)               |     t9 = *((a0 + 8));
    0x0003cd6c sw v1, 0x14(sp)               |     *(var_14h) = v1;
    0x0003cd70 addiu v1, sp, 0x24            |     v1 = sp + 0x24;
    0x0003cd74 sw gp, 0x18(sp)               |     *(var_18h_2) = gp;
    0x0003cd78 sw a3, 0x28(sp)               |     *(var_28h) = a3;
    0x0003cd7c sw a2, 0x30(sp)               |     *(var_30h) = a2;
    0x0003cd80 sw v1, 0x10(sp)               |     *(var_10h) = v1;
    0x0003cd84 addiu a0, a0, 0x10            |     a0 += 0x10;
    0x0003cd88 sw ra, 0x44(sp)               |     *(var_44h_2) = ra;
    0x0003cd8c sw t0, 0x24(sp)               |     *(var_24h) = t0;
    0x0003cd90 sw zero, 0x2c(sp)             |     *(var_2ch) = 0;
    0x0003cd94 sw a1, 0x34(sp)               |     *(var_34h) = a1;
    0x0003cd98 addiu a2, zero, 8             |     a2 = 8;
    0x0003cd9c move a3, zero                 |     a3 = 0;
    0x0003cda0 sw v0, 0x3c(sp)               |     *(var_3ch) = v0;
    0x0003cda4 jalr t9                       |     t9 ();
    0x0003cda8 nop                           |     
    0x0003cdac lw a0, 0x3c(sp)               |     a0 = *(var_3ch);
    0x0003cdb0 lw v1, (s0)                   |     v1 = *(s0);
    0x0003cdb4 lw gp, 0x18(sp)               |     gp = *(var_18h_2);
                                             |     if (a0 == v1) {
    0x0003cdb8 bne a0, v1, 0x3cdd8           |         
    0x0003cdbc lw ra, 0x44(sp)               |         ra = *(var_44h_2);
    0x0003cdc0 xori v0, v0, 0x18             |         v0 ^= 0x18;
    0x0003cdc4 sltu v0, zero, v0             |         v0 = (0 < v0) ? 1 : 0;
    0x0003cdc8 lw s0, 0x40(sp)               |         s0 = *(var_40h_2);
    0x0003cdcc negu v0, v0                   |         __asm ("negu v0, v0");
    0x0003cdd0 addiu sp, sp, 0x48            |         
    0x0003cdd4 jr ra                         |         return v0;
                                             |     }
    0x0003cdd8 lw t9, -0x78a4(gp)            |     t9 = sym.imp.__stack_chk_fail;
    0x0003cddc jalr t9                       |     t9 ();
    0x0003cde0 nop                           |     
    0x0003cde4 lui gp, 3                     |     
    0x0003cde8 addiu gp, gp, -0x3024         |     
    0x0003cdec addu gp, gp, t9               |     gp += t9;
    0x0003cdf0 lw v0, -0x77dc(gp)            |     v0 = *((gp - 7671));
    0x0003cdf4 addiu sp, sp, -0x28           |     
    0x0003cdf8 lw a3, -0x7fa8(gp)            |     a3 = *((gp - 8170));
    0x0003cdfc lw a0, (v0)                   |     a0 = *(v0);
    0x0003ce00 lw v0, -0x7fa8(gp)            |     v0 = *((gp - 8170));
    0x0003ce04 lw a2, -0x7fa8(gp)            |     a2 = *((gp - 8170));
                                             |     /* str.v2_report */
    0x0003ce08 addiu v0, v0, -0x1f04         |     v0 += -0x1f04;
    0x0003ce0c lw t9, -0x7c2c(gp)            |     t9 = sym.imp.__fprintf_chk
    0x0003ce10 sw v0, 0x14(sp)               |     *(var_14h_2) = v0;
    0x0003ce14 addiu v0, zero, 0x137         |     v0 = 0x137;
    0x0003ce18 sw ra, 0x24(sp)               |     *(var_24h_2) = ra;
    0x0003ce1c sw gp, 0x18(sp)               |     *(var_18h_3) = gp;
    0x0003ce20 sw v0, 0x10(sp)               |     *(var_10h_2) = v0;
                                             |     /* str..._.._.._git_lib_support_quotaio_v2.c */
    0x0003ce24 addiu a3, a3, -0x20a0         |     a3 += -0x20a0;
                                             |     /* str._ERROR___s:_d:_s::_Not_Implemented._n */
    0x0003ce28 addiu a2, a2, -0x2078         |     a2 += -aav.0x00002078;
    0x0003ce2c addiu a1, zero, 1             |     a1 = 1;
    0x0003ce30 jalr t9                       |     t9 ();
    0x0003ce34 lw ra, 0x24(sp)               |     ra = *(var_24h_2);
    0x0003ce38 addiu v0, zero, -1            |     v0 = -1;
    0x0003ce3c addiu sp, sp, 0x28            |     
    0x0003ce40 jr ra                         |     return v0;
                                             | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/fsck.ext3 @ 0x3d0d8 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) fcn.0003d0d8 ()                  | void fcn_0003d0d8 () {
    0x0003d0d8 lui gp, 3                     |     
    0x0003d0dc addiu gp, gp, -0x3318         |     
    0x0003d0e0 addu gp, gp, t9               |     gp += t9;
    0x0003d0e4 addiu sp, sp, -0x70           |     
    0x0003d0e8 addiu v0, zero, 0x48          |     v0 = 0x48;
    0x0003d0ec sw gp, 0x30(sp)               |     *(var_30h) = gp;
    0x0003d0f0 sw s1, 0x64(sp)               |     *(var_64h) = s1;
    0x0003d0f4 lw s1, -0x7838(gp)            |     s1 = *((gp - 7694));
    0x0003d0f8 sw s2, 0x68(sp)               |     *(var_68h) = s2;
    0x0003d0fc sw s0, 0x60(sp)               |     *(var_60h) = s0;
    0x0003d100 sw ra, 0x6c(sp)               |     *(var_6ch) = ra;
    0x0003d104 sw v0, 0x3c(a0)               |     *((a0 + 15)) = v0;
    0x0003d108 lw v0, -0x7fc8(gp)            |     v0 = *((gp - 8178));
    0x0003d10c lw v1, (s1)                   |     v1 = *(s1);
    0x0003d110 addiu v0, v0, 0x1d90          |     v0 += 0x1d90;
    0x0003d114 sw v0, 0x40(a0)               |     *((a0 + 16)) = v0;
    0x0003d118 lw t9, 0x1c(a0)               |     t9 = *((a0 + 7));
    0x0003d11c addiu v0, sp, 0x44            |     v0 = sp + 0x44;
    0x0003d120 addiu s2, zero, 0x18          |     s2 = 0x18;
    0x0003d124 move s0, a0                   |     s0 = a0;
    0x0003d128 sw s2, 0x14(sp)               |     *(var_14h) = s2;
    0x0003d12c sw v0, 0x10(sp)               |     *(var_10h) = v0;
    0x0003d130 addiu a2, zero, 8             |     a2 = 8;
    0x0003d134 move a3, zero                 |     a3 = 0;
    0x0003d138 addiu a0, a0, 0x10            |     a0 += 0x10;
    0x0003d13c sw v1, 0x5c(sp)               |     *(var_5ch) = v1;
    0x0003d140 jalr t9                       |     t9 ();
    0x0003d144 nop                           |     
    0x0003d148 lw gp, 0x30(sp)               |     gp = *(var_30h);
                                             |     if (v0 != s2) {
    0x0003d14c bne v0, s2, 0x3d26c           |         goto label_2;
                                             |     }
    0x0003d150 lw v0, 0x44(sp)               |     v0 = *(var_44h);
    0x0003d154 lw t9, -0x7900(gp)            |     t9 = sym.imp.ext2fs_file_get_lsize;
    0x0003d158 sw v0, 0x28(s0)               |     *((s0 + 10)) = v0;
    0x0003d15c lw v0, 0x48(sp)               |     v0 = *(var_48h);
    0x0003d160 lw a0, 0x18(s0)               |     a0 = *((s0 + 6));
    0x0003d164 sw v0, 0x2c(s0)               |     *((s0 + 11)) = v0;
    0x0003d168 lw v0, 0x50(sp)               |     v0 = *(var_50h);
    0x0003d16c sw zero, 0x44(s0)             |     *((s0 + 17)) = 0;
    0x0003d170 sw v0, 0x30(s0)               |     *((s0 + 12)) = v0;
    0x0003d174 lw v0, 0x54(sp)               |     v0 = *(var_54h);
    0x0003d178 addiu a1, sp, 0x38            |     a1 = sp + 0x38;
    0x0003d17c sw v0, 0x34(s0)               |     *((s0 + 13)) = v0;
    0x0003d180 lw v0, 0x58(sp)               |     v0 = *(var_58h);
    0x0003d184 sw v0, 0x38(s0)               |     *((s0 + 14)) = v0;
    0x0003d188 jalr t9                       |     t9 ();
    0x0003d18c lw gp, 0x30(sp)               |     gp = *(var_30h);
                                             |     if (v0 != 0) {
    0x0003d190 bnez v0, 0x3d26c              |         goto label_2;
                                             |     }
    0x0003d194 lw a2, 0x3c(sp)               |     a2 = *(var_3ch_2);
    0x0003d198 lw a1, 0x38(sp)               |     a1 = *(var_38h_2);
    0x0003d19c lw v1, 0x30(s0)               |     v1 = *((s0 + 12));
                                             |     if (a2 != 0) {
    0x0003d1a0 bnez a2, 0x3d21c              |         goto label_3;
                                             |     }
    0x0003d1a4 lui v0, 0x8000                |     v0 = 0x80000001;
    0x0003d1a8 addiu v0, v0, 1               |     
    0x0003d1ac sltu v0, a1, v0               |     v0 = (a1 < v0) ? 1 : 0;
    0x0003d1b0 lw a0, -0x77dc(gp)            |     a0 = *((gp - 7671));
                                             |     if (v0 == 0) {
    0x0003d1b4 beqz v0, 0x3d220              |         goto label_4;
                                             |     }
    0x0003d1b8 addiu v0, a1, 0x3ff           |     v0 = a1 + 0x3ff;
    0x0003d1bc sltu a0, v0, a1               |     a0 = (v0 < a1) ? 1 : 0;
    0x0003d1c0 sll a0, a0, 0x16              |     a0 <<= 0x16;
    0x0003d1c4 srl v0, v0, 0xa               |     v0 >>= 0xa;
    0x0003d1c8 or v0, a0, v0                 |     v0 = a0 | v0;
    0x0003d1cc sltu v0, v0, v1               |     v0 = (v0 < v1) ? 1 : 0;
    0x0003d1d0 lw a0, -0x77dc(gp)            |     a0 = *((gp - 7671));
                                             |     if (v0 != 0) {
    0x0003d1d4 bnez v0, 0x3d220              |         goto label_4;
                                             |     }
    0x0003d1d8 lw v0, 0x34(s0)               |     v0 = *((s0 + 13));
    0x0003d1dc sltu a0, v0, v1               |     a0 = (v0 < v1) ? 1 : 0;
    0x0003d1e0 lw a0, -0x77dc(gp)            |     a0 = *((gp - 7671));
                                             |     if (a0 == 0) {
    0x0003d1e4 beqz a0, 0x3d274              |         goto label_5;
                                             |     }
    0x0003d1e8 lw a1, 0x38(s0)               |     a1 = *((s0 + 14));
    0x0003d1ec sltu a0, a1, v1               |     a0 = (a1 < v1) ? 1 : 0;
    0x0003d1f0 move v0, zero                 |     v0 = 0;
                                             |     if (a0 == 0) {
    0x0003d1f4 beqz a0, 0x3d2c4              |         goto label_6;
                                             |     }
                                             |     do {
                                             | label_0:
    0x0003d1f8 lw a0, 0x5c(sp)               |         a0 = *(var_5ch);
    0x0003d1fc lw v1, (s1)                   |         v1 = *(s1);
    0x0003d200 lw ra, 0x6c(sp)               |         ra = *(var_6ch);
                                             |         if (a0 != v1) {
    0x0003d204 bne a0, v1, 0x3d318           |             goto label_7;
                                             |         }
    0x0003d208 lw s2, 0x68(sp)               |         s2 = *(var_68h);
    0x0003d20c lw s1, 0x64(sp)               |         s1 = *(var_64h);
    0x0003d210 lw s0, 0x60(sp)               |         s0 = *(var_60h);
    0x0003d214 addiu sp, sp, 0x70            |         
    0x0003d218 jr ra                         |         return v1;
                                             | label_3:
    0x0003d21c lw a0, -0x77dc(gp)            |         a0 = *((gp - 7671));
                                             | label_4:
    0x0003d220 lw v0, 0x14(s0)               |         v0 = *((s0 + 5));
    0x0003d224 lw a3, -0x7fa8(gp)            |         a3 = *((gp - 8170));
    0x0003d228 lw a0, (a0)                   |         a0 = *(a0);
    0x0003d22c sw v0, 0x18(sp)               |         *(var_18h_2) = v0;
    0x0003d230 lw v0, -0x7fa8(gp)            |         v0 = *((gp - 8170));
    0x0003d234 sw a2, 0x24(sp)               |         *(var_24h_2) = a2;
                                             |         /* str.v2_init_io */
    0x0003d238 addiu v0, v0, -0x1f10         |         v0 += -aav.0x00001f10;
    0x0003d23c lw a2, -0x7fa8(gp)            |         a2 = *((gp - 8170));
    0x0003d240 lw t9, -0x7c2c(gp)            |         t9 = sym.imp.__fprintf_chk
    0x0003d244 sw v0, 0x14(sp)               |         *(var_14h) = v0;
    0x0003d248 addiu v0, zero, 0xc8          |         v0 = 0xc8;
    0x0003d24c sw a1, 0x20(sp)               |         *(var_20h_3) = a1;
    0x0003d250 sw v1, 0x28(sp)               |         *(var_28h_2) = v1;
    0x0003d254 sw v0, 0x10(sp)               |         *(var_10h) = v0;
                                             |         /* str..._.._.._git_lib_support_quotaio_v2.c */
    0x0003d258 addiu a3, a3, -0x20a0         |         a3 += -0x20a0;
                                             |         /* str._ERROR___s:_d:_s::_Quota_inode__u_corrupted:_file_size__llu__dqi_blocks__u_n */
    0x0003d25c addiu a2, a2, -0x2050         |         a2 += -0x2050;
    0x0003d260 addiu a1, zero, 1             |         a1 = 1;
    0x0003d264 jalr t9                       |         t9 ();
    0x0003d268 lw gp, 0x30(sp)               |         gp = *(var_30h);
                                             | label_2:
    0x0003d26c addiu v0, zero, -1            |         v0 = -1;
    0x0003d270 b 0x3d1f8                     |         
                                             |     } while (1);
                                             | label_5:
    0x0003d274 lw a1, 0x14(s0)               |     a1 = *((s0 + 5));
    0x0003d278 lw a3, -0x7fa8(gp)            |     a3 = *((gp - 8170));
    0x0003d27c lw a0, (a0)                   |     a0 = *(a0);
    0x0003d280 sw v0, 0x1c(sp)               |     *(var_1ch_2) = v0;
    0x0003d284 lw v0, -0x7fa8(gp)            |     v0 = *((gp - 8170));
    0x0003d288 lw a2, -0x7fa8(gp)            |     a2 = *((gp - 8170));
                                             |     /* str.v2_init_io */
    0x0003d28c addiu v0, v0, -0x1f10         |     v0 += -aav.0x00001f10;
    0x0003d290 lw t9, -0x7c2c(gp)            |     t9 = sym.imp.__fprintf_chk
    0x0003d294 sw v0, 0x14(sp)               |     *(var_14h) = v0;
    0x0003d298 addiu v0, zero, 0xce          |     v0 = 0xce;
    0x0003d29c sw a1, 0x18(sp)               |     *(var_18h_2) = a1;
    0x0003d2a0 sw v1, 0x20(sp)               |     *(var_20h_3) = v1;
    0x0003d2a4 sw v0, 0x10(sp)               |     *(var_10h) = v0;
                                             |     /* str..._.._.._git_lib_support_quotaio_v2.c */
    0x0003d2a8 addiu a3, a3, -0x20a0         |     a3 += -0x20a0;
                                             |     /* str._ERROR___s:_d:_s::_Quota_inode__u_corrupted:_free_blk__u__dqi_blocks__u_n */
    0x0003d2ac addiu a2, a2, -0x2004         |     a2 += -0x2004;
    0x0003d2b0 addiu a1, zero, 1             |     a1 = 1;
    0x0003d2b4 jalr t9                       |     t9 ();
    0x0003d2b8 lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0003d2bc addiu v0, zero, -1            |     v0 = -1;
    0x0003d2c0 b 0x3d1f8                     |     goto label_0;
                                             | label_6:
    0x0003d2c4 lw a0, -0x77dc(gp)            |     a0 = *((gp - 7671));
    0x0003d2c8 lw v0, 0x14(s0)               |     v0 = *((s0 + 5));
    0x0003d2cc lw a3, -0x7fa8(gp)            |     a3 = *((gp - 8170));
    0x0003d2d0 lw a0, (a0)                   |     a0 = *(a0);
    0x0003d2d4 sw v0, 0x18(sp)               |     *(var_18h_2) = v0;
    0x0003d2d8 lw v0, -0x7fa8(gp)            |     v0 = *((gp - 8170));
    0x0003d2dc lw a2, -0x7fa8(gp)            |     a2 = *((gp - 8170));
                                             |     /* str.v2_init_io */
    0x0003d2e0 addiu v0, v0, -0x1f10         |     v0 += -aav.0x00001f10;
    0x0003d2e4 lw t9, -0x7c2c(gp)            |     t9 = sym.imp.__fprintf_chk
    0x0003d2e8 sw v0, 0x14(sp)               |     *(var_14h) = v0;
    0x0003d2ec addiu v0, zero, 0xd5          |     v0 = 0xd5;
    0x0003d2f0 sw a1, 0x1c(sp)               |     *(var_1ch_2) = a1;
    0x0003d2f4 sw v1, 0x20(sp)               |     *(var_20h_3) = v1;
    0x0003d2f8 sw v0, 0x10(sp)               |     *(var_10h) = v0;
                                             |     /* str..._.._.._git_lib_support_quotaio_v2.c */
    0x0003d2fc addiu a3, a3, -0x20a0         |     a3 += -0x20a0;
                                             |     /* str._ERROR___s:_d:_s::_Quota_inode__u_corrupted:_free_entry__u__dqi_blocks__u_n */
    0x0003d300 addiu a2, a2, -0x1fb8         |     a2 += -0x1fb8;
    0x0003d304 addiu a1, zero, 1             |     a1 = 1;
    0x0003d308 jalr t9                       |     t9 ();
    0x0003d30c lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0003d310 addiu v0, zero, -1            |     v0 = -1;
    0x0003d314 b 0x3d1f8                     |     goto label_0;
                                             | label_7:
    0x0003d318 lw t9, -0x78a4(gp)            |     t9 = sym.imp.__stack_chk_fail;
    0x0003d31c jalr t9                       |     t9 ();
    0x0003d320 nop                           |     
    0x0003d324 lui gp, 3                     |     
    0x0003d328 addiu gp, gp, -0x3564         |     
    0x0003d32c addu gp, gp, t9               |     gp += t9;
    0x0003d330 addiu sp, sp, -0x48           |     
    0x0003d334 lui v0, 0xd9c0                |     v0 = 0xd9c00000;
    0x0003d338 sw s0, 0x3c(sp)               |     *(var_3ch) = s0;
    0x0003d33c lw s0, -0x7838(gp)            |     s0 = *((gp - 7694));
    0x0003d340 addiu t0, v0, 0x1f11          |     t0 = v0 + 0x1f11;
    0x0003d344 addiu a3, v0, 0x1927          |     a3 = v0 + 0x1927;
    0x0003d348 lw t1, (s0)                   |     t1 = *(s0);
    0x0003d34c sw gp, 0x18(sp)               |     *(var_18h) = gp;
    0x0003d350 addiu v0, v0, 0x3f14          |     v0 += 0x3f14;
    0x0003d354 addiu v1, zero, 4             |     v1 = 4;
    0x0003d358 sw ra, 0x44(sp)               |     *(var_44h_2) = ra;
    0x0003d35c sw s1, 0x40(sp)               |     *(var_40h) = s1;
    0x0003d360 sw t1, 0x34(sp)               |     *(var_34h) = t1;
    0x0003d364 sw t0, 0x28(sp)               |     *(var_28h) = t0;
    0x0003d368 sw a3, 0x2c(sp)               |     *(var_2ch) = a3;
    0x0003d36c sw v0, 0x30(sp)               |     *(var_30h_2) = v0;
                                             |     if (a2 == v1) {
    0x0003d370 bne a2, v1, 0x3d3a4           |         
    0x0003d374 lw t9, 0x1c(a0)               |         t9 = *((a0 + 7));
    0x0003d378 addiu v0, sp, 0x20            |         v0 = sp + 0x20;
    0x0003d37c addiu s1, zero, 8             |         s1 = 8;
    0x0003d380 sw a1, 0x4c(sp)               |         *(var_4ch) = a1;
    0x0003d384 sw s1, 0x14(sp)               |         *(var_14h_3) = s1;
    0x0003d388 sw v0, 0x10(sp)               |         *(var_10h_4) = v0;
    0x0003d38c move a2, zero                 |         a2 = 0;
    0x0003d390 move a3, zero                 |         a3 = 0;
    0x0003d394 addiu a0, a0, 0x10            |         a0 += 0x10;
    0x0003d398 jalr t9                       |         t9 ();
    0x0003d39c lw gp, 0x18(sp)               |         gp = *(var_18h);
                                             |         if (v0 == s1) {
    0x0003d3a0 beq v0, s1, 0x3d3c8           |             goto label_8;
                                             |         }
                                             |     }
                                             | label_1:
    0x0003d3a4 move v0, zero                 |     v0 = 0;
                                             |     do {
    0x0003d3a8 lw a0, 0x34(sp)               |         a0 = *(var_34h);
    0x0003d3ac lw v1, (s0)                   |         v1 = *(s0);
    0x0003d3b0 lw ra, 0x44(sp)               |         ra = *(var_44h_2);
                                             |         if (a0 != v1) {
    0x0003d3b4 bne a0, v1, 0x3d43c           |             goto label_9;
                                             |         }
    0x0003d3b8 lw s1, 0x40(sp)               |         s1 = *(var_40h);
    0x0003d3bc lw s0, 0x3c(sp)               |         s0 = *(var_3ch);
    0x0003d3c0 addiu sp, sp, 0x48            |         
    0x0003d3c4 jr ra                         |         return v1;
                                             | label_8:
    0x0003d3c8 lw a1, 0x4c(sp)               |         a1 = *(var_4ch);
    0x0003d3cc addiu v0, sp, 0x38            |         v0 = sp + 0x38;
    0x0003d3d0 sll a1, a1, 2                 |         a1 <<= 2;
    0x0003d3d4 addu a1, v0, a1               |         a1 = v0 + a1;
    0x0003d3d8 lw v0, 0x20(sp)               |         v0 = *(var_20h_2);
    0x0003d3dc lw v1, -0x10(a1)              |         v1 = *((a1 - 4));
    0x0003d3e0 wsbh v0, v0                   |         __asm ("wsbh v0, v0");
    0x0003d3e4 rotr v0, v0, 0x10             |         __asm ("rotr v0, v0, 0x10");
    0x0003d3e8 lw v0, 0x24(sp)               |         v0 = *(var_24h);
                                             |         if (v1 == v0) {
    0x0003d3ec beq v1, v0, 0x3d3fc           |             goto label_10;
                                             |         }
    0x0003d3f0 xori v0, v0, 1                |         v0 ^= 1;
    0x0003d3f4 sltiu v0, v0, 1               |         v0 = (v0 < 1) ? 1 : 0;
    0x0003d3f8 b 0x3d3a8                     |         
                                             |     } while (1);
                                             | label_10:
    0x0003d3fc lw v0, -0x77dc(gp)            |     v0 = *((gp - 7671));
    0x0003d400 lw a3, -0x7fa8(gp)            |     a3 = *((gp - 8170));
    0x0003d404 lw a2, -0x7fa8(gp)            |     a2 = *((gp - 8170));
    0x0003d408 lw a0, (v0)                   |     a0 = *(v0);
    0x0003d40c lw v0, -0x7fa8(gp)            |     v0 = *((gp - 8170));
    0x0003d410 lw t9, -0x7c2c(gp)            |     t9 = sym.imp.__fprintf_chk
                                             |     /* str.v2_check_file */
    0x0003d414 addiu v0, v0, -0x1f20         |     v0 += -0x1f20;
    0x0003d418 sw v0, 0x14(sp)               |     *(var_14h_3) = v0;
    0x0003d41c addiu v0, zero, 0xa4          |     v0 = 0xa4;
    0x0003d420 sw v0, 0x10(sp)               |     *(var_10h_4) = v0;
                                             |     /* str..._.._.._git_lib_support_quotaio_v2.c */
    0x0003d424 addiu a3, a3, -0x20a0         |     a3 += -0x20a0;
                                             |     /* str._ERROR___s:_d:_s::_Your_quota_file_is_stored_in_wrong_endianity_n */
    0x0003d428 addiu a2, a2, -0x1f6c         |     a2 += -aav.0x00001f6c;
    0x0003d42c addiu a1, zero, 1             |     a1 = 1;
    0x0003d430 jalr t9                       |     t9 ();
    0x0003d434 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0003d438 b 0x3d3a4                     |     goto label_1;
                                             | label_9:
    0x0003d43c lw t9, -0x78a4(gp)            |     t9 = sym.imp.__stack_chk_fail;
    0x0003d440 jalr t9                       |     t9 ();
    0x0003d444 nop                           |     
    0x0003d448 lui gp, 3                     |     
    0x0003d44c addiu gp, gp, -0x3688         |     
    0x0003d450 addu gp, gp, t9               |     gp += t9;
    0x0003d454 lwl v0, 3(a1)                 |     __asm ("lwl v0, 3(a1)");
    0x0003d458 addiu sp, sp, -0x78           |     
    0x0003d45c lw t9, -0x7a9c(gp)            |     t9 = sym.imp.memset;
    0x0003d460 sw s2, 0x70(sp)               |     *(var_70h) = s2;
    0x0003d464 sw s1, 0x6c(sp)               |     *(var_6ch_2) = s1;
    0x0003d468 lwr v0, (a1)                  |     __asm ("lwr v0, (a1)");
    0x0003d46c move s1, a0                   |     s1 = a0;
    0x0003d470 lw s2, -0x7838(gp)            |     s2 = *((gp - 7694));
    0x0003d474 sw gp, 0x10(sp)               |     *(var_10h_2) = gp;
    0x0003d478 sw ra, 0x74(sp)               |     *(var_74h) = ra;
    0x0003d47c sw s0, 0x68(sp)               |     *(var_68h_2) = s0;
    0x0003d480 sw v0, 4(s1)                  |     *((s1 + 1)) = v0;
    0x0003d484 lwl v1, 0xb(a1)               |     __asm ("lwl v1, 0xb(a1)");
    0x0003d488 lwl v0, 0xf(a1)               |     __asm ("lwl v0, 0xf(a1)");
    0x0003d48c lw a0, (s2)                   |     a0 = *(s2);
    0x0003d490 move s0, a1                   |     s0 = a1;
    0x0003d494 sw a0, 0x64(sp)               |     *(var_64h_2) = a0;
    0x0003d498 lwr v1, 8(a1)                 |     __asm ("lwr v1, 8(a1)");
    0x0003d49c lwr v0, 0xc(a1)               |     __asm ("lwr v0, 0xc(a1)");
    0x0003d4a0 sw v1, 0x10(s1)               |     *((s1 + 4)) = v1;
    0x0003d4a4 sw v0, 0x14(s1)               |     *((s1 + 5)) = v0;
    0x0003d4a8 lwl v1, 0x13(a1)              |     __asm ("lwl v1, 0x13(a1)");
    0x0003d4ac lwl v0, 0x17(a1)              |     __asm ("lwl v0, 0x17(a1)");
    0x0003d4b0 addiu a2, zero, 0x40          |     a2 = 0x40;
    0x0003d4b4 lwr v1, 0x10(a1)              |     __asm ("lwr v1, 0x10(a1)");
    0x0003d4b8 lwr v0, 0x14(a1)              |     __asm ("lwr v0, 0x14(a1)");
    0x0003d4bc sw v1, 0x18(s1)               |     *((s1 + 6)) = v1;
    0x0003d4c0 sw v0, 0x1c(s1)               |     *((s1 + 7)) = v0;
    0x0003d4c4 lwl a3, 0x23(a1)              |     __asm ("lwl a3, 0x23(a1)");
    0x0003d4c8 lwl v0, 0x27(s0)              |     __asm ("lwl v0, 0x27(s0)");
    0x0003d4cc addiu v1, sp, 0x1c            |     v1 = sp + 0x1c;
    0x0003d4d0 lwr a3, 0x20(s0)              |     __asm ("lwr a3, 0x20(s0)");
    0x0003d4d4 lwr v0, 0x24(s0)              |     __asm ("lwr v0, 0x24(s0)");
    0x0003d4d8 sw a3, 0x28(s1)               |     *((s1 + 10)) = a3;
    0x0003d4dc sw v0, 0x2c(s1)               |     *((s1 + 11)) = v0;
    0x0003d4e0 lwl a3, 0x2b(s0)              |     __asm ("lwl a3, 0x2b(s0)");
    0x0003d4e4 lwl v0, 0x2f(s0)              |     __asm ("lwl v0, 0x2f(s0)");
    0x0003d4e8 move a0, v1                   |     a0 = v1;
    0x0003d4ec lwr a3, 0x28(s0)              |     __asm ("lwr a3, 0x28(s0)");
    0x0003d4f0 lwr v0, 0x2c(s0)              |     __asm ("lwr v0, 0x2c(s0)");
    0x0003d4f4 sw a3, 0x30(s1)               |     *((s1 + 12)) = a3;
    0x0003d4f8 sw v0, 0x34(s1)               |     *((s1 + 13)) = v0;
    0x0003d4fc lwl a3, 0x1b(s0)              |     __asm ("lwl a3, 0x1b(s0)");
    0x0003d500 lwl v0, 0x1f(s0)              |     __asm ("lwl v0, 0x1f(s0)");
    0x0003d504 move a1, zero                 |     a1 = 0;
    0x0003d508 lwr a3, 0x18(s0)              |     __asm ("lwr a3, 0x18(s0)");
    0x0003d50c lwr v0, 0x1c(s0)              |     __asm ("lwr v0, 0x1c(s0)");
    0x0003d510 sw a3, 0x20(s1)               |     *((s1 + 8)) = a3;
    0x0003d514 sw v0, 0x24(s1)               |     *((s1 + 9)) = v0;
    0x0003d518 lwl a3, 0x33(s0)              |     __asm ("lwl a3, 0x33(s0)");
    0x0003d51c lwl v0, 0x37(s0)              |     __asm ("lwl v0, 0x37(s0)");
    0x0003d520 lwr a3, 0x30(s0)              |     __asm ("lwr a3, 0x30(s0)");
    0x0003d524 lwr v0, 0x34(s0)              |     __asm ("lwr v0, 0x34(s0)");
    0x0003d528 sw a3, 0x38(s1)               |     *((s1 + 14)) = a3;
    0x0003d52c sw v0, 0x3c(s1)               |     *((s1 + 15)) = v0;
    0x0003d530 lwl v0, 0x43(s0)              |     __asm ("lwl v0, 0x43(s0)");
    0x0003d534 lwr v0, 0x40(s0)              |     __asm ("lwr v0, 0x40(s0)");
    0x0003d538 sw v0, 0x44(s1)               |     *((s1 + 17)) = v0;
    0x0003d53c lwl v0, 0x3b(s0)              |     __asm ("lwl v0, 0x3b(s0)");
    0x0003d540 lwr v0, 0x38(s0)              |     __asm ("lwr v0, 0x38(s0)");
    0x0003d544 sw v0, 0x40(s1)               |     *((s1 + 16)) = v0;
    0x0003d548 jalr t9                       |     t9 ();
    0x0003d54c lw gp, 0x10(sp)               |     gp = *(var_10h_2);
    0x0003d550 move a0, v0                   |     a0 = v0;
    0x0003d554 addiu v0, zero, 1             |     v0 = 1;
    0x0003d558 lw t9, -0x785c(gp)            |     t9 = sym.imp.memcmp;
    0x0003d55c addiu a2, zero, 0x48          |     a2 = 0x48;
    0x0003d560 move a1, s0                   |     a1 = s0;
    0x0003d564 sw v0, 0x5c(sp)               |     *(var_5ch_2) = v0;
    0x0003d568 sw zero, 0x60(sp)             |     *(var_60h_2) = 0;
    0x0003d56c jalr t9                       |     t9 ();
    0x0003d570 lw gp, 0x10(sp)               |     gp = *(var_10h_2);
                                             |     if (v0 == 0) {
    0x0003d574 bnez v0, 0x3d57c              |         
    0x0003d578 sw zero, 0x44(s1)             |         *((s1 + 17)) = 0;
                                             |     }
    0x0003d57c lw v1, 0x64(sp)               |     v1 = *(var_64h_2);
    0x0003d580 lw v0, (s2)                   |     v0 = *(s2);
    0x0003d584 lw ra, 0x74(sp)               |     ra = *(var_74h);
                                             |     if (v1 == v0) {
    0x0003d588 bne v1, v0, 0x3d5a0           |         
    0x0003d58c lw s2, 0x70(sp)               |         s2 = *(var_70h);
    0x0003d590 lw s1, 0x6c(sp)               |         s1 = *(var_6ch_2);
    0x0003d594 lw s0, 0x68(sp)               |         s0 = *(var_68h_2);
    0x0003d598 addiu sp, sp, 0x78            |         
    0x0003d59c jr ra                         |         return v1;
                                             |     }
    0x0003d5a0 lw t9, -0x78a4(gp)            |     t9 = sym.imp.__stack_chk_fail;
    0x0003d5a4 jalr t9                       |     t9 ();
    0x0003d5a8 nop                           |     
    0x0003d5ac nop                           |     
                                             | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/fsck.ext3 @ 0x3d5b0 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) fcn.0003d5b0 ()                  | void fcn_0003d5b0 () {
    0x0003d5b0 lui gp, 3                     |     
    0x0003d5b4 addiu gp, gp, -0x37f0         |     
    0x0003d5b8 addu gp, gp, t9               |     gp += t9;
    0x0003d5bc addiu sp, sp, -0x38           |     
    0x0003d5c0 lw t9, 0x20(a0)               |     t9 = *((a0 + 8));
    0x0003d5c4 addiu v0, zero, 0x400         |     v0 = aav.0x00000400;
    0x0003d5c8 move a3, zero                 |     a3 = 0;
    0x0003d5cc sw gp, 0x20(sp)               |     *(var_20h) = gp;
    0x0003d5d0 sw s0, 0x2c(sp)               |     *(var_2ch) = s0;
    0x0003d5d4 sw a2, 0x10(sp)               |     *(var_10h) = a2;
    0x0003d5d8 sw ra, 0x34(sp)               |     *(var_34h) = ra;
    0x0003d5dc sw s1, 0x30(sp)               |     *(var_30h) = s1;
    0x0003d5e0 sw v0, 0x14(sp)               |     *(var_14h) = v0;
    0x0003d5e4 sll a2, a1, 0xa               |     a2 = a1 << 0xa;
    0x0003d5e8 addiu a0, a0, 0x10            |     a0 += 0x10;
    0x0003d5ec move s0, a1                   |     s0 = a1;
    0x0003d5f0 jalr t9                       |     t9 ();
    0x0003d5f4 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 >= 0) {
    0x0003d5f8 bltz v0, 0x3d620              |         
    0x0003d5fc lw ra, 0x34(sp)               |         ra = *(var_34h);
    0x0003d600 xori v0, v0, 0x400            |         v0 ^= aav.0x00000400;
    0x0003d604 addiu v1, zero, -0x1c         |         v1 = -0x1c;
                                             |         if (v0 != 0) {
    0x0003d608 movz v1, zero, v0             |             v1 = 0;
                                             |         }
    0x0003d60c lw s1, 0x30(sp)               |         s1 = *(var_30h);
    0x0003d610 lw s0, 0x2c(sp)               |         s0 = *(var_2ch);
    0x0003d614 move v0, v1                   |         v0 = v1;
    0x0003d618 addiu sp, sp, 0x38            |         
    0x0003d61c jr ra                         |         return v0;
                                             |     }
    0x0003d620 lw t9, -0x7aa4(gp)            |     t9 = sym.imp.__errno_location;
    0x0003d624 jalr t9                       |     t9 ();
    0x0003d628 nop                           |     
    0x0003d62c lw a0, (v0)                   |     a0 = *(v0);
    0x0003d630 addiu v0, zero, 0x1c          |     v0 = 0x1c;
    0x0003d634 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (a0 != v0) {
    0x0003d638 beq a0, v0, 0x3d6a4           |         
    0x0003d63c lw v0, -0x77dc(gp)            |         v0 = *((gp - 7671));
    0x0003d640 lw t9, -0x79f4(gp)            |         t9 = sym.imp.strerror;
    0x0003d644 lw s1, (v0)                   |         s1 = *(v0);
    0x0003d648 jalr t9                       |         t9 ();
    0x0003d64c lw gp, 0x20(sp)               |         gp = *(var_20h);
    0x0003d650 sw v0, 0x1c(sp)               |         *(var_1ch) = v0;
    0x0003d654 sw s0, 0x18(sp)               |         *(var_18h) = s0;
    0x0003d658 lw v0, -0x7fa8(gp)            |         v0 = *((gp - 8170));
    0x0003d65c lw a3, -0x7fa8(gp)            |         a3 = *((gp - 8170));
    0x0003d660 lw a2, -0x7fa8(gp)            |         a2 = *((gp - 8170));
                                             |         /* str.write_blk */
    0x0003d664 addiu v0, v0, -0x1b88         |         v0 += -0x1b88;
    0x0003d668 lw t9, -0x7c2c(gp)            |         t9 = sym.imp.__fprintf_chk
    0x0003d66c sw v0, 0x14(sp)               |         *(var_14h) = v0;
    0x0003d670 addiu v0, zero, 0x52          |         v0 = 0x52;
    0x0003d674 move a0, s1                   |         a0 = s1;
    0x0003d678 sw v0, 0x10(sp)               |         *(var_10h) = v0;
                                             |         /* str..._.._.._git_lib_support_quotaio_tree.c */
    0x0003d67c addiu a3, a3, -0x1ef0         |         a3 += -0x1ef0;
                                             |         /* str._ERROR___s:_d:_s::_Cannot_write_block___u_:__s_n */
    0x0003d680 addiu a2, a2, -0x1ec8         |         a2 += -0x1ec8;
    0x0003d684 addiu a1, zero, 1             |         a1 = 1;
    0x0003d688 jalr t9                       |         t9 ();
    0x0003d68c lw ra, 0x34(sp)               |         ra = *(var_34h);
    0x0003d690 lw s1, 0x30(sp)               |         s1 = *(var_30h);
    0x0003d694 lw s0, 0x2c(sp)               |         s0 = *(var_2ch);
    0x0003d698 addiu v0, zero, -0x1c         |         v0 = -0x1c;
    0x0003d69c addiu sp, sp, 0x38            |         
    0x0003d6a0 jr ra                         |         return v0;
                                             |     }
    0x0003d6a4 lw ra, 0x34(sp)               |     ra = *(var_34h);
    0x0003d6a8 lw s1, 0x30(sp)               |     s1 = *(var_30h);
    0x0003d6ac lw s0, 0x2c(sp)               |     s0 = *(var_2ch);
    0x0003d6b0 addiu v0, zero, -0x1c         |     v0 = -0x1c;
    0x0003d6b4 addiu sp, sp, 0x38            |     
    0x0003d6b8 jr ra                         |     return v0;
                                             | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/fsck.ext3 @ 0x3d6bc */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) fcn.0003d6bc ()                  | void fcn_0003d6bc () {
    0x0003d6bc lui gp, 3                     |     
    0x0003d6c0 addiu gp, gp, -0x38fc         |     
    0x0003d6c4 addu gp, gp, t9               |     gp += t9;
    0x0003d6c8 addiu sp, sp, -0x38           |     
    0x0003d6cc lw t9, 0x1c(a0)               |     t9 = *((a0 + 7));
    0x0003d6d0 sw s0, 0x28(sp)               |     *(var_28h) = s0;
    0x0003d6d4 addiu s0, zero, 0x400         |     s0 = aav.0x00000400;
    0x0003d6d8 sw gp, 0x20(sp)               |     *(var_20h) = gp;
    0x0003d6dc sw s2, 0x30(sp)               |     *(var_30h) = s2;
    0x0003d6e0 sw s1, 0x2c(sp)               |     *(var_2ch) = s1;
    0x0003d6e4 sw a2, 0x10(sp)               |     *(var_10h) = a2;
    0x0003d6e8 sw ra, 0x34(sp)               |     *(var_34h) = ra;
    0x0003d6ec move s1, a2                   |     s1 = a2;
    0x0003d6f0 sw s0, 0x14(sp)               |     *(var_14h) = s0;
    0x0003d6f4 sll a2, a1, 0xa               |     a2 = a1 << 0xa;
    0x0003d6f8 move a3, zero                 |     a3 = 0;
    0x0003d6fc addiu a0, a0, 0x10            |     a0 += 0x10;
    0x0003d700 move s2, a1                   |     s2 = a1;
    0x0003d704 jalr t9                       |     t9 ();
    0x0003d708 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 >= 0) {
    0x0003d70c bltz v0, 0x3d750              |         
    0x0003d710 lw ra, 0x34(sp)               |         ra = *(var_34h);
                                             |         if (v0 == s0) {
    0x0003d714 bne v0, s0, 0x3d72c           |             
    0x0003d718 lw s2, 0x30(sp)               |             s2 = *(var_30h);
    0x0003d71c lw s1, 0x2c(sp)               |             s1 = *(var_2ch);
    0x0003d720 lw s0, 0x28(sp)               |             s0 = *(var_28h);
    0x0003d724 addiu sp, sp, 0x38            |             
    0x0003d728 jr ra                         |             return v0;
                                             |         }
    0x0003d72c lw s2, 0x30(sp)               |         s2 = *(var_30h);
    0x0003d730 subu a2, s0, v0               |         __asm ("subu a2, s0, v0");
    0x0003d734 addu a0, s1, v0               |         a0 = s1 + v0;
    0x0003d738 lw s0, 0x28(sp)               |         s0 = *(var_28h);
    0x0003d73c lw s1, 0x2c(sp)               |         s1 = *(var_2ch);
    0x0003d740 lw t9, -0x7a9c(gp)            |         t9 = sym.imp.memset;
    0x0003d744 move a1, zero                 |         a1 = 0;
    0x0003d748 addiu sp, sp, 0x38            |         
    0x0003d74c jr t9                         |         t9 ();
                                             |     }
    0x0003d750 lw v0, -0x77dc(gp)            |     v0 = *((gp - 7671));
    0x0003d754 lw t9, -0x7aa4(gp)            |     t9 = sym.imp.__errno_location;
    0x0003d758 lw s0, (v0)                   |     s0 = *(v0);
    0x0003d75c jalr t9                       |     t9 ();
    0x0003d760 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x0003d764 lw t9, -0x79f4(gp)            |     t9 = sym.imp.strerror;
    0x0003d768 lw a0, (v0)                   |     a0 = *(v0);
    0x0003d76c jalr t9                       |     t9 ();
    0x0003d770 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x0003d774 sw v0, 0x1c(sp)               |     *(var_1ch) = v0;
    0x0003d778 sw s2, 0x18(sp)               |     *(var_18h) = s2;
    0x0003d77c lw v0, -0x7fa8(gp)            |     v0 = *((gp - 8170));
    0x0003d780 lw a3, -0x7fa8(gp)            |     a3 = *((gp - 8170));
    0x0003d784 lw a2, -0x7fa8(gp)            |     a2 = *((gp - 8170));
                                             |     /* str.read_blk */
    0x0003d788 addiu v0, v0, -0x1b68         |     v0 += -0x1b68;
    0x0003d78c lw t9, -0x7c2c(gp)            |     t9 = sym.imp.__fprintf_chk
    0x0003d790 sw v0, 0x14(sp)               |     *(var_14h) = v0;
    0x0003d794 addiu v0, zero, 0x45          |     v0 = 0x45;
    0x0003d798 move a0, s0                   |     a0 = s0;
    0x0003d79c sw v0, 0x10(sp)               |     *(var_10h) = v0;
                                             |     /* str..._.._.._git_lib_support_quotaio_tree.c */
    0x0003d7a0 addiu a3, a3, -0x1ef0         |     a3 += -0x1ef0;
                                             |     /* str._ERROR___s:_d:_s::_Cannot_read_block__u:__s_n */
    0x0003d7a4 addiu a2, a2, -0x1e98         |     a2 += -0x1e98;
    0x0003d7a8 addiu a1, zero, 1             |     a1 = 1;
    0x0003d7ac jalr t9                       |     t9 ();
    0x0003d7b0 lw ra, 0x34(sp)               |     ra = *(var_34h);
    0x0003d7b4 lw s2, 0x30(sp)               |     s2 = *(var_30h);
    0x0003d7b8 lw s1, 0x2c(sp)               |     s1 = *(var_2ch);
    0x0003d7bc lw s0, 0x28(sp)               |     s0 = *(var_28h);
    0x0003d7c0 addiu sp, sp, 0x38            |     
    0x0003d7c4 jr ra                         |     return v0;
                                             | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/fsck.ext3 @ 0x3d7c8 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) fcn.0003d7c8 ()                  | void fcn_0003d7c8 () {
    0x0003d7c8 lui gp, 3                     |     
    0x0003d7cc addiu gp, gp, -0x3a08         |     
    0x0003d7d0 addu gp, gp, t9               |     gp += t9;
    0x0003d7d4 sltu v1, a2, a1               |     v1 = (a2 < a1) ? 1 : 0;
    0x0003d7d8 move v0, zero                 |     v0 = 0;
                                             |     if (v1 != 0) {
    0x0003d7dc beqz v1, 0x3d7e8              |         
    0x0003d7e0 jr ra                         |         return v0;
    0x0003d7e4 nop                           |         
                                             |     }
    0x0003d7e8 addiu sp, sp, -0x40           |     
    0x0003d7ec lw v0, -0x77dc(gp)            |     v0 = *((gp - 7671));
    0x0003d7f0 lw t9, -0x7cfc(gp)            |     t9 = sym.quota_type2name;
    0x0003d7f4 sw ra, 0x3c(sp)               |     *(var_3ch) = ra;
    0x0003d7f8 sw s2, 0x38(sp)               |     *(var_38h) = s2;
    0x0003d7fc sw s1, 0x34(sp)               |     *(var_34h) = s1;
    0x0003d800 sw s0, 0x30(sp)               |     *(var_30h) = s0;
    0x0003d804 sw gp, 0x28(sp)               |     *(var_28h) = gp;
    0x0003d808 move s0, a2                   |     s0 = a2;
    0x0003d80c move s1, a1                   |     s1 = a1;
    0x0003d810 lw s2, (v0)                   |     s2 = *(v0);
    0x0003d814 bal 0x3bc80                   |     sym_quota_type2name ();
    0x0003d818 lw gp, 0x28(sp)               |     gp = *(var_28h);
    0x0003d81c sw v0, 0x20(sp)               |     *(var_20h) = v0;
    0x0003d820 sw s1, 0x1c(sp)               |     *(var_1ch) = s1;
    0x0003d824 lw v0, -0x7fa8(gp)            |     v0 = *((gp - 8170));
    0x0003d828 lw a3, -0x7fa8(gp)            |     a3 = *((gp - 8170));
    0x0003d82c lw a2, -0x7fa8(gp)            |     a2 = *((gp - 8170));
                                             |     /* str.check_reference */
    0x0003d830 addiu v0, v0, -0x1bd0         |     v0 += -0x1bd0;
    0x0003d834 lw t9, -0x7c2c(gp)            |     t9 = sym.imp.__fprintf_chk
    0x0003d838 sw v0, 0x14(sp)               |     *(var_14h) = v0;
    0x0003d83c addiu v0, zero, 0x224         |     v0 = aav.0x00000224;
    0x0003d840 sw s0, 0x18(sp)               |     *(var_18h) = s0;
    0x0003d844 move a0, s2                   |     a0 = s2;
    0x0003d848 sw v0, 0x10(sp)               |     *(var_10h) = v0;
                                             |     /* str..._.._.._git_lib_support_quotaio_tree.c */
    0x0003d84c addiu a3, a3, -0x1ef0         |     a3 += -0x1ef0;
                                             |     /* str._ERROR___s:_d:_s::_Illegal_reference___u____u__in__s_quota_file_n */
    0x0003d850 addiu a2, a2, -0x1e68         |     a2 += -0x1e68;
    0x0003d854 addiu a1, zero, 1             |     a1 = 1;
    0x0003d858 jalr t9                       |     t9 ();
    0x0003d85c lw ra, 0x3c(sp)               |     ra = *(var_3ch);
    0x0003d860 lw s2, 0x38(sp)               |     s2 = *(var_38h);
    0x0003d864 lw s1, 0x34(sp)               |     s1 = *(var_34h);
    0x0003d868 lw s0, 0x30(sp)               |     s0 = *(var_30h);
    0x0003d86c addiu v0, zero, -1            |     v0 = -1;
    0x0003d870 addiu sp, sp, 0x40            |     
    0x0003d874 jr ra                         |     return v0;
                                             | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/fsck.ext3 @ 0x3d878 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) fcn.0003d878 ()                  | void fcn_0003d878 () {
    0x0003d878 lui gp, 3                     |     
    0x0003d87c addiu gp, gp, -0x3ab8         |     
    0x0003d880 addu gp, gp, t9               |     gp += t9;
    0x0003d884 addiu sp, sp, -0x30           |     
    0x0003d888 lw t9, -0x7cd0(gp)            |     t9 = sym.imp.calloc;
    0x0003d88c addiu a1, zero, 1             |     a1 = 1;
    0x0003d890 sw gp, 0x18(sp)               |     *(var_18h) = gp;
    0x0003d894 sw s0, 0x20(sp)               |     *(var_20h) = s0;
    0x0003d898 sw ra, 0x2c(sp)               |     *(var_2ch) = ra;
    0x0003d89c sw s2, 0x28(sp)               |     *(var_28h) = s2;
    0x0003d8a0 sw s1, 0x24(sp)               |     *(var_24h) = s1;
    0x0003d8a4 move s0, a0                   |     s0 = a0;
    0x0003d8a8 addiu a0, zero, 0x400         |     a0 = aav.0x00000400;
    0x0003d8ac jalr t9                       |     t9 ();
    0x0003d8b0 lw gp, 0x18(sp)               |     gp = *(var_18h);
                                             |     if (v0 == 0) {
    0x0003d8b4 beqz v0, 0x3d94c              |         goto label_1;
                                             |     }
    0x0003d8b8 lw s1, 0x34(s0)               |     s1 = *((s0 + 13));
    0x0003d8bc move s2, v0                   |     s2 = v0;
                                             |     if (s1 != 0) {
    0x0003d8c0 bnez s1, 0x3d924              |         goto label_2;
                                             |     }
    0x0003d8c4 lw t9, -0x7fd0(gp)            |     t9 = *(gp);
    0x0003d8c8 lw a1, 0x30(s0)               |     a1 = *((s0 + 12));
    0x0003d8cc move a2, v0                   |     a2 = v0;
                                             |     /* fcn.0003d5b0 */
    0x0003d8d0 addiu t9, t9, -0x2a50         |     t9 += -0x2a50;
    0x0003d8d4 move a0, s0                   |     a0 = s0;
    0x0003d8d8 bal 0x3d5b0                   |     fcn_0003d5b0 ();
    0x0003d8dc lw gp, 0x18(sp)               |     gp = *(var_18h);
                                             |     if (v0 < 0) {
    0x0003d8e0 bltz v0, 0x3d9a4              |         goto label_3;
                                             |     }
    0x0003d8e4 lw s1, 0x30(s0)               |     s1 = *((s0 + 12));
    0x0003d8e8 addiu v0, s1, 1               |     v0 = s1 + 1;
    0x0003d8ec sw v0, 0x30(s0)               |     *((s0 + 12)) = v0;
                                             |     do {
    0x0003d8f0 lw v0, 0xc(s0)                |         v0 = *((s0 + 3));
    0x0003d8f4 lw t9, -0x7814(gp)            |         t9 = sym.imp.free;
    0x0003d8f8 ori v0, v0, 1                 |         v0 |= 1;
    0x0003d8fc sw v0, 0xc(s0)                |         *((s0 + 3)) = v0;
    0x0003d900 move a0, s2                   |         a0 = s2;
    0x0003d904 jalr t9                       |         t9 ();
    0x0003d908 lw ra, 0x2c(sp)               |         ra = *(var_2ch);
                                             | label_0:
    0x0003d90c move v0, s1                   |         v0 = s1;
    0x0003d910 lw s2, 0x28(sp)               |         s2 = *(var_28h);
    0x0003d914 lw s1, 0x24(sp)               |         s1 = *(var_24h);
    0x0003d918 lw s0, 0x20(sp)               |         s0 = *(var_20h);
    0x0003d91c addiu sp, sp, 0x30            |         
    0x0003d920 jr ra                         |         return v0;
                                             | label_2:
    0x0003d924 lw t9, -0x7fd0(gp)            |         t9 = *(gp);
    0x0003d928 move a2, v0                   |         a2 = v0;
    0x0003d92c move a1, s1                   |         a1 = s1;
                                             |         /* fcn.0003d6bc */
    0x0003d930 addiu t9, t9, -0x2944         |         t9 += -0x2944;
    0x0003d934 move a0, s0                   |         a0 = s0;
    0x0003d938 bal 0x3d6bc                   |         fcn_0003d6bc ();
    0x0003d93c lw v0, (s2)                   |         v0 = *(s2);
    0x0003d940 lw gp, 0x18(sp)               |         gp = *(var_18h);
    0x0003d944 sw v0, 0x34(s0)               |         *((s0 + 13)) = v0;
    0x0003d948 b 0x3d8f0                     |         
                                             |     } while (1);
                                             | label_1:
    0x0003d94c lw v0, -0x77dc(gp)            |     v0 = *((gp - 7671));
    0x0003d950 lw a3, -0x7fa8(gp)            |     a3 = *((gp - 8170));
    0x0003d954 lw a2, -0x7fa8(gp)            |     a2 = *((gp - 8170));
    0x0003d958 lw a0, (v0)                   |     a0 = *(v0);
    0x0003d95c lw v0, -0x7fa8(gp)            |     v0 = *((gp - 8170));
    0x0003d960 lw t9, -0x7c2c(gp)            |     t9 = sym.imp.__fprintf_chk
                                             |     /* str.getdqbuf */
    0x0003d964 addiu v0, v0, -0x1b4c         |     v0 += -0x1b4c;
    0x0003d968 sw v0, 0x14(sp)               |     *(var_14h) = v0;
    0x0003d96c addiu v0, zero, 0x1b          |     v0 = 0x1b;
    0x0003d970 sw v0, 0x10(sp)               |     *(var_10h) = v0;
                                             |     /* str..._.._.._git_lib_support_quotaio_tree.c */
    0x0003d974 addiu a3, a3, -0x1ef0         |     a3 += -0x1ef0;
                                             |     /* str._ERROR___s:_d:_s::_Failed_to_allocate_dqbuf_n */
    0x0003d978 addiu a2, a2, -0x1e24         |     a2 += -0x1e24;
    0x0003d97c addiu a1, zero, 1             |     a1 = 1;
    0x0003d980 jalr t9                       |     t9 ();
    0x0003d984 lw ra, 0x2c(sp)               |     ra = *(var_2ch);
    0x0003d988 addiu s1, zero, -0xc          |     s1 = -0xc;
    0x0003d98c move v0, s1                   |     v0 = s1;
    0x0003d990 lw s2, 0x28(sp)               |     s2 = *(var_28h);
    0x0003d994 lw s1, 0x24(sp)               |     s1 = *(var_24h);
    0x0003d998 lw s0, 0x20(sp)               |     s0 = *(var_20h);
    0x0003d99c addiu sp, sp, 0x30            |     
    0x0003d9a0 jr ra                         |     return v0;
                                             | label_3:
    0x0003d9a4 lw t9, -0x7814(gp)            |     t9 = sym.imp.free;
    0x0003d9a8 move a0, s2                   |     a0 = s2;
    0x0003d9ac jalr t9                       |     t9 ();
    0x0003d9b0 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0003d9b4 addiu a1, zero, 1             |     a1 = 1;
    0x0003d9b8 addiu s1, zero, -0x1c         |     s1 = -0x1c;
    0x0003d9bc lw v0, -0x77dc(gp)            |     v0 = *((gp - 7671));
    0x0003d9c0 lw a3, -0x7fa8(gp)            |     a3 = *((gp - 8170));
    0x0003d9c4 lw a2, -0x7fa8(gp)            |     a2 = *((gp - 8170));
    0x0003d9c8 lw a0, (v0)                   |     a0 = *(v0);
    0x0003d9cc lw v0, -0x7fa8(gp)            |     v0 = *((gp - 8170));
    0x0003d9d0 lw t9, -0x7c2c(gp)            |     t9 = sym.imp.__fprintf_chk
                                             |     /* str.get_free_dqblk */
    0x0003d9d4 addiu v0, v0, -0x1b5c         |     v0 += -0x1b5c;
    0x0003d9d8 sw v0, 0x14(sp)               |     *(var_14h) = v0;
    0x0003d9dc addiu v0, zero, 0x6d          |     v0 = 0x6d;
    0x0003d9e0 sw v0, 0x10(sp)               |     *(var_10h) = v0;
                                             |     /* str..._.._.._git_lib_support_quotaio_tree.c */
    0x0003d9e4 addiu a3, a3, -0x1ef0         |     a3 += -0x1ef0;
                                             |     /* str._ERROR___s:_d:_s::_Cannot_allocate_new_quota_block__out_of_disk_space_._n */
    0x0003d9e8 addiu a2, a2, -0x1df4         |     a2 += -0x1df4;
    0x0003d9ec jalr t9                       |     t9 ();
    0x0003d9f0 lw ra, 0x2c(sp)               |     ra = *(var_2ch);
    0x0003d9f4 b 0x3d90c                     |     goto label_0;
                                             | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/fsck.ext3 @ 0x3d9f8 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) fcn.0003d9f8 ()                  | void fcn_0003d9f8 () {
    0x0003d9f8 lui gp, 3                     |     
    0x0003d9fc addiu gp, gp, -0x3c38         |     
    0x0003da00 addu gp, gp, t9               |     gp += t9;
    0x0003da04 addiu sp, sp, -0x40           |     
    0x0003da08 lw t9, -0x7cd0(gp)            |     t9 = sym.imp.calloc;
    0x0003da0c sw gp, 0x18(sp)               |     *(var_18h) = gp;
    0x0003da10 sw s6, 0x38(sp)               |     *(var_38h) = s6;
    0x0003da14 sw s1, 0x24(sp)               |     *(var_24h) = s1;
    0x0003da18 sw s0, 0x20(sp)               |     *(var_20h) = s0;
    0x0003da1c sw ra, 0x3c(sp)               |     *(var_3ch) = ra;
    0x0003da20 sw s5, 0x34(sp)               |     *(var_34h) = s5;
    0x0003da24 sw s4, 0x30(sp)               |     *(var_30h) = s4;
    0x0003da28 sw s3, 0x2c(sp)               |     *(var_2ch) = s3;
    0x0003da2c sw s2, 0x28(sp)               |     *(var_28h) = s2;
    0x0003da30 move s1, a0                   |     s1 = a0;
    0x0003da34 move s0, a1                   |     s0 = a1;
    0x0003da38 addiu a0, zero, 0x400         |     a0 = aav.0x00000400;
    0x0003da3c addiu a1, zero, 1             |     a1 = 1;
    0x0003da40 move s6, a2                   |     s6 = a2;
    0x0003da44 jalr t9                       |     t9 ();
    0x0003da48 lw gp, 0x18(sp)               |     gp = *(var_18h);
                                             |     if (v0 == 0) {
    0x0003da4c beqz v0, 0x3db68              |         goto label_1;
                                             |     }
    0x0003da50 lwl s3, 3(s0)                 |     __asm ("lwl s3, 3(s0)");
    0x0003da54 lwl s4, 7(s0)                 |     __asm ("lwl s4, 7(s0)");
    0x0003da58 move s2, v0                   |     s2 = v0;
    0x0003da5c lwr s3, (s0)                  |     __asm ("lwr s3, (s0)");
    0x0003da60 lwr s4, 4(s0)                 |     __asm ("lwr s4, 4(s0)");
                                             |     if (s3 != 0) {
    0x0003da64 bnez s3, 0x3dadc              |         goto label_2;
                                             |     }
    0x0003da68 lw s5, -0x7fd0(gp)            |     s5 = *(gp);
                                             |     /* fcn.0003d5b0 */
    0x0003da6c addiu s5, s5, -0x2a50         |     s5 += -0x2a50;
                                             |     if (s4 != 0) {
    0x0003da70 bnez s4, 0x3db28              |         goto label_3;
                                             |     }
                                             |     do {
    0x0003da74 lw v0, 0xc(s1)                |         v0 = *((s1 + 3));
    0x0003da78 sw s3, 0x38(s1)               |         *((s1 + 14)) = s3;
    0x0003da7c ori v0, v0, 1                 |         v0 |= 1;
    0x0003da80 sw v0, 0xc(s1)                |         *((s1 + 3)) = v0;
                                             | label_0:
    0x0003da84 lw t9, -0x7814(gp)            |         t9 = sym.imp.free;
    0x0003da88 move a0, s2                   |         a0 = s2;
    0x0003da8c jalr t9                       |         t9 ();
    0x0003da90 lw gp, 0x18(sp)               |         gp = *(var_18h);
    0x0003da94 swl zero, 7(s0)               |         __asm ("swl zero, 7(s0)");
    0x0003da98 swr zero, 4(s0)               |         __asm ("swr zero, 4(s0)");
    0x0003da9c swl zero, 3(s0)               |         __asm ("swl zero, 3(s0)");
    0x0003daa0 swr zero, (s0)                |         __asm ("swr zero, (s0)");
    0x0003daa4 lw ra, 0x3c(sp)               |         ra = *(var_3ch);
    0x0003daa8 lw s4, 0x30(sp)               |         s4 = *(var_30h);
    0x0003daac lw s3, 0x2c(sp)               |         s3 = *(var_2ch);
    0x0003dab0 lw s2, 0x28(sp)               |         s2 = *(var_28h);
    0x0003dab4 move a2, s0                   |         a2 = s0;
    0x0003dab8 move a1, s6                   |         a1 = s6;
    0x0003dabc lw s0, 0x20(sp)               |         s0 = *(var_20h);
    0x0003dac0 lw s6, 0x38(sp)               |         s6 = *(var_38h);
    0x0003dac4 move a0, s1                   |         a0 = s1;
    0x0003dac8 move t9, s5                   |         t9 = s5;
    0x0003dacc lw s1, 0x24(sp)               |         s1 = *(var_24h);
    0x0003dad0 lw s5, 0x34(sp)               |         s5 = *(var_34h);
    0x0003dad4 addiu sp, sp, 0x40            |         
    0x0003dad8 b 0x3d5b0                     |         void (*0x3d5b0)() ();
                                             | label_2:
    0x0003dadc lw t9, -0x7fd0(gp)            |         t9 = *(gp);
    0x0003dae0 move a2, v0                   |         a2 = v0;
    0x0003dae4 move a1, s3                   |         a1 = s3;
                                             |         /* fcn.0003d6bc */
    0x0003dae8 addiu t9, t9, -0x2944         |         t9 += -0x2944;
    0x0003daec move a0, s1                   |         a0 = s1;
    0x0003daf0 bal 0x3d6bc                   |         fcn_0003d6bc ();
    0x0003daf4 lw gp, 0x18(sp)               |         gp = *(var_18h);
    0x0003daf8 lwl v0, 7(s0)                 |         __asm ("lwl v0, 7(s0)");
    0x0003dafc move a2, s2                   |         a2 = s2;
    0x0003db00 lw s5, -0x7fd0(gp)            |         s5 = *(gp);
    0x0003db04 lwr v0, 4(s0)                 |         __asm ("lwr v0, 4(s0)");
                                             |         /* fcn.0003d5b0 */
    0x0003db08 addiu s5, s5, -0x2a50         |         s5 += -0x2a50;
    0x0003db0c move a1, s3                   |         a1 = s3;
    0x0003db10 move a0, s1                   |         a0 = s1;
    0x0003db14 move t9, s5                   |         t9 = s5;
    0x0003db18 sw v0, 4(s2)                  |         *((s2 + 1)) = v0;
    0x0003db1c bal 0x3d5b0                   |         fcn_0003d5b0 ();
    0x0003db20 lw gp, 0x18(sp)               |         gp = *(var_18h);
    0x0003db24 beqz s4, 0x3da74              |         
                                             |     } while (s4 == 0);
                                             | label_3:
    0x0003db28 lw t9, -0x7fd0(gp)            |     t9 = *(gp);
    0x0003db2c move a2, s2                   |     a2 = s2;
    0x0003db30 move a1, s4                   |     a1 = s4;
                                             |     /* fcn.0003d6bc */
    0x0003db34 addiu t9, t9, -0x2944         |     t9 += -0x2944;
    0x0003db38 move a0, s1                   |     a0 = s1;
    0x0003db3c bal 0x3d6bc                   |     fcn_0003d6bc ();
    0x0003db40 lwl v0, 3(s0)                 |     __asm ("lwl v0, 3(s0)");
    0x0003db44 move a2, s2                   |     a2 = s2;
    0x0003db48 move a1, s4                   |     a1 = s4;
    0x0003db4c lwr v0, (s0)                  |     __asm ("lwr v0, (s0)");
    0x0003db50 move a0, s1                   |     a0 = s1;
    0x0003db54 move t9, s5                   |     t9 = s5;
    0x0003db58 sw v0, (s2)                   |     *(s2) = v0;
    0x0003db5c bal 0x3d5b0                   |     fcn_0003d5b0 ();
    0x0003db60 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0003db64 b 0x3da84                     |     goto label_0;
                                             | label_1:
    0x0003db68 lw v0, -0x77dc(gp)            |     v0 = *((gp - 7671));
    0x0003db6c lw a3, -0x7fa8(gp)            |     a3 = *((gp - 8170));
    0x0003db70 lw a2, -0x7fa8(gp)            |     a2 = *((gp - 8170));
    0x0003db74 lw a0, (v0)                   |     a0 = *(v0);
    0x0003db78 lw v0, -0x7fa8(gp)            |     v0 = *((gp - 8170));
    0x0003db7c lw t9, -0x7c2c(gp)            |     t9 = sym.imp.__fprintf_chk
                                             |     /* str.getdqbuf */
    0x0003db80 addiu v0, v0, -0x1b4c         |     v0 += -0x1b4c;
    0x0003db84 sw v0, 0x14(sp)               |     *(var_14h) = v0;
    0x0003db88 addiu v0, zero, 0x1b          |     v0 = 0x1b;
    0x0003db8c sw v0, 0x10(sp)               |     *(var_10h) = v0;
                                             |     /* str..._.._.._git_lib_support_quotaio_tree.c */
    0x0003db90 addiu a3, a3, -0x1ef0         |     a3 += -0x1ef0;
                                             |     /* str._ERROR___s:_d:_s::_Failed_to_allocate_dqbuf_n */
    0x0003db94 addiu a2, a2, -0x1e24         |     a2 += -0x1e24;
    0x0003db98 addiu a1, zero, 1             |     a1 = 1;
    0x0003db9c jalr t9                       |     t9 ();
    0x0003dba0 lw ra, 0x3c(sp)               |     ra = *(var_3ch);
    0x0003dba4 lw s6, 0x38(sp)               |     s6 = *(var_38h);
    0x0003dba8 lw s5, 0x34(sp)               |     s5 = *(var_34h);
    0x0003dbac lw s4, 0x30(sp)               |     s4 = *(var_30h);
    0x0003dbb0 lw s3, 0x2c(sp)               |     s3 = *(var_2ch);
    0x0003dbb4 lw s2, 0x28(sp)               |     s2 = *(var_28h);
    0x0003dbb8 lw s1, 0x24(sp)               |     s1 = *(var_24h);
    0x0003dbbc lw s0, 0x20(sp)               |     s0 = *(var_20h);
    0x0003dbc0 addiu sp, sp, 0x40            |     
    0x0003dbc4 jr ra                         |     return v0;
                                             | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/fsck.ext3 @ 0x3dbc8 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) fcn.0003dbc8 ()                  | void fcn_0003dbc8 () {
                                             | label_0:
    0x0003dbc8 lui gp, 3                     |     
    0x0003dbcc addiu gp, gp, -0x3e08         |     
    0x0003dbd0 addu gp, gp, t9               |     gp += t9;
    0x0003dbd4 addiu sp, sp, -0x50           |     
    0x0003dbd8 lw t9, -0x7cd0(gp)            |     t9 = sym.imp.calloc;
    0x0003dbdc sw gp, 0x20(sp)               |     *(var_20h) = gp;
    0x0003dbe0 sw s5, 0x3c(sp)               |     *(var_3ch) = s5;
    0x0003dbe4 sw s4, 0x38(sp)               |     *(var_38h) = s4;
    0x0003dbe8 sw s3, 0x34(sp)               |     *(var_34h) = s3;
    0x0003dbec sw s0, 0x28(sp)               |     *(var_28h) = s0;
    0x0003dbf0 sw ra, 0x4c(sp)               |     *(var_4ch) = ra;
    0x0003dbf4 sw fp, 0x48(sp)               |     *(var_48h) = fp;
    0x0003dbf8 sw s7, 0x44(sp)               |     *(var_44h) = s7;
    0x0003dbfc sw s6, 0x40(sp)               |     *(var_40h) = s6;
    0x0003dc00 sw s2, 0x30(sp)               |     *(var_30h) = s2;
    0x0003dc04 sw s1, 0x2c(sp)               |     *(var_2ch) = s1;
    0x0003dc08 move s3, a0                   |     s3 = a0;
    0x0003dc0c move s4, a1                   |     s4 = a1;
    0x0003dc10 addiu a0, zero, 0x400         |     a0 = aav.0x00000400;
    0x0003dc14 addiu a1, zero, 1             |     a1 = 1;
    0x0003dc18 move s0, a2                   |     s0 = a2;
    0x0003dc1c move s5, a3                   |     s5 = a3;
    0x0003dc20 jalr t9                       |     t9 ();
    0x0003dc24 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 == 0) {
    0x0003dc28 beqz v0, 0x3ddc0              |         goto label_3;
                                             |     }
    0x0003dc2c lw s1, -0x7fd0(gp)            |     s1 = *(gp);
    0x0003dc30 move a2, v0                   |     a2 = v0;
                                             |     /* fcn.0003d6bc */
    0x0003dc34 addiu s1, s1, -0x2944         |     s1 += -0x2944;
    0x0003dc38 move a1, s0                   |     a1 = s0;
    0x0003dc3c move a0, s3                   |     a0 = s3;
    0x0003dc40 move t9, s1                   |     t9 = s1;
    0x0003dc44 move s2, v0                   |     s2 = v0;
    0x0003dc48 bal 0x3d6bc                   |     fcn_0003d6bc ();
    0x0003dc4c addiu v1, zero, 3             |     v1 = 3;
    0x0003dc50 subu v0, v1, s5               |     __asm ("subu v0, v1, s5");
    0x0003dc54 lw s0, 4(s4)                  |     s0 = *((s4 + 1));
    0x0003dc58 sll v0, v0, 3                 |     v0 <<= 3;
    0x0003dc5c srlv s0, s0, v0               |     s0 >>= v0;
    0x0003dc60 andi s0, s0, 0xff             |     s0 &= 0xff;
    0x0003dc64 sll s0, s0, 2                 |     s0 <<= 2;
    0x0003dc68 lwx s0, s0(s2)                |     __asm ("lwx s0, s0(s2)");
    0x0003dc6c lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (s0 == 0) {
    0x0003dc70 beqz s0, 0x3ddb4              |         goto label_4;
                                             |     }
    0x0003dc74 lw t9, -0x7fd0(gp)            |     t9 = *(gp);
                                             |     if (s5 != v1) {
    0x0003dc78 bne s5, v1, 0x3dd4c           |         goto label_5;
                                             |     }
    0x0003dc7c lw t9, -0x7cd0(gp)            |     t9 = sym.imp.calloc;
    0x0003dc80 addiu a1, zero, 1             |     a1 = 1;
    0x0003dc84 addiu a0, zero, 0x400         |     a0 = aav.0x00000400;
    0x0003dc88 jalr t9                       |     t9 ();
    0x0003dc8c move s7, v0                   |     s7 = v0;
    0x0003dc90 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 == 0) {
    0x0003dc94 beqz v0, 0x3de84              |         goto label_6;
                                             |     }
    0x0003dc98 move a2, v0                   |     a2 = v0;
    0x0003dc9c move a1, s0                   |     a1 = s0;
    0x0003dca0 move t9, s1                   |     t9 = s1;
    0x0003dca4 move a0, s3                   |     a0 = s3;
    0x0003dca8 bal 0x3d6bc                   |     fcn_0003d6bc ();
    0x0003dcac lw v0, 0x3c(s3)               |     v0 = *((s3 + 15));
    0x0003dcb0 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x0003dcb4 sltiu v0, v0, 0x3f1           |     v0 = (v0 < 0x3f1) ? 1 : 0;
    0x0003dcb8 addiu s6, s7, 0x10            |     s6 = s7 + 0x10;
    0x0003dcbc move s5, zero                 |     s5 = 0;
    0x0003dcc0 addiu fp, zero, 0x3f0         |     fp = aav.0x000003f0;
                                             |     if (v0 != 0) {
    0x0003dcc4 bnez v0, 0x3dcec              |         goto label_7;
                                             |     }
    0x0003dcc8 move s6, zero                 |     s6 = 0;
    0x0003dccc b 0x3de38                     |     goto label_8;
                                             |     do {
    0x0003dcd0 divu zero, fp, s1             |         __asm ("divu zero, fp, s1");
    0x0003dcd4 teq s1, zero, 7               |         __asm ("teq s1, zero, 7");
    0x0003dcd8 addiu s5, s5, 1               |         s5++;
    0x0003dcdc mflo v0                       |         __asm ("mflo v0");
    0x0003dce0 slt v1, s5, v0                |         v1 = (s5 < v0) ? 1 : 0;
    0x0003dce4 addu s6, s6, s1               |         s6 += s1;
                                             |         if (v1 == 0) {
    0x0003dce8 beqz v1, 0x3dd1c              |             goto label_9;
                                             |         }
                                             | label_7:
    0x0003dcec lw v0, 0x40(s3)               |         v0 = *((s3 + 16));
    0x0003dcf0 move a0, s6                   |         a0 = s6;
    0x0003dcf4 lw t9, 8(v0)                  |         t9 = *((v0 + 2));
    0x0003dcf8 move a1, s4                   |         a1 = s4;
    0x0003dcfc jalr t9                       |         t9 ();
    0x0003dd00 lw gp, 0x20(sp)               |         gp = *(var_20h);
    0x0003dd04 lw s1, 0x3c(s3)               |         s1 = *((s3 + 15));
    0x0003dd08 beqz v0, 0x3dcd0              |         
                                             |     } while (v0 == 0);
    0x0003dd0c addiu v0, zero, 0x3f0         |     v0 = aav.0x000003f0;
    0x0003dd10 divu zero, v0, s1             |     __asm ("divu zero, v0, s1");
    0x0003dd14 teq s1, zero, 7               |     __asm ("teq s1, zero, 7");
    0x0003dd18 mflo v0                       |     __asm ("mflo v0");
                                             | label_9:
    0x0003dd1c move s6, s5                   |     s6 = s5;
                                             |     if (v0 == s5) {
    0x0003dd20 beq v0, s5, 0x3de38           |         goto label_8;
                                             |     }
                                             | label_1:
    0x0003dd24 lw t9, -0x7814(gp)            |     t9 = sym.imp.free;
    0x0003dd28 move a0, s7                   |     a0 = s7;
    0x0003dd2c jalr t9                       |     t9 ();
    0x0003dd30 mul v0, s1, s6                |     __asm ("mul v0, s1, s6");
    0x0003dd34 sll s0, s0, 0xa               |     s0 <<= 0xa;
    0x0003dd38 addiu s0, s0, 0x10            |     s0 += 0x10;
    0x0003dd3c lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x0003dd40 move s3, zero                 |     s3 = 0;
    0x0003dd44 addu s1, v0, s0               |     s1 = v0 + s0;
    0x0003dd48 b 0x3dd70                     |     goto label_2;
                                             | label_5:
    0x0003dd4c move a0, s3                   |     a0 = s3;
    0x0003dd50 addiu a3, s5, 1               |     a3 = s5 + 1;
    0x0003dd54 move a2, s0                   |     a2 = s0;
                                             |     /* fcn.0003dbc8 */
    0x0003dd58 addiu t9, t9, -0x2438         |     t9 += -0x2438;
    0x0003dd5c move a1, s4                   |     a1 = s4;
    0x0003dd60 bal 0x3dbc8                   |     fcn_0003dbc8 ();
                                             |     goto label_0;
    0x0003dd64 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x0003dd68 move s1, v0                   |     s1 = v0;
    0x0003dd6c move s3, v1                   |     s3 = v1;
                                             |     do {
                                             | label_2:
    0x0003dd70 lw t9, -0x7814(gp)            |         t9 = sym.imp.free;
    0x0003dd74 move a0, s2                   |         a0 = s2;
    0x0003dd78 jalr t9                       |         t9 ();
    0x0003dd7c lw ra, 0x4c(sp)               |         ra = *(var_4ch);
    0x0003dd80 move v0, s1                   |         v0 = s1;
    0x0003dd84 move v1, s3                   |         v1 = s3;
    0x0003dd88 lw fp, 0x48(sp)               |         fp = *(var_48h);
    0x0003dd8c lw s7, 0x44(sp)               |         s7 = *(var_44h);
    0x0003dd90 lw s6, 0x40(sp)               |         s6 = *(var_40h);
    0x0003dd94 lw s5, 0x3c(sp)               |         s5 = *(var_3ch);
    0x0003dd98 lw s4, 0x38(sp)               |         s4 = *(var_38h);
    0x0003dd9c lw s3, 0x34(sp)               |         s3 = *(var_34h);
    0x0003dda0 lw s2, 0x30(sp)               |         s2 = *(var_30h);
    0x0003dda4 lw s1, 0x2c(sp)               |         s1 = *(var_2ch);
    0x0003dda8 lw s0, 0x28(sp)               |         s0 = *(var_28h);
    0x0003ddac addiu sp, sp, 0x50            |         
    0x0003ddb0 jr ra                         |         return v0;
                                             | label_4:
    0x0003ddb4 move s1, zero                 |         s1 = 0;
    0x0003ddb8 move s3, zero                 |         s3 = 0;
    0x0003ddbc b 0x3dd70                     |         
                                             |     } while (1);
                                             | label_3:
    0x0003ddc0 lw v0, -0x77dc(gp)            |     v0 = *((gp - 7671));
    0x0003ddc4 lw a3, -0x7fa8(gp)            |     a3 = *((gp - 8170));
    0x0003ddc8 lw a2, -0x7fa8(gp)            |     a2 = *((gp - 8170));
    0x0003ddcc lw a0, (v0)                   |     a0 = *(v0);
    0x0003ddd0 lw v0, -0x7fa8(gp)            |     v0 = *((gp - 8170));
    0x0003ddd4 lw t9, -0x7c2c(gp)            |     t9 = sym.imp.__fprintf_chk
                                             |     /* str.getdqbuf */
    0x0003ddd8 addiu v0, v0, -0x1b4c         |     v0 += -0x1b4c;
    0x0003dddc sw v0, 0x14(sp)               |     *(var_14h) = v0;
    0x0003dde0 addiu v0, zero, 0x1b          |     v0 = 0x1b;
    0x0003dde4 sw v0, 0x10(sp)               |     *(var_10h) = v0;
                                             |     /* str..._.._.._git_lib_support_quotaio_tree.c */
    0x0003dde8 addiu a3, a3, -0x1ef0         |     a3 += -0x1ef0;
                                             |     /* str._ERROR___s:_d:_s::_Failed_to_allocate_dqbuf_n */
    0x0003ddec addiu a2, a2, -0x1e24         |     a2 += -0x1e24;
    0x0003ddf0 addiu a1, zero, 1             |     a1 = 1;
    0x0003ddf4 jalr t9                       |     t9 ();
    0x0003ddf8 lw ra, 0x4c(sp)               |     ra = *(var_4ch);
    0x0003ddfc addiu s1, zero, -0xc          |     s1 = -0xc;
    0x0003de00 addiu s3, zero, -1            |     s3 = -1;
    0x0003de04 move v0, s1                   |     v0 = s1;
    0x0003de08 move v1, s3                   |     v1 = s3;
    0x0003de0c lw fp, 0x48(sp)               |     fp = *(var_48h);
    0x0003de10 lw s7, 0x44(sp)               |     s7 = *(var_44h);
    0x0003de14 lw s6, 0x40(sp)               |     s6 = *(var_40h);
    0x0003de18 lw s5, 0x3c(sp)               |     s5 = *(var_3ch);
    0x0003de1c lw s4, 0x38(sp)               |     s4 = *(var_38h);
    0x0003de20 lw s3, 0x34(sp)               |     s3 = *(var_34h);
    0x0003de24 lw s2, 0x30(sp)               |     s2 = *(var_30h);
    0x0003de28 lw s1, 0x2c(sp)               |     s1 = *(var_2ch);
    0x0003de2c lw s0, 0x28(sp)               |     s0 = *(var_28h);
    0x0003de30 addiu sp, sp, 0x50            |     
    0x0003de34 jr ra                         |     return v0;
                                             | label_8:
    0x0003de38 lw v1, -0x77dc(gp)            |     v1 = *((gp - 7671));
    0x0003de3c lw v0, 4(s4)                  |     v0 = *((s4 + 1));
    0x0003de40 lw a3, -0x7fa8(gp)            |     a3 = *((gp - 8170));
    0x0003de44 lw a0, (v1)                   |     a0 = *(v1);
    0x0003de48 sw v0, 0x18(sp)               |     *(var_18h) = v0;
    0x0003de4c lw v0, -0x7fa8(gp)            |     v0 = *((gp - 8170));
    0x0003de50 lw a2, -0x7fa8(gp)            |     a2 = *((gp - 8170));
                                             |     /* str.find_block_dqentry */
    0x0003de54 addiu v0, v0, -0x1bc0         |     v0 += -0x1bc0;
    0x0003de58 lw t9, -0x7c2c(gp)            |     t9 = sym.imp.__fprintf_chk
    0x0003de5c sw v0, 0x14(sp)               |     *(var_14h) = v0;
    0x0003de60 addiu v0, zero, 0x1d0         |     v0 = aav.0x000001d0;
    0x0003de64 sw v0, 0x10(sp)               |     *(var_10h) = v0;
                                             |     /* str..._.._.._git_lib_support_quotaio_tree.c */
    0x0003de68 addiu a3, a3, -0x1ef0         |     a3 += -0x1ef0;
                                             |     /* str._ERROR___s:_d:_s::_Quota_for_id__u_referenced_but_not_present._n */
    0x0003de6c addiu a2, a2, -0x1da8         |     a2 += -0x1da8;
    0x0003de70 addiu a1, zero, 1             |     a1 = 1;
    0x0003de74 jalr t9                       |     t9 ();
    0x0003de78 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x0003de7c lw s1, 0x3c(s3)               |     s1 = *((s3 + 15));
    0x0003de80 b 0x3dd24                     |     goto label_1;
                                             | label_6:
    0x0003de84 lw v0, -0x77dc(gp)            |     v0 = *((gp - 7671));
    0x0003de88 lw a3, -0x7fa8(gp)            |     a3 = *((gp - 8170));
    0x0003de8c lw a2, -0x7fa8(gp)            |     a2 = *((gp - 8170));
    0x0003de90 lw a0, (v0)                   |     a0 = *(v0);
    0x0003de94 lw v0, -0x7fa8(gp)            |     v0 = *((gp - 8170));
    0x0003de98 lw t9, -0x7c2c(gp)            |     t9 = sym.imp.__fprintf_chk
                                             |     /* str.getdqbuf */
    0x0003de9c addiu v0, v0, -0x1b4c         |     v0 += -0x1b4c;
    0x0003dea0 sw v0, 0x14(sp)               |     *(var_14h) = v0;
    0x0003dea4 addiu v0, zero, 0x1b          |     v0 = 0x1b;
    0x0003dea8 sw v0, 0x10(sp)               |     *(var_10h) = v0;
                                             |     /* str..._.._.._git_lib_support_quotaio_tree.c */
    0x0003deac addiu a3, a3, -0x1ef0         |     a3 += -0x1ef0;
                                             |     /* str._ERROR___s:_d:_s::_Failed_to_allocate_dqbuf_n */
    0x0003deb0 addiu a2, a2, -0x1e24         |     a2 += -0x1e24;
    0x0003deb4 addiu a1, zero, 1             |     a1 = 1;
    0x0003deb8 jalr t9                       |     t9 ();
    0x0003debc addiu s1, zero, -0xc          |     s1 = -0xc;
    0x0003dec0 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x0003dec4 addiu s3, zero, -1            |     s3 = -1;
    0x0003dec8 b 0x3dd70                     |     goto label_2;
                                             | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/fsck.ext3 @ 0x3decc */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) fcn.0003decc ()                  | void fcn_0003decc () {
    0x0003decc lui gp, 3                     |     
    0x0003ded0 addiu gp, gp, -0x410c         |     
    0x0003ded4 addu gp, gp, t9               |     gp += t9;
    0x0003ded8 addiu sp, sp, -0x68           |     
    0x0003dedc lw t9, -0x7cd0(gp)            |     t9 = sym.imp.calloc;
    0x0003dee0 sw gp, 0x18(sp)               |     *(var_18h) = gp;
    0x0003dee4 sw s6, 0x58(sp)               |     *(var_58h) = s6;
    0x0003dee8 sw s2, 0x48(sp)               |     *(var_48h) = s2;
    0x0003deec sw s1, 0x44(sp)               |     *(var_44h) = s1;
    0x0003def0 sw s0, 0x40(sp)               |     *(var_40h) = s0;
    0x0003def4 sw ra, 0x64(sp)               |     *(var_64h) = ra;
    0x0003def8 sw fp, 0x60(sp)               |     *(var_60h) = fp;
    0x0003defc sw s7, 0x5c(sp)               |     *(var_5ch) = s7;
    0x0003df00 sw s5, 0x54(sp)               |     *(var_54h) = s5;
    0x0003df04 sw s4, 0x50(sp)               |     *(var_50h) = s4;
    0x0003df08 sw s3, 0x4c(sp)               |     *(var_4ch) = s3;
    0x0003df0c move s0, a0                   |     s0 = a0;
    0x0003df10 move s1, a1                   |     s1 = a1;
    0x0003df14 addiu a0, zero, 0x400         |     a0 = aav.0x00000400;
    0x0003df18 addiu a1, zero, 1             |     a1 = 1;
    0x0003df1c move s2, a2                   |     s2 = a2;
    0x0003df20 move s6, a3                   |     s6 = a3;
    0x0003df24 jalr t9                       |     t9 ();
    0x0003df28 sw v0, 0x2c(sp)               |     *(var_2ch) = v0;
    0x0003df2c lw gp, 0x18(sp)               |     gp = *(var_18h);
                                             |     if (v0 == 0) {
    0x0003df30 beqz v0, 0x3e210              |         goto label_8;
                                             |     }
    0x0003df34 lw v0, -0x7fd0(gp)            |     v0 = *(gp);
    0x0003df38 lw a0, 0xc(s0)                |     a0 = *((s0 + 3));
                                             |     /* fcn.0003d6bc */
    0x0003df3c addiu t9, v0, -0x2944         |     t9 = v0 + -0x2944;
    0x0003df40 lw a2, 0x2c(sp)               |     a2 = *(var_2ch);
    0x0003df44 move a1, s1                   |     a1 = s1;
    0x0003df48 sw t9, 0x30(sp)               |     *(var_30h) = t9;
    0x0003df4c bal 0x3d6bc                   |     fcn_0003d6bc ();
    0x0003df50 addiu v0, zero, 3             |     v0 = 3;
    0x0003df54 lw gp, 0x18(sp)               |     gp = *(var_18h);
                                             |     if (s2 == v0) {
    0x0003df58 beq s2, v0, 0x3e03c           |         goto label_9;
                                             |     }
    0x0003df5c lw v0, 0x2c(sp)               |     v0 = *(var_2ch);
    0x0003df60 move s3, zero                 |     s3 = 0;
    0x0003df64 move fp, v0                   |     fp = v0;
    0x0003df68 addiu s1, v0, 0x400           |     s1 = v0 + aav.0x00000400;
    0x0003df6c lw v0, -0x7fd0(gp)            |     v0 = *(gp);
    0x0003df70 addiu s2, s2, 1               |     s2++;
                                             |     /* fcn.0003d7c8 */
    0x0003df74 addiu s5, v0, -0x2838         |     s5 = v0 + -0x2838;
    0x0003df78 lw v0, -0x7fd0(gp)            |     v0 = *(gp);
                                             |     /* fcn.0003decc */
    0x0003df7c addiu v0, v0, -0x2134         |     v0 += -0x2134;
    0x0003df80 move s7, v0                   |     s7 = v0;
    0x0003df84 b 0x3df90                     |     
                                             |     while (s4 == 0) {
                                             | label_0:
    0x0003df88 move s4, s3                   |         s4 = s3;
                                             |         if (fp == s1) {
    0x0003df8c beq fp, s1, 0x3dffc           |             goto label_7;
                                             |         }
    0x0003df90 lw s4, (fp)                   |         s4 = *(fp);
    0x0003df94 addiu fp, fp, 4               |         fp += 4;
    0x0003df98 beqz s4, 0x3df88              |         
                                             |     }
    0x0003df9c lw v0, 0xc(s0)                |     v0 = *((s0 + 3));
    0x0003dfa0 move a2, s4                   |     a2 = s4;
    0x0003dfa4 move t9, s5                   |     t9 = s5;
    0x0003dfa8 lw a1, 0x30(v0)               |     a1 = *((v0 + 12));
    0x0003dfac lw a0, (v0)                   |     a0 = *(v0);
    0x0003dfb0 bal 0x3d7c8                   |     fcn_0003d7c8 ();
    0x0003dfb4 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0003dfb8 move a3, s6                   |     a3 = s6;
    0x0003dfbc move a2, s2                   |     a2 = s2;
    0x0003dfc0 move a1, s4                   |     a1 = s4;
    0x0003dfc4 move a0, s0                   |     a0 = s0;
                                             |     if (v0 == 0) {
    0x0003dfc8 bnez v0, 0x3dff8              |         
    0x0003dfcc lw v0, 0x7c(sp)               |         v0 = *(arg_7ch);
    0x0003dfd0 move t9, s7                   |         t9 = s7;
    0x0003dfd4 sw v0, 0x14(sp)               |         *(var_14h) = v0;
    0x0003dfd8 lw v0, 0x78(sp)               |         v0 = *(arg_78h);
    0x0003dfdc sw v0, 0x10(sp)               |         *(var_10h) = v0;
    0x0003dfe0 jalr t9                       |         t9 ();
    0x0003dfe4 move s4, v0                   |         s4 = v0;
    0x0003dfe8 lw gp, 0x18(sp)               |         gp = *(var_18h);
                                             |         if (v0 < 0) {
    0x0003dfec bltz v0, 0x3dffc              |             goto label_7;
                                             |         }
    0x0003dff0 addu s3, s3, v0               |         s3 += v0;
    0x0003dff4 b 0x3df88                     |         goto label_0;
                                             |     }
                                             | label_1:
    0x0003dff8 addiu s4, zero, -1            |     s4 = -1;
                                             | label_7:
    0x0003dffc lw t9, -0x7814(gp)            |     t9 = sym.imp.free;
                                             |     do {
    0x0003e000 lw a0, 0x2c(sp)               |         a0 = *(var_2ch);
    0x0003e004 jalr t9                       |         t9 ();
    0x0003e008 lw ra, 0x64(sp)               |         ra = *(var_64h);
    0x0003e00c move v0, s4                   |         v0 = s4;
    0x0003e010 lw fp, 0x60(sp)               |         fp = *(var_60h);
    0x0003e014 lw s7, 0x5c(sp)               |         s7 = *(var_5ch);
    0x0003e018 lw s6, 0x58(sp)               |         s6 = *(var_58h);
    0x0003e01c lw s5, 0x54(sp)               |         s5 = *(var_54h);
    0x0003e020 lw s4, 0x50(sp)               |         s4 = *(var_50h);
    0x0003e024 lw s3, 0x4c(sp)               |         s3 = *(var_4ch);
    0x0003e028 lw s2, 0x48(sp)               |         s2 = *(var_48h);
    0x0003e02c lw s1, 0x44(sp)               |         s1 = *(var_44h);
    0x0003e030 lw s0, 0x40(sp)               |         s0 = *(var_40h);
    0x0003e034 addiu sp, sp, 0x68            |         
    0x0003e038 jr ra                         |         return v0;
                                             | label_9:
    0x0003e03c lw v0, 0x2c(sp)               |         v0 = *(var_2ch);
    0x0003e040 move s4, zero                 |         s4 = 0;
    0x0003e044 move s2, v0                   |         s2 = v0;
    0x0003e048 addiu v0, v0, 0x400           |         v0 += aav.0x00000400;
    0x0003e04c sw v0, 0x28(sp)               |         *(var_28h) = v0;
    0x0003e050 lw v0, -0x7fd0(gp)            |         v0 = *(gp);
    0x0003e054 addiu s3, zero, 0x3f0         |         s3 = aav.0x000003f0;
                                             |         /* fcn.0003d7c8 */
    0x0003e058 addiu v0, v0, -0x2838         |         v0 += -0x2838;
    0x0003e05c sw v0, 0x24(sp)               |         *(var_24h) = v0;
    0x0003e060 b 0x3e074                     |         goto label_10;
                                             | label_5:
    0x0003e064 lw v0, 0x28(sp)               |         v0 = *(var_28h);
                                             | label_2:
    0x0003e068 addiu s2, s2, 4               |         s2 += 4;
                                             | label_3:
    0x0003e06c lw t9, -0x7814(gp)            |         t9 = sym.imp.free;
    0x0003e070 beq s2, v0, 0x3e000           |         
                                             |     } while (s2 == v0);
                                             | label_10:
    0x0003e074 lw v0, 0xc(s0)                |     v0 = *((s0 + 3));
    0x0003e078 lw s1, (s2)                   |     s1 = *(s2);
    0x0003e07c lw t9, 0x24(sp)               |     t9 = *(var_24h);
    0x0003e080 lw a1, 0x30(v0)               |     a1 = *((v0 + 12));
    0x0003e084 lw a0, (v0)                   |     a0 = *(v0);
    0x0003e088 move a2, s1                   |     a2 = s1;
    0x0003e08c jalr t9                       |     t9 ();
    0x0003e090 lw gp, 0x18(sp)               |     gp = *(var_18h);
                                             |     if (v0 != 0) {
    0x0003e094 bnez v0, 0x3dff8              |         goto label_1;
                                             |     }
    0x0003e098 lw v0, 0x28(sp)               |     v0 = *(var_28h);
                                             |     if (s1 == 0) {
    0x0003e09c beqz s1, 0x3e068              |         goto label_2;
                                             |     }
    0x0003e0a0 srl v1, s1, 3                 |     v1 = s1 >> 3;
    0x0003e0a4 addu fp, s6, v1               |     fp = s6 + v1;
    0x0003e0a8 andi t1, s1, 7                |     t1 = s1 & 7;
    0x0003e0ac lb a2, (fp)                   |     a2 = *(fp);
    0x0003e0b0 srav a3, a2, t1               |     __asm ("srav a3, a2, t1");
    0x0003e0b4 andi s7, a3, 1                |     s7 = a3 & 1;
    0x0003e0b8 addiu s2, s2, 4               |     s2 += 4;
                                             |     if (s7 == 0) {
    0x0003e0bc bnel s7, zero, 0x3e06c        |         goto label_3;
                                             |     }
    0x0003e0c0 lw t9, -0x7cd0(gp)            |     t9 = sym.imp.calloc;
    0x0003e0c4 sw t1, 0x3c(sp)               |     *(var_3ch) = t1;
    0x0003e0c8 sw a2, 0x38(sp)               |     *(var_38h) = a2;
    0x0003e0cc addiu a1, zero, 1             |     a1 = 1;
    0x0003e0d0 addiu a0, zero, 0x400         |     a0 = aav.0x00000400;
    0x0003e0d4 lw s5, 0xc(s0)                |     s5 = *((s0 + 3));
    0x0003e0d8 jalr t9                       |     t9 ();
    0x0003e0dc move v1, v0                   |     v1 = v0;
    0x0003e0e0 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0003e0e4 sw v0, 0x34(sp)               |     *(var_34h) = v0;
                                             |     if (v0 == 0) {
    0x0003e0e8 beqz v0, 0x3e280              |         goto label_11;
                                             |     }
    0x0003e0ec lw t1, 0x3c(sp)               |     t1 = *(var_3ch);
    0x0003e0f0 addiu v0, zero, 1             |     v0 = 1;
    0x0003e0f4 lw a2, 0x38(sp)               |     a2 = *(var_38h);
    0x0003e0f8 sllv t1, v0, t1               |     t1 = v0 << t1;
    0x0003e0fc or a2, a2, t1                 |     a2 |= t1;
    0x0003e100 sb a2, (fp)                   |     *(fp) = a2;
    0x0003e104 lw a0, 0xc(s0)                |     a0 = *((s0 + 3));
    0x0003e108 lw t9, 0x30(sp)               |     t9 = *(var_30h);
    0x0003e10c move fp, v1                   |     fp = v1;
    0x0003e110 move a2, v1                   |     a2 = v1;
    0x0003e114 move a1, s1                   |     a1 = s1;
    0x0003e118 jalr t9                       |     t9 ();
    0x0003e11c move v1, fp                   |     v1 = fp;
    0x0003e120 lw v0, 0x3c(s5)               |     v0 = *((s5 + 15));
    0x0003e124 lhu v1, 8(v1)                 |     v1 = *((v1 + 4));
    0x0003e128 sltiu a0, v0, 0x3f1           |     a0 = (v0 < 0x3f1) ? 1 : 0;
    0x0003e12c lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0003e130 addiu fp, fp, 0x10            |     fp += 0x10;
    0x0003e134 sw v1, 0x38(sp)               |     *(var_38h) = v1;
                                             |     if (a0 == 0) {
    0x0003e138 beqz a0, 0x3e190              |         goto label_12;
                                             |     }
    0x0003e13c sll s1, s1, 0xa               |     s1 <<= 0xa;
    0x0003e140 addiu s1, s1, 0x10            |     s1 += 0x10;
                                             |     if (v0 == 0) {
                                             | label_4:
    0x0003e144 beqz v0, 0x3e174              |         goto label_13;
                                             |     }
    0x0003e148 nop                           |     
    0x0003e14c lb a0, (fp)                   |     a0 = *(fp);
    0x0003e150 addu a2, fp, v0               |     a2 = fp + v0;
                                             |     if (a0 != 0) {
    0x0003e154 bnez a0, 0x3e1ac              |         goto label_14;
                                             |     }
    0x0003e158 addiu a0, fp, 1               |     a0 = fp + 1;
    0x0003e15c b 0x3e16c                     |     
                                             |     while (a2 != a0) {
    0x0003e160 lb a1, -1(a0)                 |         a1 = *((a0 - 1));
    0x0003e164 mul v1, s7, v0                |         __asm ("mul v1, s7, v0");
                                             |         if (a1 != 0) {
    0x0003e168 bnez a1, 0x3e1b0              |             goto label_15;
                                             |         }
    0x0003e16c addiu a0, a0, 1               |         a0++;
    0x0003e170 bne a2, a0, 0x3e160           |         
                                             |     }
                                             | label_13:
    0x0003e174 divu zero, s3, v0             |     __asm ("divu zero, s3, v0");
    0x0003e178 teq v0, zero, 7               |     __asm ("teq v0, zero, 7");
    0x0003e17c addiu s7, s7, 1               |     s7++;
    0x0003e180 mflo a0                       |     __asm ("mflo a0");
    0x0003e184 slt a0, s7, a0                |     a0 = (s7 < a0) ? 1 : 0;
    0x0003e188 addu fp, fp, v0               |     fp += v0;
                                             |     if (a0 != 0) {
    0x0003e18c bnez a0, 0x3e144              |         goto label_4;
                                             |     }
                                             |     do {
                                             | label_12:
    0x0003e190 lw t9, -0x7814(gp)            |         t9 = sym.imp.free;
                                             | label_6:
    0x0003e194 lw v0, 0x38(sp)               |         v0 = *(var_38h);
    0x0003e198 lw a0, 0x34(sp)               |         a0 = *(var_34h);
    0x0003e19c addu s4, s4, v0               |         s4 += v0;
    0x0003e1a0 jalr t9                       |         t9 ();
    0x0003e1a4 lw gp, 0x18(sp)               |         gp = *(var_18h);
    0x0003e1a8 b 0x3e064                     |         goto label_5;
                                             | label_14:
    0x0003e1ac mul v1, s7, v0                |         __asm ("mul v1, s7, v0");
                                             | label_15:
    0x0003e1b0 lw a0, 0x40(s5)               |         a0 = *((s5 + 16));
    0x0003e1b4 move a1, fp                   |         a1 = fp;
    0x0003e1b8 lw t9, 4(a0)                  |         t9 = *((a0 + 1));
    0x0003e1bc addu v0, v1, s1               |         v0 = v1 + s1;
    0x0003e1c0 move a0, s0                   |         a0 = s0;
    0x0003e1c4 sw v0, 0x48(s0)               |         *((s0 + 18)) = v0;
    0x0003e1c8 sw zero, 0x4c(s0)             |         *((s0 + 19)) = 0;
    0x0003e1cc jalr t9                       |         t9 ();
    0x0003e1d0 lw a1, 0x7c(sp)               |         a1 = *(arg_7ch);
    0x0003e1d4 lw t9, 0x78(sp)               |         t9 = *(arg_78h);
    0x0003e1d8 move a0, s0                   |         a0 = s0;
    0x0003e1dc jalr t9                       |         t9 ();
    0x0003e1e0 lw gp, 0x18(sp)               |         gp = *(var_18h);
    0x0003e1e4 bltz v0, 0x3e190              |         
                                             |     } while (v0 < 0);
    0x0003e1e8 lw v0, 0x3c(s5)               |     v0 = *((s5 + 15));
    0x0003e1ec addiu s7, s7, 1               |     s7++;
    0x0003e1f0 divu zero, s3, v0             |     __asm ("divu zero, s3, v0");
    0x0003e1f4 teq v0, zero, 7               |     __asm ("teq v0, zero, 7");
    0x0003e1f8 mflo a0                       |     __asm ("mflo a0");
    0x0003e1fc slt a0, s7, a0                |     a0 = (s7 < a0) ? 1 : 0;
    0x0003e200 addu fp, fp, v0               |     fp += v0;
                                             |     if (a0 != 0) {
    0x0003e204 bnez a0, 0x3e144              |         goto label_4;
                                             |     }
    0x0003e208 lw t9, -0x7814(gp)            |     t9 = sym.imp.free;
    0x0003e20c b 0x3e194                     |     goto label_6;
                                             | label_8:
    0x0003e210 lw v0, -0x77dc(gp)            |     v0 = *((gp - 7671));
    0x0003e214 lw a3, -0x7fa8(gp)            |     a3 = *((gp - 8170));
    0x0003e218 lw a2, -0x7fa8(gp)            |     a2 = *((gp - 8170));
    0x0003e21c lw a0, (v0)                   |     a0 = *(v0);
    0x0003e220 lw v0, -0x7fa8(gp)            |     v0 = *((gp - 8170));
    0x0003e224 lw t9, -0x7c2c(gp)            |     t9 = sym.imp.__fprintf_chk
                                             |     /* str.getdqbuf */
    0x0003e228 addiu v0, v0, -0x1b4c         |     v0 += -0x1b4c;
    0x0003e22c sw v0, 0x14(sp)               |     *(var_14h) = v0;
    0x0003e230 addiu v0, zero, 0x1b          |     v0 = 0x1b;
    0x0003e234 sw v0, 0x10(sp)               |     *(var_10h) = v0;
                                             |     /* str..._.._.._git_lib_support_quotaio_tree.c */
    0x0003e238 addiu a3, a3, -0x1ef0         |     a3 += -0x1ef0;
                                             |     /* str._ERROR___s:_d:_s::_Failed_to_allocate_dqbuf_n */
    0x0003e23c addiu a2, a2, -0x1e24         |     a2 += -0x1e24;
    0x0003e240 addiu a1, zero, 1             |     a1 = 1;
    0x0003e244 jalr t9                       |     t9 ();
    0x0003e248 lw ra, 0x64(sp)               |     ra = *(var_64h);
    0x0003e24c move s4, zero                 |     s4 = 0;
    0x0003e250 move v0, s4                   |     v0 = s4;
    0x0003e254 lw fp, 0x60(sp)               |     fp = *(var_60h);
    0x0003e258 lw s7, 0x5c(sp)               |     s7 = *(var_5ch);
    0x0003e25c lw s6, 0x58(sp)               |     s6 = *(var_58h);
    0x0003e260 lw s5, 0x54(sp)               |     s5 = *(var_54h);
    0x0003e264 lw s4, 0x50(sp)               |     s4 = *(var_50h);
    0x0003e268 lw s3, 0x4c(sp)               |     s3 = *(var_4ch);
    0x0003e26c lw s2, 0x48(sp)               |     s2 = *(var_48h);
    0x0003e270 lw s1, 0x44(sp)               |     s1 = *(var_44h);
    0x0003e274 lw s0, 0x40(sp)               |     s0 = *(var_40h);
    0x0003e278 addiu sp, sp, 0x68            |     
    0x0003e27c jr ra                         |     return v0;
                                             | label_11:
    0x0003e280 lw v0, -0x77dc(gp)            |     v0 = *((gp - 7671));
    0x0003e284 lw a3, -0x7fa8(gp)            |     a3 = *((gp - 8170));
    0x0003e288 lw a2, -0x7fa8(gp)            |     a2 = *((gp - 8170));
    0x0003e28c lw a0, (v0)                   |     a0 = *(v0);
    0x0003e290 lw v0, -0x7fa8(gp)            |     v0 = *((gp - 8170));
    0x0003e294 lw t9, -0x7c2c(gp)            |     t9 = sym.imp.__fprintf_chk
                                             |     /* str.getdqbuf */
    0x0003e298 addiu v0, v0, -0x1b4c         |     v0 += -0x1b4c;
    0x0003e29c sw v0, 0x14(sp)               |     *(var_14h) = v0;
    0x0003e2a0 addiu v0, zero, 0x1b          |     v0 = 0x1b;
    0x0003e2a4 sw v0, 0x10(sp)               |     *(var_10h) = v0;
                                             |     /* str..._.._.._git_lib_support_quotaio_tree.c */
    0x0003e2a8 addiu a3, a3, -0x1ef0         |     a3 += -0x1ef0;
                                             |     /* str._ERROR___s:_d:_s::_Failed_to_allocate_dqbuf_n */
    0x0003e2ac addiu a2, a2, -0x1e24         |     a2 += -0x1e24;
    0x0003e2b0 addiu a1, zero, 1             |     a1 = 1;
    0x0003e2b4 jalr t9                       |     t9 ();
    0x0003e2b8 addiu s4, zero, -1            |     s4 = -1;
    0x0003e2bc lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0003e2c0 b 0x3dffc                     |     goto label_7;
                                             | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/fsck.ext3 @ 0x3e2c4 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) fcn.0003e2c4 ()                  | void fcn_0003e2c4 () {
                                             | label_1:
    0x0003e2c4 lui gp, 3                     |     
    0x0003e2c8 addiu gp, gp, -0x4504         |     
    0x0003e2cc addu gp, gp, t9               |     gp += t9;
    0x0003e2d0 addiu sp, sp, -0x68           |     
    0x0003e2d4 lw t9, -0x7cd0(gp)            |     t9 = sym.imp.calloc;
    0x0003e2d8 sw s4, 0x50(sp)               |     *(var_50h) = s4;
    0x0003e2dc lw s4, -0x7838(gp)            |     s4 = *((gp - 7694));
    0x0003e2e0 sw gp, 0x20(sp)               |     *(var_20h) = gp;
    0x0003e2e4 sw s6, 0x58(sp)               |     *(var_58h) = s6;
    0x0003e2e8 lw v0, (s4)                   |     v0 = *(s4);
    0x0003e2ec sw s5, 0x54(sp)               |     *(var_54h) = s5;
    0x0003e2f0 sw s3, 0x4c(sp)               |     *(var_4ch) = s3;
    0x0003e2f4 sw s1, 0x44(sp)               |     *(var_44h) = s1;
    0x0003e2f8 sw ra, 0x64(sp)               |     *(var_64h) = ra;
    0x0003e2fc sw fp, 0x60(sp)               |     *(var_60h) = fp;
    0x0003e300 sw s7, 0x5c(sp)               |     *(var_5ch) = s7;
    0x0003e304 sw s2, 0x48(sp)               |     *(var_48h) = s2;
    0x0003e308 sw s0, 0x40(sp)               |     *(var_40h) = s0;
    0x0003e30c move s1, a0                   |     s1 = a0;
    0x0003e310 move s5, a1                   |     s5 = a1;
    0x0003e314 addiu a0, zero, 0x400         |     a0 = aav.0x00000400;
    0x0003e318 addiu a1, zero, 1             |     a1 = 1;
    0x0003e31c sw v0, 0x3c(sp)               |     *(var_3ch) = v0;
    0x0003e320 move s6, a2                   |     s6 = a2;
    0x0003e324 move s3, a3                   |     s3 = a3;
    0x0003e328 jalr t9                       |     t9 ();
    0x0003e32c lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 == 0) {
    0x0003e330 beqz v0, 0x3e690              |         goto label_13;
                                             |     }
    0x0003e334 lw a1, (s6)                   |     a1 = *(s6);
    0x0003e338 move s0, v0                   |     s0 = v0;
                                             |     if (a1 == 0) {
    0x0003e33c beqz a1, 0x3e568              |         goto label_14;
                                             |     }
    0x0003e340 lw t9, -0x7fd0(gp)            |     t9 = *(gp);
    0x0003e344 move a2, v0                   |     a2 = v0;
                                             |     /* fcn.0003d6bc */
    0x0003e348 addiu t9, t9, -0x2944         |     t9 += -0x2944;
    0x0003e34c move a0, s1                   |     a0 = s1;
    0x0003e350 bal 0x3d6bc                   |     fcn_0003d6bc ();
    0x0003e354 addiu v1, zero, 3             |     v1 = 3;
    0x0003e358 subu s2, v1, s3               |     __asm ("subu s2, v1, s3");
    0x0003e35c lw v0, 4(s5)                  |     v0 = *((s5 + 1));
    0x0003e360 sll a0, s2, 3                 |     a0 = s2 << 3;
    0x0003e364 srlv v0, v0, a0               |     v0 >>= a0;
    0x0003e368 andi v0, v0, 0xff             |     v0 &= 0xff;
    0x0003e36c sll v0, v0, 2                 |     v0 <<= 2;
    0x0003e370 move s7, zero                 |     s7 = 0;
    0x0003e374 lwx v0, v0(s0)                |     __asm ("lwx v0, v0(s0)");
    0x0003e378 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x0003e37c sw a0, 0x2c(sp)               |     *(var_2ch_2) = a0;
    0x0003e380 sw v0, 0x38(sp)               |     *(var_38h_2) = v0;
                                             |     if (v0 != 0) {
    0x0003e384 bnez v0, 0x3e5d0              |         goto label_15;
                                             |     }
                                             | label_0:
    0x0003e388 lw t9, -0x79bc(gp)            |     t9 = sym.imp.malloc;
                                             |     if (s3 != v1) {
    0x0003e38c bne s3, v1, 0x3e6d4           |         goto label_16;
                                             |     }
    0x0003e390 addiu a0, zero, 0x400         |     a0 = aav.0x00000400;
    0x0003e394 jalr t9                       |     t9 ();
    0x0003e398 move s2, v0                   |     s2 = v0;
    0x0003e39c lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 == 0) {
    0x0003e3a0 beqz v0, 0x3e858              |         goto label_17;
                                             |     }
    0x0003e3a4 addiu fp, zero, 1             |     fp = 1;
                                             | label_8:
    0x0003e3a8 lw t9, -0x7a9c(gp)            |     t9 = sym.imp.memset;
    0x0003e3ac addiu a2, zero, 0x400         |     a2 = aav.0x00000400;
    0x0003e3b0 move a1, zero                 |     a1 = 0;
    0x0003e3b4 move a0, s2                   |     a0 = s2;
    0x0003e3b8 jalr t9                       |     t9 ();
    0x0003e3bc lw t1, 0x38(s1)               |     t1 = *((s1 + 14));
    0x0003e3c0 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (t1 != 0) {
    0x0003e3c4 bnez t1, 0x3e60c              |         goto label_18;
                                             |     }
    0x0003e3c8 lw t9, -0x7fd0(gp)            |     t9 = *(gp);
                                             |     /* fcn.0003d878 */
    0x0003e3cc addiu t9, t9, -0x2788         |     t9 += -0x2788;
    0x0003e3d0 move a0, s1                   |     a0 = s1;
    0x0003e3d4 bal 0x3d878                   |     fcn_0003d878 ();
    0x0003e3d8 move s3, v0                   |     s3 = v0;
    0x0003e3dc lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 < 0) {
    0x0003e3e0 bltz v0, 0x3e7fc              |         goto label_19;
                                             |     }
    0x0003e3e4 lw t9, -0x7a9c(gp)            |     t9 = sym.imp.memset;
    0x0003e3e8 addiu a2, zero, 0x400         |     a2 = aav.0x00000400;
    0x0003e3ec move a1, zero                 |     a1 = 0;
    0x0003e3f0 move a0, s2                   |     a0 = s2;
    0x0003e3f4 jalr t9                       |     t9 ();
    0x0003e3f8 lw v0, 0xc(s1)                |     v0 = *((s1 + 3));
    0x0003e3fc lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x0003e400 ori v0, v0, 1                 |     v0 |= 1;
    0x0003e404 move t1, s3                   |     t1 = s3;
    0x0003e408 sw s3, 0x38(s1)               |     *((s1 + 14)) = s3;
    0x0003e40c sw v0, 0xc(s1)                |     *((s1 + 3)) = v0;
                                             | label_4:
    0x0003e410 lw a2, 0x3c(s1)               |     a2 = *((s1 + 15));
    0x0003e414 addiu s7, zero, 0x3f0         |     s7 = aav.0x000003f0;
    0x0003e418 divu zero, s7, a2             |     __asm ("divu zero, s7, a2");
    0x0003e41c teq a2, zero, 7               |     __asm ("teq a2, zero, 7");
    0x0003e420 lhu v0, 8(s2)                 |     v0 = *((s2 + 4));
    0x0003e424 addiu v0, v0, 1               |     v0++;
    0x0003e428 mflo a1                       |     __asm ("mflo a1");
    0x0003e42c slt v1, v0, a1                |     v1 = (v0 < a1) ? 1 : 0;
    0x0003e430 lw t9, -0x7fd0(gp)            |     t9 = *(gp);
                                             |     if (v1 == 0) {
    0x0003e434 beqz v1, 0x3e7a4              |         goto label_20;
                                             |     }
    0x0003e438 sh v0, 8(s2)                  |     *((s2 + 4)) = v0;
                                             | label_9:
    0x0003e43c addiu v0, s2, 0x11            |     v0 = s2 + 0x11;
    0x0003e440 move a0, zero                 |     a0 = 0;
    0x0003e444 addiu t3, a2, -1              |     t3 = a2 + -1;
                                             |     if (a2 == 0) {
                                             | label_5:
    0x0003e448 beql a2, zero, 0x3e47c        |         goto label_6;
                                             |     }
    0x0003e44c move s7, a0                   |     s7 = a0;
    0x0003e450 lb v1, -1(v0)                 |     v1 = *((v0 - 1));
    0x0003e454 move v1, v0                   |     v1 = v0;
                                             |     if (v1 != 0) {
    0x0003e458 bnez v1, 0x3e638              |         goto label_21;
                                             |     }
    0x0003e45c addu a3, t3, v0               |     a3 = t3 + v0;
    0x0003e460 b 0x3e470                     |     
                                             |     while (a3 == v1) {
    0x0003e464 lb t2, -1(v1)                 |         t2 = *((v1 - 1));
    0x0003e468 addiu a0, a0, 1               |         a0++;
                                             |         if (t2 == 0) {
    0x0003e46c bnel t2, zero, 0x3e63c        |             goto label_22;
                                             |         }
    0x0003e470 addiu v1, v1, 1               |         v1++;
    0x0003e474 bnel a3, v1, 0x3e464          |         
                                             |     }
    0x0003e478 move s7, a0                   |     s7 = a0;
                                             | label_6:
    0x0003e47c lw v1, -0x7fd0(gp)            |     v1 = *(gp);
    0x0003e480 move a1, t1                   |     a1 = t1;
                                             |     /* fcn.0003d5b0 */
    0x0003e484 addiu v1, v1, -0x2a50         |     v1 += -0x2a50;
    0x0003e488 move t9, v1                   |     t9 = v1;
    0x0003e48c sw t1, 0x34(sp)               |     *(var_34h_2) = t1;
    0x0003e490 sw v1, 0x30(sp)               |     *(var_30h_2) = v1;
    0x0003e494 move a2, s2                   |     a2 = s2;
    0x0003e498 move a0, s1                   |     a0 = s1;
    0x0003e49c bal 0x3d5b0                   |     fcn_0003d5b0 ();
    0x0003e4a0 lw a0, 0x3c(s1)               |     a0 = *((s1 + 15));
    0x0003e4a4 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x0003e4a8 mul v0, s7, a0                |     __asm ("mul v0, s7, a0");
    0x0003e4ac sll s3, s3, 0xa               |     s3 <<= 0xa;
    0x0003e4b0 addiu a1, s3, 0x10            |     a1 = s3 + 0x10;
    0x0003e4b4 lw t9, -0x7814(gp)            |     t9 = sym.imp.free;
    0x0003e4b8 sw zero, 0x4c(s5)             |     *((s5 + 19)) = 0;
    0x0003e4bc addu a0, v0, a1               |     a0 = v0 + a1;
    0x0003e4c0 sw a0, 0x48(s5)               |     *((s5 + 18)) = a0;
    0x0003e4c4 move a0, s2                   |     a0 = s2;
    0x0003e4c8 jalr t9                       |     t9 ();
    0x0003e4cc lw t1, 0x34(sp)               |     t1 = *(var_34h_2);
    0x0003e4d0 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x0003e4d4 sw t1, 0x38(sp)               |     *(var_38h_2) = t1;
    0x0003e4d8 lw v1, 0x30(sp)               |     v1 = *(var_30h_2);
                                             |     if (fp == 0) {
    0x0003e4dc beqz fp, 0x3e518              |         goto label_2;
                                             |     }
    0x0003e4e0 move fp, zero                 |     fp = 0;
                                             | label_11:
    0x0003e4e4 lw a0, 0x2c(sp)               |     a0 = *(var_2ch_2);
    0x0003e4e8 lw v0, 4(s5)                  |     v0 = *((s5 + 1));
    0x0003e4ec lw a1, (s6)                   |     a1 = *(s6);
    0x0003e4f0 srlv v0, v0, a0               |     v0 >>= a0;
    0x0003e4f4 andi v0, v0, 0xff             |     v0 &= 0xff;
    0x0003e4f8 sll v0, v0, 2                 |     v0 <<= 2;
    0x0003e4fc addu v0, s0, v0               |     v0 = s0 + v0;
    0x0003e500 move a2, s0                   |     a2 = s0;
    0x0003e504 move a0, s1                   |     a0 = s1;
    0x0003e508 move t9, v1                   |     t9 = v1;
    0x0003e50c sw t1, (v0)                   |     *(v0) = t1;
    0x0003e510 jalr t9                       |     t9 ();
    0x0003e514 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     do {
                                             | label_2:
    0x0003e518 lw t9, -0x7814(gp)            |         t9 = sym.imp.free;
                                             | label_3:
    0x0003e51c move a0, s0                   |         a0 = s0;
    0x0003e520 jalr t9                       |         t9 ();
    0x0003e524 lw gp, 0x20(sp)               |         gp = *(var_20h);
                                             | label_7:
    0x0003e528 lw a0, 0x3c(sp)               |         a0 = *(var_3ch);
    0x0003e52c lw v1, (s4)                   |         v1 = *(s4);
    0x0003e530 move v0, fp                   |         v0 = fp;
                                             |         if (a0 != v1) {
    0x0003e534 bne a0, v1, 0x3e8a0           |             goto label_23;
                                             |         }
    0x0003e538 lw ra, 0x64(sp)               |         ra = *(var_64h);
    0x0003e53c lw fp, 0x60(sp)               |         fp = *(var_60h);
    0x0003e540 lw s7, 0x5c(sp)               |         s7 = *(var_5ch);
    0x0003e544 lw s6, 0x58(sp)               |         s6 = *(var_58h);
    0x0003e548 lw s5, 0x54(sp)               |         s5 = *(var_54h);
    0x0003e54c lw s4, 0x50(sp)               |         s4 = *(var_50h);
    0x0003e550 lw s3, 0x4c(sp)               |         s3 = *(var_4ch);
    0x0003e554 lw s2, 0x48(sp)               |         s2 = *(var_48h);
    0x0003e558 lw s1, 0x44(sp)               |         s1 = *(var_44h);
    0x0003e55c lw s0, 0x40(sp)               |         s0 = *(var_40h);
    0x0003e560 addiu sp, sp, 0x68            |         
    0x0003e564 jr ra                         |         return v0;
                                             | label_14:
    0x0003e568 lw t9, -0x7fd0(gp)            |         t9 = *(gp);
                                             |         /* fcn.0003d878 */
    0x0003e56c addiu t9, t9, -0x2788         |         t9 += -0x2788;
    0x0003e570 move a0, s1                   |         a0 = s1;
    0x0003e574 bal 0x3d878                   |         fcn_0003d878 ();
    0x0003e578 move fp, v0                   |         fp = v0;
    0x0003e57c lw gp, 0x20(sp)               |         gp = *(var_20h);
    0x0003e580 bltz v0, 0x3e518              |         
                                             |     } while (v0 < 0);
    0x0003e584 lw t9, -0x7a9c(gp)            |     t9 = sym.imp.memset;
    0x0003e588 move a0, s0                   |     a0 = s0;
    0x0003e58c sw v0, (s6)                   |     *(s6) = v0;
    0x0003e590 addiu a2, zero, 0x400         |     a2 = aav.0x00000400;
    0x0003e594 move a1, zero                 |     a1 = 0;
    0x0003e598 jalr t9                       |     t9 ();
    0x0003e59c addiu v1, zero, 3             |     v1 = 3;
    0x0003e5a0 subu s2, v1, s3               |     __asm ("subu s2, v1, s3");
    0x0003e5a4 lw v0, 4(s5)                  |     v0 = *((s5 + 1));
    0x0003e5a8 sll a0, s2, 3                 |     a0 = s2 << 3;
    0x0003e5ac srlv v0, v0, a0               |     v0 >>= a0;
    0x0003e5b0 andi v0, v0, 0xff             |     v0 &= 0xff;
    0x0003e5b4 sll v0, v0, 2                 |     v0 <<= 2;
    0x0003e5b8 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x0003e5bc lwx v0, v0(s0)                |     __asm ("lwx v0, v0(s0)");
    0x0003e5c0 addiu s7, zero, 1             |     s7 = 1;
    0x0003e5c4 sw a0, 0x2c(sp)               |     *(var_2ch_2) = a0;
    0x0003e5c8 sw v0, 0x38(sp)               |     *(var_38h_2) = v0;
                                             |     if (v0 == 0) {
    0x0003e5cc beqz v0, 0x3e388              |         goto label_0;
                                             |     }
                                             | label_15:
    0x0003e5d0 lw t9, -0x7fd0(gp)            |     t9 = *(gp);
                                             |     if (s3 == v1) {
    0x0003e5d4 beq s3, v1, 0x3e744           |         goto label_24;
                                             |     }
    0x0003e5d8 addiu a3, s3, 1               |     a3 = s3 + 1;
    0x0003e5dc addiu a2, sp, 0x38            |     a2 = sp + 0x38;
    0x0003e5e0 move a1, s5                   |     a1 = s5;
                                             |     /* fcn.0003e2c4 */
    0x0003e5e4 addiu t9, t9, -0x1d3c         |     t9 += -0x1d3c;
    0x0003e5e8 move a0, s1                   |     a0 = s1;
    0x0003e5ec bal 0x3e2c4                   |     fcn_0003e2c4 ();
                                             |     goto label_1;
    0x0003e5f0 move fp, v0                   |     fp = v0;
    0x0003e5f4 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (s7 == 0) {
    0x0003e5f8 beqz s7, 0x3e518              |         goto label_2;
                                             |     }
    0x0003e5fc lw t9, -0x7814(gp)            |     t9 = sym.imp.free;
                                             |     if (v0 >= 0) {
    0x0003e600 bgez v0, 0x3e51c              |         goto label_3;
                                             |     }
    0x0003e604 lw v0, 0xc(s1)                |     v0 = *((s1 + 3));
    0x0003e608 b 0x3e708                     |     goto label_25;
                                             | label_18:
    0x0003e60c lw t9, -0x7fd0(gp)            |     t9 = *(gp);
    0x0003e610 move a1, t1                   |     a1 = t1;
    0x0003e614 sw t1, 0x30(sp)               |     *(var_30h_2) = t1;
    0x0003e618 move a2, s2                   |     a2 = s2;
                                             |     /* fcn.0003d6bc */
    0x0003e61c addiu t9, t9, -0x2944         |     t9 += -0x2944;
    0x0003e620 move a0, s1                   |     a0 = s1;
    0x0003e624 bal 0x3d6bc                   |     fcn_0003d6bc ();
    0x0003e628 lw t1, 0x30(sp)               |     t1 = *(var_30h_2);
    0x0003e62c lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x0003e630 move s3, t1                   |     s3 = t1;
    0x0003e634 b 0x3e410                     |     goto label_4;
                                             | label_21:
    0x0003e638 addiu a0, a0, 1               |     a0++;
                                             | label_22:
    0x0003e63c addu v0, v0, a2               |     v0 += a2;
                                             |     if (a1 != a0) {
    0x0003e640 bne a1, a0, 0x3e448           |         goto label_5;
                                             |     }
    0x0003e644 move s7, a1                   |     s7 = a1;
                                             | label_10:
    0x0003e648 lw v0, -0x77dc(gp)            |     v0 = *((gp - 7671));
    0x0003e64c lw a3, -0x7fa8(gp)            |     a3 = *((gp - 8170));
    0x0003e650 lw a2, -0x7fa8(gp)            |     a2 = *((gp - 8170));
    0x0003e654 lw a0, (v0)                   |     a0 = *(v0);
    0x0003e658 lw v0, -0x7fa8(gp)            |     v0 = *((gp - 8170));
    0x0003e65c lw t9, -0x7c2c(gp)            |     t9 = sym.imp.__fprintf_chk
                                             |     /* str.find_free_dqentry */
    0x0003e660 addiu v0, v0, -0x1b7c         |     v0 += -0x1b7c;
    0x0003e664 sw v0, 0x14(sp)               |     *(var_14h) = v0;
    0x0003e668 addiu v0, zero, 0xf1          |     v0 = 0xf1;
    0x0003e66c sw t1, 0x30(sp)               |     *(var_30h_2) = t1;
    0x0003e670 sw v0, 0x10(sp)               |     *(var_10h) = v0;
                                             |     /* str..._.._.._git_lib_support_quotaio_tree.c */
    0x0003e674 addiu a3, a3, -0x1ef0         |     a3 += -0x1ef0;
                                             |     /* str._ERROR___s:_d:_s::_find_free_dqentry__:_Data_block_full_unexpectedly._n */
    0x0003e678 addiu a2, a2, -0x1d20         |     a2 += -0x1d20;
    0x0003e67c addiu a1, zero, 1             |     a1 = 1;
    0x0003e680 jalr t9                       |     t9 ();
    0x0003e684 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x0003e688 lw t1, 0x30(sp)               |     t1 = *(var_30h_2);
    0x0003e68c b 0x3e47c                     |     goto label_6;
                                             | label_13:
    0x0003e690 lw v0, -0x77dc(gp)            |     v0 = *((gp - 7671));
    0x0003e694 lw a3, -0x7fa8(gp)            |     a3 = *((gp - 8170));
    0x0003e698 lw a2, -0x7fa8(gp)            |     a2 = *((gp - 8170));
    0x0003e69c lw a0, (v0)                   |     a0 = *(v0);
    0x0003e6a0 lw v0, -0x7fa8(gp)            |     v0 = *((gp - 8170));
    0x0003e6a4 lw t9, -0x7c2c(gp)            |     t9 = sym.imp.__fprintf_chk
                                             |     /* str.getdqbuf */
    0x0003e6a8 addiu v0, v0, -0x1b4c         |     v0 += -0x1b4c;
    0x0003e6ac sw v0, 0x14(sp)               |     *(var_14h) = v0;
    0x0003e6b0 addiu v0, zero, 0x1b          |     v0 = 0x1b;
    0x0003e6b4 sw v0, 0x10(sp)               |     *(var_10h) = v0;
                                             |     /* str..._.._.._git_lib_support_quotaio_tree.c */
    0x0003e6b8 addiu a3, a3, -0x1ef0         |     a3 += -0x1ef0;
                                             |     /* str._ERROR___s:_d:_s::_Failed_to_allocate_dqbuf_n */
    0x0003e6bc addiu a2, a2, -0x1e24         |     a2 += -0x1e24;
    0x0003e6c0 addiu a1, zero, 1             |     a1 = 1;
    0x0003e6c4 jalr t9                       |     t9 ();
    0x0003e6c8 addiu fp, zero, -0xc          |     fp = -0xc;
    0x0003e6cc lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x0003e6d0 b 0x3e528                     |     goto label_7;
                                             | label_16:
    0x0003e6d4 lw t9, -0x7fd0(gp)            |     t9 = *(gp);
    0x0003e6d8 addiu a3, s3, 1               |     a3 = s3 + 1;
    0x0003e6dc addiu a2, sp, 0x38            |     a2 = sp + 0x38;
    0x0003e6e0 move a1, s5                   |     a1 = s5;
                                             |     /* fcn.0003e2c4 */
    0x0003e6e4 addiu t9, t9, -0x1d3c         |     t9 += -0x1d3c;
    0x0003e6e8 move a0, s1                   |     a0 = s1;
    0x0003e6ec bal 0x3e2c4                   |     fcn_0003e2c4 ();
                                             |     goto label_1;
    0x0003e6f0 move fp, v0                   |     fp = v0;
    0x0003e6f4 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 >= 0) {
    0x0003e6f8 bgez v0, 0x3e7ec              |         goto label_26;
                                             |     }
                                             | label_12:
    0x0003e6fc lw t9, -0x7814(gp)            |     t9 = sym.imp.free;
                                             |     if (s7 == 0) {
    0x0003e700 beqz s7, 0x3e51c              |         goto label_3;
                                             |     }
    0x0003e704 lw v0, 0xc(s1)                |     v0 = *((s1 + 3));
                                             | label_25:
    0x0003e708 lw a1, (s6)                   |     a1 = *(s6);
    0x0003e70c lw v1, 0x34(s1)               |     v1 = *((s1 + 13));
    0x0003e710 lw t9, -0x7fd0(gp)            |     t9 = *(gp);
    0x0003e714 ori v0, v0, 1                 |     v0 |= 1;
    0x0003e718 sw a1, 0x34(s1)               |     *((s1 + 13)) = a1;
    0x0003e71c sw v0, 0xc(s1)                |     *((s1 + 3)) = v0;
    0x0003e720 move a2, s0                   |     a2 = s0;
    0x0003e724 move a0, s1                   |     a0 = s1;
    0x0003e728 sw v1, (s0)                   |     *(s0) = v1;
    0x0003e72c sw zero, 4(s0)                |     *((s0 + 1)) = 0;
                                             |     /* fcn.0003d5b0 */
    0x0003e730 addiu t9, t9, -0x2a50         |     t9 += -0x2a50;
    0x0003e734 sh zero, 8(s0)                |     *((s0 + 4)) = 0;
    0x0003e738 bal 0x3d5b0                   |     fcn_0003d5b0 ();
    0x0003e73c lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x0003e740 b 0x3e518                     |     goto label_2;
                                             | label_24:
    0x0003e744 lw fp, -0x77dc(gp)            |     fp = *((gp - 7671));
    0x0003e748 lw s3, -0x7fa8(gp)            |     s3 = *((gp - 8170));
    0x0003e74c lw a2, -0x7fa8(gp)            |     a2 = *((gp - 8170));
    0x0003e750 lw a0, (fp)                   |     a0 = *(fp);
    0x0003e754 sw v0, 0x18(sp)               |     *(var_18h_2) = v0;
    0x0003e758 lw v0, -0x7fa8(gp)            |     v0 = *((gp - 8170));
    0x0003e75c lw t9, -0x7c2c(gp)            |     t9 = sym.imp.__fprintf_chk
                                             |     /* str.do_insert_tree */
    0x0003e760 addiu v0, v0, -0x1b40         |     v0 += -0x1b40;
    0x0003e764 sw v0, 0x14(sp)               |     *(var_14h) = v0;
    0x0003e768 addiu v0, zero, 0x11d         |     v0 = 0x11d;
                                             |     /* str..._.._.._git_lib_support_quotaio_tree.c */
    0x0003e76c addiu a3, s3, -0x1ef0         |     a3 = s3 + -0x1ef0;
                                             |     /* str._ERROR___s:_d:_s::_Inserting_already_present_quota_entry__block__u_._n */
    0x0003e770 addiu a2, a2, -0x1d68         |     a2 += -0x1d68;
    0x0003e774 addiu a1, zero, 1             |     a1 = 1;
    0x0003e778 sw v0, 0x10(sp)               |     *(var_10h) = v0;
    0x0003e77c jalr t9                       |     t9 ();
    0x0003e780 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x0003e784 lw t9, -0x79bc(gp)            |     t9 = sym.imp.malloc;
    0x0003e788 addiu a0, zero, 0x400         |     a0 = aav.0x00000400;
    0x0003e78c jalr t9                       |     t9 ();
    0x0003e790 move s2, v0                   |     s2 = v0;
    0x0003e794 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 == 0) {
    0x0003e798 beqz v0, 0x3e818              |         goto label_27;
                                             |     }
    0x0003e79c move fp, zero                 |     fp = 0;
    0x0003e7a0 b 0x3e3a8                     |     goto label_8;
                                             | label_20:
    0x0003e7a4 move a2, t1                   |     a2 = t1;
    0x0003e7a8 sw t1, 0x30(sp)               |     *(var_30h_2) = t1;
    0x0003e7ac move a1, s2                   |     a1 = s2;
                                             |     /* fcn.0003d9f8 */
    0x0003e7b0 addiu t9, t9, -0x2608         |     t9 += -0x2608;
    0x0003e7b4 move a0, s1                   |     a0 = s1;
    0x0003e7b8 bal 0x3d9f8                   |     fcn_0003d9f8 ();
    0x0003e7bc lw a2, 0x3c(s1)               |     a2 = *((s1 + 15));
    0x0003e7c0 lhu v0, 8(s2)                 |     v0 = *((s2 + 4));
    0x0003e7c4 divu zero, s7, a2             |     __asm ("divu zero, s7, a2");
    0x0003e7c8 teq a2, zero, 7               |     __asm ("teq a2, zero, 7");
    0x0003e7cc addiu v0, v0, 1               |     v0++;
    0x0003e7d0 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x0003e7d4 sh v0, 8(s2)                  |     *((s2 + 4)) = v0;
    0x0003e7d8 mflo a1                       |     __asm ("mflo a1");
    0x0003e7dc lw t1, 0x30(sp)               |     t1 = *(var_30h_2);
                                             |     if (a1 != 0) {
    0x0003e7e0 bnez a1, 0x3e43c              |         goto label_9;
                                             |     }
    0x0003e7e4 move s7, zero                 |     s7 = 0;
    0x0003e7e8 b 0x3e648                     |     goto label_10;
                                             | label_26:
    0x0003e7ec lw v1, -0x7fd0(gp)            |     v1 = *(gp);
    0x0003e7f0 lw t1, 0x38(sp)               |     t1 = *(var_38h_2);
                                             |     /* fcn.0003d5b0 */
    0x0003e7f4 addiu v1, v1, -0x2a50         |     v1 += -0x2a50;
    0x0003e7f8 b 0x3e4e4                     |     goto label_11;
                                             | label_19:
    0x0003e7fc lw t9, -0x7814(gp)            |     t9 = sym.imp.free;
    0x0003e800 move a0, s2                   |     a0 = s2;
    0x0003e804 jalr t9                       |     t9 ();
    0x0003e808 move fp, s3                   |     fp = s3;
    0x0003e80c lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x0003e810 sw zero, 0x38(sp)             |     *(var_38h_2) = 0;
    0x0003e814 b 0x3e6fc                     |     goto label_12;
                                             | label_27:
    0x0003e818 lw v0, -0x7fa8(gp)            |     v0 = *((gp - 8170));
    0x0003e81c lw a2, -0x7fa8(gp)            |     a2 = *((gp - 8170));
                                             |     /* str.getdqbuf */
    0x0003e820 addiu v0, v0, -0x1b4c         |     v0 += -0x1b4c;
    0x0003e824 lw a0, (fp)                   |     a0 = *(fp);
    0x0003e828 lw t9, -0x7c2c(gp)            |     t9 = sym.imp.__fprintf_chk
    0x0003e82c sw v0, 0x14(sp)               |     *(var_14h) = v0;
    0x0003e830 addiu v0, zero, 0x1b          |     v0 = 0x1b;
    0x0003e834 sw v0, 0x10(sp)               |     *(var_10h) = v0;
                                             |     /* str..._.._.._git_lib_support_quotaio_tree.c */
    0x0003e838 addiu a3, s3, -0x1ef0         |     a3 = s3 + -0x1ef0;
                                             |     /* str._ERROR___s:_d:_s::_Failed_to_allocate_dqbuf_n */
    0x0003e83c addiu a2, a2, -0x1e24         |     a2 += -0x1e24;
    0x0003e840 addiu a1, zero, 1             |     a1 = 1;
    0x0003e844 jalr t9                       |     t9 ();
    0x0003e848 addiu fp, zero, -0xc          |     fp = -0xc;
    0x0003e84c lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x0003e850 sw zero, 0x38(sp)             |     *(var_38h_2) = 0;
    0x0003e854 b 0x3e6fc                     |     goto label_12;
                                             | label_17:
    0x0003e858 lw v0, -0x77dc(gp)            |     v0 = *((gp - 7671));
    0x0003e85c lw a3, -0x7fa8(gp)            |     a3 = *((gp - 8170));
    0x0003e860 lw a2, -0x7fa8(gp)            |     a2 = *((gp - 8170));
    0x0003e864 lw a0, (v0)                   |     a0 = *(v0);
    0x0003e868 lw v0, -0x7fa8(gp)            |     v0 = *((gp - 8170));
    0x0003e86c lw t9, -0x7c2c(gp)            |     t9 = sym.imp.__fprintf_chk
                                             |     /* str.getdqbuf */
    0x0003e870 addiu v0, v0, -0x1b4c         |     v0 += -0x1b4c;
    0x0003e874 sw v0, 0x14(sp)               |     *(var_14h) = v0;
    0x0003e878 addiu v0, zero, 0x1b          |     v0 = 0x1b;
    0x0003e87c sw v0, 0x10(sp)               |     *(var_10h) = v0;
                                             |     /* str..._.._.._git_lib_support_quotaio_tree.c */
    0x0003e880 addiu a3, a3, -0x1ef0         |     a3 += -0x1ef0;
                                             |     /* str._ERROR___s:_d:_s::_Failed_to_allocate_dqbuf_n */
    0x0003e884 addiu a2, a2, -0x1e24         |     a2 += -0x1e24;
    0x0003e888 addiu a1, zero, 1             |     a1 = 1;
    0x0003e88c jalr t9                       |     t9 ();
    0x0003e890 addiu fp, zero, -0xc          |     fp = -0xc;
    0x0003e894 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x0003e898 sw zero, 0x38(sp)             |     *(var_38h_2) = 0;
    0x0003e89c b 0x3e6fc                     |     goto label_12;
                                             | label_23:
    0x0003e8a0 lw t9, -0x78a4(gp)            |     t9 = sym.imp.__stack_chk_fail;
    0x0003e8a4 jalr t9                       |     t9 ();
    0x0003e8a8 nop                           |     
                                             | }
    ; assembly                           | /* r2dec pseudo code output */
                                         | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/fsck.ext3 @ 0x3e8ac */
                                         | #include <stdint.h>
                                         |  
    ; (fcn) fcn.0003e8ac ()              | void fcn_0003e8ac () {
                                         |     do {
    0x0003e8ac lui gp, 3                 |         
    0x0003e8b0 addiu gp, gp, -0x4aec     |         
    0x0003e8b4 addu gp, gp, t9           |         gp += t9;
    0x0003e8b8 addiu sp, sp, -0x60       |         
    0x0003e8bc lw t9, -0x7cd0(gp)        |         t9 = sym.imp.calloc;
    0x0003e8c0 sw s4, 0x48(sp)           |         *(var_48h_2) = s4;
    0x0003e8c4 lw s4, -0x7838(gp)        |         s4 = *((gp - 7694));
    0x0003e8c8 sw gp, 0x20(sp)           |         *(var_20h_2) = gp;
    0x0003e8cc sw s7, 0x54(sp)           |         *(var_54h_2) = s7;
    0x0003e8d0 lw v0, (s4)               |         v0 = *(s4);
    0x0003e8d4 sw s6, 0x50(sp)           |         *(var_50h_2) = s6;
    0x0003e8d8 sw s5, 0x4c(sp)           |         *(var_4ch_2) = s5;
    0x0003e8dc sw s1, 0x3c(sp)           |         *(var_3ch_2) = s1;
    0x0003e8e0 sw ra, 0x5c(sp)           |         *(var_5ch_2) = ra;
    0x0003e8e4 sw fp, 0x58(sp)           |         *(var_58h_2) = fp;
    0x0003e8e8 sw s3, 0x44(sp)           |         *(var_44h_2) = s3;
    0x0003e8ec sw s2, 0x40(sp)           |         *(var_40h_2) = s2;
    0x0003e8f0 sw s0, 0x38(sp)           |         *(var_38h) = s0;
    0x0003e8f4 move s1, a0               |         s1 = a0;
    0x0003e8f8 move s7, a1               |         s7 = a1;
    0x0003e8fc addiu a0, zero, 0x400     |         a0 = aav.0x00000400;
    0x0003e900 addiu a1, zero, 1         |         a1 = 1;
    0x0003e904 sw v0, 0x34(sp)           |         *(var_34h) = v0;
    0x0003e908 move s5, a2               |         s5 = a2;
    0x0003e90c move s6, a3               |         s6 = a3;
    0x0003e910 jalr t9                   |         t9 ();
    0x0003e914 lw gp, 0x20(sp)           |         gp = *(var_20h_2);
                                         |         if (v0 == 0) {
    0x0003e918 beqz v0, 0x3e9d4          |             goto label_5;
                                         |         }
    0x0003e91c lw s3, -0x7fd0(gp)        |         s3 = *(gp);
    0x0003e920 lw a1, (s5)               |         a1 = *(s5);
                                         |         /* fcn.0003d6bc */
    0x0003e924 addiu t9, s3, -0x2944     |         t9 = s3 + -0x2944;
    0x0003e928 move a2, v0               |         a2 = v0;
    0x0003e92c move a0, s1               |         a0 = s1;
    0x0003e930 sw t9, 0x28(sp)           |         *(var_28h) = t9;
    0x0003e934 move fp, v0               |         fp = v0;
    0x0003e938 bal 0x3d6bc               |         fcn_0003d6bc ();
    0x0003e93c addiu v0, zero, 3         |         v0 = 3;
    0x0003e940 subu s2, v0, s6           |         __asm ("subu s2, v0, s6");
    0x0003e944 lw s0, 4(s7)              |         s0 = *((s7 + 1));
    0x0003e948 sll s2, s2, 3             |         s2 <<= 3;
    0x0003e94c srlv s0, s0, s2           |         s0 >>= s2;
    0x0003e950 andi s0, s0, 0xff         |         s0 &= 0xff;
    0x0003e954 sll s0, s0, 2             |         s0 <<= 2;
    0x0003e958 lw gp, 0x20(sp)           |         gp = *(var_20h_2);
    0x0003e95c lwx s0, s0(fp)            |         __asm ("lwx s0, s0(fp)");
    0x0003e960 sw s0, 0x30(sp)           |         *(var_30h) = s0;
                                         |         if (s6 == v0) {
    0x0003e964 beq s6, v0, 0x3ea4c       |             goto label_6;
                                         |         }
    0x0003e968 lw t9, -0x7fd0(gp)        |         t9 = *(gp);
    0x0003e96c addiu a3, s6, 1           |         a3 = s6 + 1;
    0x0003e970 addiu a2, sp, 0x30        |         a2 = sp + 0x30;
    0x0003e974 move a1, s7               |         a1 = s7;
                                         |         /* fcn.0003e8ac */
    0x0003e978 addiu t9, t9, -0x1754     |         t9 += -aav.0x00001754;
    0x0003e97c move a0, s1               |         a0 = s1;
    0x0003e980 bal 0x3e8ac               |         fcn_0003e8ac ();
                                         |     } while (1);
    0x0003e984 lw v0, 0x30(sp)           |     v0 = *(var_30h);
    0x0003e988 lw gp, 0x20(sp)           |     gp = *(var_20h_2);
                                         |     if (v0 == 0) {
    0x0003e98c beqz v0, 0x3eb88          |         goto label_7;
                                         |     }
                                         | label_0:
    0x0003e990 lw v1, 0x34(sp)           |     v1 = *(var_34h);
    0x0003e994 lw v0, (s4)               |     v0 = *(s4);
    0x0003e998 lw ra, 0x5c(sp)           |     ra = *(var_5ch_2);
                                         |     if (v1 != v0) {
    0x0003e99c bne v1, v0, 0x3edcc       |         goto label_8;
                                         |     }
    0x0003e9a0 lw s7, 0x54(sp)           |     s7 = *(var_54h_2);
    0x0003e9a4 lw s6, 0x50(sp)           |     s6 = *(var_50h_2);
    0x0003e9a8 lw s5, 0x4c(sp)           |     s5 = *(var_4ch_2);
    0x0003e9ac lw s4, 0x48(sp)           |     s4 = *(var_48h_2);
    0x0003e9b0 lw s3, 0x44(sp)           |     s3 = *(var_44h_2);
    0x0003e9b4 lw s2, 0x40(sp)           |     s2 = *(var_40h_2);
    0x0003e9b8 lw s1, 0x3c(sp)           |     s1 = *(var_3ch_2);
    0x0003e9bc lw s0, 0x38(sp)           |     s0 = *(var_38h);
    0x0003e9c0 move a0, fp               |     a0 = fp;
    0x0003e9c4 lw t9, -0x7814(gp)        |     t9 = sym.imp.free;
    0x0003e9c8 lw fp, 0x58(sp)           |     fp = *(var_58h_2);
    0x0003e9cc addiu sp, sp, 0x60        |     
    0x0003e9d0 jr t9                     |     t9 ();
                                         | label_5:
    0x0003e9d4 lw v0, -0x77dc(gp)        |     v0 = *((gp - 7671));
    0x0003e9d8 lw a3, -0x7fa8(gp)        |     a3 = *((gp - 8170));
    0x0003e9dc lw a2, -0x7fa8(gp)        |     a2 = *((gp - 8170));
    0x0003e9e0 lw a0, (v0)               |     a0 = *(v0);
    0x0003e9e4 lw v0, -0x7fa8(gp)        |     v0 = *((gp - 8170));
    0x0003e9e8 lw t9, -0x7c2c(gp)        |     t9 = sym.imp.__fprintf_chk
                                         |     /* str.getdqbuf */
    0x0003e9ec addiu v0, v0, -0x1b4c     |     v0 += -0x1b4c;
    0x0003e9f0 sw v0, 0x14(sp)           |     *(var_14h_2) = v0;
    0x0003e9f4 addiu v0, zero, 0x1b      |     v0 = 0x1b;
    0x0003e9f8 sw v0, 0x10(sp)           |     *(var_10h_2) = v0;
                                         |     /* str..._.._.._git_lib_support_quotaio_tree.c */
    0x0003e9fc addiu a3, a3, -0x1ef0     |     a3 += -0x1ef0;
                                         |     /* str._ERROR___s:_d:_s::_Failed_to_allocate_dqbuf_n */
    0x0003ea00 addiu a2, a2, -0x1e24     |     a2 += -0x1e24;
    0x0003ea04 addiu a1, zero, 1         |     a1 = 1;
    0x0003ea08 jalr t9                   |     t9 ();
    0x0003ea0c lw v1, 0x34(sp)           |     v1 = *(var_34h);
    0x0003ea10 lw v0, (s4)               |     v0 = *(s4);
    0x0003ea14 lw gp, 0x20(sp)           |     gp = *(var_20h_2);
                                         |     if (v1 != v0) {
    0x0003ea18 bne v1, v0, 0x3edcc       |         goto label_8;
                                         |     }
    0x0003ea1c lw ra, 0x5c(sp)           |     ra = *(var_5ch_2);
    0x0003ea20 lw fp, 0x58(sp)           |     fp = *(var_58h_2);
    0x0003ea24 lw s7, 0x54(sp)           |     s7 = *(var_54h_2);
    0x0003ea28 lw s6, 0x50(sp)           |     s6 = *(var_50h_2);
    0x0003ea2c lw s5, 0x4c(sp)           |     s5 = *(var_4ch_2);
    0x0003ea30 lw s4, 0x48(sp)           |     s4 = *(var_48h_2);
    0x0003ea34 lw s3, 0x44(sp)           |     s3 = *(var_44h_2);
    0x0003ea38 lw s2, 0x40(sp)           |     s2 = *(var_40h_2);
    0x0003ea3c lw s1, 0x3c(sp)           |     s1 = *(var_3ch_2);
    0x0003ea40 lw s0, 0x38(sp)           |     s0 = *(var_38h);
    0x0003ea44 addiu sp, sp, 0x60        |     
    0x0003ea48 jr ra                     |     return v0;
                                         | label_6:
    0x0003ea4c lw t9, -0x7cd0(gp)        |     t9 = sym.imp.calloc;
    0x0003ea50 addiu a1, zero, 1         |     a1 = 1;
    0x0003ea54 addiu a0, zero, 0x400     |     a0 = aav.0x00000400;
    0x0003ea58 jalr t9                   |     t9 ();
    0x0003ea5c move s3, v0               |     s3 = v0;
    0x0003ea60 lw gp, 0x20(sp)           |     gp = *(var_20h_2);
                                         |     if (v0 == 0) {
    0x0003ea64 beqz v0, 0x3ec84          |         goto label_9;
                                         |     }
    0x0003ea68 lw a0, 0x4c(s7)           |     a0 = *((s7 + 19));
    0x0003ea6c lw v0, 0x48(s7)           |     v0 = *((s7 + 18));
    0x0003ea70 sll a1, a0, 0x16          |     a1 = a0 << 0x16;
    0x0003ea74 srl v0, v0, 0xa           |     v0 >>= 0xa;
    0x0003ea78 or v0, a1, v0             |     v0 = a1 | v0;
    0x0003ea7c sra a0, a0, 0xa           |     a0 >>= 0xa;
                                         |     if (v0 != s0) {
    0x0003ea80 bne v0, s0, 0x3ec3c       |         goto label_10;
                                         |     }
    0x0003ea84 lw a0, -0x77dc(gp)        |     a0 = *((gp - 7671));
                                         |     if (a0 != 0) {
    0x0003ea88 bnez a0, 0x3ec40          |         goto label_11;
                                         |     }
    0x0003ea8c lw t9, 0x28(sp)           |     t9 = *(var_28h);
                                         | label_3:
    0x0003ea90 move a2, s3               |     a2 = s3;
    0x0003ea94 move a1, s0               |     a1 = s0;
    0x0003ea98 move a0, s1               |     a0 = s1;
    0x0003ea9c jalr t9                   |     t9 ();
    0x0003eaa0 lhu v0, 8(s3)             |     v0 = *((s3 + 4));
    0x0003eaa4 lw gp, 0x20(sp)           |     gp = *(var_20h_2);
    0x0003eaa8 addiu v0, v0, -1          |     v0 += -1;
    0x0003eaac andi v0, v0, 0xffff       |     v0 &= 0xffff;
    0x0003eab0 sh v0, 8(s3)              |     *((s3 + 4)) = v0;
                                         |     if (v0 != 0) {
    0x0003eab4 bnez v0, 0x3ebd8          |         goto label_12;
                                         |     }
    0x0003eab8 lw t9, -0x7fd0(gp)        |     t9 = *(gp);
    0x0003eabc move a2, s0               |     a2 = s0;
    0x0003eac0 move a1, s3               |     a1 = s3;
                                         |     /* fcn.0003d9f8 */
    0x0003eac4 addiu t9, t9, -0x2608     |     t9 += -0x2608;
    0x0003eac8 move a0, s1               |     a0 = s1;
    0x0003eacc bal 0x3d9f8               |     fcn_0003d9f8 ();
    0x0003ead0 lw gp, 0x20(sp)           |     gp = *(var_20h_2);
    0x0003ead4 lw v0, 0xc(s1)            |     v0 = *((s1 + 3));
    0x0003ead8 lw a3, 0x34(s1)           |     a3 = *((s1 + 13));
    0x0003eadc lw s6, -0x7fd0(gp)        |     s6 = *(gp);
    0x0003eae0 ori v0, v0, 1             |     v0 |= 1;
                                         |     /* fcn.0003d5b0 */
    0x0003eae4 addiu s6, s6, -0x2a50     |     s6 += -0x2a50;
    0x0003eae8 sw s0, 0x34(s1)           |     *((s1 + 13)) = s0;
    0x0003eaec sw v0, 0xc(s1)            |     *((s1 + 3)) = v0;
    0x0003eaf0 move a2, s3               |     a2 = s3;
    0x0003eaf4 move a1, s0               |     a1 = s0;
    0x0003eaf8 move a0, s1               |     a0 = s1;
    0x0003eafc sw a3, (s3)               |     *(s3) = a3;
    0x0003eb00 sw zero, 4(s3)            |     *((s3 + 1)) = 0;
    0x0003eb04 move t9, s6               |     t9 = s6;
    0x0003eb08 sh zero, 8(s3)            |     *((s3 + 4)) = 0;
    0x0003eb0c bal 0x3d5b0               |     fcn_0003d5b0 ();
    0x0003eb10 lw gp, 0x20(sp)           |     gp = *(var_20h_2);
                                         | label_2:
    0x0003eb14 lw t9, -0x7814(gp)        |     t9 = sym.imp.free;
    0x0003eb18 move v0, zero             |     v0 = 0;
    0x0003eb1c move v1, zero             |     v1 = 0;
    0x0003eb20 sw v0, 0x48(s7)           |     *((s7 + 18)) = v0;
    0x0003eb24 sw v1, 0x4c(s7)           |     *((s7 + 19)) = v1;
    0x0003eb28 move a0, s3               |     a0 = s3;
    0x0003eb2c jalr t9                   |     t9 ();
                                         | label_4:
    0x0003eb30 sw zero, 0x30(sp)         |     *(var_30h) = 0;
                                         | label_1:
    0x0003eb34 lw v1, 4(s7)              |     v1 = *((s7 + 1));
    0x0003eb38 move v0, fp               |     v0 = fp;
    0x0003eb3c srlv v1, v1, s2           |     v1 >>= s2;
    0x0003eb40 andi v1, v1, 0xff         |     v1 &= 0xff;
    0x0003eb44 sll v1, v1, 2             |     v1 <<= 2;
    0x0003eb48 addu v1, fp, v1           |     v1 = fp + v1;
    0x0003eb4c addiu a0, fp, 0x400       |     a0 = fp + aav.0x00000400;
    0x0003eb50 sw zero, (v1)             |     *(v1) = 0;
    0x0003eb54 b 0x3eb60                 |     
                                         |     while (v1 == 0) {
                                         |         if (a0 == v0) {
    0x0003eb58 beql a0, v0, 0x3eb94      |             goto label_13;
                                         |         }
    0x0003eb5c lw a1, (s5)               |         a1 = *(s5);
    0x0003eb60 lb v1, (v0)               |         v1 = *(v0);
    0x0003eb64 addiu v0, v0, 1           |         v0++;
    0x0003eb68 beqz v1, 0x3eb58          |         
                                         |     }
    0x0003eb6c lw a1, (s5)               |     a1 = *(s5);
    0x0003eb70 move a2, fp               |     a2 = fp;
                                         |     do {
    0x0003eb74 move t9, s6               |         t9 = s6;
    0x0003eb78 move a0, s1               |         a0 = s1;
    0x0003eb7c bal 0x3d5b0               |         fcn_0003d5b0 ();
    0x0003eb80 lw gp, 0x20(sp)           |         gp = *(var_20h_2);
    0x0003eb84 b 0x3e990                 |         goto label_0;
                                         | label_7:
    0x0003eb88 lw s6, -0x7fd0(gp)        |         s6 = *(gp);
                                         |         /* fcn.0003d5b0 */
    0x0003eb8c addiu s6, s6, -0x2a50     |         s6 += -0x2a50;
    0x0003eb90 b 0x3eb34                 |         goto label_1;
                                         | label_13:
    0x0003eb94 addiu v0, zero, 1         |         v0 = 1;
    0x0003eb98 move a2, fp               |         a2 = fp;
    0x0003eb9c beq a1, v0, 0x3eb74       |         
                                         |     } while (a1 == v0);
    0x0003eba0 lw v0, 0xc(s1)            |     v0 = *((s1 + 3));
    0x0003eba4 lw v1, 0x34(s1)           |     v1 = *((s1 + 13));
    0x0003eba8 ori v0, v0, 1             |     v0 |= 1;
    0x0003ebac sw a1, 0x34(s1)           |     *((s1 + 13)) = a1;
    0x0003ebb0 sw v0, 0xc(s1)            |     *((s1 + 3)) = v0;
    0x0003ebb4 move a0, s1               |     a0 = s1;
    0x0003ebb8 sw v1, (fp)               |     *(fp) = v1;
    0x0003ebbc sw zero, 4(fp)            |     *(arg_4h) = 0;
    0x0003ebc0 move t9, s6               |     t9 = s6;
    0x0003ebc4 sh zero, 8(fp)            |     *(arg_8h) = 0;
    0x0003ebc8 bal 0x3d5b0               |     fcn_0003d5b0 ();
    0x0003ebcc lw gp, 0x20(sp)           |     gp = *(var_20h_2);
    0x0003ebd0 sw zero, (s5)             |     *(s5) = 0;
    0x0003ebd4 b 0x3e990                 |     goto label_0;
                                         | label_12:
    0x0003ebd8 lw a0, 0x48(s7)           |     a0 = *((s7 + 18));
    0x0003ebdc lw s6, 0x3c(s1)           |     s6 = *((s1 + 15));
    0x0003ebe0 lw t9, -0x7a9c(gp)        |     t9 = sym.imp.memset;
    0x0003ebe4 andi a0, a0, 0x3ff        |     a0 &= 0x3ff;
    0x0003ebe8 addu a0, s3, a0           |     a0 = s3 + a0;
    0x0003ebec move a2, s6               |     a2 = s6;
    0x0003ebf0 move a1, zero             |     a1 = 0;
    0x0003ebf4 jalr t9                   |     t9 ();
    0x0003ebf8 addiu v0, zero, 0x3f0     |     v0 = aav.0x000003f0;
    0x0003ebfc divu zero, v0, s6         |     __asm ("divu zero, v0, s6");
    0x0003ec00 teq s6, zero, 7           |     __asm ("teq s6, zero, 7");
    0x0003ec04 lhu a0, 8(s3)             |     a0 = *((s3 + 4));
    0x0003ec08 mflo v0                   |     __asm ("mflo v0");
    0x0003ec0c addiu v0, v0, -1          |     v0 += -1;
    0x0003ec10 lw gp, 0x20(sp)           |     gp = *(var_20h_2);
                                         |     if (a0 != v0) {
    0x0003ec14 beq a0, v0, 0x3eccc       |         
    0x0003ec18 lw s6, -0x7fd0(gp)        |         s6 = *(gp);
    0x0003ec1c move a2, s3               |         a2 = s3;
                                         |         /* fcn.0003d5b0 */
    0x0003ec20 addiu s6, s6, -0x2a50     |         s6 += -0x2a50;
    0x0003ec24 move a1, s0               |         a1 = s0;
    0x0003ec28 move t9, s6               |         t9 = s6;
    0x0003ec2c move a0, s1               |         a0 = s1;
    0x0003ec30 bal 0x3d5b0               |         fcn_0003d5b0 ();
    0x0003ec34 lw gp, 0x20(sp)           |         gp = *(var_20h_2);
    0x0003ec38 b 0x3eb14                 |         goto label_2;
                                         | label_10:
    0x0003ec3c lw a0, -0x77dc(gp)        |         a0 = *((gp - 7671));
                                         | label_11:
    0x0003ec40 lw a3, -0x7fa8(gp)        |         a3 = *((gp - 8170));
    0x0003ec44 lw a2, -0x7fa8(gp)        |         a2 = *((gp - 8170));
    0x0003ec48 lw a0, (a0)               |         a0 = *(a0);
    0x0003ec4c sw v0, 0x1c(sp)           |         *(var_1ch) = v0;
    0x0003ec50 lw v0, -0x7fa8(gp)        |         v0 = *((gp - 8170));
    0x0003ec54 lw t9, -0x7c2c(gp)        |         t9 = sym.imp.__fprintf_chk
                                         |         /* str.free_dqentry */
    0x0003ec58 addiu v0, v0, -0x1b98     |         v0 += -0x1b98;
    0x0003ec5c sw v0, 0x14(sp)           |         *(var_14h_2) = v0;
    0x0003ec60 addiu v0, zero, 0x170     |         v0 = aav.0x00000170;
    0x0003ec64 sw s0, 0x18(sp)           |         *(var_18h) = s0;
    0x0003ec68 sw v0, 0x10(sp)           |         *(var_10h_2) = v0;
                                         |         /* str..._.._.._git_lib_support_quotaio_tree.c */
    0x0003ec6c addiu a3, a3, -0x1ef0     |         a3 += -0x1ef0;
                                         |         /* str._ERROR___s:_d:_s::_Quota_structure_has_offset_to_other_block___u__than_it_should___u_._n */
    0x0003ec70 addiu a2, a2, -0x1cd8     |         a2 += -0x1cd8;
    0x0003ec74 addiu a1, zero, 1         |         a1 = 1;
    0x0003ec78 jalr t9                   |         t9 ();
    0x0003ec7c lw t9, 0x28(sp)           |         t9 = *(var_28h);
    0x0003ec80 b 0x3ea90                 |         goto label_3;
                                         | label_9:
    0x0003ec84 lw v0, -0x77dc(gp)        |         v0 = *((gp - 7671));
    0x0003ec88 lw a3, -0x7fa8(gp)        |         a3 = *((gp - 8170));
    0x0003ec8c lw a2, -0x7fa8(gp)        |         a2 = *((gp - 8170));
    0x0003ec90 lw a0, (v0)               |         a0 = *(v0);
    0x0003ec94 lw v0, -0x7fa8(gp)        |         v0 = *((gp - 8170));
    0x0003ec98 lw t9, -0x7c2c(gp)        |         t9 = sym.imp.__fprintf_chk
                                         |         /* str.getdqbuf */
    0x0003ec9c addiu v0, v0, -0x1b4c     |         v0 += -0x1b4c;
    0x0003eca0 sw v0, 0x14(sp)           |         *(var_14h_2) = v0;
    0x0003eca4 addiu v0, zero, 0x1b      |         v0 = 0x1b;
    0x0003eca8 sw v0, 0x10(sp)           |         *(var_10h_2) = v0;
                                         |         /* str..._.._.._git_lib_support_quotaio_tree.c */
    0x0003ecac addiu a3, a3, -0x1ef0     |         a3 += -0x1ef0;
                                         |         /* str._ERROR___s:_d:_s::_Failed_to_allocate_dqbuf_n */
    0x0003ecb0 addiu a2, a2, -0x1e24     |         a2 += -0x1e24;
    0x0003ecb4 addiu a1, zero, 1         |         a1 = 1;
    0x0003ecb8 jalr t9                   |         t9 ();
    0x0003ecbc lw gp, 0x20(sp)           |         gp = *(var_20h_2);
    0x0003ecc0 lw s6, -0x7fd0(gp)        |         s6 = *(gp);
                                         |         /* fcn.0003d5b0 */
    0x0003ecc4 addiu s6, s6, -0x2a50     |         s6 += -0x2a50;
    0x0003ecc8 b 0x3eb30                 |         goto label_4;
                                         |     }
    0x0003eccc lw t9, -0x7cd0(gp)        |     t9 = sym.imp.calloc;
    0x0003ecd0 addiu a1, zero, 1         |     a1 = 1;
    0x0003ecd4 addiu a0, zero, 0x400     |     a0 = aav.0x00000400;
    0x0003ecd8 jalr t9                   |     t9 ();
    0x0003ecdc sw v0, 0x2c(sp)           |     *(var_2ch) = v0;
    0x0003ece0 lw gp, 0x20(sp)           |     gp = *(var_20h_2);
                                         |     if (v0 == 0) {
    0x0003ece4 beqz v0, 0x3ed84          |         goto label_14;
                                         |     }
    0x0003ece8 lw s6, -0x7fd0(gp)        |     s6 = *(gp);
    0x0003ecec lw v0, 0x38(s1)           |     v0 = *((s1 + 14));
                                         |     /* fcn.0003d5b0 */
    0x0003ecf0 addiu s6, s6, -0x2a50     |     s6 += -0x2a50;
    0x0003ecf4 move a1, s0               |     a1 = s0;
    0x0003ecf8 move a2, s3               |     a2 = s3;
    0x0003ecfc move a0, s1               |     a0 = s1;
    0x0003ed00 sw v0, (s3)               |     *(s3) = v0;
    0x0003ed04 move t9, s6               |     t9 = s6;
    0x0003ed08 sw zero, 4(s3)            |     *((s3 + 1)) = 0;
    0x0003ed0c bal 0x3d5b0               |     fcn_0003d5b0 ();
    0x0003ed10 lw a1, 0x38(s1)           |     a1 = *((s1 + 14));
    0x0003ed14 lw gp, 0x20(sp)           |     gp = *(var_20h_2);
    0x0003ed18 lw a3, 0x2c(sp)           |     a3 = *(var_2ch);
    0x0003ed1c bnez a1, 0x3ed44          |     
                                         |     while (1) {
    0x0003ed20 lw t9, -0x7814(gp)        |         t9 = sym.imp.free;
    0x0003ed24 move a0, a3               |         a0 = a3;
    0x0003ed28 jalr t9                   |         t9 ();
    0x0003ed2c lw v0, 0xc(s1)            |         v0 = *((s1 + 3));
    0x0003ed30 lw gp, 0x20(sp)           |         gp = *(var_20h_2);
    0x0003ed34 ori v0, v0, 1             |         v0 |= 1;
    0x0003ed38 sw s0, 0x38(s1)           |         *((s1 + 14)) = s0;
    0x0003ed3c sw v0, 0xc(s1)            |         *((s1 + 3)) = v0;
    0x0003ed40 b 0x3eb14                 |         goto label_2;
    0x0003ed44 lw t9, 0x28(sp)           |         t9 = *(var_28h);
    0x0003ed48 move a2, a3               |         a2 = a3;
    0x0003ed4c sw a3, 0x2c(sp)           |         *(var_2ch) = a3;
    0x0003ed50 move a0, s1               |         a0 = s1;
    0x0003ed54 jalr t9                   |         t9 ();
    0x0003ed58 lw a3, 0x2c(sp)           |         a3 = *(var_2ch);
    0x0003ed5c lw a1, 0x38(s1)           |         a1 = *((s1 + 14));
    0x0003ed60 move a2, a3               |         a2 = a3;
    0x0003ed64 sw s0, 4(a3)              |         *((a3 + 1)) = s0;
    0x0003ed68 sw a3, 0x28(sp)           |         *(var_28h) = a3;
    0x0003ed6c move t9, s6               |         t9 = s6;
    0x0003ed70 move a0, s1               |         a0 = s1;
    0x0003ed74 bal 0x3d5b0               |         fcn_0003d5b0 ();
    0x0003ed78 lw gp, 0x20(sp)           |         gp = *(var_20h_2);
    0x0003ed7c lw a3, 0x28(sp)           |         a3 = *(var_28h);
    0x0003ed80 b 0x3ed20                 |         
                                         |     }
                                         | label_14:
    0x0003ed84 lw v0, -0x77dc(gp)        |     v0 = *((gp - 7671));
    0x0003ed88 lw a3, -0x7fa8(gp)        |     a3 = *((gp - 8170));
    0x0003ed8c lw a2, -0x7fa8(gp)        |     a2 = *((gp - 8170));
    0x0003ed90 lw a0, (v0)               |     a0 = *(v0);
    0x0003ed94 lw v0, -0x7fa8(gp)        |     v0 = *((gp - 8170));
    0x0003ed98 lw t9, -0x7c2c(gp)        |     t9 = sym.imp.__fprintf_chk
                                         |     /* str.getdqbuf */
    0x0003ed9c addiu v0, v0, -0x1b4c     |     v0 += -0x1b4c;
    0x0003eda0 sw v0, 0x14(sp)           |     *(var_14h_2) = v0;
    0x0003eda4 addiu v0, zero, 0x1b      |     v0 = 0x1b;
    0x0003eda8 sw v0, 0x10(sp)           |     *(var_10h_2) = v0;
                                         |     /* str..._.._.._git_lib_support_quotaio_tree.c */
    0x0003edac addiu a3, a3, -0x1ef0     |     a3 += -0x1ef0;
                                         |     /* str._ERROR___s:_d:_s::_Failed_to_allocate_dqbuf_n */
    0x0003edb0 addiu a2, a2, -0x1e24     |     a2 += -0x1e24;
    0x0003edb4 addiu a1, zero, 1         |     a1 = 1;
    0x0003edb8 jalr t9                   |     t9 ();
    0x0003edbc lw gp, 0x20(sp)           |     gp = *(var_20h_2);
    0x0003edc0 lw s6, -0x7fd0(gp)        |     s6 = *(gp);
                                         |     /* fcn.0003d5b0 */
    0x0003edc4 addiu s6, s6, -0x2a50     |     s6 += -0x2a50;
    0x0003edc8 b 0x3eb14                 |     goto label_2;
                                         | label_8:
    0x0003edcc lw t9, -0x78a4(gp)        |     t9 = sym.imp.__stack_chk_fail;
    0x0003edd0 jalr t9                   |     t9 ();
    0x0003edd4 nop                       |     
                                         | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/fsck.ext3 @ 0x8680 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) main ()                          | int32_t main () {
                                             |     /* [13] -r-x section size 241776 named .text */
    0x00008680 lui gp, 6                     |     
    0x00008684 addiu gp, gp, 0x1740          |     
    0x00008688 addu gp, gp, t9               |     gp += t9;
    0x0000868c lw v0, -0x7838(gp)            |     v0 = *((gp - 7694));
    0x00008690 addiu sp, sp, -0x350          |     
    0x00008694 addiu v1, sp, 0xa8            |     v1 = sp + 0xa8;
    0x00008698 sw v0, 0x74(sp)               |     *(var_74h) = v0;
    0x0000869c lw v0, (v0)                   |     v0 = *(v0);
    0x000086a0 lw t9, -0x7f78(gp)            |     t9 = sym.clear_problem_context;
    0x000086a4 sw ra, 0x34c(sp)              |     *(var_34ch) = ra;
    0x000086a8 sw v1, 0x50(sp)               |     *(var_50h) = v1;
    0x000086ac sw gp, 0x30(sp)               |     *(var_30h) = gp;
    0x000086b0 sw v0, 0x324(sp)              |     *(var_324h) = v0;
    0x000086b4 sw s3, 0x334(sp)              |     *(var_334h) = s3;
    0x000086b8 sw s2, 0x330(sp)              |     *(var_330h) = s2;
    0x000086bc sw s1, 0x32c(sp)              |     *(var_32ch) = s1;
    0x000086c0 sw s0, 0x328(sp)              |     *(var_328h) = s0;
    0x000086c4 sw fp, 0x348(sp)              |     *(var_348h) = fp;
    0x000086c8 sw s7, 0x344(sp)              |     *(var_344h) = s7;
    0x000086cc sw s6, 0x340(sp)              |     *(var_340h) = s6;
    0x000086d0 sw s5, 0x33c(sp)              |     *(var_33ch) = s5;
    0x000086d4 sw s4, 0x338(sp)              |     *(var_338h) = s4;
    0x000086d8 move s1, a0                   |     s1 = a0;
    0x000086dc sw zero, 0x90(sp)             |     *(var_90h) = 0;
    0x000086e0 move a0, v1                   |     a0 = v1;
    0x000086e4 move s3, a1                   |     s3 = a1;
    0x000086e8 jalr t9                       |     t9 ();
    0x000086ec lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x000086f0 lw t9, -0x7f74(gp)            |     t9 = sym.sigcatcher_setup;
    0x000086f4 lw s2, -0x7fd0(gp)            |     s2 = *(gp);
    0x000086f8 jalr t9                       |     t9 ();
    0x000086fc nop                           |     
    0x00008700 lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x00008704 lw t9, -0x7ab8(gp)            |     t9 = sym.imp.ext2fs_parse_version_string;
                                             |     /* str.1.45.3 */
    0x00008708 addiu a0, s2, 0x5a6c          |     a0 = s2 + 0x5a6c;
    0x0000870c jalr t9                       |     t9 ();
    0x00008710 lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x00008714 addiu a1, sp, 0x94            |     a1 = sp + 0x94;
    0x00008718 move a0, zero                 |     a0 = 0;
    0x0000871c lw t9, -0x79d4(gp)            |     t9 = sym.imp.ext2fs_get_library_version;
    0x00008720 move s0, v0                   |     s0 = v0;
    0x00008724 jalr t9                       |     t9 ();
    0x00008728 slt v0, v0, s0                |     v0 = (v0 < s0) ? 1 : 0;
    0x0000872c lw gp, 0x30(sp)               |     gp = *(var_30h);
                                             |     if (v0 != 0) {
    0x00008730 bnez v0, 0x98d8               |         goto label_85;
                                             |     }
                                             | label_12:
    0x00008734 lw t9, -0x7fd8(gp)            |     t9 = *(gp);
    0x00008738 addiu a2, sp, 0x98            |     a2 = sp + 0x98;
    0x0000873c move a1, s3                   |     a1 = s3;
    0x00008740 addiu t9, t9, -0x3e38         |     t9 += -0x3e38;
    0x00008744 move a0, s1                   |     a0 = s1;
    0x00008748 bal 0xc1c8                    |     fcn_0000c1c8 ();
    0x0000874c sw v0, 0x64(sp)               |     *(var_64h) = v0;
    0x00008750 lw gp, 0x30(sp)               |     gp = *(var_30h);
                                             |     if (v0 != 0) {
    0x00008754 bnez v0, 0xbb30               |         goto label_86;
                                             |     }
    0x00008758 lw s0, -0x7fd0(gp)            |     s0 = *(gp);
                                             |     /* str._dev_null */
    0x0000875c addiu s0, s0, 0x5ac4          |     s0 += 0x5ac4;
    0x00008760 lw t9, -0x7a1c(gp)            |     t9 = sym.imp.open;
                                             |     do {
    0x00008764 addiu a1, zero, 2             |         a1 = 2;
    0x00008768 move a0, s0                   |         a0 = s0;
    0x0000876c jalr t9                       |         t9 ();
    0x00008770 lw gp, 0x30(sp)               |         gp = *(var_30h);
                                             |         if (v0 < 0) {
    0x00008774 bltz v0, 0x8af0               |             goto label_87;
                                             |         }
    0x00008778 slti v1, v0, 3                |         v1 = (v0 < 3) ? 1 : 0;
    0x0000877c lw t9, -0x7a1c(gp)            |         t9 = sym.imp.open;
    0x00008780 bnez v1, 0x8764               |         
                                             |     } while (v1 != 0);
    0x00008784 lw t9, -0x7cb0(gp)            |     t9 = sym.imp.close;
    0x00008788 move a0, v0                   |     a0 = v0;
    0x0000878c jalr t9                       |     t9 ();
    0x00008790 lw gp, 0x30(sp)               |     gp = *(var_30h);
                                             | label_0:
    0x00008794 lw t9, -0x7f70(gp)            |     t9 = sym.set_up_logging;
    0x00008798 lw a0, 0x98(sp)               |     a0 = *(var_98h);
    0x0000879c jalr t9                       |     t9 ();
    0x000087a0 lw s7, 0x98(sp)               |     s7 = *(var_98h);
    0x000087a4 lw a3, 0x14(s7)               |     a3 = *((s7 + 5));
    0x000087a8 lw gp, 0x30(sp)               |     gp = *(var_30h);
                                             |     if (a3 == 0) {
    0x000087ac beqz a3, 0x8834               |         goto label_88;
                                             |     }
    0x000087b0 lw a0, -0x7fd0(gp)            |     a0 = *(gp);
    0x000087b4 lw t9, -0x7938(gp)            |     t9 = sym.imp.fwrite;
    0x000087b8 addiu a2, zero, 0xc           |     a2 = 0xc;
    0x000087bc addiu a1, zero, 1             |     a1 = 1;
                                             |     /* str.E2fsck_run:_ */
    0x000087c0 addiu a0, a0, 0x5af8          |     a0 += 0x5af8;
    0x000087c4 jalr t9                       |     t9 ();
    0x000087c8 lw gp, 0x30(sp)               |     gp = *(var_30h);
                                             |     if (s1 <= 0) {
    0x000087cc blez s1, 0x8818               |         goto label_89;
                                             |     }
    0x000087d0 sll s4, s1, 2                 |     s4 = s1 << 2;
    0x000087d4 move s0, s3                   |     s0 = s3;
    0x000087d8 addu s4, s4, s3               |     s4 += s3;
    0x000087dc b 0x87f8                      |     
                                             |     while (s4 != s0) {
    0x000087e0 lw v0, 0x98(sp)               |         v0 = *(var_98h);
    0x000087e4 lw t9, -0x7b94(gp)            |         t9 = sym.imp.fputc;
    0x000087e8 addiu a0, zero, 0x20          |         a0 = 0x20;
    0x000087ec lw a1, 0x14(v0)               |         a1 = *((v0 + 5));
    0x000087f0 jalr t9                       |         t9 ();
    0x000087f4 lw gp, 0x30(sp)               |         gp = *(var_30h);
    0x000087f8 lw v0, 0x98(sp)               |         v0 = *(var_98h);
    0x000087fc lw t9, -0x7c94(gp)            |         t9 = sym.imp.fputs;
    0x00008800 lw a0, (s0)                   |         a0 = *(s0);
    0x00008804 lw a1, 0x14(v0)               |         a1 = *((v0 + 5));
    0x00008808 addiu s0, s0, 4               |         s0 += 4;
    0x0000880c jalr t9                       |         t9 ();
    0x00008810 lw gp, 0x30(sp)               |         gp = *(var_30h);
    0x00008814 bne s4, s0, 0x87e0            |         
                                             |     }
                                             | label_89:
    0x00008818 lw v0, 0x98(sp)               |     v0 = *(var_98h);
    0x0000881c lw t9, -0x7b94(gp)            |     t9 = sym.imp.fputc;
    0x00008820 addiu a0, zero, 0xa           |     a0 = 0xa;
    0x00008824 lw a1, 0x14(v0)               |     a1 = *((v0 + 5));
    0x00008828 jalr t9                       |     t9 ();
    0x0000882c lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x00008830 lw s7, 0x98(sp)               |     s7 = *(var_98h);
                                             | label_88:
    0x00008834 lw a3, 0x1c(s7)               |     a3 = *((s7 + 7));
    0x00008838 lw a0, -0x7fd0(gp)            |     a0 = *(gp);
                                             |     if (a3 == 0) {
    0x0000883c beqz a3, 0x8914               |         goto label_90;
                                             |     }
    0x00008840 lw t9, -0x7938(gp)            |     t9 = sym.imp.fwrite;
    0x00008844 addiu a2, zero, 0x27          |     a2 = 0x27;
    0x00008848 addiu a1, zero, 1             |     a1 = 1;
                                             |     /* str.__xml_version_1.0__encoding_utf_8____n */
    0x0000884c addiu a0, a0, 0x5b08          |     a0 += 0x5b08;
    0x00008850 jalr t9                       |     t9 ();
    0x00008854 lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x00008858 lw v0, 0x98(sp)               |     v0 = *(var_98h);
    0x0000885c addiu a1, zero, 1             |     a1 = 1;
    0x00008860 lw a2, -0x7fd0(gp)            |     a2 = *(gp);
    0x00008864 lw t9, -0x7c2c(gp)            |     t9 = sym.imp.__fprintf_chk
    0x00008868 lw a3, 0x290(v0)              |     a3 = *((v0 + 164));
    0x0000886c lw a0, 0x1c(v0)               |     a0 = *((v0 + 7));
                                             |     /* str._problem_log_time__lu___n */
    0x00008870 addiu a2, a2, 0x5b30          |     a2 += 0x5b30;
    0x00008874 jalr t9                       |     t9 ();
    0x00008878 lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0000887c lw v0, 0x98(sp)               |     v0 = *(var_98h);
    0x00008880 lw a3, (s3)                   |     a3 = *(s3);
    0x00008884 lw a2, -0x7fd0(gp)            |     a2 = *(gp);
    0x00008888 lw t9, -0x7c2c(gp)            |     t9 = sym.imp.__fprintf_chk
    0x0000888c lw a0, 0x1c(v0)               |     a0 = *((v0 + 7));
                                             |     /* str._invocation_prog__s_ */
    0x00008890 addiu a2, a2, 0x5b4c          |     a2 += 0x5b4c;
    0x00008894 addiu a1, zero, 1             |     a1 = 1;
    0x00008898 jalr t9                       |     t9 ();
    0x0000889c slti v0, s1, 2                |     v0 = (s1 < 2) ? 1 : 0;
    0x000088a0 lw gp, 0x30(sp)               |     gp = *(var_30h);
                                             |     if (v0 != 0) {
    0x000088a4 bnez v0, 0x88ec               |         goto label_91;
                                             |     }
    0x000088a8 lw s4, -0x7fd0(gp)            |     s4 = *(gp);
    0x000088ac addiu s3, s3, 4               |     s3 += 4;
    0x000088b0 addiu s0, zero, 1             |     s0 = 1;
                                             |     /* str._arg_d__s_ */
    0x000088b4 addiu s4, s4, 0x5b68          |     s4 += 0x5b68;
                                             |     do {
    0x000088b8 lw v1, 0x98(sp)               |         v1 = *(var_98h);
    0x000088bc lw v0, (s3)                   |         v0 = *(s3);
    0x000088c0 lw t9, -0x7c2c(gp)            |         t9 = sym.imp.__fprintf_chk
    0x000088c4 lw a0, 0x1c(v1)               |         a0 = *((v1 + 7));
    0x000088c8 move a3, s0                   |         a3 = s0;
    0x000088cc sw v0, 0x10(sp)               |         *(var_10h) = v0;
    0x000088d0 move a2, s4                   |         a2 = s4;
    0x000088d4 addiu a1, zero, 1             |         a1 = 1;
    0x000088d8 addiu s0, s0, 1               |         s0++;
    0x000088dc jalr t9                       |         t9 ();
    0x000088e0 addiu s3, s3, 4               |         s3 += 4;
    0x000088e4 lw gp, 0x30(sp)               |         gp = *(var_30h);
    0x000088e8 bne s1, s0, 0x88b8            |         
                                             |     } while (s1 != s0);
                                             | label_91:
    0x000088ec lw v0, 0x98(sp)               |     v0 = *(var_98h);
    0x000088f0 lw a0, -0x7fd0(gp)            |     a0 = *(gp);
    0x000088f4 lw t9, -0x7938(gp)            |     t9 = sym.imp.fwrite;
    0x000088f8 lw a3, 0x1c(v0)               |     a3 = *((v0 + 7));
    0x000088fc addiu a2, zero, 3             |     a2 = 3;
    0x00008900 addiu a1, zero, 1             |     a1 = 1;
                                             |     /* esilref: '/>
' */
    0x00008904 addiu a0, a0, 0x5b64          |     a0 += 0x5b64;
    0x00008908 jalr t9                       |     t9 ();
    0x0000890c lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x00008910 lw s7, 0x98(sp)               |     s7 = *(var_98h);
                                             | label_90:
    0x00008914 lw t9, -0x7f6c(gp)            |     t9 = sym.init_resource_track;
    0x00008918 addiu a0, s7, 0x1e8           |     a0 = s7 + aav.0x000001e8;
    0x0000891c move a1, zero                 |     a1 = 0;
    0x00008920 jalr t9                       |     t9 ();
    0x00008924 lw s7, 0x98(sp)               |     s7 = *(var_98h);
    0x00008928 lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0000892c lw v0, 0x28(s7)               |     v0 = *((s7 + 10));
    0x00008930 andi v0, v0, 2                |     v0 &= 2;
    0x00008934 lw s0, -0x7fc8(gp)            |     s0 = *((gp - 8178));
                                             |     if (v0 == 0) {
    0x00008938 beqz v0, 0x8a80               |         goto label_92;
                                             |     }
    0x0000893c lw v0, 0x27a0(s0)             |     v0 = *((s0 + 2536));
    0x00008940 lw a3, -0x7fd0(gp)            |     a3 = *(gp);
                                             |     if (v0 != 0) {
    0x00008944 bnez v0, 0x8a84               |         goto label_93;
                                             |     }
                                             | label_25:
    0x00008948 lw t9, -0x7934(gp)            |     t9 = sym.imp.ext2fs_check_if_mounted;
    0x0000894c lw a0, 8(s7)                  |     a0 = *((s7 + 2));
    0x00008950 addiu a1, s7, 0x54            |     a1 = s7 + 0x54;
    0x00008954 jalr t9                       |     t9 ();
    0x00008958 lw gp, 0x30(sp)               |     gp = *(var_30h);
                                             |     if (v0 != 0) {
    0x0000895c bnez v0, 0xa55c               |         goto label_94;
                                             |     }
    0x00008960 lw v0, 0x54(s7)               |     v0 = *((s7 + 21));
    0x00008964 andi v1, v0, 0x11             |     v1 = v0 & 0x11;
    0x00008968 andi v1, v0, 6                |     v1 = v0 & 6;
                                             |     if (v1 == 0) {
    0x0000896c beqz v1, 0x8b60               |         goto label_28;
                                             |     }
    0x00008970 addiu a1, zero, 6             |     a1 = 6;
    0x00008974 lw a0, 0x28(s7)               |     a0 = *((s7 + 10));
                                             |     if (v1 == a1) {
    0x00008978 beq v1, a1, 0x9fd4            |         goto label_95;
                                             |     }
    0x0000897c andi v1, a0, 1                |     v1 = a0 & 1;
    0x00008980 andi a0, a0, 0x200            |     a0 &= aav.0x00000200;
                                             |     if (v1 == 0) {
    0x00008984 bnel v1, zero, 0x8b38         |         goto label_96;
                                             |     }
    0x00008988 andi v1, a0, 0x100            |     v1 = a0 & aav.0x00000100;
                                             |     if (v1 == 0) {
                                             | label_30:
    0x0000898c beql v1, zero, 0x89a4         |         goto label_29;
                                             |     }
    0x00008990 andi v0, v0, 1                |     v0 &= 1;
    0x00008994 andi v1, v0, 4                |     v1 = v0 & 4;
    0x00008998 andi a0, a0, 0x200            |     a0 &= aav.0x00000200;
                                             |     if (v1 != 0) {
    0x0000899c bnez v1, 0x8b38               |         goto label_96;
                                             |     }
    0x000089a0 andi v0, v0, 1                |     v0 &= 1;
                                             |     do {
                                             | label_29:
    0x000089a4 lw a2, 8(s7)                  |         a2 = *((s7 + 2));
    0x000089a8 lw t9, -0x7f68(gp)            |         t9 = sym.log_out;
                                             |         if (v0 == 0) {
    0x000089ac beqz v0, 0xa59c               |             goto label_97;
                                             |         }
    0x000089b0 lw a1, -0x7fd0(gp)            |         a1 = *(gp);
    0x000089b4 move a0, s7                   |         a0 = s7;
                                             |         /* str._s_is_mounted._n */
    0x000089b8 addiu a1, a1, 0x5c1c          |         a1 += 0x5c1c;
    0x000089bc jalr t9                       |         t9 ();
    0x000089c0 lw gp, 0x30(sp)               |         gp = *(var_30h);
                                             | label_40:
    0x000089c4 lw v0, 0x228(s7)              |         v0 = *(s7);
                                             |         if (v0 != 0) {
    0x000089c8 beql v0, zero, 0x89e4         |             
    0x000089cc lw a1, -0x7fd0(gp)            |             a1 = *(gp);
    0x000089d0 lw v0, 0x54(s7)               |             v0 = *((s7 + 21));
    0x000089d4 andi v0, v0, 0x10             |             v0 &= 0x10;
                                             |             if (v0 == 0) {
    0x000089d8 beql v0, zero, 0x89fc         |                 goto label_98;
                                             |             }
    0x000089dc lw a0, -0x7fd0(gp)            |             a0 = *(gp);
    0x000089e0 lw a1, -0x7fd0(gp)            |             a1 = *(gp);
                                             |         }
    0x000089e4 lw t9, -0x7fb8(gp)            |         t9 = sym.fatal_error;
                                             |         /* str.Cannot_continue__aborting._n_n */
    0x000089e8 addiu a1, a1, 0x5c3c          |         a1 += 0x5c3c;
    0x000089ec move a0, s7                   |         a0 = s7;
    0x000089f0 jalr t9                       |         t9 ();
    0x000089f4 lw gp, 0x30(sp)               |         gp = *(var_30h);
    0x000089f8 lw a0, -0x7fd0(gp)            |         a0 = *(gp);
                                             | label_98:
    0x000089fc lw t9, -0x79e4(gp)            |         t9 = sym.imp.puts;
                                             |         /* str._a_a_a_a */
    0x00008a00 addiu a0, a0, 0x5c5c          |         a0 += 0x5c5c;
    0x00008a04 jalr t9                       |         t9 ();
    0x00008a08 lw gp, 0x30(sp)               |         gp = *(var_30h);
    0x00008a0c move a0, s7                   |         a0 = s7;
    0x00008a10 lw a2, -0x7fd0(gp)            |         a2 = *(gp);
    0x00008a14 lw a1, -0x7fd0(gp)            |         a1 = *(gp);
    0x00008a18 lw t9, -0x7f68(gp)            |         t9 = sym.log_out;
                                             |         /* str._n_nWARNING_____The_filesystem_is_mounted.___If_you_continue_you_WILL_ncause_SEVERE_filesystem_damage._n_n */
    0x00008a1c addiu a2, a2, 0x5c64          |         a2 += 0x5c64;
                                             |         /* esilref: '&s' */
    0x00008a20 addiu a1, a1, 0x62f4          |         a1 += 0x62f4;
    0x00008a24 jalr t9                       |         t9 ();
    0x00008a28 lw gp, 0x30(sp)               |         gp = *(var_30h);
    0x00008a2c lw a0, -0x7fd0(gp)            |         a0 = *(gp);
    0x00008a30 lw t9, -0x79e4(gp)            |         t9 = sym.imp.puts;
    0x00008a34 addiu a0, a0, 0x5cd8          |         a0 += 0x5cd8;
    0x00008a38 jalr t9                       |         t9 ();
    0x00008a3c lw gp, 0x30(sp)               |         gp = *(var_30h);
    0x00008a40 move a2, zero                 |         a2 = 0;
    0x00008a44 move a0, s7                   |         a0 = s7;
    0x00008a48 lw a1, -0x7fd0(gp)            |         a1 = *(gp);
    0x00008a4c lw t9, -0x7f64(gp)            |         t9 = sym.ask_yn;
                                             |         /* str.Do_you_really_want_to_continue */
    0x00008a50 addiu a1, a1, 0x5cdc          |         a1 += 0x5cdc;
    0x00008a54 jalr t9                       |         t9 ();
    0x00008a58 lw gp, 0x30(sp)               |         gp = *(var_30h);
                                             |         if (v0 != 0) {
    0x00008a5c bnez v0, 0x8b60               |             goto label_28;
                                             |         }
    0x00008a60 lw a0, -0x7fd0(gp)            |         a0 = *(gp);
    0x00008a64 lw t9, -0x79e4(gp)            |         t9 = sym.imp.puts;
                                             |         /* str.check_aborted. */
    0x00008a68 addiu a0, a0, 0x5cfc          |         a0 += 0x5cfc;
    0x00008a6c jalr t9                       |         t9 ();
    0x00008a70 lw gp, 0x30(sp)               |         gp = *(var_30h);
    0x00008a74 lw t9, -0x7a08(gp)            |         t9 = sym.imp.exit;
    0x00008a78 move a0, zero                 |         a0 = 0;
    0x00008a7c jalr t9                       |         t9 ();
                                             | label_92:
    0x00008a80 lw a3, -0x7fd0(gp)            |         a3 = *(gp);
                                             | label_93:
    0x00008a84 lw a1, -0x7fd0(gp)            |         a1 = *(gp);
    0x00008a88 lw t9, -0x7f60(gp)            |         t9 = sym.log_err;
                                             |         /* str.14_Jul_2019 */
    0x00008a8c addiu a3, a3, 0x5b74          |         a3 += 0x5b74;
                                             |         /* str.1.45.3 */
    0x00008a90 addiu a2, s2, 0x5a6c          |         a2 = s2 + 0x5a6c;
                                             |         /* str.e2fsck__s___s__n */
    0x00008a94 addiu a1, a1, 0x5b80          |         a1 += 0x5b80;
    0x00008a98 move a0, s7                   |         a0 = s7;
    0x00008a9c jalr t9                       |         t9 ();
    0x00008aa0 lw v0, 0x27a0(s0)             |         v0 = *((s0 + 2536));
    0x00008aa4 lw gp, 0x30(sp)               |         gp = *(var_30h);
                                             |         if (v0 == 0) {
    0x00008aa8 beqz v0, 0x9fb4               |             goto label_99;
                                             |         }
    0x00008aac lw t9, -0x7ac8(gp)            |         t9 = sym.imp.error_message;
    0x00008ab0 lui a0, 0x7f2b                |         a0 = 0x7f2bb700;
    0x00008ab4 ori a0, a0, 0xb700            |         
    0x00008ab8 lw s0, 0x98(sp)               |         s0 = *(var_98h);
    0x00008abc jalr t9                       |         t9 ();
    0x00008ac0 lw gp, 0x30(sp)               |         gp = *(var_30h);
    0x00008ac4 lw a3, 0x94(sp)               |         a3 = *(var_94h);
    0x00008ac8 move a0, s0                   |         a0 = s0;
    0x00008acc lw a1, -0x7fd0(gp)            |         a1 = *(gp);
    0x00008ad0 lw t9, -0x7f60(gp)            |         t9 = sym.log_err;
    0x00008ad4 move a2, v0                   |         a2 = v0;
                                             |         /* str._tUsing__s___s_n */
    0x00008ad8 addiu a1, a1, 0x5b90          |         a1 += 0x5b90;
    0x00008adc jalr t9                       |         t9 ();
    0x00008ae0 lw gp, 0x30(sp)               |         gp = *(var_30h);
    0x00008ae4 lw t9, -0x7a08(gp)            |         t9 = sym.imp.exit;
    0x00008ae8 move a0, zero                 |         a0 = 0;
    0x00008aec jalr t9                       |         t9 ();
                                             | label_87:
    0x00008af0 lw v0, -0x77dc(gp)            |         v0 = *((gp - 7671));
    0x00008af4 lw t9, -0x7aa4(gp)            |         t9 = sym.imp.__errno_location;
    0x00008af8 lw s0, (v0)                   |         s0 = *(v0);
    0x00008afc jalr t9                       |         t9 ();
    0x00008b00 lw gp, 0x30(sp)               |         gp = *(var_30h);
    0x00008b04 lw t9, -0x79f4(gp)            |         t9 = sym.imp.strerror;
    0x00008b08 lw a0, (v0)                   |         a0 = *(v0);
    0x00008b0c jalr t9                       |         t9 ();
    0x00008b10 lw gp, 0x30(sp)               |         gp = *(var_30h);
    0x00008b14 move a3, v0                   |         a3 = v0;
    0x00008b18 addiu a1, zero, 1             |         a1 = 1;
    0x00008b1c lw a2, -0x7fd0(gp)            |         a2 = *(gp);
    0x00008b20 lw t9, -0x7c2c(gp)            |         t9 = sym.imp.__fprintf_chk
                                             |         /* str.ERROR:_Couldnt_open__dev_null___s__n */
    0x00008b24 addiu a2, a2, 0x5ad0          |         a2 += 0x5ad0;
    0x00008b28 move a0, s0                   |         a0 = s0;
    0x00008b2c jalr t9                       |         t9 ();
    0x00008b30 lw gp, 0x30(sp)               |         gp = *(var_30h);
    0x00008b34 b 0x8794                      |         goto label_0;
                                             | label_96:
    0x00008b38 andi v0, v0, 1                |         v0 &= 1;
    0x00008b3c bnez a0, 0x89a4               |         
                                             |     } while (a0 != 0);
    0x00008b40 lw a2, 8(s7)                  |     a2 = *((s7 + 2));
    0x00008b44 lw t9, -0x7f68(gp)            |     t9 = sym.log_out;
                                             |     if (v0 == 0) {
    0x00008b48 beqz v0, 0xae94               |         goto label_100;
                                             |     }
    0x00008b4c lw a1, -0x7fd0(gp)            |     a1 = *(gp);
    0x00008b50 move a0, s7                   |     a0 = s7;
                                             |     /* str.Warning____s_is_mounted._n */
    0x00008b54 addiu a1, a1, 0x5be4          |     a1 += 0x5be4;
    0x00008b58 jalr t9                       |     t9 ();
    0x00008b5c lw gp, 0x30(sp)               |     gp = *(var_30h);
                                             | label_28:
    0x00008b60 lw s7, 0x98(sp)               |     s7 = *(var_98h);
    0x00008b64 lw v0, 0x28(s7)               |     v0 = *((s7 + 10));
    0x00008b68 andi v0, v0, 0xe              |     v0 &= 0xe;
    0x00008b6c lw v0, 0x30(s7)               |     v0 = *((s7 + 12));
                                             |     if (v0 != 0) {
    0x00008b70 bnel v0, zero, 0x8b84         |         
    0x00008b74 lw v0, 0x228(s7)              |         v0 = *(s7);
    0x00008b78 lw a1, -0x7fd0(gp)            |         a1 = *(gp);
                                             |         if (v0 == 0) {
    0x00008b7c beqz v0, 0xa11c               |             goto label_101;
                                             |         }
                                             | label_32:
    0x00008b80 lw v0, 0x30(s7)               |         v0 = *((s7 + 12));
                                             |     }
    0x00008b84 lw a0, -0x7fd0(gp)            |     a0 = *(gp);
    0x00008b88 sw v0, 0x38(s7)               |     *((s7 + 14)) = v0;
    0x00008b8c addiu v0, zero, 0x1000        |     v0 = 0x1000;
    0x00008b90 sw a0, 0x40(sp)               |     *(var_40h) = a0;
    0x00008b94 sw v0, 0x58(sp)               |     *(var_58h) = v0;
    0x00008b98 lw a0, -0x7fd0(gp)            |     a0 = *(gp);
    0x00008b9c addiu v0, zero, -1            |     v0 = -1;
    0x00008ba0 sw v0, 0x80(sp)               |     *(var_80h) = v0;
    0x00008ba4 sw v0, 0x84(sp)               |     *(var_84h) = v0;
    0x00008ba8 addiu v0, sp, 0x9c            |     v0 = sp + 0x9c;
    0x00008bac sw a0, 0x44(sp)               |     *(var_44h) = a0;
    0x00008bb0 invalid                       |     
    0x00008bb4 lw zero, (t8)                 |     0 = *(t8);
    0x00008bb8 lw v0, -0x7fd0(gp)            |     v0 = *(gp);
    0x00008bbc sw a0, 0x38(sp)               |     *(var_38h) = a0;
                                             |     /* str._var_lib_e2fsprogs */
    0x00008bc0 addiu v0, v0, 0x5de8          |     v0 += 0x5de8;
    0x00008bc4 lw a0, -0x7fd0(gp)            |     a0 = *(gp);
    0x00008bc8 sw v0, 0x88(sp)               |     *(var_88h) = v0;
    0x00008bcc lw v0, -0x7fd0(gp)            |     v0 = *(gp);
    0x00008bd0 lw v1, 0x34(s7)               |     v1 = *((s7 + 13));
    0x00008bd4 sw a0, 0x7c(sp)               |     *(var_7ch) = a0;
    0x00008bd8 lw a0, -0x7fd0(gp)            |     a0 = *(gp);
                                             |     /* str._proc_acpi_ac_adapter__s_state */
    0x00008bdc addiu v0, v0, 0x6390          |     v0 += 0x6390;
    0x00008be0 lw s6, -0x7bb4(gp)            |     s6 = *((gp - 7917));
    0x00008be4 sw a0, 0x60(sp)               |     *(var_60h) = a0;
    0x00008be8 sw v1, 0x3c(s7)               |     *((s7 + 15)) = v1;
    0x00008bec sw zero, 0x5c(sp)             |     *(var_5ch) = 0;
    0x00008bf0 lui s1, 0x10                  |     s1 = 0x100000;
    0x00008bf4 sw zero, 0x68(sp)             |     *(var_68h) = 0;
    0x00008bf8 sw v0, 0x54(sp)               |     *(var_54h) = v0;
                                             | label_1:
    0x00008bfc lw v0, 0x40(sp)               |     v0 = *(var_40h);
                                             | label_57:
    0x00008c00 lw t9, -0x79ac(gp)            |     t9 = sym.imp.getenv;
    0x00008c04 addiu a0, v0, 0x5d34          |     a0 = v0 + 0x5d34;
    0x00008c08 jalr t9                       |     t9 ();
    0x00008c0c lw gp, 0x30(sp)               |     gp = *(var_30h);
                                             |     if (v0 == 0) {
    0x00008c10 beqz v0, 0x9874               |         goto label_102;
                                             |     }
                                             | label_8:
    0x00008c14 lw v0, -0x7978(gp)            |     v0 = *((gp - 7774));
    0x00008c18 lw v1, (s6)                   |     v1 = *(s6);
    0x00008c1c lw s4, (v0)                   |     s4 = *(v0);
    0x00008c20 lw v0, -0x7c00(gp)            |     v0 = *((gp - 7936));
    0x00008c24 sw v1, (v0)                   |     *(v0) = v1;
                                             | label_9:
    0x00008c28 lw v0, 0x98(sp)               |     v0 = *(var_98h);
    0x00008c2c lw t9, -0x7fac(gp)            |     t9 = sym.profile_get_boolean;
    0x00008c30 move a3, zero                 |     a3 = 0;
    0x00008c34 lw a0, 0x29c(v0)              |     a0 = *((v0 + 167));
    0x00008c38 lw v0, 0x44(sp)               |     v0 = *(var_44h);
    0x00008c3c sw zero, 0x10(sp)             |     *(var_10h) = 0;
    0x00008c40 addiu a2, v0, 0x5d54          |     a2 = v0 + 0x5d54;
    0x00008c44 lw v0, 0x48(sp)               |     v0 = *(var_48h);
    0x00008c48 sw v0, 0x14(sp)               |     *(var_14h) = v0;
    0x00008c4c lw v0, 0x38(sp)               |     v0 = *(var_38h);
    0x00008c50 addiu a1, v0, 0x54e4          |     a1 = v0 + 0x54e4;
    0x00008c54 jalr t9                       |     t9 ();
    0x00008c58 lw v0, 0x9c(sp)               |     v0 = *(var_9ch);
    0x00008c5c lw gp, 0x30(sp)               |     gp = *(var_30h);
                                             |     if (v0 == 0) {
    0x00008c60 beqz v0, 0x95c0               |         goto label_103;
                                             |     }
    0x00008c64 lui v0, 1                     |     v0 = 0x10000;
    0x00008c68 or s1, s1, v0                 |     s1 |= v0;
                                             | label_3:
    0x00008c6c lw fp, 0x98(sp)               |     fp = *(var_98h);
    0x00008c70 lw v0, 0x28(fp)               |     v0 = *(arg_28h);
    0x00008c74 andi a0, v0, 1                |     a0 = v0 & 1;
    0x00008c78 lw v0, 0x2cc(fp)              |     v0 = *(arg_2cch);
                                             |     if (a0 != 0) {
    0x00008c7c bnel a0, zero, 0x8cbc         |         
    0x00008c80 lw a0, 0x54(fp)               |         a0 = *(arg_54h);
    0x00008c84 addiu a1, zero, 6             |         a1 = 6;
    0x00008c88 andi a2, a0, 6                |         a2 = a0 & 6;
                                             |         if (a2 != a1) {
    0x00008c8c beql a2, a1, 0x8c98           |             
    0x00008c90 ori s1, s1, 1                 |             s1 |= 1;
    0x00008c94 ori s1, s1, 0x4001            |             s1 |= 0x4001;
                                             |         }
    0x00008c98 andi a0, a0, 4                |         a0 &= 4;
                                             |         if (a0 == 0) {
    0x00008c9c beql a0, zero, 0x8cbc         |             goto label_104;
                                             |         }
    0x00008ca0 lw v0, 0x2cc(fp)              |         v0 = *(arg_2cch);
    0x00008ca4 andi v0, v0, 0x100            |         v0 &= aav.0x00000100;
                                             |         if (v0 == 0) {
    0x00008ca8 beql v0, zero, 0x8cbc         |             goto label_104;
                                             |         }
    0x00008cac lw v0, 0x2cc(fp)              |         v0 = *(arg_2cch);
    0x00008cb0 addiu v0, zero, -0x4001       |         v0 = -0x4001;
    0x00008cb4 and s1, s1, v0                |         s1 &= v0;
    0x00008cb8 lw v0, 0x2cc(fp)              |         v0 = *(arg_2cch);
                                             |     }
                                             | label_104:
    0x00008cbc lw s3, -0x7fd8(gp)            |     s3 = *(gp);
                                             |     if (v0 != 0) {
    0x00008cc0 beqz v0, 0x8e80               |         
    0x00008cc4 sw zero, 0x100(sp)            |         *(var_100h) = 0;
    0x00008cc8 lb v0, (v0)                   |         v0 = *(v0);
    0x00008ccc lw v0, 0x60(sp)               |         v0 = *(var_60h);
                                             |         if (v0 != 0) {
    0x00008cd0 bnez v0, 0x981c               |             goto label_105;
                                             |         }
    0x00008cd4 lw t9, -0x79ac(gp)            |         t9 = sym.imp.getenv;
    0x00008cd8 addiu a0, v0, 0x5dbc          |         a0 = v0 + 0x5dbc;
    0x00008cdc jalr t9                       |         t9 ();
    0x00008ce0 move s0, v0                   |         s0 = v0;
    0x00008ce4 lw gp, 0x30(sp)               |         gp = *(var_30h);
    0x00008ce8 sw v0, 0x100(sp)              |         *(var_100h) = v0;
                                             |         if (v0 == 0) {
    0x00008cec beqz v0, 0xa22c               |             goto label_106;
                                             |         }
    0x00008cf0 lw a1, -0x7fd0(gp)            |         a1 = *(gp);
    0x00008cf4 lw t9, -0x778c(gp)            |         t9 = sym.imp.strcmp;
                                             |         /* str.none */
    0x00008cf8 addiu a1, a1, 0x5dfc          |         a1 += 0x5dfc;
    0x00008cfc move a0, v0                   |         a0 = v0;
    0x00008d00 jalr t9                       |         t9 ();
    0x00008d04 lw gp, 0x30(sp)               |         gp = *(var_30h);
                                             |         if (v0 != 0) {
    0x00008d08 beqz v0, 0x8e78               |             
    0x00008d0c lb v0, (s0)                   |             v0 = *(s0);
                                             |             if (v0 == 0) {
    0x00008d10 beql v0, zero, 0x8e7c         |                 goto label_36;
                                             |             }
    0x00008d14 lw fp, 0x98(sp)               |             fp = *(var_98h);
    0x00008d18 lw t9, -0x7b04(gp)            |             t9 = sym.imp.access;
    0x00008d1c move a0, s0                   |             a0 = s0;
    0x00008d20 addiu a1, zero, 2             |             a1 = 2;
    0x00008d24 jalr t9                       |             t9 ();
    0x00008d28 move s0, v0                   |             s0 = v0;
    0x00008d2c lw gp, 0x30(sp)               |             gp = *(var_30h);
                                             |             if (v0 != 0) {
    0x00008d30 bnez v0, 0x8e78               |                 goto label_107;
                                             |             }
    0x00008d34 lw t9, -0x7820(gp)            |             t9 = sym.imp.strdup;
    0x00008d38 lw a0, 8(fp)                  |             a0 = *(arg_8h);
    0x00008d3c jalr t9                       |             t9 ();
    0x00008d40 move s5, v0                   |             s5 = v0;
    0x00008d44 lw gp, 0x30(sp)               |             gp = *(var_30h);
                                             |             if (v0 == 0) {
    0x00008d48 beqz v0, 0xbc48               |                 goto label_108;
                                             |             }
    0x00008d4c move s2, v0                   |             s2 = v0;
                                             | label_82:
    0x00008d50 lw t9, -0x7ad4(gp)            |             t9 = sym.imp.__xpg_basename;
    0x00008d54 move a0, s5                   |             a0 = s5;
    0x00008d58 jalr t9                       |             t9 ();
    0x00008d5c lw gp, 0x30(sp)               |             gp = *(var_30h);
    0x00008d60 lw s7, 0x100(sp)              |             s7 = *(var_100h);
    0x00008d64 move s3, v0                   |             s3 = v0;
    0x00008d68 lw t9, -0x7a54(gp)            |             t9 = sym.imp.strlen;
    0x00008d6c move a0, s7                   |             a0 = s7;
    0x00008d70 jalr t9                       |             t9 ();
    0x00008d74 lw gp, 0x30(sp)               |             gp = *(var_30h);
    0x00008d78 move a0, s3                   |             a0 = s3;
    0x00008d7c lw t9, -0x7a54(gp)            |             t9 = sym.imp.strlen;
    0x00008d80 move s5, v0                   |             s5 = v0;
    0x00008d84 jalr t9                       |             t9 ();
    0x00008d88 lw gp, 0x30(sp)               |             gp = *(var_30h);
    0x00008d8c addu v0, s5, v0               |             v0 = s5 + v0;
    0x00008d90 lw t9, -0x79bc(gp)            |             t9 = sym.imp.malloc;
    0x00008d94 addiu a0, v0, 0x10            |             a0 = v0 + 0x10;
    0x00008d98 jalr t9                       |             t9 ();
    0x00008d9c move s5, v0                   |             s5 = v0;
    0x00008da0 lw gp, 0x30(sp)               |             gp = *(var_30h);
                                             |             if (v0 == 0) {
    0x00008da4 beqz v0, 0xaf4c               |                 goto label_109;
                                             |             }
    0x00008da8 lw a3, -0x7fd0(gp)            |             a3 = *(gp);
    0x00008dac lw t9, -0x7cd4(gp)            |             t9 = sym.imp.__sprintf_chk;
                                             |             /* str._s_e2fsck__s.e2undo */
    0x00008db0 addiu a3, a3, 0x5e04          |             a3 += 0x5e04;
    0x00008db4 addiu a2, zero, -1            |             a2 = -1;
    0x00008db8 addiu a1, zero, 1             |             a1 = 1;
    0x00008dbc move a0, v0                   |             a0 = v0;
    0x00008dc0 sw s3, 0x14(sp)               |             *(var_14h) = s3;
    0x00008dc4 sw s7, 0x10(sp)               |             *(var_10h) = s7;
    0x00008dc8 jalr t9                       |             t9 ();
    0x00008dcc lw gp, 0x30(sp)               |             gp = *(var_30h);
    0x00008dd0 lw t9, -0x7814(gp)            |             t9 = sym.imp.free;
    0x00008dd4 move a0, s2                   |             a0 = s2;
    0x00008dd8 jalr t9                       |             t9 ();
    0x00008ddc lw gp, 0x30(sp)               |             gp = *(var_30h);
    0x00008de0 lw t9, -0x78ec(gp)            |             t9 = sym.imp.unlink;
    0x00008de4 move a0, s5                   |             a0 = s5;
    0x00008de8 jalr t9                       |             t9 ();
    0x00008dec lw gp, 0x30(sp)               |             gp = *(var_30h);
                                             |             if (v0 < 0) {
    0x00008df0 bgez v0, 0x8e10               |                 
    0x00008df4 lw t9, -0x7aa4(gp)            |                 t9 = sym.imp.__errno_location;
    0x00008df8 jalr t9                       |                 t9 ();
    0x00008dfc nop                           |                 
    0x00008e00 lw s3, (v0)                   |                 s3 = *(v0);
    0x00008e04 addiu v0, zero, 2             |                 v0 = 2;
    0x00008e08 lw gp, 0x30(sp)               |                 gp = *(var_30h);
                                             |                 if (s3 != v0) {
    0x00008e0c bne s3, v0, 0xa894            |                     goto label_110;
                                             |                 }
                                             |             }
    0x00008e10 lw t9, -0x7a18(gp)            |             t9 = sym.imp.set_undo_io_backing_manager;
    0x00008e14 move a0, s4                   |             a0 = s4;
    0x00008e18 jalr t9                       |             t9 ();
    0x00008e1c move s3, v0                   |             s3 = v0;
    0x00008e20 lw gp, 0x30(sp)               |             gp = *(var_30h);
                                             |             if (v0 == 0) {
    0x00008e24 beqz v0, 0xa7a8               |                 goto label_111;
                                             |             }
                                             |             if (s0 == 0) {
                                             | label_42:
    0x00008e28 beql s0, zero, 0xbc50         |                 goto label_112;
                                             |             }
    0x00008e2c move s7, fp                   |             s7 = fp;
                                             | label_83:
    0x00008e30 lw t9, -0x7814(gp)            |             t9 = sym.imp.free;
                                             | label_44:
    0x00008e34 lw a0, 0x100(sp)              |             a0 = *(var_100h);
    0x00008e38 jalr t9                       |             t9 ();
    0x00008e3c lw gp, 0x30(sp)               |             gp = *(var_30h);
                                             | label_43:
    0x00008e40 lw t9, -0x7814(gp)            |             t9 = sym.imp.free;
    0x00008e44 move a0, s5                   |             a0 = s5;
    0x00008e48 jalr t9                       |             t9 ();
    0x00008e4c lw gp, 0x30(sp)               |             gp = *(var_30h);
    0x00008e50 lw a0, 4(fp)                  |             a0 = *(arg_4h);
    0x00008e54 move a1, s3                   |             a1 = s3;
    0x00008e58 lw a3, -0x7fd0(gp)            |             a3 = *(gp);
    0x00008e5c lw a2, -0x7fd0(gp)            |             a2 = *(gp);
    0x00008e60 lw t9, -0x7914(gp)            |             t9 = sym.imp.com_err;
                                             |             /* str.while_trying_to_setup_undo_file_n */
    0x00008e64 addiu a3, a3, 0x5e34          |             a3 += 0x5e34;
                                             |             /* esilref: '&s' */
    0x00008e68 addiu a2, a2, 0x62f4          |             a2 += 0x62f4;
    0x00008e6c jalr t9                       |             t9 ();
    0x00008e70 lw gp, 0x30(sp)               |             gp = *(var_30h);
                                             |             if (s3 != 0) {
    0x00008e74 bnez s3, 0xbc84               |                 goto label_113;
                                             |             }
                                             |         }
                                             | label_107:
    0x00008e78 lw fp, 0x98(sp)               |         fp = *(var_98h);
                                             | label_36:
    0x00008e7c lw s3, -0x7fd8(gp)            |         s3 = *(gp);
                                             |     }
    0x00008e80 addiu s2, sp, 0x90            |     s2 = sp + 0x90;
    0x00008e84 addiu s3, s3, -0x40bc         |     s3 += -0x40bc;
    0x00008e88 move a0, fp                   |     a0 = fp;
    0x00008e8c sw s1, 0x58(fp)               |     *(arg_58h) = s1;
    0x00008e90 move a3, s2                   |     a3 = s2;
    0x00008e94 move a2, s4                   |     a2 = s4;
    0x00008e98 move t9, s3                   |     t9 = s3;
    0x00008e9c move a1, s1                   |     a1 = s1;
    0x00008ea0 bal 0xbf44                    |     fcn_0000bf44 ();
    0x00008ea4 lw fp, 0x98(sp)               |     fp = *(var_98h);
    0x00008ea8 move s0, v0                   |     s0 = v0;
    0x00008eac lw v0, 0x38(fp)               |     v0 = *(arg_38h);
    0x00008eb0 lw a0, 0x3c(fp)               |     a0 = *(arg_3ch);
    0x00008eb4 or v0, v0, a0                 |     v0 |= a0;
    0x00008eb8 lw gp, 0x30(sp)               |     gp = *(var_30h);
                                             |     if (v0 != 0) {
    0x00008ebc bnez v0, 0x8fc4               |         goto label_114;
                                             |     }
    0x00008ec0 lw v0, 0x28(fp)               |     v0 = *(arg_28h);
    0x00008ec4 andi v0, v0, 2                |     v0 &= 2;
    0x00008ec8 lui v0, 0x80d4                |     v0 = 0x80d40000;
    0x00008ecc bnez v0, 0x8fc8               |     
                                             |     while (s0 != 0) {
                                             |         if (v0 == 0) {
    0x00008f20 movn s0, v0, v0               |             s0 = v0;
                                             |         }
    0x00008f24 b 0x9630                      |         goto label_115;
                                             | label_114:
    0x00008fc4 lui v0, 0x80d4                |         v0 = 0x80d448bd;
    0x00008fc8 addiu v0, v0, 0x48bd          |         
    0x00008fcc addu v0, s0, v0               |         v0 = s0 + v0;
    0x00008fd0 sltiu v0, v0, 2               |         v0 = (v0 < 2) ? 1 : 0;
    0x00008fd4 lw a0, 0x90(sp)               |         a0 = *(var_90h);
                                             |         if (v0 != 0) {
    0x00008fd8 bnez v0, 0x95cc               |             goto label_116;
                                             |         }
    0x00008fdc lw v0, 0x5c(sp)               |         v0 = *(var_5ch);
    0x00008fe0 bnez s0, 0x8f20               |         
                                             |     }
                                             | label_4:
    0x00008fe4 lw v0, 0x90(sp)               |     v0 = *(var_90h);
    0x00008fe8 lw s3, 0x24(fp)               |     s3 = *(arg_24h);
    0x00008fec lw a0, 8(v0)                  |     a0 = *((v0 + 2));
    0x00008ff0 andi s3, s3, 0x800            |     s3 &= 0x800;
    0x00008ff4 ori a0, a0, 0x200             |     a0 |= aav.0x00000200;
    0x00008ff8 sw a0, 8(v0)                  |     *((v0 + 2)) = a0;
    0x00008ffc lw s0, 0x10(v0)               |     s0 = *((v0 + 4));
                                             |     if (s3 != 0) {
    0x00009000 bnez s3, 0x9064               |         goto label_117;
                                             |     }
    0x00009004 lw v0, 0x18(s0)               |     v0 = *((s0 + 6));
    0x00009008 addiu s0, zero, 0x400         |     s0 = aav.0x00000400;
    0x0000900c lw t9, -0x7ca8(gp)            |     t9 = sym.imp.ext2fs_get_device_size2;
    0x00009010 sllv s0, s0, v0               |     s0 <<= v0;
    0x00009014 lw a0, 8(fp)                  |     a0 = *(arg_8h);
    0x00009018 addiu a2, fp, 0x40            |     a2 = fp + 0x40;
    0x0000901c move a1, s0                   |     a1 = s0;
    0x00009020 jalr t9                       |     t9 ();
    0x00009024 addiu v1, zero, 0x10          |     v1 = 0x10;
    0x00009028 lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0000902c sw v0, 0xa8(sp)               |     *(var_a8h) = v0;
                                             |     if (v0 == v1) {
    0x00009030 beq v0, v1, 0xa1b8            |         goto label_118;
                                             |     }
                                             | label_35:
    0x00009034 lui a0, 0x7f2b                |     a0 = 0x7f2bb750;
    0x00009038 ori a0, a0, 0xb750            |     
    0x0000903c lw fp, 0x98(sp)               |     fp = *(var_98h);
                                             |     if (v0 == a0) {
    0x00009040 beq v0, a0, 0x9910            |         goto label_119;
                                             |     }
    0x00009044 lw t9, -0x7f5c(gp)            |     t9 = sym.fix_problem;
                                             |     if (v0 != 0) {
    0x00009048 bnez v0, 0x9e18               |         goto label_120;
                                             |     }
                                             | label_13:
    0x0000904c lw v0, 0x24(fp)               |     v0 = *(arg_24h);
    0x00009050 ori v0, v0, 0x800             |     v0 |= 0x800;
    0x00009054 sw v0, 0x24(fp)               |     *(arg_24h) = v0;
                                             |     if (s3 != 0) {
    0x00009058 bnez s3, 0x8bfc               |         goto label_1;
                                             |     }
    0x0000905c lw v0, 0x90(sp)               |     v0 = *(var_90h);
    0x00009060 lw s0, 0x10(v0)               |     s0 = *((v0 + 4));
                                             | label_117:
    0x00009064 lw a0, 0x4c(s0)               |     a0 = *((s0 + 19));
    0x00009068 lw a1, 0x290(fp)              |     a1 = *(arg_290h);
    0x0000906c sltiu a0, a0, 2               |     a0 = (a0 < 2) ? 1 : 0;
    0x00009070 sw v0, (fp)                   |     *(fp) = v0;
    0x00009074 sw a1, 0x60(v0)               |     *((v0 + 24)) = a1;
                                             |     if (a0 == 0) {
    0x00009078 beqz a0, 0x97f4               |         goto label_121;
                                             |     }
                                             | label_7:
    0x0000907c lw s2, 0xc(fp)                |     s2 = *(arg_ch);
                                             |     if (s2 == 0) {
    0x00009080 beql s2, zero, 0x9894         |         goto label_122;
                                             |     }
    0x00009084 lb v0, 0x78(s0)               |     v0 = *((s0 + 120));
                                             | label_10:
    0x00009088 lb s3, (s2)                   |     s3 = *(s2);
                                             | label_38:
    0x0000908c lw t9, -0x7cc0(gp)            |     t9 = sym.imp.__ctype_b_loc;
                                             |     if (s3 == 0) {
    0x00009090 beqz s3, 0x90f8               |         goto label_123;
                                             |     }
    0x00009094 jalr t9                       |     t9 ();
    0x00009098 nop                           |     
    0x0000909c lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x000090a0 addiu a1, zero, 0x5f          |     a1 = 0x5f;
    0x000090a4 addiu a2, zero, 0x3a          |     a2 = 0x3a;
    0x000090a8 b 0x90c4                      |     
                                             |     if (s3 == a2) {
                                             |         while (v1 == 0) {
    0x000090ac beql s3, a2, 0x90e4           |             goto label_124;
                                             |         }
    0x000090b0 sb a1, (s2)                   |         *(s2) = a1;
    0x000090b4 addiu s2, s2, 1               |         s2++;
    0x000090b8 lb s3, (s2)                   |         s3 = *(s2);
    0x000090bc lw fp, 0x98(sp)               |         fp = *(var_98h);
                                             |         if (s3 == 0) {
    0x000090c0 beqz s3, 0x90f8               |             goto label_123;
                                             |         }
    0x000090c4 lw v1, (v0)                   |         v1 = *(v0);
                                             | label_2:
    0x000090c8 sll a0, s3, 1                 |         a0 = s3 << 1;
    0x000090cc addu v1, v1, a0               |         v1 += a0;
    0x000090d0 lhu v1, (v1)                  |         v1 = *(v1);
    0x000090d4 andi v1, v1, 0x2000           |         v1 &= 0x2000;
    0x000090d8 beqz v1, 0x90ac               |         
                                             |     }
    0x000090dc nop                           |     
    0x000090e0 sb a1, (s2)                   |     *(s2) = a1;
                                             | label_124:
    0x000090e4 addiu s2, s2, 1               |     s2++;
    0x000090e8 lb s3, (s2)                   |     s3 = *(s2);
    0x000090ec lw v1, (v0)                   |     v1 = *(v0);
                                             |     if (s3 == 0) {
    0x000090f0 bnel s3, zero, 0x90c8         |         goto label_2;
                                             |     }
    0x000090f4 lw fp, 0x98(sp)               |     fp = *(var_98h);
                                             | label_123:
    0x000090f8 lw a0, 0x1c(fp)               |     a0 = *(arg_1ch);
    0x000090fc lw a2, -0x7fd0(gp)            |     a2 = *(gp);
                                             |     if (a0 != 0) {
    0x00009100 beqz a0, 0x9164               |         
    0x00009104 lw t9, -0x7c2c(gp)            |         t9 = sym.imp.__fprintf_chk
    0x00009108 lw a3, 8(fp)                  |         a3 = *(arg_8h);
                                             |         /* str._filesystem_dev__s_ */
    0x0000910c addiu a2, a2, 0x60c4          |         a2 += 0x60c4;
    0x00009110 addiu a1, zero, 1             |         a1 = 1;
    0x00009114 jalr t9                       |         t9 ();
    0x00009118 lw gp, 0x30(sp)               |         gp = *(var_30h);
    0x0000911c addiu s2, s0, 0x68            |         s2 = s0 + 0x68;
    0x00009120 lw t9, -0x7a98(gp)            |         t9 = sym.imp.uuid_is_null;
    0x00009124 move a0, s2                   |         a0 = s2;
    0x00009128 jalr t9                       |         t9 ();
    0x0000912c lw gp, 0x30(sp)               |         gp = *(var_30h);
                                             |         if (v0 == 0) {
    0x00009130 beqz v0, 0xa178               |             goto label_125;
                                             |         }
                                             | label_34:
    0x00009134 lb v0, 0x78(s0)               |         v0 = *((s0 + 120));
    0x00009138 lw t9, -0x7aa8(gp)            |         t9 = sym.imp.strncpy;
                                             |         if (v0 != 0) {
    0x0000913c bnez v0, 0xa138               |             goto label_126;
                                             |         }
                                             | label_33:
    0x00009140 lw v0, 0x98(sp)               |         v0 = *(var_98h);
    0x00009144 lw a0, -0x7fd0(gp)            |         a0 = *(gp);
    0x00009148 lw t9, -0x7938(gp)            |         t9 = sym.imp.fwrite;
    0x0000914c lw a3, 0x1c(v0)               |         a3 = *((v0 + 7));
    0x00009150 addiu a2, zero, 3             |         a2 = 3;
    0x00009154 addiu a1, zero, 1             |         a1 = 1;
                                             |         /* esilref: '/>
' */
    0x00009158 addiu a0, a0, 0x5b64          |         a0 += 0x5b64;
    0x0000915c jalr t9                       |         t9 ();
    0x00009160 lw gp, 0x30(sp)               |         gp = *(var_30h);
                                             |     }
    0x00009164 lw v0, 0x90(sp)               |     v0 = *(var_90h);
    0x00009168 lw t9, -0x7f58(gp)            |     t9 = sym.ehandler_init;
    0x0000916c lw a0, 4(v0)                  |     a0 = *((v0 + 1));
    0x00009170 jalr t9                       |     t9 ();
    0x00009174 lw s2, 0x90(sp)               |     s2 = *(var_90h);
    0x00009178 lw v0, 0x10(s2)               |     v0 = *((s2 + 4));
    0x0000917c lw v0, 0x60(v0)               |     v0 = *((v0 + 24));
    0x00009180 andi v0, v0, 0x100            |     v0 &= aav.0x00000100;
    0x00009184 lw gp, 0x30(sp)               |     gp = *(var_30h);
                                             |     if (v0 != 0) {
    0x00009188 beqz v0, 0x9198               |         
    0x0000918c ext v0, s1, 0x14, 1           |         __asm ("ext v0, s1, 0x14, 1");
    0x00009190 lw t9, -0x7f78(gp)            |         t9 = sym.clear_problem_context;
                                             |         if (v0 != 0) {
    0x00009194 bnez v0, 0xa36c               |             goto label_127;
                                             |         }
                                             |     }
    0x00009198 lw fp, 0x98(sp)               |     fp = *(var_98h);
    0x0000919c lw s2, 0x14(fp)               |     s2 = *(arg_14h);
    0x000091a0 lw t9, -0x796c(gp)            |     t9 = *(gp);
                                             |     if (s2 != 0) {
    0x000091a4 beqz s2, 0x91d8               |         
    0x000091a8 addiu a0, s0, 0x68            |         a0 = s0 + 0x68;
    0x000091ac jalr t9                       |         t9 ();
    0x000091b0 lw gp, 0x30(sp)               |         gp = *(var_30h);
    0x000091b4 move a3, v0                   |         a3 = v0;
    0x000091b8 addiu a1, zero, 1             |         a1 = 1;
    0x000091bc lw a2, -0x7fd0(gp)            |         a2 = *(gp);
    0x000091c0 lw t9, -0x7c2c(gp)            |         t9 = sym.imp.__fprintf_chk
                                             |         /* str.Filesystem_UUID:__s_n */
    0x000091c4 addiu a2, a2, 0x61c0          |         a2 += 0x61c0;
    0x000091c8 move a0, s2                   |         a0 = s2;
    0x000091cc jalr t9                       |         t9 ();
    0x000091d0 lw gp, 0x30(sp)               |         gp = *(var_30h);
    0x000091d4 lw fp, 0x98(sp)               |         fp = *(var_98h);
                                             |     }
    0x000091d8 lw v0, 0x54(fp)               |     v0 = *(arg_54h);
    0x000091dc andi v0, v0, 0x11             |     v0 &= 0x11;
    0x000091e0 lw t9, -0x7f54(gp)            |     t9 = sym.e2fsck_check_ext3_journal;
                                             |     if (v0 == 0) {
    0x000091e4 beqz v0, 0x98c0               |         goto label_128;
                                             |     }
                                             | label_11:
    0x000091e8 lw v0, 0x60(s0)               |     v0 = *((s0 + 24));
    0x000091ec andi v0, v0, 4                |     v0 &= 4;
                                             |     if (v0 != 0) {
    0x000091f0 beql v0, zero, 0x9250         |         
    0x000091f4 lw a0, 0x5c(s0)               |         a0 = *((s0 + 23));
    0x000091f8 lw v0, 0x28(fp)               |         v0 = *(arg_28h);
    0x000091fc andi v0, v0, 1                |         v0 &= 1;
                                             |         if (v0 == 0) {
    0x00009200 beql v0, zero, 0x9c50         |             goto label_129;
                                             |         }
    0x00009204 lw v0, 0x24(fp)               |         v0 = *(arg_24h);
    0x00009208 lw a2, -0x7fd0(gp)            |         a2 = *(gp);
    0x0000920c lw a1, -0x7fd0(gp)            |         a1 = *(gp);
    0x00009210 lw t9, -0x7f68(gp)            |         t9 = sym.log_out;
    0x00009214 move a0, fp                   |         a0 = fp;
                                             |         /* str.Warning:_skipping_journal_recovery_because_doing_a_read_only_filesystem_check._n */
    0x00009218 addiu a2, a2, 0x6220          |         a2 += 0x6220;
                                             |         /* esilref: '&s' */
    0x0000921c addiu a1, a1, 0x62f4          |         a1 += 0x62f4;
    0x00009220 jalr t9                       |         t9 ();
    0x00009224 lw v0, 0x98(sp)               |         v0 = *(var_98h);
    0x00009228 lw v0, (v0)                   |         v0 = *(v0);
    0x0000922c lw v0, 4(v0)                  |         v0 = *((v0 + 1));
    0x00009230 move a0, v0                   |         a0 = v0;
    0x00009234 lw v0, 4(v0)                  |         v0 = *((v0 + 1));
    0x00009238 lw t9, 0x1c(v0)               |         t9 = *((v0 + 7));
    0x0000923c jalr t9                       |         t9 ();
    0x00009240 nop                           |         
    0x00009244 lw gp, 0x30(sp)               |         gp = *(var_30h);
    0x00009248 lw fp, 0x98(sp)               |         fp = *(var_98h);
    0x0000924c lw a0, 0x5c(s0)               |         a0 = *((s0 + 23));
                                             |     }
    0x00009250 addiu a2, zero, -0x240        |     a2 = -aav.0x00000240;
    0x00009254 and a0, a0, a2                |     a0 &= a2;
    0x00009258 lw a1, 0x60(s0)               |     a1 = *((s0 + 24));
    0x0000925c lw v0, 0x64(s0)               |     v0 = *((s0 + 25));
    0x00009260 lui s2, 0xfffc                |     s2 = 0xfffc0000;
    0x00009264 lui a2, 0xffff                |     a2 = 0xffff0000;
    0x00009268 addiu s2, s2, 0x1821          |     s2 += 0x1821;
    0x0000926c addiu a2, a2, 0x884           |     a2 += 0x884;
    0x00009270 and s2, a1, s2                |     s2 = a1 & s2;
    0x00009274 and v0, v0, a2                |     v0 &= a2;
    0x00009278 sw a0, 0x158(sp)              |     *(var_158h) = a0;
    0x0000927c sw s2, 0x15c(sp)              |     *(var_15ch) = s2;
    0x00009280 sw v0, 0x160(sp)              |     *(var_160h) = v0;
                                             |     if (a0 != 0) {
    0x00009284 bnez a0, 0x970c               |         goto label_130;
                                             |     }
    0x00009288 or s2, s2, v0                 |     s2 |= v0;
    0x0000928c lw a1, -0x7fd0(gp)            |     a1 = *(gp);
                                             |     if (s2 == 0) {
    0x00009290 bnel s2, zero, 0x9710         |         goto label_131;
                                             |     }
    0x00009294 ext a1, a1, 0x11, 1           |     __asm ("ext a1, a1, 0x11, 1");
                                             |     if (a1 != 0) {
    0x00009298 beql a1, zero, 0x92b4         |         
    0x0000929c lw v0, 0x38(fp)               |         v0 = *(arg_38h);
    0x000092a0 lw v0, 0x90(sp)               |         v0 = *(var_90h);
    0x000092a4 lw v0, 0xc4(v0)               |         v0 = *((v0 + 49));
    0x000092a8 lw a1, -0x7fd0(gp)            |         a1 = *(gp);
                                             |         if (v0 == 0) {
    0x000092ac beqz v0, 0xb5f0               |             goto label_132;
                                             |         }
    0x000092b0 lw v0, 0x38(fp)               |         v0 = *(arg_38h);
                                             |     }
    0x000092b4 lw a0, 0x3c(fp)               |     a0 = *(arg_3ch);
    0x000092b8 or v0, v0, a0                 |     v0 |= a0;
    0x000092bc lw t9, -0x78b4(gp)            |     t9 = sym.imp.sysconf;
                                             |     if (v0 != 0) {
    0x000092c0 beqz v0, 0x92d8               |         
    0x000092c4 lw v0, 0x28(fp)               |         v0 = *(arg_28h);
    0x000092c8 andi v0, v0, 1                |         v0 &= 1;
    0x000092cc lw v1, 0x90(sp)               |         v1 = *(var_90h);
                                             |         if (v0 == 0) {
    0x000092d0 beqz v0, 0x9fbc               |             goto label_133;
                                             |         }
                                             | label_26:
    0x000092d4 lw t9, -0x78b4(gp)            |         t9 = sym.imp.sysconf;
                                             |     }
    0x000092d8 addiu a0, zero, 0x1e          |     a0 = 0x1e;
    0x000092dc jalr t9                       |     t9 ();
    0x000092e0 lw a1, 0x90(sp)               |     a1 = *(var_90h);
    0x000092e4 lw a0, 0x58(sp)               |     a0 = *(var_58h);
    0x000092e8 slt v1, zero, v0              |     v1 = (0 < v0) ? 1 : 0;
                                             |     if (v1 == 0) {
    0x000092ec movn a0, v0, v1               |         a0 = v0;
                                             |     }
    0x000092f0 lw v0, 0x14(a1)               |     v0 = *((a1 + 5));
    0x000092f4 move v1, a0                   |     v1 = a0;
    0x000092f8 sw a0, 0x58(sp)               |     *(var_58h) = a0;
    0x000092fc sltu a0, a0, v0               |     a0 = (a0 < v0) ? 1 : 0;
    0x00009300 lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x00009304 lw fp, 0x98(sp)               |     fp = *(var_98h);
                                             |     if (a0 != 0) {
    0x00009308 bnez a0, 0x9924               |         goto label_134;
                                             |     }
    0x0000930c divu zero, v1, v0             |     __asm ("divu zero, v1, v0");
    0x00009310 teq v0, zero, 7               |     __asm ("teq v0, zero, 7");
    0x00009314 mflo v0                       |     __asm ("mflo v0");
    0x00009318 sw v0, 0x2a0(fp)              |     *(arg_2a0h) = v0;
                                             | label_14:
    0x0000931c lw v0, 0x38(fp)               |     v0 = *(arg_38h);
    0x00009320 lw a0, 0x3c(fp)               |     a0 = *(arg_3ch);
    0x00009324 or v0, v0, a0                 |     v0 |= a0;
    0x00009328 lw t9, -0x7f50(gp)            |     t9 = sym.set_latch_flags;
                                             |     if (v0 != 0) {
    0x0000932c bnez v0, 0x9de4               |         goto label_135;
                                             |     }
                                             | label_22:
    0x00009330 lw v0, 8(a1)                  |     v0 = *((a1 + 2));
    0x00009334 lw t9, -0x7f4c(gp)            |     t9 = sym.check_super_block;
    0x00009338 ori v0, v0, 8                 |     v0 |= 8;
    0x0000933c move a0, fp                   |     a0 = fp;
    0x00009340 sw v0, 8(a1)                  |     *((a1 + 2)) = v0;
    0x00009344 bal 0xf174                    |     sym_check_super_block ();
    0x00009348 lw fp, 0x98(sp)               |     fp = *(var_98h);
    0x0000934c lw v0, 0x24(fp)               |     v0 = *(arg_24h);
    0x00009350 andi v0, v0, 3                |     v0 &= 3;
    0x00009354 lw gp, 0x30(sp)               |     gp = *(var_30h);
                                             |     if (v0 != 0) {
    0x00009358 bnez v0, 0x9dc8               |         goto label_136;
                                             |     }
                                             | label_21:
    0x0000935c lw s4, -0x7fa8(gp)            |     s4 = *((gp - 8170));
    0x00009360 lw a0, -0x7fd0(gp)            |     a0 = *(gp);
    0x00009364 lw v0, (fp)                   |     v0 = *(fp);
    0x00009368 lw t9, -0x77cc(gp)            |     t9 = sym.imp.fopen;
    0x0000936c addiu a1, s4, -0x3c5c         |     a1 = s4 + -0x3c5c;
                                             |     /* str._sys_class_power_supply_AC_online */
    0x00009370 addiu a0, a0, 0x633c          |     a0 += 0x633c;
    0x00009374 sw v0, 0x78(sp)               |     *(var_78h) = v0;
    0x00009378 jalr t9                       |     t9 ();
    0x0000937c move s3, v0                   |     s3 = v0;
    0x00009380 lw gp, 0x30(sp)               |     gp = *(var_30h);
                                             |     if (v0 != 0) {
    0x00009384 beqz v0, 0x93bc               |         
    0x00009388 lw a1, -0x7fa8(gp)            |         a1 = *((gp - 8170));
    0x0000938c lw t9, -0x7a50(gp)            |         t9 = sym.imp.fscanf;
    0x00009390 move a0, v0                   |         a0 = v0;
    0x00009394 addiu a2, sp, 0x100           |         a2 = sp + aav.0x00000100;
                                             |         /* esilref: '&u
' */
    0x00009398 addiu a1, a1, -0x2008         |         a1 += -0x2008;
    0x0000939c jalr t9                       |         t9 ();
    0x000093a0 lw gp, 0x30(sp)               |         gp = *(var_30h);
    0x000093a4 addiu a0, zero, 1             |         a0 = 1;
    0x000093a8 lw t9, -0x7bcc(gp)            |         t9 = sym.imp.fclose;
                                             |         if (v0 == a0) {
    0x000093ac beq v0, a0, 0xa584            |             goto label_137;
                                             |         }
    0x000093b0 move a0, s3                   |         a0 = s3;
    0x000093b4 jalr t9                       |         t9 ();
    0x000093b8 lw gp, 0x30(sp)               |         gp = *(var_30h);
                                             |     }
    0x000093bc lw a0, -0x7fd0(gp)            |     a0 = *(gp);
    0x000093c0 lw t9, -0x77cc(gp)            |     t9 = sym.imp.fopen;
    0x000093c4 addiu a1, s4, -0x3c5c         |     a1 = s4 + -0x3c5c;
                                             |     /* str._proc_apm */
    0x000093c8 addiu a0, a0, 0x6360          |     a0 += 0x6360;
    0x000093cc jalr t9                       |     t9 ();
    0x000093d0 move s3, v0                   |     s3 = v0;
    0x000093d4 lw gp, 0x30(sp)               |     gp = *(var_30h);
                                             |     if (v0 == 0) {
    0x000093d8 beqz v0, 0x9cb0               |         goto label_138;
                                             |     }
    0x000093dc lw a1, -0x7fd0(gp)            |     a1 = *(gp);
    0x000093e0 lw t9, -0x7a50(gp)            |     t9 = sym.imp.fscanf;
    0x000093e4 addiu a3, sp, 0x164           |     a3 = sp + aav.0x00000164;
    0x000093e8 addiu v0, sp, 0x100           |     v0 = sp + aav.0x00000100;
    0x000093ec move a0, s3                   |     a0 = s3;
    0x000093f0 sw v0, 0x14(sp)               |     *(var_14h) = v0;
    0x000093f4 sw a3, 0x10(sp)               |     *(var_10h) = a3;
    0x000093f8 move a2, a3                   |     a2 = a3;
                                             |     /* str._s__s__s__x */
    0x000093fc addiu a1, a1, 0x636c          |     a1 += 0x636c;
    0x00009400 jalr t9                       |     t9 ();
    0x00009404 addiu a0, zero, 4             |     a0 = 4;
    0x00009408 lw gp, 0x30(sp)               |     gp = *(var_30h);
                                             |     if (v0 != a0) {
    0x0000940c beq v0, a0, 0x9418            |         
    0x00009410 addiu v0, zero, 1             |         v0 = 1;
    0x00009414 sw v0, 0x100(sp)              |         *(var_100h) = v0;
                                             |     }
    0x00009418 lw t9, -0x7bcc(gp)            |     t9 = sym.imp.fclose;
    0x0000941c move a0, s3                   |     a0 = s3;
    0x00009420 jalr t9                       |     t9 ();
    0x00009424 lw s3, 0x100(sp)              |     s3 = *(var_100h);
    0x00009428 lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0000942c xori s3, s3, 1                |     s3 ^= 1;
    0x00009430 sltu s3, zero, s3             |     s3 = (0 < s3) ? 1 : 0;
                                             | label_20:
    0x00009434 lw v0, 0x24(fp)               |     v0 = *(arg_24h);
    0x00009438 andi v0, v0, 0x4000           |     v0 &= 0x4000;
    0x0000943c lw s4, -0x7fc8(gp)            |     s4 = *((gp - 8178));
                                             |     if (v0 == 0) {
    0x00009440 beqz v0, 0x9930               |         goto label_139;
                                             |     }
                                             | label_15:
    0x00009444 lw t9, -0x7f48(gp)            |     t9 = sym.check_resize_inode;
    0x00009448 lw a0, 0x98(sp)               |     a0 = *(var_98h);
    0x0000944c bal 0xec7c                    |     sym_check_resize_inode ();
    0x00009450 lw a1, 0x2790(s4)             |     a1 = *((s4 + 2532));
    0x00009454 lw gp, 0x30(sp)               |     gp = *(var_30h);
                                             |     if (a1 == 0) {
    0x00009458 beqz a1, 0x9c20               |         goto label_140;
                                             |     }
    0x0000945c lw v0, -0x7fc8(gp)            |     v0 = *((gp - 8178));
    0x00009460 lw t9, -0x7f44(gp)            |     t9 = sym.read_bad_blocks_file;
    0x00009464 lw a0, 0x98(sp)               |     a0 = *(var_98h);
    0x00009468 lw a2, 0x2798(v0)             |     a2 = *((v0 + 2534));
    0x0000946c jalr t9                       |     t9 ();
    0x00009470 lw gp, 0x30(sp)               |     gp = *(var_30h);
                                             | label_17:
    0x00009474 lw a0, 0x98(sp)               |     a0 = *(var_98h);
                                             | label_16:
    0x00009478 lw v0, 0x24(a0)               |     v0 = *((a0 + 9));
    0x0000947c andi v0, v0, 3                |     v0 &= 3;
    0x00009480 lw t9, -0x7fb8(gp)            |     t9 = sym.fatal_error;
                                             |     if (v0 != 0) {
    0x00009484 bnez v0, 0x9eb8               |         goto label_141;
                                             |     }
                                             | label_23:
    0x00009488 lw v0, 0x90(sp)               |     v0 = *(var_90h);
    0x0000948c lw t9, -0x7c84(gp)            |     t9 = sym.imp.ext2fs_read_bb_inode;
    0x00009490 addiu a1, v0, 0x48            |     a1 = v0 + 0x48;
    0x00009494 lw v1, 8(v0)                  |     v1 = *((v0 + 2));
    0x00009498 move a0, v0                   |     a0 = v0;
    0x0000949c ori v1, v1, 8                 |     v1 |= 8;
    0x000094a0 sw v1, 8(v0)                  |     *((v0 + 2)) = v1;
    0x000094a4 jalr t9                       |     t9 ();
    0x000094a8 lw gp, 0x30(sp)               |     gp = *(var_30h);
                                             |     if (v0 != 0) {
    0x000094ac bnez v0, 0x9f48               |         goto label_142;
                                             |     }
                                             | label_24:
    0x000094b0 lbu v1, 0xfd(s0)              |     v1 = *((s0 + 253));
    0x000094b4 addiu v0, zero, 1             |     v0 = 1;
                                             |     if (v1 == v0) {
    0x000094b8 beql v1, v0, 0x9e04           |         void (*0x9e04)() ();
                                             |     }
    0x000094bc lw s3, 0x148(s0)              |     s3 = *(s0);
                                             | label_103:
    0x000095c0 lui v0, 3                     |     v0 = 0x30000;
    0x000095c4 or s1, s1, v0                 |     s1 |= v0;
    0x000095c8 b 0x8c6c                      |     goto label_3;
                                             | label_116:
    0x000095cc move s5, s0                   |     s5 = s0;
                                             |     if (a0 != 0) {
    0x000095d0 beqz a0, 0x9624               |         
    0x000095d4 lw s0, 0x10(a0)               |         s0 = *((a0 + 4));
    0x000095d8 addiu a0, zero, -0x240        |         a0 = -aav.0x00000240;
                                             |         if (s0 == 0) {
    0x000095dc beqz s0, 0x9624               |             goto label_143;
                                             |         }
    0x000095e0 lw a2, 0x5c(s0)               |         a2 = *((s0 + 23));
    0x000095e4 and a0, a0, a2                |         a0 &= a2;
    0x000095e8 lw v0, 0x60(s0)               |         v0 = *((s0 + 24));
    0x000095ec lui a2, 0xfffc                |         a2 = 0xfffc1821;
    0x000095f0 addiu a2, a2, 0x1821          |         
    0x000095f4 and v0, v0, a2                |         v0 &= a2;
    0x000095f8 lw a1, 0x64(s0)               |         a1 = *((s0 + 25));
    0x000095fc lui a2, 0xffff                |         a2 = 0xffff0884;
    0x00009600 addiu a2, a2, 0x884           |         
    0x00009604 and a1, a1, a2                |         a1 &= a2;
    0x00009608 sw a0, 0x158(sp)              |         *(var_158h) = a0;
    0x0000960c sw v0, 0x15c(sp)              |         *(var_15ch) = v0;
    0x00009610 sw a1, 0x160(sp)              |         *(var_160h) = a1;
                                             |         if (a0 != 0) {
    0x00009614 bnez a0, 0x970c               |             goto label_130;
                                             |         }
    0x00009618 or v0, v0, a1                 |         v0 |= a1;
    0x0000961c lw a1, -0x7fd0(gp)            |         a1 = *(gp);
                                             |         if (v0 != 0) {
    0x00009620 bnez v0, 0x9710               |             goto label_131;
                                             |         }
                                             |     }
                                             | label_143:
    0x00009624 lw v0, 0x5c(sp)               |     v0 = *(var_5ch);
    0x00009628 move s0, v0                   |     s0 = v0;
                                             |     if (v0 == 0) {
    0x0000962c beqz v0, 0xa980               |         goto label_144;
                                             |     }
                                             | label_115:
    0x00009630 lw a2, -0x7fd0(gp)            |     a2 = *(gp);
    0x00009634 lw t9, -0x7914(gp)            |     t9 = sym.imp.com_err;
    0x00009638 lw a3, 8(fp)                  |     a3 = *(arg_8h);
    0x0000963c lw a0, 4(fp)                  |     a0 = *(arg_4h);
                                             |     /* str.while_trying_to_open__s */
    0x00009640 addiu a2, a2, 0x5ea8          |     a2 += 0x5ea8;
    0x00009644 move a1, s0                   |     a1 = s0;
    0x00009648 jalr t9                       |     t9 ();
    0x0000964c lui v0, 0x7f2b                |     v0 = 0x7f2bb714;
    0x00009650 ori v0, v0, 0xb714            |     
    0x00009654 lw gp, 0x30(sp)               |     gp = *(var_30h);
                                             |     if (s0 == v0) {
    0x00009658 beq s0, v0, 0xa2c0            |         goto label_145;
                                             |     }
    0x0000965c addiu v1, v0, 0x10            |     v1 = v0 + 0x10;
    0x00009660 addiu v1, zero, 1             |     v1 = 1;
                                             |     if (s0 == v1) {
    0x00009664 beq s0, v1, 0xa32c            |         goto label_146;
                                             |     }
    0x00009668 addiu v1, zero, 0xd           |     v1 = 0xd;
                                             |     if (s0 != v1) {
    0x0000966c beq s0, v1, 0x96c0            |         
    0x00009670 addiu v1, zero, 6             |         v1 = 6;
                                             |         if (s0 != v1) {
    0x00009674 beq s0, v1, 0x96c0            |             
    0x00009678 addiu v1, zero, 0x10          |             v1 = 0x10;
                                             |             if (s0 == v1) {
    0x0000967c beq s0, v1, 0xa9e8            |                 goto label_147;
                                             |             }
    0x00009680 addiu v1, zero, 2             |             v1 = 2;
                                             |             if (s0 == v1) {
    0x00009684 beq s0, v1, 0xaa0c            |                 goto label_148;
                                             |             }
    0x00009688 addiu v1, zero, 0x1e          |             v1 = 0x1e;
                                             |             if (s0 == v1) {
    0x0000968c beq s0, v1, 0xae5c            |                 goto label_149;
                                             |             }
    0x00009690 addiu v0, v0, 0x28            |             v0 += 0x28;
                                             |             if (s0 == v1) {
    0x00009694 beq s0, v1, 0xa804            |                 goto label_150;
                                             |             }
    0x00009698 ext v0, s1, 0x17, 1           |             __asm ("ext v0, s1, 0x17, 1");
                                             |             if (s0 != v0) {
    0x0000969c bne s0, v0, 0xa9a4            |                 goto label_151;
                                             |             }
    0x000096a0 lw t9, -0x7f5c(gp)            |             t9 = sym.fix_problem;
                                             |             if (v0 == 0) {
    0x000096a4 beqz v0, 0xb53c               |                 goto label_152;
                                             |             }
    0x000096a8 lw a0, 0x98(sp)               |             a0 = *(var_98h);
    0x000096ac lw a2, 0x50(sp)               |             a2 = *(var_50h);
    0x000096b0 addiu a1, zero, 4             |             a1 = 4;
    0x000096b4 jalr t9                       |             t9 ();
    0x000096b8 lw gp, 0x30(sp)               |             gp = *(var_30h);
    0x000096bc b 0x96f0                      |             
                                             |         }
                                             |     } else {
    0x000096c0 lw a0, 0x98(sp)               |         a0 = *(var_98h);
    0x000096c4 lw v0, 0x28(a0)               |         v0 = *((a0 + 10));
    0x000096c8 andi v0, v0, 1                |         v0 &= 1;
    0x000096cc lw a2, -0x7fd0(gp)            |         a2 = *(gp);
                                             |         if (v0 != 0) {
    0x000096d0 bnez v0, 0x9fcc               |             goto label_153;
                                             |         }
    0x000096d4 lw a2, -0x7fd0(gp)            |         a2 = *(gp);
                                             |         /* esilref: 'r/w' */
    0x000096d8 addiu a2, a2, 0x5644          |         a2 += 0x5644;
                                             | label_27:
    0x000096dc lw a1, -0x7fd0(gp)            |         a1 = *(gp);
    0x000096e0 lw t9, -0x7f68(gp)            |         t9 = sym.log_out;
                                             |         /* str.You_must_have__s_access_to_the_filesystem_or_be_root_n */
    0x000096e4 addiu a1, a1, 0x5f60          |         a1 += 0x5f60;
    0x000096e8 jalr t9                       |         t9 ();
    0x000096ec lw gp, 0x30(sp)               |         gp = *(var_30h);
                                             |     }
                                             | label_37:
    0x000096f0 lw t9, -0x7fb8(gp)            |     t9 = sym.fatal_error;
    0x000096f4 lw a0, 0x98(sp)               |     a0 = *(var_98h);
    0x000096f8 move a1, zero                 |     a1 = 0;
    0x000096fc jalr t9                       |     t9 ();
    0x00009700 lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x00009704 lw fp, 0x98(sp)               |     fp = *(var_98h);
    0x00009708 b 0x8fe4                      |     goto label_4;
                                             | label_130:
    0x0000970c lw a1, -0x7fd0(gp)            |     a1 = *(gp);
                                             | label_131:
    0x00009710 lw t9, -0x7f60(gp)            |     t9 = sym.log_err;
    0x00009714 lw a2, 8(fp)                  |     a2 = *(arg_8h);
    0x00009718 move a0, fp                   |     a0 = fp;
                                             |     /* str._s_has_unsupported_feature_s_: */
    0x0000971c addiu a1, a1, 0x62f8          |     a1 += 0x62f8;
    0x00009720 jalr t9                       |     t9 ();
    0x00009724 lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x00009728 lw s7, 0x98(sp)               |     s7 = *(var_98h);
    0x0000972c sw s0, 0x6c(sp)               |     *(var_6ch) = s0;
    0x00009730 lw s4, -0x7fd0(gp)            |     s4 = *(gp);
    0x00009734 addiu fp, sp, 0x158           |     fp = sp + aav.0x00000158;
    0x00009738 move s3, zero                 |     s3 = 0;
                                             |     /* esilref: ' &s' */
    0x0000973c addiu s4, s4, 0x7c78          |     s4 += 0x7c78;
    0x00009740 move s0, s7                   |     s0 = s7;
                                             | label_6:
    0x00009744 lw s7, (fp)                   |     s7 = *(fp);
    0x00009748 addiu s5, zero, 0x20          |     s5 = 0x20;
    0x0000974c addiu s2, zero, 1             |     s2 = 1;
    0x00009750 b 0x975c                      |     
                                             |     while (v0 == 0) {
    0x00009754 sll s2, s2, 1                 |         s2 <<= 1;
                                             |         if (s5 == 0) {
    0x00009758 beqz s5, 0x97a4               |             goto label_154;
                                             |         }
                                             | label_5:
    0x0000975c and v0, s7, s2                |         v0 = s7 & s2;
    0x00009760 beql v0, zero, 0x9754         |         
                                             |     }
    0x00009764 addiu s5, s5, -1              |     s5 += -1;
    0x00009768 lw t9, -0x7954(gp)            |     t9 = sym.imp.e2p_feature2string;
    0x0000976c move a1, s2                   |     a1 = s2;
    0x00009770 move a0, s3                   |     a0 = s3;
    0x00009774 jalr t9                       |     t9 ();
    0x00009778 lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0000977c move a0, s0                   |     a0 = s0;
    0x00009780 move a2, v0                   |     a2 = v0;
    0x00009784 lw t9, -0x7f60(gp)            |     t9 = sym.log_err;
    0x00009788 move a1, s4                   |     a1 = s4;
    0x0000978c addiu s5, s5, -1              |     s5 += -1;
    0x00009790 jalr t9                       |     t9 ();
    0x00009794 sll s2, s2, 1                 |     s2 <<= 1;
    0x00009798 lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0000979c lw s0, 0x98(sp)               |     s0 = *(var_98h);
                                             |     if (s5 != 0) {
    0x000097a0 bnez s5, 0x975c               |         goto label_5;
                                             |     }
                                             | label_154:
    0x000097a4 addiu s3, s3, 1               |     s3++;
    0x000097a8 addiu v0, zero, 3             |     v0 = 3;
    0x000097ac addiu fp, fp, 4               |     fp += 4;
                                             |     if (s3 != v0) {
    0x000097b0 bne s3, v0, 0x9744            |         goto label_6;
                                             |     }
    0x000097b4 lw a1, -0x7fd0(gp)            |     a1 = *(gp);
    0x000097b8 lw t9, -0x7f60(gp)            |     t9 = sym.log_err;
    0x000097bc move s7, s0                   |     s7 = s0;
    0x000097c0 addiu a1, a1, 0x55d4          |     a1 += 0x55d4;
    0x000097c4 move a0, s7                   |     a0 = s7;
    0x000097c8 lw s0, 0x6c(sp)               |     s0 = *(var_6ch);
    0x000097cc jalr t9                       |     t9 ();
    0x000097d0 lw gp, 0x30(sp)               |     gp = *(var_30h);
                                             |     do {
                                             | label_50:
    0x000097d4 lw a1, -0x7fd0(gp)            |         a1 = *(gp);
    0x000097d8 lw t9, -0x7fb8(gp)            |         t9 = sym.fatal_error;
    0x000097dc lw a0, 0x98(sp)               |         a0 = *(var_98h);
                                             |         /* str.Get_a_newer_version_of_e2fsck_ */
    0x000097e0 addiu a1, a1, 0x60a4          |         a1 += 0x60a4;
    0x000097e4 jalr t9                       |         t9 ();
    0x000097e8 lw gp, 0x30(sp)               |         gp = *(var_30h);
    0x000097ec lw fp, 0x98(sp)               |         fp = *(var_98h);
    0x000097f0 b 0x907c                      |         goto label_7;
                                             | label_121:
    0x000097f4 lw a2, -0x7fd0(gp)            |         a2 = *(gp);
    0x000097f8 lw t9, -0x7914(gp)            |         t9 = sym.imp.com_err;
    0x000097fc lw a3, 8(fp)                  |         a3 = *(arg_8h);
    0x00009800 lw a0, 4(fp)                  |         a0 = *(arg_4h);
    0x00009804 lui a1, 0x7f2b                |         a1 = 0x7f2b0000;
                                             |         /* str.while_trying_to_open__s */
    0x00009808 addiu a2, a2, 0x5ea8          |         a2 += 0x5ea8;
    0x0000980c ori a1, a1, 0xb714            |         a1 |= 0xb714;
    0x00009810 jalr t9                       |         t9 ();
    0x00009814 lw gp, 0x30(sp)               |         gp = *(var_30h);
    0x00009818 b 0x97d4                      |         
                                             |     } while (1);
                                             | label_105:
    0x0000981c lw t9, -0x7a18(gp)            |     t9 = sym.imp.set_undo_io_backing_manager;
    0x00009820 move a0, s4                   |     a0 = s4;
    0x00009824 jalr t9                       |     t9 ();
    0x00009828 lw gp, 0x30(sp)               |     gp = *(var_30h);
                                             |     if (v0 == 0) {
    0x0000982c bnez v0, 0x984c               |         
    0x00009830 lw v0, -0x7bd4(gp)            |         v0 = *((gp - 7925));
    0x00009834 lw t9, -0x7b1c(gp)            |         t9 = sym.imp.set_undo_io_backup_file;
    0x00009838 lw a0, 0x2cc(fp)              |         a0 = *(arg_2cch);
    0x0000983c lw s4, (v0)                   |         s4 = *(v0);
    0x00009840 jalr t9                       |         t9 ();
    0x00009844 lw gp, 0x30(sp)               |         gp = *(var_30h);
                                             |         if (v0 == 0) {
    0x00009848 beqz v0, 0xa62c               |             goto label_155;
                                             |         }
                                             |     }
    0x0000984c lw a3, -0x7fd0(gp)            |     a3 = *(gp);
    0x00009850 lw a2, -0x7fd0(gp)            |     a2 = *(gp);
    0x00009854 lw t9, -0x7914(gp)            |     t9 = sym.imp.com_err;
    0x00009858 lw a0, 4(fp)                  |     a0 = *(arg_4h);
                                             |     /* str.while_trying_to_setup_undo_file_n */
    0x0000985c addiu a3, a3, 0x5e34          |     a3 += 0x5e34;
                                             |     /* esilref: '&s' */
    0x00009860 addiu a2, a2, 0x62f4          |     a2 += 0x62f4;
    0x00009864 move a1, v0                   |     a1 = v0;
    0x00009868 jalr t9                       |     t9 ();
    0x0000986c lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x00009870 b 0xbc84                      |     goto label_113;
                                             | label_102:
    0x00009874 lw v0, 0x7c(sp)               |     v0 = *(var_7ch);
    0x00009878 lw t9, -0x79ac(gp)            |     t9 = sym.imp.getenv;
    0x0000987c addiu a0, v0, 0x5d44          |     a0 = v0 + 0x5d44;
    0x00009880 jalr t9                       |     t9 ();
    0x00009884 lw gp, 0x30(sp)               |     gp = *(var_30h);
                                             |     if (v0 != 0) {
    0x00009888 bnez v0, 0x8c14               |         goto label_8;
                                             |     }
    0x0000988c lw s4, (s6)                   |     s4 = *(s6);
    0x00009890 b 0x8c28                      |     goto label_9;
                                             | label_122:
    0x00009894 lw t9, -0x7fbc(gp)            |     t9 = sym.string_copy;
                                             |     if (v0 != 0) {
    0x00009898 bnez v0, 0xa2fc               |         goto label_156;
                                             |     }
                                             | label_39:
    0x0000989c lw a1, 8(fp)                  |     a1 = *(arg_8h);
    0x000098a0 move a0, fp                   |     a0 = fp;
    0x000098a4 move a2, zero                 |     a2 = 0;
    0x000098a8 jalr t9                       |     t9 ();
    0x000098ac lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x000098b0 sw v0, 0xc(fp)                |     *(arg_ch) = v0;
    0x000098b4 lw fp, 0x98(sp)               |     fp = *(var_98h);
    0x000098b8 lw s2, 0xc(fp)                |     s2 = *(arg_ch);
    0x000098bc b 0x9088                      |     goto label_10;
                                             | label_128:
    0x000098c0 move a0, fp                   |     a0 = fp;
    0x000098c4 bal 0x28664                   |     sym_e2fsck_check_ext3_journal ();
    0x000098c8 lw gp, 0x30(sp)               |     gp = *(var_30h);
                                             |     if (v0 != 0) {
    0x000098cc bnez v0, 0xa460               |         goto label_157;
                                             |     }
    0x000098d0 lw fp, 0x98(sp)               |     fp = *(var_98h);
    0x000098d4 b 0x91e8                      |     goto label_11;
                                             | label_85:
    0x000098d8 lw v0, -0x77dc(gp)            |     v0 = *((gp - 7671));
    0x000098dc lw s0, -0x7fc8(gp)            |     s0 = *((gp - 8178));
    0x000098e0 lw a0, -0x7fd0(gp)            |     a0 = *(gp);
    0x000098e4 lw t9, -0x7938(gp)            |     t9 = sym.imp.fwrite;
    0x000098e8 lw a3, (v0)                   |     a3 = *(v0);
    0x000098ec addiu a2, zero, 0x2b          |     a2 = 0x2b;
    0x000098f0 addiu a1, zero, 1             |     a1 = 1;
                                             |     /* str.Error:_ext2fs_library_version_out_of_date__n */
    0x000098f4 addiu a0, a0, 0x5a74          |     a0 += 0x5a74;
    0x000098f8 jalr t9                       |     t9 ();
    0x000098fc lw v0, 0x27a0(s0)             |     v0 = *((s0 + 2536));
    0x00009900 lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x00009904 addiu v0, v0, 1               |     v0++;
    0x00009908 sw v0, 0x27a0(s0)             |     *((s0 + 2536)) = v0;
    0x0000990c b 0x8734                      |     goto label_12;
                                             | label_119:
    0x00009910 move v0, zero                 |     v0 = 0;
    0x00009914 move v1, zero                 |     v1 = 0;
    0x00009918 sw v0, 0x40(fp)               |     *(arg_40h) = v0;
    0x0000991c sw v1, 0x44(fp)               |     *(arg_44h) = v1;
    0x00009920 b 0x904c                      |     goto label_13;
                                             | label_134:
    0x00009924 addiu v0, zero, 1             |     v0 = 1;
    0x00009928 sw v0, 0x2a0(fp)              |     *(arg_2a0h) = v0;
    0x0000992c b 0x931c                      |     goto label_14;
                                             | label_139:
    0x00009930 addiu v0, sp, 0xa4            |     v0 = sp + 0xa4;
    0x00009934 lw a0, 0x29c(fp)              |     a0 = *(arg_29ch);
    0x00009938 lw a2, -0x7fd0(gp)            |     a2 = *(gp);
    0x0000993c sw v0, 0x14(sp)               |     *(var_14h) = v0;
    0x00009940 lw v0, 0x38(sp)               |     v0 = *(var_38h);
    0x00009944 lw t9, -0x7fac(gp)            |     t9 = sym.profile_get_boolean;
    0x00009948 sw zero, 0x10(sp)             |     *(var_10h) = 0;
    0x0000994c move a3, zero                 |     a3 = 0;
                                             |     /* str.broken_system_clock */
    0x00009950 addiu a2, a2, 0x63c4          |     a2 += 0x63c4;
    0x00009954 addiu a1, v0, 0x54e4          |     a1 = v0 + 0x54e4;
    0x00009958 jalr t9                       |     t9 ();
    0x0000995c lw v0, 0x24(fp)               |     v0 = *(arg_24h);
    0x00009960 andi v0, v0, 0x2000           |     v0 &= 0x2000;
    0x00009964 lw gp, 0x30(sp)               |     gp = *(var_30h);
                                             |     if (v0 != 0) {
    0x00009968 beqz v0, 0x9974               |         
    0x0000996c addiu v0, zero, 1             |         v0 = 1;
    0x00009970 sw v0, 0xa4(sp)               |         *(var_a4h) = v0;
                                             |     }
    0x00009974 addiu v0, sp, 0xa0            |     v0 = sp + 0xa0;
    0x00009978 lw a0, 0x29c(fp)              |     a0 = *(arg_29ch);
    0x0000997c sw v0, 0x14(sp)               |     *(var_14h) = v0;
    0x00009980 addiu v0, zero, 1             |     v0 = 1;
    0x00009984 lw s4, -0x7fc8(gp)            |     s4 = *((gp - 8178));
    0x00009988 lw a2, -0x7fd0(gp)            |     a2 = *(gp);
    0x0000998c sw v0, 0x10(sp)               |     *(var_10h) = v0;
    0x00009990 lw v0, 0x38(sp)               |     v0 = *(var_38h);
    0x00009994 lw t9, -0x7fac(gp)            |     t9 = sym.profile_get_boolean;
    0x00009998 move a3, zero                 |     a3 = 0;
                                             |     /* str.defer_check_on_battery */
    0x0000999c addiu a2, a2, 0x63d8          |     a2 += 0x63d8;
    0x000099a0 addiu a1, v0, 0x54e4          |     a1 = v0 + 0x54e4;
    0x000099a4 jalr t9                       |     t9 ();
    0x000099a8 lw a0, 0xa0(sp)               |     a0 = *(var_a0h);
    0x000099ac lw v0, 0x2790(s4)             |     v0 = *((s4 + 2532));
    0x000099b0 lw gp, 0x30(sp)               |     gp = *(var_30h);
                                             |     if (a0 == 0) {
    0x000099b4 movz s3, zero, a0             |         s3 = 0;
                                             |         goto label_158;
                                             |     }
                                             |     if (v0 != 0) {
                                             | label_158:
    0x000099b8 bnez v0, 0x9444               |         goto label_15;
                                             |     }
    0x000099bc lw v0, -0x7fc8(gp)            |     v0 = *((gp - 8178));
    0x000099c0 lw a0, 0x28(fp)               |     a0 = *(arg_28h);
    0x000099c4 lw a1, 0x27a4(v0)             |     a1 = *((v0 + 2537));
    0x000099c8 andi v0, a0, 0x100            |     v0 = a0 & aav.0x00000100;
    0x000099cc or v0, v0, a1                 |     v0 |= a1;
    0x000099d0 andi a0, a0, 0x1000           |     a0 &= 0x1000;
                                             |     if (v0 != 0) {
    0x000099d4 bnez v0, 0x9444               |         goto label_15;
                                             |     }
    0x000099d8 lw v0, 0x78(sp)               |     v0 = *(var_78h);
                                             |     if (a0 != 0) {
    0x000099dc bnez a0, 0xa864               |         goto label_159;
                                             |     }
    0x000099e0 lw a0, 0x10(v0)               |     a0 = *((v0 + 4));
    0x000099e4 lw v0, 0x290(fp)              |     v0 = *(arg_290h);
    0x000099e8 lw s5, 0x40(a0)               |     s5 = *((a0 + 16));
    0x000099ec slt v0, v0, s5                |     v0 = (v0 < s5) ? 1 : 0;
                                             |     if (v0 != 0) {
    0x000099f0 beql v0, zero, 0x9a04         |         
    0x000099f4 lhu v0, 0x3a(a0)              |         v0 = *((a0 + 29));
    0x000099f8 lw v0, 0x294(fp)              |         v0 = *(arg_294h);
    0x000099fc subu s5, s5, v0               |         __asm ("subu s5, s5, v0");
    0x00009a00 lhu v0, 0x3a(a0)              |         v0 = *((a0 + 29));
                                             |     }
    0x00009a04 andi a0, v0, 2                |     a0 = v0 & 2;
    0x00009a08 lw s7, 0x78(sp)               |     s7 = *(var_78h);
                                             |     if (a0 != 0) {
    0x00009a0c bnez a0, 0xaef0               |         goto label_160;
                                             |     }
    0x00009a10 lw a0, 8(s7)                  |     a0 = *((s7 + 2));
    0x00009a14 andi a0, a0, 8                |     a0 &= 8;
    0x00009a18 andi v0, v0, 1                |     v0 &= 1;
                                             |     if (a0 == 0) {
    0x00009a1c beqz a0, 0xaef0               |         goto label_160;
                                             |     }
                                             |     if (v0 == 0) {
    0x00009a20 beql v0, zero, 0xb610         |         void (*0xb610)() ();
                                             |     }
    0x00009a24 lw s3, -0x7fd0(gp)            |     s3 = *(gp);
                                             | label_140:
    0x00009c20 lw v0, -0x7fc8(gp)            |     v0 = *((gp - 8178));
    0x00009c24 lw v0, 0x27a4(v0)             |     v0 = *((v0 + 2537));
    0x00009c28 lw a0, 0x98(sp)               |     a0 = *(var_98h);
                                             |     if (v0 == 0) {
    0x00009c2c beqz v0, 0x9478               |         goto label_16;
                                             |     }
    0x00009c30 lw v0, -0x7fc8(gp)            |     v0 = *((gp - 8178));
    0x00009c34 lw t9, -0x7f44(gp)            |     t9 = sym.read_bad_blocks_file;
    0x00009c38 lw a2, 0x2794(v0)             |     a2 = *((v0 + 2533));
    0x00009c3c move a1, zero                 |     a1 = 0;
    0x00009c40 sltiu a2, a2, 1               |     a2 = (a2 < 1) ? 1 : 0;
    0x00009c44 bal 0x297a8                   |     sym_read_bad_blocks_file ();
    0x00009c48 lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x00009c4c b 0x9474                      |     goto label_17;
                                             | label_129:
    0x00009c50 andi v0, v0, 0x200            |     v0 &= aav.0x00000200;
    0x00009c54 lw a2, -0x7fd0(gp)            |     a2 = *(gp);
                                             |     if (v0 != 0) {
    0x00009c58 bnez v0, 0x9ff0               |         goto label_161;
                                             |     }
                                             | label_31:
    0x00009c5c lw t9, -0x7f34(gp)            |     t9 = sym.e2fsck_run_ext3_journal;
    0x00009c60 move a0, fp                   |     a0 = fp;
    0x00009c64 bal 0x28d3c                   |     sym_e2fsck_run_ext3_journal ();
    0x00009c68 lui v1, 0x7f2b                |     v1 = 0x7f2bb7af;
    0x00009c6c ori v1, v1, 0xb7af            |     
    0x00009c70 lw gp, 0x30(sp)               |     gp = *(var_30h);
                                             |     if (v0 == v1) {
    0x00009c74 beq v0, v1, 0xa654            |         goto label_162;
                                             |     }
    0x00009c78 addiu a0, v1, -1              |     a0 = v1 + -1;
    0x00009c7c lw fp, 0x98(sp)               |     fp = *(var_98h);
                                             |     if (v0 == a0) {
    0x00009c80 beq v0, a0, 0xa6d8            |         goto label_163;
                                             |     }
    0x00009c84 lw a2, -0x7fd0(gp)            |     a2 = *(gp);
                                             |     if (v0 != 0) {
    0x00009c88 bnez v0, 0xa6b4               |         goto label_164;
                                             |     }
                                             | label_41:
    0x00009c8c lw t9, -0x7b34(gp)            |     t9 = sym.imp.ext2fs_close_free;
    0x00009c90 move a0, fp                   |     a0 = fp;
    0x00009c94 jalr t9                       |     t9 ();
    0x00009c98 lw v1, 0x98(sp)               |     v1 = *(var_98h);
    0x00009c9c lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x00009ca0 lw v0, 0x24(v1)               |     v0 = *((v1 + 9));
    0x00009ca4 ori v0, v0, 0x200             |     v0 |= aav.0x00000200;
    0x00009ca8 sw v0, 0x24(v1)               |     *((v1 + 9)) = v0;
    0x00009cac b 0x8bfc                      |     goto label_1;
                                             | label_138:
    0x00009cb0 lw a0, -0x7fd0(gp)            |     a0 = *(gp);
    0x00009cb4 lw t9, -0x7cb8(gp)            |     t9 = sym.imp.opendir;
                                             |     /* str._proc_acpi_ac_adapter */
    0x00009cb8 addiu a0, a0, 0x6378          |     a0 += 0x6378;
    0x00009cbc jalr t9                       |     t9 ();
    0x00009cc0 move s5, v0                   |     s5 = v0;
    0x00009cc4 lw gp, 0x30(sp)               |     gp = *(var_30h);
                                             |     if (v0 == 0) {
    0x00009cc8 beqz v0, 0xa114               |         goto label_165;
                                             |     }
    0x00009ccc lw v0, -0x7fd0(gp)            |     v0 = *(gp);
    0x00009cd0 addiu s7, sp, 0x204           |     s7 = sp + aav.0x00000204;
                                             |     /* esilref: '&s &s' */
    0x00009cd4 addiu v0, v0, 0x63b0          |     v0 += 0x63b0;
    0x00009cd8 sw v0, 0x6c(sp)               |     *(var_6ch) = v0;
    0x00009cdc lw v0, -0x7fd0(gp)            |     v0 = *(gp);
    0x00009ce0 sw s0, 0x8c(sp)               |     *(var_8ch) = s0;
                                             |     /* str.off_line */
    0x00009ce4 addiu v0, v0, 0x63b8          |     v0 += 0x63b8;
    0x00009ce8 sw v0, 0x70(sp)               |     *(var_70h) = v0;
                                             | label_19:
    0x00009cec addiu s3, zero, 0x2e          |     s3 = 0x2e;
                                             |     do {
                                             | label_18:
    0x00009cf0 lw t9, -0x7b70(gp)            |         t9 = sym.imp.readdir;
    0x00009cf4 move a0, s5                   |         a0 = s5;
    0x00009cf8 jalr t9                       |         t9 ();
    0x00009cfc lw gp, 0x30(sp)               |         gp = *(var_30h);
                                             |         if (v0 == 0) {
    0x00009d00 beqz v0, 0xa350               |             goto label_166;
                                             |         }
    0x00009d04 lbu v1, 0xb(v0)               |         v1 = *((v0 + 11));
    0x00009d08 addiu v0, v0, 0xb             |         v0 += 0xb;
    0x00009d0c beq v1, s3, 0x9cf0            |         
                                             |     } while (v1 == s3);
    0x00009d10 sw v0, 0x14(sp)               |     *(var_14h) = v0;
    0x00009d14 lw v0, 0x54(sp)               |     v0 = *(var_54h);
    0x00009d18 lw t9, -0x7774(gp)            |     t9 = sym.imp.__snprintf_chk;
    0x00009d1c addiu a3, zero, 0x11d         |     a3 = 0x11d;
    0x00009d20 addiu a2, zero, 1             |     a2 = 1;
    0x00009d24 addiu a1, zero, 0x11d         |     a1 = 0x11d;
    0x00009d28 move a0, s7                   |     a0 = s7;
    0x00009d2c sw v0, 0x10(sp)               |     *(var_10h) = v0;
    0x00009d30 jalr t9                       |     t9 ();
    0x00009d34 lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x00009d38 addiu a1, s4, -0x3c5c         |     a1 = s4 + -0x3c5c;
    0x00009d3c lw t9, -0x77cc(gp)            |     t9 = sym.imp.fopen;
    0x00009d40 move a0, s7                   |     a0 = s7;
    0x00009d44 jalr t9                       |     t9 ();
    0x00009d48 lw gp, 0x30(sp)               |     gp = *(var_30h);
                                             |     if (v0 == 0) {
    0x00009d4c beqz v0, 0x9cf0               |         goto label_18;
                                             |     }
    0x00009d50 lw t9, -0x7a50(gp)            |     t9 = sym.imp.fscanf;
    0x00009d54 addiu s3, sp, 0x164           |     s3 = sp + aav.0x00000164;
    0x00009d58 lw a1, 0x6c(sp)               |     a1 = *(var_6ch);
    0x00009d5c move a0, v0                   |     a0 = v0;
    0x00009d60 move a3, s3                   |     a3 = s3;
    0x00009d64 addiu a2, sp, 0x1b4           |     a2 = sp + aav.0x000001b4;
    0x00009d68 move s0, v0                   |     s0 = v0;
    0x00009d6c jalr t9                       |     t9 ();
    0x00009d70 addiu a0, zero, 2             |     a0 = 2;
    0x00009d74 lw gp, 0x30(sp)               |     gp = *(var_30h);
                                             |     if (v0 != a0) {
    0x00009d78 beq v0, a0, 0x9d80            |         
    0x00009d7c sb zero, 0x164(sp)            |         *(var_164h) = 0;
                                             |     }
    0x00009d80 lw t9, -0x7bcc(gp)            |     t9 = sym.imp.fclose;
    0x00009d84 move a0, s0                   |     a0 = s0;
    0x00009d88 jalr t9                       |     t9 ();
    0x00009d8c lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x00009d90 lw a1, 0x70(sp)               |     a1 = *(var_70h);
    0x00009d94 addiu a2, zero, 8             |     a2 = 8;
    0x00009d98 lw t9, -0x7c54(gp)            |     t9 = sym.imp.strncmp;
    0x00009d9c move a0, s3                   |     a0 = s3;
    0x00009da0 jalr t9                       |     t9 ();
    0x00009da4 lw gp, 0x30(sp)               |     gp = *(var_30h);
                                             |     if (v0 != 0) {
    0x00009da8 bnez v0, 0x9cec               |         goto label_19;
                                             |     }
    0x00009dac lw t9, -0x7cb4(gp)            |     t9 = sym.imp.closedir;
    0x00009db0 move a0, s5                   |     a0 = s5;
    0x00009db4 lw s0, 0x8c(sp)               |     s0 = *(var_8ch);
    0x00009db8 addiu s3, zero, 1             |     s3 = 1;
    0x00009dbc jalr t9                       |     t9 ();
    0x00009dc0 lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x00009dc4 b 0x9434                      |     goto label_20;
                                             | label_136:
    0x00009dc8 lw t9, -0x7fb8(gp)            |     t9 = sym.fatal_error;
    0x00009dcc move a0, fp                   |     a0 = fp;
    0x00009dd0 move a1, zero                 |     a1 = 0;
    0x00009dd4 bal 0x29d10                   |     sym_fatal_error ();
    0x00009dd8 lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x00009ddc lw fp, 0x98(sp)               |     fp = *(var_98h);
    0x00009de0 b 0x935c                      |     goto label_21;
                                             | label_135:
    0x00009de4 addiu a1, zero, 4             |     a1 = 4;
    0x00009de8 move a2, zero                 |     a2 = 0;
    0x00009dec addiu a0, zero, 0x50          |     a0 = 0x50;
    0x00009df0 jalr t9                       |     t9 ();
    0x00009df4 lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x00009df8 lw fp, 0x98(sp)               |     fp = *(var_98h);
    0x00009dfc lw a1, 0x90(sp)               |     a1 = *(var_90h);
    0x00009e00 b 0x9330                      |     goto label_22;
                                             | label_120:
    0x00009e18 lw a2, 0x50(sp)               |     a2 = *(var_50h);
    0x00009e1c move a0, fp                   |     a0 = fp;
    0x00009e20 addiu a1, zero, 0xc           |     a1 = 0xc;
    0x00009e24 jalr t9                       |     t9 ();
    0x00009e28 lw v0, 0x98(sp)               |     v0 = *(var_98h);
    0x00009e2c lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x00009e30 move a1, zero                 |     a1 = 0;
    0x00009e34 lw v1, 0x24(v0)               |     v1 = *((v0 + 9));
    0x00009e38 lw t9, -0x7fb8(gp)            |     t9 = sym.fatal_error;
    0x00009e3c ori v1, v1, 1                 |     v1 |= 1;
    0x00009e40 move a0, v0                   |     a0 = v0;
    0x00009e44 sw v1, 0x24(v0)               |     *((v0 + 9)) = v1;
    0x00009e48 bal 0x29d10                   |     sym_fatal_error ();
    0x00009e4c lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x00009e50 lw fp, 0x98(sp)               |     fp = *(var_98h);
    0x00009e54 b 0x904c                      |     goto label_13;
                                             | label_141:
    0x00009eb8 move a1, zero                 |     a1 = 0;
    0x00009ebc bal 0x29d10                   |     sym_fatal_error ();
    0x00009ec0 lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x00009ec4 b 0x9488                      |     goto label_23;
                                             | label_142:
    0x00009f48 lw s2, 0x98(sp)               |     s2 = *(var_98h);
    0x00009f4c lw t9, -0x7ac8(gp)            |     t9 = sym.imp.error_message;
    0x00009f50 move a0, v0                   |     a0 = v0;
    0x00009f54 lw s3, 4(s2)                  |     s3 = *((s2 + 1));
    0x00009f58 jalr t9                       |     t9 ();
    0x00009f5c lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x00009f60 move a3, v0                   |     a3 = v0;
    0x00009f64 move a2, s3                   |     a2 = s3;
    0x00009f68 lw a1, -0x7fd0(gp)            |     a1 = *(gp);
    0x00009f6c lw t9, -0x7f68(gp)            |     t9 = sym.log_out;
                                             |     /* str._s:__s_while_reading_bad_blocks_inode_n */
    0x00009f70 addiu a1, a1, 0x64c0          |     a1 += 0x64c0;
    0x00009f74 move a0, s2                   |     a0 = s2;
    0x00009f78 bal 0x29b80                   |     sym_log_out ();
    0x00009f7c lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x00009f80 lw t9, -0x7f24(gp)            |     t9 = sym.preenhalt;
    0x00009f84 lw a0, 0x98(sp)               |     a0 = *(var_98h);
    0x00009f88 jalr t9                       |     t9 ();
    0x00009f8c lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x00009f90 lw a0, 0x98(sp)               |     a0 = *(var_98h);
    0x00009f94 lw a2, -0x7fd0(gp)            |     a2 = *(gp);
    0x00009f98 lw a1, -0x7fd0(gp)            |     a1 = *(gp);
    0x00009f9c lw t9, -0x7f68(gp)            |     t9 = sym.log_out;
                                             |     /* str.This_doesnt_bode_well__but_well_try_to_go_on..._n */
    0x00009fa0 addiu a2, a2, 0x64e8          |     a2 += 0x64e8;
                                             |     /* esilref: '&s' */
    0x00009fa4 addiu a1, a1, 0x62f4          |     a1 += 0x62f4;
    0x00009fa8 bal 0x29b80                   |     sym_log_out ();
    0x00009fac lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x00009fb0 b 0x94b0                      |     goto label_24;
                                             | label_99:
    0x00009fb4 lw s7, 0x98(sp)               |     s7 = *(var_98h);
    0x00009fb8 b 0x8948                      |     goto label_25;
                                             | label_133:
    0x00009fbc lw v0, 8(v1)                  |     v0 = *((v1 + 2));
    0x00009fc0 ori v0, v0, 6                 |     v0 |= 6;
    0x00009fc4 sw v0, 8(v1)                  |     *((v1 + 2)) = v0;
    0x00009fc8 b 0x92d4                      |     goto label_26;
                                             |     /* esilref: 'r/o' */
                                             | label_153:
    0x00009fcc addiu a2, a2, 0x5640          |     a2 += 0x5640;
    0x00009fd0 b 0x96dc                      |     goto label_27;
                                             | label_95:
    0x00009fd4 andi v1, a0, 0x200            |     v1 = a0 & aav.0x00000200;
    0x00009fd8 andi v1, a0, 1                |     v1 = a0 & 1;
                                             |     if (v1 == 0) {
    0x00009fdc beqz v1, 0x8b60               |         goto label_28;
                                             |     }
    0x00009fe0 andi v0, v0, 1                |     v0 &= 1;
                                             |     if (v1 == 0) {
    0x00009fe4 bnel v1, zero, 0x89a4         |         goto label_29;
                                             |     }
    0x00009fe8 andi v1, a0, 0x100            |     v1 = a0 & aav.0x00000100;
    0x00009fec b 0x898c                      |     goto label_30;
                                             | label_161:
    0x00009ff0 lw t9, -0x7914(gp)            |     t9 = sym.imp.com_err;
    0x00009ff4 lw a3, 0xc(fp)                |     a3 = *(arg_ch);
    0x00009ff8 lw a0, 4(fp)                  |     a0 = *(arg_4h);
                                             |     /* str.unable_to_set_superblock_flags_on__s_n */
    0x00009ffc addiu a2, a2, 0x6270          |     a2 += 0x6270;
    0x0000a000 move a1, zero                 |     a1 = 0;
    0x0000a004 jalr t9                       |     t9 ();
    0x0000a008 lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0000a00c lw a0, 0x98(sp)               |     a0 = *(var_98h);
    0x0000a010 lw t9, -0x7fb8(gp)            |     t9 = sym.fatal_error;
    0x0000a014 move a1, zero                 |     a1 = 0;
    0x0000a018 bal 0x29d10                   |     sym_fatal_error ();
    0x0000a01c lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0000a020 lw fp, 0x98(sp)               |     fp = *(var_98h);
    0x0000a024 b 0x9c5c                      |     goto label_31;
                                             | label_165:
    0x0000a114 move s3, zero                 |     s3 = 0;
    0x0000a118 b 0x9434                      |     goto label_20;
                                             | label_101:
    0x0000a11c lw t9, -0x7fb8(gp)            |     t9 = sym.fatal_error;
    0x0000a120 move a0, s7                   |     a0 = s7;
                                             |     /* str.need_terminal_for_interactive_repairs */
    0x0000a124 addiu a1, a1, 0x5d0c          |     a1 += 0x5d0c;
    0x0000a128 bal 0x29d10                   |     sym_fatal_error ();
    0x0000a12c lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0000a130 lw s7, 0x98(sp)               |     s7 = *(var_98h);
    0x0000a134 b 0x8b80                      |     goto label_32;
                                             | label_126:
    0x0000a138 addiu a3, sp, 0x204           |     a3 = sp + aav.0x00000204;
    0x0000a13c move a0, a3                   |     a0 = a3;
    0x0000a140 addiu a2, zero, 0x30          |     a2 = 0x30;
    0x0000a144 addiu a1, s0, 0x78            |     a1 = s0 + 0x78;
    0x0000a148 lw s2, 0x98(sp)               |     s2 = *(var_98h);
    0x0000a14c jalr t9                       |     t9 ();
    0x0000a150 lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0000a154 lw a0, 0x1c(s2)               |     a0 = *((s2 + 7));
    0x0000a158 move a3, v0                   |     a3 = v0;
    0x0000a15c lw a2, -0x7fd0(gp)            |     a2 = *(gp);
    0x0000a160 lw t9, -0x7c2c(gp)            |     t9 = sym.imp.__fprintf_chk
                                             |     /* str._label__s_ */
    0x0000a164 addiu a2, a2, 0x60e8          |     a2 += 0x60e8;
    0x0000a168 addiu a1, zero, 1             |     a1 = 1;
    0x0000a16c jalr t9                       |     t9 ();
    0x0000a170 lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0000a174 b 0x9140                      |     goto label_33;
                                             | label_125:
    0x0000a178 lw t9, -0x77a4(gp)            |     t9 = sym.imp.uuid_unparse;
    0x0000a17c addiu s3, sp, 0x204           |     s3 = sp + aav.0x00000204;
    0x0000a180 move a1, s3                   |     a1 = s3;
    0x0000a184 move a0, s2                   |     a0 = s2;
    0x0000a188 jalr t9                       |     t9 ();
    0x0000a18c lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0000a190 lw v0, 0x98(sp)               |     v0 = *(var_98h);
    0x0000a194 move a3, s3                   |     a3 = s3;
    0x0000a198 lw a2, -0x7fd0(gp)            |     a2 = *(gp);
    0x0000a19c lw t9, -0x7c2c(gp)            |     t9 = sym.imp.__fprintf_chk
    0x0000a1a0 lw a0, 0x1c(v0)               |     a0 = *((v0 + 7));
                                             |     /* str._uuid__s_ */
    0x0000a1a4 addiu a2, a2, 0x60dc          |     a2 += 0x60dc;
    0x0000a1a8 addiu a1, zero, 1             |     a1 = 1;
    0x0000a1ac jalr t9                       |     t9 ();
    0x0000a1b0 lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0000a1b4 b 0x9134                      |     goto label_34;
                                             | label_118:
    0x0000a1b8 lw t9, -0x7b34(gp)            |     t9 = sym.imp.ext2fs_close_free;
    0x0000a1bc move a0, s2                   |     a0 = s2;
    0x0000a1c0 jalr t9                       |     t9 ();
    0x0000a1c4 lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0000a1c8 lw v0, 0x98(sp)               |     v0 = *(var_98h);
    0x0000a1cc move a1, s0                   |     a1 = s0;
    0x0000a1d0 lw t9, -0x7ca8(gp)            |     t9 = sym.imp.ext2fs_get_device_size2;
    0x0000a1d4 lw a0, 8(v0)                  |     a0 = *((v0 + 2));
    0x0000a1d8 addiu a2, v0, 0x40            |     a2 = v0 + 0x40;
    0x0000a1dc jalr t9                       |     t9 ();
    0x0000a1e0 sw v0, 0xa8(sp)               |     *(var_a8h) = v0;
    0x0000a1e4 lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0000a1e8 addiu s3, zero, 1             |     s3 = 1;
    0x0000a1ec b 0x9034                      |     goto label_35;
                                             | label_106:
    0x0000a22c addiu v0, sp, 0x100           |     v0 = sp + aav.0x00000100;
    0x0000a230 lw a0, 0x29c(fp)              |     a0 = *(arg_29ch);
    0x0000a234 lw a2, -0x7fd0(gp)            |     a2 = *(gp);
    0x0000a238 lw a1, -0x7fd0(gp)            |     a1 = *(gp);
    0x0000a23c sw v0, 0x14(sp)               |     *(var_14h) = v0;
    0x0000a240 lw v0, 0x88(sp)               |     v0 = *(var_88h);
    0x0000a244 lw t9, -0x7f1c(gp)            |     t9 = sym.profile_get_string;
    0x0000a248 move a3, zero                 |     a3 = 0;
                                             |     /* str.undo_dir */
    0x0000a24c addiu a2, a2, 0x5dd0          |     a2 += 0x5dd0;
                                             |     /* str.defaults */
    0x0000a250 addiu a1, a1, 0x5ddc          |     a1 += 0x5ddc;
    0x0000a254 sw v0, 0x10(sp)               |     *(var_10h) = v0;
    0x0000a258 jalr t9                       |     t9 ();
    0x0000a25c lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0000a260 lw s0, 0x100(sp)              |     s0 = *(var_100h);
    0x0000a264 lw a1, -0x7fd0(gp)            |     a1 = *(gp);
    0x0000a268 lw t9, -0x778c(gp)            |     t9 = sym.imp.strcmp;
                                             |     /* str.none */
    0x0000a26c addiu a1, a1, 0x5dfc          |     a1 += 0x5dfc;
    0x0000a270 move a0, s0                   |     a0 = s0;
    0x0000a274 jalr t9                       |     t9 ();
    0x0000a278 lw gp, 0x30(sp)               |     gp = *(var_30h);
                                             |     if (v0 != 0) {
    0x0000a27c beqz v0, 0xa2a8               |         
    0x0000a280 lb v0, (s0)                   |         v0 = *(s0);
    0x0000a284 lw t9, -0x7814(gp)            |         t9 = sym.imp.free;
                                             |         if (v0 == 0) {
    0x0000a288 beqz v0, 0xa2ac               |             goto label_167;
                                             |         }
    0x0000a28c lw t9, -0x7b04(gp)            |         t9 = sym.imp.access;
    0x0000a290 addiu a1, zero, 2             |         a1 = 2;
    0x0000a294 move a0, s0                   |         a0 = s0;
    0x0000a298 jalr t9                       |         t9 ();
    0x0000a29c lw gp, 0x30(sp)               |         gp = *(var_30h);
                                             |         if (v0 == 0) {
    0x0000a2a0 beqz v0, 0xbc90               |             goto label_168;
                                             |         }
    0x0000a2a4 lw s0, 0x100(sp)              |         s0 = *(var_100h);
                                             |     }
    0x0000a2a8 lw t9, -0x7814(gp)            |     t9 = sym.imp.free;
                                             | label_167:
    0x0000a2ac move a0, s0                   |     a0 = s0;
    0x0000a2b0 jalr t9                       |     t9 ();
    0x0000a2b4 lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0000a2b8 lw fp, 0x98(sp)               |     fp = *(var_98h);
    0x0000a2bc b 0x8e7c                      |     goto label_36;
                                             | label_145:
    0x0000a2c0 lw a2, -0x7fd0(gp)            |     a2 = *(gp);
    0x0000a2c4 lw a1, -0x7fd0(gp)            |     a1 = *(gp);
    0x0000a2c8 lw t9, -0x7f68(gp)            |     t9 = sym.log_out;
    0x0000a2cc lw a0, 0x98(sp)               |     a0 = *(var_98h);
                                             |     /* str.The_filesystem_revision_is_apparently_too_high_for_this_version_of_e2fsck._n_Or_the_filesystem_superblock_is_corrupt__n_n */
    0x0000a2d0 addiu a2, a2, 0x5ec0          |     a2 += 0x5ec0;
                                             |     /* esilref: '&s' */
    0x0000a2d4 addiu a1, a1, 0x62f4          |     a1 += 0x62f4;
    0x0000a2d8 bal 0x29b80                   |     sym_log_out ();
    0x0000a2dc lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0000a2e0 lw a0, 0x98(sp)               |     a0 = *(var_98h);
    0x0000a2e4 lw a2, 0x50(sp)               |     a2 = *(var_50h);
    0x0000a2e8 lw t9, -0x7f5c(gp)            |     t9 = sym.fix_problem;
    0x0000a2ec addiu a1, zero, 4             |     a1 = 4;
    0x0000a2f0 jalr t9                       |     t9 ();
    0x0000a2f4 lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0000a2f8 b 0x96f0                      |     goto label_37;
                                             | label_156:
    0x0000a2fc move a0, fp                   |     a0 = fp;
    0x0000a300 addiu a2, zero, 0x10          |     a2 = 0x10;
    0x0000a304 addiu a1, s0, 0x78            |     a1 = s0 + 0x78;
    0x0000a308 bal 0x29f78                   |     sym_string_copy ();
    0x0000a30c lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0000a310 sw v0, 0xc(fp)                |     *(arg_ch) = v0;
    0x0000a314 lw fp, 0x98(sp)               |     fp = *(var_98h);
    0x0000a318 lw s2, 0xc(fp)                |     s2 = *(arg_ch);
    0x0000a31c lb s3, (s2)                   |     s3 = *(s2);
                                             |     if (s2 == 0) {
    0x0000a320 bnel s2, zero, 0x908c         |         goto label_38;
                                             |     }
    0x0000a324 lw t9, -0x7fbc(gp)            |     t9 = sym.string_copy;
    0x0000a328 b 0x989c                      |     goto label_39;
                                             | label_146:
    0x0000a32c lw a2, -0x7fd0(gp)            |     a2 = *(gp);
    0x0000a330 lw a1, -0x7fd0(gp)            |     a1 = *(gp);
    0x0000a334 lw t9, -0x7f68(gp)            |     t9 = sym.log_out;
    0x0000a338 lw a0, 0x98(sp)               |     a0 = *(var_98h);
                                             |     /* str.Could_this_be_a_zero_length_partition__n */
    0x0000a33c addiu a2, a2, 0x5f38          |     a2 += 0x5f38;
                                             |     /* esilref: '&s' */
    0x0000a340 addiu a1, a1, 0x62f4          |     a1 += 0x62f4;
    0x0000a344 bal 0x29b80                   |     sym_log_out ();
    0x0000a348 lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0000a34c b 0x96f0                      |     goto label_37;
                                             | label_166:
    0x0000a350 lw t9, -0x7cb4(gp)            |     t9 = sym.imp.closedir;
    0x0000a354 move a0, s5                   |     a0 = s5;
    0x0000a358 lw s0, 0x8c(sp)               |     s0 = *(var_8ch);
    0x0000a35c move s3, zero                 |     s3 = 0;
    0x0000a360 jalr t9                       |     t9 ();
    0x0000a364 lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0000a368 b 0x9434                      |     goto label_20;
                                             | label_127:
    0x0000a36c addiu s3, sp, 0x100           |     s3 = sp + aav.0x00000100;
    0x0000a370 move a0, s3                   |     a0 = s3;
    0x0000a374 lw s0, 0x98(sp)               |     s0 = *(var_98h);
    0x0000a378 jalr t9                       |     t9 ();
    0x0000a37c lw v0, 0x98(s2)               |     v0 = *((s2 + 38));
    0x0000a380 lw gp, 0x30(sp)               |     gp = *(var_30h);
                                             |     if (v0 == 0) {
    0x0000a384 beqz v0, 0xae30               |         goto label_169;
                                             |     }
                                             | label_46:
    0x0000a388 lw v1, 0x10(s2)               |     v1 = *((s2 + 4));
    0x0000a38c lw t9, -0x7828(gp)            |     t9 = sym.imp.ext2fs_mmp_read;
    0x0000a390 move a0, s2                   |     a0 = s2;
    0x0000a394 lw a2, 0x168(v1)              |     a2 = *(v1);
    0x0000a398 lw a3, 0x16c(v1)              |     a3 = *(v1);
    0x0000a39c sw v0, 0x10(sp)               |     *(var_10h) = v0;
    0x0000a3a0 jalr t9                       |     t9 ();
    0x0000a3a4 move a1, v0                   |     a1 = v0;
    0x0000a3a8 lw gp, 0x30(sp)               |     gp = *(var_30h);
                                             |     if (v0 != 0) {
    0x0000a3ac bnez v0, 0xaa30               |         goto label_170;
                                             |     }
    0x0000a3b0 lw a0, 0x98(s2)               |     a0 = *((s2 + 38));
    0x0000a3b4 lui v1, 0xff4d                |     v1 = 0xff4d4d50;
    0x0000a3b8 addiu v1, v1, 0x4d50          |     
    0x0000a3bc lw v0, 4(a0)                  |     v0 = *((a0 + 1));
    0x0000a3c0 lui v1, 0xe24d                |     v1 = 0xe24d0000;
                                             |     if (v0 != v1) {
    0x0000a3c4 beq v0, v1, 0xa3dc            |         
    0x0000a3c8 addiu v1, v1, 0x4d50          |         v1 += 0x4d50;
    0x0000a3cc sltu v0, v0, v1               |         v0 = (v0 < v1) ? 1 : 0;
                                             |         if (v0 == v1) {
    0x0000a3d0 beq v0, v1, 0xb708            |             goto label_171;
                                             |         }
                                             |         if (v0 == 0) {
    0x0000a3d4 beql v0, zero, 0xaeac         |             goto label_172;
                                             |         }
    0x0000a3d8 lui a1, 0x7f2b                |         a1 = 0x7f2b0000;
                                             |     }
    0x0000a3dc lw v0, 0x10(s2)               |     v0 = *((s2 + 4));
    0x0000a3e0 lhu a2, 0x70(a0)              |     a2 = *((a0 + 56));
    0x0000a3e4 lhu v1, 0x166(v0)             |     v1 = *((v0 + 179));
    0x0000a3e8 sltu v0, v1, a2               |     v0 = (v1 < a2) ? 1 : 0;
                                             |     if (v0 != 0) {
    0x0000a3ec movz a2, v1, v0               |         a2 = v1;
                                             |     }
    0x0000a3f0 move v0, a2                   |     v0 = a2;
    0x0000a3f4 addiu v1, zero, 5             |     v1 = 5;
    0x0000a3f8 sltiu a2, a2, 5               |     a2 = (a2 < 5) ? 1 : 0;
                                             |     if (a2 != 0) {
    0x0000a3fc movz v1, v0, a2               |         v1 = v0;
                                             |     }
    0x0000a400 lw v0, -0x7fc8(gp)            |     v0 = *((gp - 8178));
    0x0000a404 sll a3, v1, 1                 |     a3 = v1 << 1;
    0x0000a408 move a2, v1                   |     a2 = v1;
    0x0000a40c lw v0, 0x279c(v0)             |     v0 = *((v0 + 2535));
    0x0000a410 addiu a3, a3, 1               |     a3++;
                                             |     if (v0 == 0) {
    0x0000a414 bnez v0, 0xa424               |         
    0x0000a418 sltiu v0, a3, 0x15            |         v0 = (a3 < 0x15) ? 1 : 0;
    0x0000a41c lw t9, -0x7b34(gp)            |         t9 = sym.imp.ext2fs_close_free;
                                             |         if (v0 != 0) {
    0x0000a420 bnez v0, 0xa444               |             goto label_173;
                                             |         }
                                             |     }
    0x0000a424 lw a1, -0x7fd0(gp)            |     a1 = *(gp);
    0x0000a428 lw t9, -0x7f68(gp)            |     t9 = sym.log_out;
    0x0000a42c sll a3, a3, 1                 |     a3 <<= 1;
                                             |     /* str.MMP_interval_is__u_seconds_and_total_wait_time_is__u_seconds._Please_wait..._n */
    0x0000a430 addiu a1, a1, 0x60f4          |     a1 += 0x60f4;
    0x0000a434 move a0, s0                   |     a0 = s0;
    0x0000a438 bal 0x29b80                   |     sym_log_out ();
    0x0000a43c lw gp, 0x30(sp)               |     gp = *(var_30h);
                                             | label_45:
    0x0000a440 lw t9, -0x7b34(gp)            |     t9 = sym.imp.ext2fs_close_free;
                                             | label_173:
    0x0000a444 lw a0, 0x98(sp)               |     a0 = *(var_98h);
    0x0000a448 jalr t9                       |     t9 ();
    0x0000a44c lui v0, 0xffef                |     v0 = 0xffefffff;
    0x0000a450 ori v0, v0, 0xffff            |     
    0x0000a454 lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0000a458 and s1, s1, v0                |     s1 &= v0;
    0x0000a45c b 0x8bfc                      |     goto label_1;
                                             | label_157:
    0x0000a460 lw v1, 0x98(sp)               |     v1 = *(var_98h);
    0x0000a464 lw a2, -0x7fd0(gp)            |     a2 = *(gp);
    0x0000a468 lw t9, -0x7914(gp)            |     t9 = sym.imp.com_err;
    0x0000a46c lw a0, 4(v1)                  |     a0 = *((v1 + 1));
    0x0000a470 lw a3, 0xc(v1)                |     a3 = *((v1 + 3));
    0x0000a474 move a1, v0                   |     a1 = v0;
                                             |     /* str.while_checking_journal_for__s */
    0x0000a478 addiu a2, a2, 0x61d8          |     a2 += 0x61d8;
    0x0000a47c jalr t9                       |     t9 ();
    0x0000a480 lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0000a484 lw a0, 0x98(sp)               |     a0 = *(var_98h);
    0x0000a488 lw a1, -0x7fd0(gp)            |     a1 = *(gp);
    0x0000a48c lw t9, -0x7fb8(gp)            |     t9 = sym.fatal_error;
                                             |     /* str.Cannot_proceed_with_file_system_check */
    0x0000a490 addiu a1, a1, 0x61f8          |     a1 += 0x61f8;
    0x0000a494 bal 0x29d10                   |     sym_fatal_error ();
    0x0000a498 lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0000a49c lw fp, 0x98(sp)               |     fp = *(var_98h);
    0x0000a4a0 b 0x91e8                      |     goto label_11;
                                             | label_94:
    0x0000a55c lw a2, -0x7fd0(gp)            |     a2 = *(gp);
    0x0000a560 lw a0, -0x7fd0(gp)            |     a0 = *(gp);
    0x0000a564 lw t9, -0x7914(gp)            |     t9 = sym.imp.com_err;
    0x0000a568 lw a3, 8(s7)                  |     a3 = *((s7 + 2));
                                             |     /* str.while_determining_whether__s_is_mounted. */
    0x0000a56c addiu a2, a2, 0x5ba0          |     a2 += 0x5ba0;
    0x0000a570 move a1, v0                   |     a1 = v0;
                                             |     /* str.ext2fs_check_if_mount */
    0x0000a574 addiu a0, a0, 0x5bcc          |     a0 += 0x5bcc;
    0x0000a578 jalr t9                       |     t9 ();
    0x0000a57c lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0000a580 b 0x8b60                      |     goto label_28;
                                             | label_137:
    0x0000a584 move a0, s3                   |     a0 = s3;
    0x0000a588 jalr t9                       |     t9 ();
    0x0000a58c lw s3, 0x100(sp)              |     s3 = *(var_100h);
    0x0000a590 lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0000a594 sltiu s3, s3, 1               |     s3 = (s3 < 1) ? 1 : 0;
    0x0000a598 b 0x9434                      |     goto label_20;
                                             | label_97:
    0x0000a59c lw a1, -0x7fd0(gp)            |     a1 = *(gp);
    0x0000a5a0 move a0, s7                   |     a0 = s7;
                                             |     /* str._s_is_in_use._n */
    0x0000a5a4 addiu a1, a1, 0x5c2c          |     a1 += 0x5c2c;
    0x0000a5a8 bal 0x29b80                   |     sym_log_out ();
    0x0000a5ac lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0000a5b0 b 0x89c4                      |     goto label_40;
                                             | label_155:
    0x0000a62c lw a1, -0x7fd0(gp)            |     a1 = *(gp);
    0x0000a630 lw t9, -0x7b28(gp)            |     t9 = sym.imp.__printf_chk;
    0x0000a634 lw a3, 8(fp)                  |     a3 = *(arg_8h);
    0x0000a638 lw a2, 0x2cc(fp)              |     a2 = *(arg_2cch);
                                             |     /* str.Overwriting_existing_filesystem__this_can_be_undone_using_the_command:_n____e2undo__s__s_n_n */
    0x0000a63c addiu a1, a1, 0x5d60          |     a1 += 0x5d60;
    0x0000a640 addiu a0, zero, 1             |     a0 = 1;
    0x0000a644 jalr t9                       |     t9 ();
    0x0000a648 lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0000a64c lw fp, 0x98(sp)               |     fp = *(var_98h);
    0x0000a650 b 0x8e7c                      |     goto label_36;
                                             | label_162:
    0x0000a654 lw a0, 0x98(sp)               |     a0 = *(var_98h);
    0x0000a658 lw a1, -0x7fd0(gp)            |     a1 = *(gp);
    0x0000a65c lw t9, -0x7f68(gp)            |     t9 = sym.log_out;
    0x0000a660 lw a2, 0xc(a0)                |     a2 = *((a0 + 3));
                                             |     /* str.Journal_checksum_error_found_in__s_n */
    0x0000a664 addiu a1, a1, 0x6298          |     a1 += 0x6298;
    0x0000a668 bal 0x29b80                   |     sym_log_out ();
    0x0000a66c lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0000a670 lw fp, 0x98(sp)               |     fp = *(var_98h);
    0x0000a674 b 0x9c8c                      |     goto label_41;
                                             | label_164:
    0x0000a6b4 lw t9, -0x7914(gp)            |     t9 = sym.imp.com_err;
    0x0000a6b8 lw a3, 0xc(fp)                |     a3 = *(arg_ch);
    0x0000a6bc lw a0, 4(fp)                  |     a0 = *(arg_4h);
                                             |     /* str.while_recovering_journal_of__s */
    0x0000a6c0 addiu a2, a2, 0x62d8          |     a2 += 0x62d8;
    0x0000a6c4 move a1, v0                   |     a1 = v0;
    0x0000a6c8 jalr t9                       |     t9 ();
    0x0000a6cc lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0000a6d0 lw fp, 0x98(sp)               |     fp = *(var_98h);
    0x0000a6d4 b 0x9c8c                      |     goto label_41;
                                             | label_163:
    0x0000a6d8 lw a1, -0x7fd0(gp)            |     a1 = *(gp);
    0x0000a6dc lw t9, -0x7f68(gp)            |     t9 = sym.log_out;
    0x0000a6e0 lw a2, 0xc(fp)                |     a2 = *(arg_ch);
    0x0000a6e4 move a0, fp                   |     a0 = fp;
                                             |     /* str.Journal_corrupted_in__s_n */
    0x0000a6e8 addiu a1, a1, 0x62bc          |     a1 += 0x62bc;
    0x0000a6ec bal 0x29b80                   |     sym_log_out ();
    0x0000a6f0 lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0000a6f4 lw fp, 0x98(sp)               |     fp = *(var_98h);
    0x0000a6f8 b 0x9c8c                      |     goto label_41;
                                             | label_111:
    0x0000a7a8 lw v0, -0x7bd4(gp)            |     v0 = *((gp - 7925));
    0x0000a7ac lw t9, -0x7b1c(gp)            |     t9 = sym.imp.set_undo_io_backup_file;
    0x0000a7b0 move a0, s5                   |     a0 = s5;
    0x0000a7b4 lw s4, (v0)                   |     s4 = *(v0);
    0x0000a7b8 jalr t9                       |     t9 ();
    0x0000a7bc move s3, v0                   |     s3 = v0;
    0x0000a7c0 lw gp, 0x30(sp)               |     gp = *(var_30h);
                                             |     if (v0 != 0) {
    0x0000a7c4 bnez v0, 0x8e28               |         goto label_42;
                                             |     }
    0x0000a7c8 lw a1, -0x7fd0(gp)            |     a1 = *(gp);
    0x0000a7cc lw t9, -0x7b28(gp)            |     t9 = sym.imp.__printf_chk;
    0x0000a7d0 lw a3, 8(fp)                  |     a3 = *(arg_8h);
    0x0000a7d4 move a2, s5                   |     a2 = s5;
                                             |     /* str.Overwriting_existing_filesystem__this_can_be_undone_using_the_command:_n____e2undo__s__s_n_n */
    0x0000a7d8 addiu a1, a1, 0x5d60          |     a1 += 0x5d60;
    0x0000a7dc addiu a0, zero, 1             |     a0 = 1;
    0x0000a7e0 jalr t9                       |     t9 ();
    0x0000a7e4 lw gp, 0x30(sp)               |     gp = *(var_30h);
                                             |     if (s0 != 0) {
    0x0000a7e8 bnez s0, 0xb894               |         goto label_174;
                                             |     }
                                             | label_61:
    0x0000a7ec lw t9, -0x7814(gp)            |     t9 = sym.imp.free;
    0x0000a7f0 move a0, s5                   |     a0 = s5;
    0x0000a7f4 jalr t9                       |     t9 ();
    0x0000a7f8 lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0000a7fc lw fp, 0x98(sp)               |     fp = *(var_98h);
    0x0000a800 b 0x8e7c                      |     goto label_36;
                                             | label_150:
    0x0000a804 lw a2, -0x7fd0(gp)            |     a2 = *(gp);
    0x0000a808 lw a1, -0x7fd0(gp)            |     a1 = *(gp);
    0x0000a80c lw t9, -0x7f68(gp)            |     t9 = sym.log_out;
    0x0000a810 lw a0, 0x98(sp)               |     a0 = *(var_98h);
                                             |     /* str.Disk_write_protected__use_the__n_option_to_do_a_read_only_ncheck_of_the_device._n */
    0x0000a814 addiu a2, a2, 0x6020          |     a2 += 0x6020;
                                             |     /* esilref: '&s' */
    0x0000a818 addiu a1, a1, 0x62f4          |     a1 += 0x62f4;
    0x0000a81c bal 0x29b80                   |     sym_log_out ();
    0x0000a820 lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0000a824 b 0x96f0                      |     goto label_37;
                                             | label_159:
    0x0000a864 move s7, fp                   |     s7 = fp;
    0x0000a868 lw t9, -0x7b34(gp)            |     t9 = sym.imp.ext2fs_close_free;
    0x0000a86c move a0, s7                   |     a0 = s7;
    0x0000a870 jalr t9                       |     t9 ();
    0x0000a874 lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0000a878 lw t9, -0x7f18(gp)            |     t9 = sym.e2fsck_free_context;
    0x0000a87c move a0, s7                   |     a0 = s7;
    0x0000a880 bal 0xe4f4                    |     sym_e2fsck_free_context ();
    0x0000a884 lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0000a888 lw t9, -0x7a08(gp)            |     t9 = sym.imp.exit;
    0x0000a88c move a0, zero                 |     a0 = 0;
    0x0000a890 jalr t9                       |     t9 ();
                                             | label_110:
    0x0000a894 lw a2, -0x7fd0(gp)            |     a2 = *(gp);
    0x0000a898 lw t9, -0x7914(gp)            |     t9 = sym.imp.com_err;
    0x0000a89c lw a0, 4(fp)                  |     a0 = *(arg_4h);
    0x0000a8a0 move a3, s5                   |     a3 = s5;
                                             |     /* str.while_trying_to_delete__s */
    0x0000a8a4 addiu a2, a2, 0x5e18          |     a2 += 0x5e18;
    0x0000a8a8 move a1, s3                   |     a1 = s3;
    0x0000a8ac jalr t9                       |     t9 ();
    0x0000a8b0 lw gp, 0x30(sp)               |     gp = *(var_30h);
                                             |     if (s0 == 0) {
    0x0000a8b4 beqz s0, 0x8e40               |         goto label_43;
                                             |     }
    0x0000a8b8 lw t9, -0x7814(gp)            |     t9 = sym.imp.free;
    0x0000a8bc b 0x8e34                      |     goto label_44;
                                             | label_144:
    0x0000a980 lw a2, -0x7fd0(gp)            |     a2 = *(gp);
    0x0000a984 lw t9, -0x7914(gp)            |     t9 = sym.imp.com_err;
    0x0000a988 lw a3, 8(fp)                  |     a3 = *(arg_8h);
    0x0000a98c lw a0, 4(fp)                  |     a0 = *(arg_4h);
                                             |     /* str.while_trying_to_open__s */
    0x0000a990 addiu a2, a2, 0x5ea8          |     a2 += 0x5ea8;
    0x0000a994 move a1, s5                   |     a1 = s5;
    0x0000a998 jalr t9                       |     t9 ();
    0x0000a99c lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0000a9a0 move s0, s5                   |     s0 = s5;
                                             | label_151:
    0x0000a9a4 lw t9, -0x7f5c(gp)            |     t9 = sym.fix_problem;
    0x0000a9a8 lw a0, 0x98(sp)               |     a0 = *(var_98h);
    0x0000a9ac lw a2, 0x50(sp)               |     a2 = *(var_50h);
    0x0000a9b0 addiu a1, zero, 4             |     a1 = 4;
    0x0000a9b4 jalr t9                       |     t9 ();
    0x0000a9b8 lui v0, 0x7f2b                |     v0 = 0x7f2bb713;
    0x0000a9bc ori v0, v0, 0xb713            |     
    0x0000a9c0 lw gp, 0x30(sp)               |     gp = *(var_30h);
                                             |     if (s0 != v0) {
    0x0000a9c4 bne s0, v0, 0x96f0            |         goto label_37;
                                             |     }
    0x0000a9c8 lw v0, 0x98(sp)               |     v0 = *(var_98h);
    0x0000a9cc lw t9, -0x7f10(gp)            |     t9 = sym.check_plausibility;
    0x0000a9d0 move a2, zero                 |     a2 = 0;
    0x0000a9d4 lw a0, 8(v0)                  |     a0 = *((v0 + 2));
    0x0000a9d8 addiu a1, zero, 4             |     a1 = 4;
    0x0000a9dc jalr t9                       |     t9 ();
    0x0000a9e0 lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0000a9e4 b 0x96f0                      |     goto label_37;
                                             | label_147:
    0x0000a9e8 lw a2, -0x7fd0(gp)            |     a2 = *(gp);
    0x0000a9ec lw a1, -0x7fd0(gp)            |     a1 = *(gp);
    0x0000a9f0 lw t9, -0x7f68(gp)            |     t9 = sym.log_out;
    0x0000a9f4 lw a0, 0x98(sp)               |     a0 = *(var_98h);
                                             |     /* str.Possibly_non_existent_or_swap_device__n */
    0x0000a9f8 addiu a2, a2, 0x5f98          |     a2 += 0x5f98;
                                             |     /* esilref: '&s' */
    0x0000a9fc addiu a1, a1, 0x62f4          |     a1 += 0x62f4;
    0x0000aa00 bal 0x29b80                   |     sym_log_out ();
    0x0000aa04 lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0000aa08 b 0x96f0                      |     goto label_37;
                                             | label_148:
    0x0000aa0c lw a2, -0x7fd0(gp)            |     a2 = *(gp);
    0x0000aa10 lw a1, -0x7fd0(gp)            |     a1 = *(gp);
    0x0000aa14 lw t9, -0x7f68(gp)            |     t9 = sym.log_out;
    0x0000aa18 lw a0, 0x98(sp)               |     a0 = *(var_98h);
                                             |     /* str.Filesystem_mounted_or_opened_exclusively_by_another_program__n */
    0x0000aa1c addiu a2, a2, 0x5fc0          |     a2 += 0x5fc0;
                                             |     /* esilref: '&s' */
    0x0000aa20 addiu a1, a1, 0x62f4          |     a1 += 0x62f4;
    0x0000aa24 bal 0x29b80                   |     sym_log_out ();
    0x0000aa28 lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0000aa2c b 0x96f0                      |     goto label_37;
                                             | label_170:
    0x0000aa30 lui v0, 0x7f2b                |     v0 = 0x7f2bb78d;
    0x0000aa34 ori v0, v0, 0xb78d            |     
    0x0000aa38 addiu v1, v0, -2              |     v1 = v0 + -2;
                                             |     if (a1 == v0) {
    0x0000aa3c beq a1, v0, 0xb5b0            |         goto label_175;
                                             |     }
    0x0000aa40 addiu v1, v0, -1              |     v1 = v0 + -1;
                                             |     if (a1 != v1) {
    0x0000aa44 beq a1, v1, 0xaaa8            |         
    0x0000aa48 addiu v1, v0, 1               |         v1 = v0 + 1;
                                             |         if (a1 == v1) {
    0x0000aa4c beq a1, v1, 0xaeb0            |             goto label_53;
                                             |         }
    0x0000aa50 addiu v1, v0, -3              |         v1 = v0 + -3;
                                             |         if (a1 == v1) {
    0x0000aa54 beq a1, v1, 0xaeb0            |             goto label_53;
                                             |         }
    0x0000aa58 addiu v0, v0, 0xd             |         v0 += 0xd;
                                             |         if (a1 == v1) {
    0x0000aa5c beq a1, v1, 0xb734            |             goto label_176;
                                             |         }
    0x0000aa60 lw t9, -0x7f5c(gp)            |         t9 = sym.fix_problem;
                                             |         if (a1 != v0) {
    0x0000aa64 bne a1, v0, 0xb6a8            |             goto label_177;
                                             |         }
    0x0000aa68 move a2, s3                   |         a2 = s3;
    0x0000aa6c addiu a1, zero, 0x47          |         a1 = 0x47;
    0x0000aa70 move a0, s0                   |         a0 = s0;
    0x0000aa74 jalr t9                       |         t9 ();
    0x0000aa78 lw gp, 0x30(sp)               |         gp = *(var_30h);
                                             |         if (v0 == 0) {
    0x0000aa7c beqz v0, 0xaadc               |             goto label_47;
                                             |         }
    0x0000aa80 lw t9, -0x7b30(gp)            |         t9 = sym.imp.ext2fs_mmp_clear;
                                             | label_55:
    0x0000aa84 move a0, s2                   |         a0 = s2;
    0x0000aa88 jalr t9                       |         t9 ();
    0x0000aa8c lw gp, 0x30(sp)               |         gp = *(var_30h);
    0x0000aa90 b 0xa440                      |         goto label_45;
                                             |     }
    0x0000aaa8 lw a3, -0x7fd0(gp)            |     a3 = *(gp);
    0x0000aaac lw a2, -0x7fd0(gp)            |     a2 = *(gp);
    0x0000aab0 lw t9, -0x7914(gp)            |     t9 = sym.imp.com_err;
    0x0000aab4 lw a0, 4(s0)                  |     a0 = *((s0 + 1));
                                             |     /* str.while_checking_MMP_block */
    0x0000aab8 addiu a3, a3, 0x6144          |     a3 += 0x6144;
                                             |     /* esilref: '&s' */
    0x0000aabc addiu a2, a2, 0x62f4          |     a2 += 0x62f4;
    0x0000aac0 jalr t9                       |     t9 ();
    0x0000aac4 lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0000aac8 lw a0, 0x98(s2)               |     a0 = *((s2 + 38));
    0x0000aacc lw t9, -0x7f0c(gp)            |     t9 = sym.dump_mmp_msg;
    0x0000aad0 move a1, zero                 |     a1 = 0;
    0x0000aad4 jalr t9                       |     t9 ();
    0x0000aad8 lw gp, 0x30(sp)               |     gp = *(var_30h);
                                             | label_47:
    0x0000aadc lw t9, -0x7fb8(gp)            |     t9 = sym.fatal_error;
    0x0000aae0 lw a0, 0x98(sp)               |     a0 = *(var_98h);
    0x0000aae4 move a1, zero                 |     a1 = 0;
    0x0000aae8 bal 0x29d10                   |     sym_fatal_error ();
    0x0000aaec lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0000aaf0 b 0xa440                      |     goto label_45;
                                             | label_84:
    0x0000ab60 lw v0, 0x24(s7)               |     v0 = *((s7 + 9));
    0x0000ab64 andi v0, v0, 0x2000           |     v0 &= 0x2000;
    0x0000ab68 lw t9, -0x7a9c(gp)            |     t9 = sym.imp.memset;
                                             |     if (v0 == 0) {
    0x0000ab6c bnez v0, 0xab78               |         
    0x0000ab70 lw v0, 0x290(s7)              |         v0 = *((s7 + 164));
    0x0000ab74 sw v0, 0x40(s0)               |         *((s0 + 16)) = v0;
                                             |     }
    0x0000ab78 addiu a2, zero, 0x6c          |     a2 = 0x6c;
    0x0000ab7c move a1, zero                 |     a1 = 0;
    0x0000ab80 addiu a0, s0, 0x194           |     a0 = s0 + segment.INTERP;
    0x0000ab84 sh zero, 0x34(s0)             |     *((s0 + 26)) = 0;
    0x0000ab88 jalr t9                       |     t9 ();
    0x0000ab8c lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0000ab90 lw t9, -0x7a6c(gp)            |     t9 = sym.imp.ext2fs_set_gdt_csum;
    0x0000ab94 lw a0, (s7)                   |     a0 = *(s7);
    0x0000ab98 jalr t9                       |     t9 ();
    0x0000ab9c sw v0, 0xa8(sp)               |     *(var_a8h) = v0;
    0x0000aba0 lw gp, 0x30(sp)               |     gp = *(var_30h);
                                             |     if (v0 != 0) {
    0x0000aba4 bnez v0, 0xb778               |         goto label_178;
                                             |     }
                                             | label_58:
    0x0000aba8 lw v0, 0x90(sp)               |     v0 = *(var_90h);
    0x0000abac lw s7, 0x98(sp)               |     s7 = *(var_98h);
    0x0000abb0 lw v1, 8(v0)                  |     v1 = *((v0 + 2));
    0x0000abb4 ori v1, v1, 6                 |     v1 |= 6;
    0x0000abb8 sw v1, 8(v0)                  |     *((v0 + 2)) = v1;
    0x0000abbc lw v1, (s7)                   |     v1 = *(s7);
    0x0000abc0 lw v1, 0x10(v1)               |     v1 = *((v1 + 4));
    0x0000abc4 lw v1, 0x64(v1)               |     v1 = *((v1 + 25));
    0x0000abc8 andi v1, v1, 0x4000           |     v1 &= 0x4000;
                                             |     if (v1 != 0) {
    0x0000abcc beql v1, zero, 0xabf0         |         
    0x0000abd0 lw v0, 0x28(s7)               |         v0 = *((s7 + 10));
    0x0000abd4 lw a0, 0x28(s7)               |         a0 = *((s7 + 10));
    0x0000abd8 lui v1, 4                     |         v1 = 0x40008;
    0x0000abdc addiu v1, v1, 8               |         
    0x0000abe0 and a0, a0, v1                |         a0 &= v1;
                                             |         if (a0 == v1) {
    0x0000abe4 beql a0, v1, 0xac48           |             goto label_179;
                                             |         }
    0x0000abe8 lw v0, 8(v0)                  |         v0 = *((v0 + 2));
    0x0000abec lw v0, 0x28(s7)               |         v0 = *((s7 + 10));
                                             |     }
    0x0000abf0 andi v0, v0, 1                |     v0 &= 1;
    0x0000abf4 lw t9, -0x7f08(gp)            |     t9 = sym.e2fsck_write_bitmaps;
                                             |     if (v0 == 0) {
    0x0000abf8 beqz v0, 0xb650               |         goto label_180;
                                             |     }
                                             | label_51:
    0x0000abfc lw v0, 0x90(sp)               |     v0 = *(var_90h);
                                             |     if (s1 == 0) {
    0x0000ac00 beqz s1, 0xac44               |         goto label_181;
                                             |     }
    0x0000ac04 lw v0, 0x24(s7)               |     v0 = *((s7 + 9));
    0x0000ac08 andi v0, v0, 0x4000           |     v0 &= 0x4000;
                                             |     if (v0 != 0) {
    0x0000ac0c beql v0, zero, 0xac24         |         
    0x0000ac10 lw v0, 0x28(s7)               |         v0 = *((s7 + 10));
    0x0000ac14 lw v0, 0x68(sp)               |         v0 = *(var_68h);
    0x0000ac18 ori v0, v0, 1                 |         v0 |= 1;
    0x0000ac1c sw v0, 0x68(sp)               |         *(var_68h) = v0;
    0x0000ac20 lw v0, 0x28(s7)               |         v0 = *((s7 + 10));
                                             |     }
    0x0000ac24 andi v0, v0, 2                |     v0 &= 2;
    0x0000ac28 lw a1, -0x7fd0(gp)            |     a1 = *(gp);
                                             |     if (v0 == 0) {
    0x0000ac2c beqz v0, 0xb714               |         goto label_182;
                                             |     }
                                             | label_54:
    0x0000ac30 lw v0, 0x54(s7)               |     v0 = *((s7 + 21));
    0x0000ac34 andi v0, v0, 2                |     v0 &= 2;
    0x0000ac38 lw a1, -0x7fd0(gp)            |     a1 = *(gp);
                                             |     if (v0 != 0) {
    0x0000ac3c bnez v0, 0xae00               |         void (*0xae00)() ();
                                             |     }
                                             | label_181:
    0x0000ac44 lw v0, 8(v0)                  |     v0 = *((v0 + 2));
                                             | label_179:
    0x0000ac48 lw v1, 0x68(sp)               |     v1 = *(var_68h);
    0x0000ac4c andi v0, v0, 8                |     v0 &= 8;
    0x0000ac50 andi s1, v1, 0x20             |     s1 = v1 & 0x20;
                                             |     if (v0 == 0) {
    0x0000ac54 beqz v0, 0xaf88               |         goto label_183;
                                             |     }
                                             |     if (s1 == 0) {
    0x0000ac58 beql s1, zero, 0xafc4         |         goto label_184;
                                             |     }
    0x0000ac5c lw s1, (s7)                   |     s1 = *(s7);
    0x0000ac60 lhu v0, 0x3a(s0)              |     v0 = *((s0 + 29));
    0x0000ac64 andi v0, v0, 2                |     v0 &= 2;
    0x0000ac68 addiu v0, sp, 0x100           |     v0 = sp + aav.0x00000100;
                                             |     if (v0 == 0) {
    0x0000ac6c beqz v0, 0xaca8               |         goto label_185;
                                             |     }
    0x0000ac70 lw a1, -0x7fd0(gp)            |     a1 = *(gp);
    0x0000ac74 lw t9, -0x7f68(gp)            |     t9 = sym.log_out;
    0x0000ac78 lw a2, 0xc(s7)                |     a2 = *((s7 + 3));
    0x0000ac7c move a0, s7                   |     a0 = s7;
                                             |     /* str._n_s:__WARNING:_Filesystem_still_has_errors__n_n */
    0x0000ac80 addiu a1, a1, 0x6668          |     a1 += 0x6668;
    0x0000ac84 bal 0x29b80                   |     sym_log_out ();
    0x0000ac88 lw v1, 0x68(sp)               |     v1 = *(var_68h);
    0x0000ac8c addiu v0, zero, -2            |     v0 = -2;
    0x0000ac90 and v0, v1, v0                |     v0 = v1 & v0;
    0x0000ac94 ori v0, v0, 4                 |     v0 |= 4;
    0x0000ac98 lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0000ac9c lw s7, 0x98(sp)               |     s7 = *(var_98h);
    0x0000aca0 sw v0, 0x68(sp)               |     *(var_68h) = v0;
                                             |     do {
    0x0000aca4 addiu v0, sp, 0x100           |         v0 = sp + aav.0x00000100;
                                             | label_185:
    0x0000aca8 lw a0, 0x29c(s7)              |         a0 = *((s7 + 167));
    0x0000acac lw a2, -0x7fd0(gp)            |         a2 = *(gp);
    0x0000acb0 sw v0, 0x14(sp)               |         *(var_14h) = v0;
    0x0000acb4 lw v0, 0x38(sp)               |         v0 = *(var_38h);
    0x0000acb8 lw t9, -0x7fac(gp)            |         t9 = sym.profile_get_boolean;
    0x0000acbc sw zero, 0x10(sp)             |         *(var_10h) = 0;
    0x0000acc0 move a3, zero                 |         a3 = 0;
                                             |         /* str.allow_cancellation */
    0x0000acc4 addiu a2, a2, 0x66ac          |         a2 += 0x66ac;
    0x0000acc8 addiu a1, v0, 0x54e4          |         a1 = v0 + 0x54e4;
    0x0000accc jalr t9                       |         t9 ();
    0x0000acd0 lw a0, 0x68(sp)               |         a0 = *(var_68h);
    0x0000acd4 addiu v1, zero, -2            |         v1 = -2;
    0x0000acd8 lw v0, 0x100(sp)              |         v0 = *(var_100h);
    0x0000acdc and v1, a0, v1                |         v1 = a0 & v1;
    0x0000ace0 lw gp, 0x30(sp)               |         gp = *(var_30h);
    0x0000ace4 sw v1, 0x68(sp)               |         *(var_68h) = v1;
                                             |         if (v0 != 0) {
    0x0000ace8 beqz v0, 0xad14               |             
    0x0000acec lw v0, 0x90(sp)               |             v0 = *(var_90h);
    0x0000acf0 lw v0, 8(v0)                  |             v0 = *((v0 + 2));
    0x0000acf4 andi v0, v0, 8                |             v0 &= 8;
                                             |             if (v0 == 0) {
    0x0000acf8 beql v0, zero, 0xad18         |                 goto label_186;
                                             |             }
    0x0000acfc lw a0, 0x98(sp)               |             a0 = *(var_98h);
                                             |         }
                                             | label_48:
    0x0000ad14 lw a0, 0x98(sp)               |         a0 = *(var_98h);
                                             | label_186:
    0x0000ad18 lw t9, -0x7f04(gp)            |         t9 = sym.print_resource_track;
    0x0000ad1c addiu a2, a0, 0x1e8           |         a2 = a0 + aav.0x000001e8;
    0x0000ad20 lw v0, (a0)                   |         v0 = *(a0);
    0x0000ad24 move a1, zero                 |         a1 = 0;
    0x0000ad28 lw a3, 4(v0)                  |         a3 = *((v0 + 1));
    0x0000ad2c bal 0x2a83c                   |         sym_print_resource_track ();
    0x0000ad30 lw gp, 0x30(sp)               |         gp = *(var_30h);
    0x0000ad34 lw t9, -0x7b34(gp)            |         t9 = sym.imp.ext2fs_close_free;
    0x0000ad38 lw a0, 0x98(sp)               |         a0 = *(var_98h);
    0x0000ad3c jalr t9                       |         t9 ();
    0x0000ad40 lw gp, 0x30(sp)               |         gp = *(var_30h);
    0x0000ad44 lw v0, 0x98(sp)               |         v0 = *(var_98h);
    0x0000ad48 lw t9, -0x7814(gp)            |         t9 = sym.imp.free;
    0x0000ad4c lw a0, 0x1e0(v0)              |         a0 = *(v0);
    0x0000ad50 jalr t9                       |         t9 ();
    0x0000ad54 lw s7, 0x98(sp)               |         s7 = *(var_98h);
    0x0000ad58 lw a0, 0x14(s7)               |         a0 = *((s7 + 5));
    0x0000ad5c lw gp, 0x30(sp)               |         gp = *(var_30h);
                                             |         if (a0 != 0) {
    0x0000ad60 beqz a0, 0xad84               |             
    0x0000ad64 lw a2, -0x7fd0(gp)            |             a2 = *(gp);
    0x0000ad68 lw t9, -0x7c2c(gp)            |             t9 = sym.imp.__fprintf_chk
    0x0000ad6c lw a3, 0x68(sp)               |             a3 = *(var_68h);
                                             |             /* str.Exit_status:__d_n */
    0x0000ad70 addiu a2, a2, 0x67a8          |             a2 += 0x67a8;
    0x0000ad74 addiu a1, zero, 1             |             a1 = 1;
    0x0000ad78 jalr t9                       |             t9 ();
    0x0000ad7c lw gp, 0x30(sp)               |             gp = *(var_30h);
    0x0000ad80 lw s7, 0x98(sp)               |             s7 = *(var_98h);
                                             |         }
    0x0000ad84 lw t9, -0x7f18(gp)            |         t9 = sym.e2fsck_free_context;
    0x0000ad88 move a0, s7                   |         a0 = s7;
    0x0000ad8c bal 0xe4f4                    |         sym_e2fsck_free_context ();
    0x0000ad90 lw gp, 0x30(sp)               |         gp = *(var_30h);
    0x0000ad94 lw a0, -0x7c4c(gp)            |         a0 = *((gp - 7955));
    0x0000ad98 lw t9, -0x77ac(gp)            |         t9 = sym.imp.remove_error_table;
    0x0000ad9c jalr t9                       |         t9 ();
    0x0000ada0 nop                           |         
    0x0000ada4 lw gp, 0x30(sp)               |         gp = *(var_30h);
    0x0000ada8 lw a0, -0x7fc4(gp)            |         a0 = *(gp);
    0x0000adac lw t9, -0x77ac(gp)            |         t9 = sym.imp.remove_error_table;
    0x0000adb0 jalr t9                       |         t9 ();
    0x0000adb4 nop                           |         
    0x0000adb8 lw v0, 0x74(sp)               |         v0 = *(var_74h);
    0x0000adbc lw a0, 0x324(sp)              |         a0 = *(var_324h);
    0x0000adc0 lw gp, 0x30(sp)               |         gp = *(var_30h);
    0x0000adc4 lw v1, (v0)                   |         v1 = *(v0);
    0x0000adc8 lw v0, 0x68(sp)               |         v0 = *(var_68h);
                                             |         if (a0 != v1) {
    0x0000adcc bne a0, v1, 0xbd1c            |             goto label_187;
                                             |         }
    0x0000add0 lw ra, 0x34c(sp)              |         ra = *(var_34ch);
    0x0000add4 lw fp, 0x348(sp)              |         fp = *(var_348h);
    0x0000add8 lw s7, 0x344(sp)              |         s7 = *(var_344h);
    0x0000addc lw s6, 0x340(sp)              |         s6 = *(var_340h);
    0x0000ade0 lw s5, 0x33c(sp)              |         s5 = *(var_33ch);
    0x0000ade4 lw s4, 0x338(sp)              |         s4 = *(var_338h);
    0x0000ade8 lw s3, 0x334(sp)              |         s3 = *(var_334h);
    0x0000adec lw s2, 0x330(sp)              |         s2 = *(var_330h);
    0x0000adf0 lw s1, 0x32c(sp)              |         s1 = *(var_32ch);
    0x0000adf4 lw s0, 0x328(sp)              |         s0 = *(var_328h);
    0x0000adf8 addiu sp, sp, 0x350           |         
    0x0000adfc jr ra                         |         return v0;
                                             | label_169:
    0x0000ae30 lw t9, -0x79bc(gp)            |         t9 = sym.imp.malloc;
    0x0000ae34 lw a0, 0x14(s2)               |         a0 = *((s2 + 5));
    0x0000ae38 addiu s4, s2, 0x98            |         s4 = s2 + 0x98;
    0x0000ae3c jalr t9                       |         t9 ();
    0x0000ae40 sw v0, 0xa4(sp)               |         *(var_a4h) = v0;
    0x0000ae44 lw gp, 0x30(sp)               |         gp = *(var_30h);
                                             |         if (v0 == 0) {
    0x0000ae48 beqz v0, 0xb6a0               |             goto label_188;
                                             |         }
    0x0000ae4c swl v0, 0x9b(s2)              |         __asm ("swl v0, 0x9b(s2)");
    0x0000ae50 swr v0, (s4)                  |         __asm ("swr v0, (s4)");
    0x0000ae54 lw v0, 0x98(s2)               |         v0 = *((s2 + 38));
    0x0000ae58 b 0xa388                      |         goto label_46;
                                             | label_149:
    0x0000ae5c lw a2, -0x7fd0(gp)            |         a2 = *(gp);
    0x0000ae60 lw a1, -0x7fd0(gp)            |         a1 = *(gp);
    0x0000ae64 lw t9, -0x7f68(gp)            |         t9 = sym.log_out;
    0x0000ae68 lw a0, 0x98(sp)               |         a0 = *(var_98h);
                                             |         /* str.Possibly_non_existent_device__n */
    0x0000ae6c addiu a2, a2, 0x6000          |         a2 += 0x6000;
                                             |         /* esilref: '&s' */
    0x0000ae70 addiu a1, a1, 0x62f4          |         a1 += 0x62f4;
    0x0000ae74 bal 0x29b80                   |         sym_log_out ();
    0x0000ae78 lw gp, 0x30(sp)               |         gp = *(var_30h);
    0x0000ae7c b 0x96f0                      |         goto label_37;
                                             | label_100:
    0x0000ae94 lw a1, -0x7fd0(gp)            |         a1 = *(gp);
    0x0000ae98 move a0, s7                   |         a0 = s7;
                                             |         /* str.Warning____s_is_in_use._n */
    0x0000ae9c addiu a1, a1, 0x5c00          |         a1 += 0x5c00;
    0x0000aea0 bal 0x29b80                   |         sym_log_out ();
    0x0000aea4 lw gp, 0x30(sp)               |         gp = *(var_30h);
    0x0000aea8 b 0x8b60                      |         goto label_28;
                                             | label_172:
    0x0000aeac ori a1, a1, 0xb78e            |         a1 |= 0xb78e;
                                             | label_53:
    0x0000aeb0 lw a3, -0x7fd0(gp)            |         a3 = *(gp);
    0x0000aeb4 lw a2, -0x7fd0(gp)            |         a2 = *(gp);
    0x0000aeb8 lw t9, -0x7914(gp)            |         t9 = sym.imp.com_err;
    0x0000aebc lw a0, 4(s0)                  |         a0 = *((s0 + 1));
                                             |         /* str.while_checking_MMP_block */
    0x0000aec0 addiu a3, a3, 0x6144          |         a3 += 0x6144;
                                             |         /* esilref: '&s' */
    0x0000aec4 addiu a2, a2, 0x62f4          |         a2 += 0x62f4;
    0x0000aec8 jalr t9                       |         t9 ();
    0x0000aecc lw gp, 0x30(sp)               |         gp = *(var_30h);
    0x0000aed0 lw a2, 0xc(s0)                |         a2 = *((s0 + 3));
    0x0000aed4 lw a0, 0x98(s2)               |         a0 = *((s2 + 38));
    0x0000aed8 lw a1, -0x7fd0(gp)            |         a1 = *(gp);
    0x0000aedc lw t9, -0x7f0c(gp)            |         t9 = sym.dump_mmp_msg;
                                             |         /* str.If_you_are_sure_the_filesystem_is_not_in_use_on_any_node__run:_ntune2fs__f__E_clear_mmp__s_n */
    0x0000aee0 addiu a1, a1, 0x6160          |         a1 += 0x6160;
    0x0000aee4 jalr t9                       |         t9 ();
    0x0000aee8 lw gp, 0x30(sp)               |         gp = *(var_30h);
    0x0000aeec b 0xaadc                      |         goto label_47;
                                             | label_160:
    0x0000aef0 lw s3, -0x7fd0(gp)            |         s3 = *(gp);
                                             |         /* str._contains_a_file_system_with_errors */
    0x0000aef4 addiu s3, s3, 0x5648          |         s3 += 0x5648;
    0x0000aef8 lw s5, -0x7fd0(gp)            |         s5 = *(gp);
    0x0000aefc lw t9, -0x7f68(gp)            |         t9 = sym.log_out;
    0x0000af00 lw a2, 0xc(fp)                |         a2 = *(arg_ch);
                                             |         /* esilref: '&s' */
    0x0000af04 addiu a1, s5, 0x62f4          |         a1 = s5 + 0x62f4;
    0x0000af08 move a0, fp                   |         a0 = fp;
    0x0000af0c bal 0x29b80                   |         sym_log_out ();
    0x0000af10 lw gp, 0x30(sp)               |         gp = *(var_30h);
    0x0000af14 move a2, s2                   |         a2 = s2;
    0x0000af18 move a1, s3                   |         a1 = s3;
    0x0000af1c lw t9, -0x7f68(gp)            |         t9 = sym.log_out;
    0x0000af20 move a0, fp                   |         a0 = fp;
    0x0000af24 bal 0x29b80                   |         sym_log_out ();
    0x0000af28 lw gp, 0x30(sp)               |         gp = *(var_30h);
                                             |         /* esilref: '&s' */
    0x0000af2c addiu a1, s5, 0x62f4          |         a1 = s5 + 0x62f4;
    0x0000af30 move a0, fp                   |         a0 = fp;
    0x0000af34 lw a2, -0x7fd0(gp)            |         a2 = *(gp);
    0x0000af38 lw t9, -0x7f68(gp)            |         t9 = sym.log_out;
                                             |         /* str.__check_forced._n */
    0x0000af3c addiu a2, a2, 0x642c          |         a2 += 0x642c;
    0x0000af40 bal 0x29b80                   |         sym_log_out ();
    0x0000af44 lw gp, 0x30(sp)               |         gp = *(var_30h);
    0x0000af48 b 0x9444                      |         goto label_15;
                                             | label_109:
    0x0000af4c lw t9, -0x7814(gp)            |         t9 = sym.imp.free;
    0x0000af50 move a0, s2                   |         a0 = s2;
    0x0000af54 jalr t9                       |         t9 ();
    0x0000af58 addiu s3, zero, 0xc           |         s3 = 0xc;
    0x0000af5c lw gp, 0x30(sp)               |         gp = *(var_30h);
    0x0000af60 b 0x8e28                      |         goto label_42;
                                             | label_183:
    0x0000af88 lw a1, -0x7fd0(gp)            |         a1 = *(gp);
    0x0000af8c lw t9, -0x7f68(gp)            |         t9 = sym.log_out;
    0x0000af90 lw a2, 0xc(s7)                |         a2 = *((s7 + 3));
    0x0000af94 move a0, s7                   |         a0 = s7;
                                             |         /* str._n_s:__WARNING:_Filesystem_still_has_errors__n_n */
    0x0000af98 addiu a1, a1, 0x6668          |         a1 += 0x6668;
    0x0000af9c bal 0x29b80                   |         sym_log_out ();
    0x0000afa0 lw v1, 0x68(sp)               |         v1 = *(var_68h);
    0x0000afa4 addiu v0, zero, -2            |         v0 = -2;
    0x0000afa8 and v0, v1, v0                |         v0 = v1 & v0;
    0x0000afac ori v0, v0, 4                 |         v0 |= 4;
    0x0000afb0 lw gp, 0x30(sp)               |         gp = *(var_30h);
    0x0000afb4 sw v0, 0x68(sp)               |         *(var_68h) = v0;
    0x0000afb8 lw s7, 0x98(sp)               |         s7 = *(var_98h);
    0x0000afbc bnez s1, 0xaca4               |         
                                             |     } while (s1 != 0);
    0x0000afc0 lw s1, (s7)                   |     s1 = *(s7);
                                             | label_184:
    0x0000afc4 lw v0, 0x230(s7)              |     v0 = *(s7);
    0x0000afc8 lw v1, 0x250(s7)              |     v1 = *(s7);
    0x0000afcc sw v0, 0x58(sp)               |     *(var_58h) = v0;
    0x0000afd0 lw v0, 0x10(s1)               |     v0 = *((s1 + 4));
    0x0000afd4 sw v1, 0x5c(sp)               |     *(var_5ch) = v1;
    0x0000afd8 move a0, v0                   |     a0 = v0;
    0x0000afdc lw v1, (v0)                   |     v1 = *(v0);
    0x0000afe0 lw s0, 0x10(v0)               |     s0 = *((v0 + 4));
    0x0000afe4 lw v0, 0x240(s7)              |     v0 = *(s7);
    0x0000afe8 lw t9, -0x7994(gp)            |     t9 = sym.imp.ext2fs_blocks_count;
    0x0000afec sw v1, 0x44(sp)               |     *(var_44h) = v1;
    0x0000aff0 sw v0, 0x60(sp)               |     *(var_60h) = v0;
    0x0000aff4 subu s0, v1, s0               |     __asm ("subu s0, v1, s0");
    0x0000aff8 jalr t9                       |     t9 ();
    0x0000affc lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0000b000 lw a0, 0x10(s1)               |     a0 = *((s1 + 4));
    0x0000b004 sw v0, 0x48(sp)               |     *(var_48h) = v0;
    0x0000b008 lw t9, -0x7994(gp)            |     t9 = sym.imp.ext2fs_blocks_count;
    0x0000b00c sw v1, 0x4c(sp)               |     *(var_4ch) = v1;
    0x0000b010 jalr t9                       |     t9 ();
    0x0000b014 lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0000b018 lw a0, 0x10(s1)               |     a0 = *((s1 + 4));
    0x0000b01c move s3, v1                   |     s3 = v1;
    0x0000b020 lw t9, -0x7cac(gp)            |     t9 = sym.imp.ext2fs_free_blocks_count;
    0x0000b024 move s1, v0                   |     s1 = v0;
    0x0000b028 jalr t9                       |     t9 ();
    0x0000b02c subu s2, s1, v0               |     __asm ("subu s2, s1, v0");
    0x0000b030 sltu s1, s1, s2               |     s1 = (s1 < s2) ? 1 : 0;
    0x0000b034 subu s3, s3, v1               |     __asm ("subu s3, s3, v1");
    0x0000b038 subu v0, s3, s1               |     __asm ("subu v0, s3, s1");
    0x0000b03c lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0000b040 sw v0, 0x40(sp)               |     *(var_40h) = v0;
                                             |     if (s0 == 0) {
    0x0000b044 beqz s0, 0xb6cc               |         goto label_189;
                                             |     }
    0x0000b048 lw s6, 0x268(s7)              |     s6 = *((s7 + 154));
    0x0000b04c lw s3, 0x26c(s7)              |     s3 = *((s7 + 155));
    0x0000b050 addiu v1, zero, 0x2710        |     v1 = 0x2710;
    0x0000b054 addu v0, s6, s3               |     v0 = s6 + s3;
    0x0000b058 mul s6, s6, v1                |     __asm ("mul s6, s6, v1");
    0x0000b05c mul s3, s3, v1                |     __asm ("mul s3, s3, v1");
    0x0000b060 mul v0, v0, v1                |     __asm ("mul v0, v0, v1");
    0x0000b064 addiu a0, zero, 0xa           |     a0 = 0xa;
    0x0000b068 divu zero, s6, s0             |     __asm ("divu zero, s6, s0");
    0x0000b06c teq s0, zero, 7               |     __asm ("teq s0, zero, 7");
    0x0000b070 mflo s6                       |     __asm ("mflo s6");
    0x0000b074 divu zero, s3, s0             |     __asm ("divu zero, s3, s0");
    0x0000b078 teq s0, zero, 7               |     __asm ("teq s0, zero, 7");
    0x0000b07c addiu s6, s6, 5               |     s6 += 5;
    0x0000b080 mflo s3                       |     __asm ("mflo s3");
    0x0000b084 divu zero, v0, s0             |     __asm ("divu zero, v0, s0");
    0x0000b088 teq s0, zero, 7               |     __asm ("teq s0, zero, 7");
    0x0000b08c addiu s3, s3, 5               |     s3 += 5;
    0x0000b090 mflo v0                       |     __asm ("mflo v0");
    0x0000b094 div zero, s6, a0              |     __asm ("div zero, s6, a0");
    0x0000b098 teq a0, zero, 7               |     __asm ("teq a0, zero, 7");
    0x0000b09c addiu v0, v0, 5               |     v0 += 5;
    0x0000b0a0 mflo v1                       |     __asm ("mflo v1");
    0x0000b0a4 div zero, s3, a0              |     __asm ("div zero, s3, a0");
    0x0000b0a8 teq a0, zero, 7               |     __asm ("teq a0, zero, 7");
    0x0000b0ac sw v1, 0x50(sp)               |     *(var_50h) = v1;
    0x0000b0b0 mflo v1                       |     __asm ("mflo v1");
    0x0000b0b4 div zero, v0, a0              |     __asm ("div zero, v0, a0");
    0x0000b0b8 teq a0, zero, 7               |     __asm ("teq a0, zero, 7");
    0x0000b0bc sw v1, 0x54(sp)               |     *(var_54h) = v1;
    0x0000b0c0 mflo v0                       |     __asm ("mflo v0");
                                             | label_52:
    0x0000b0c4 lw s1, -0x7fc8(gp)            |     s1 = *((gp - 8178));
    0x0000b0c8 lw v1, 0x279c(s1)             |     v1 = *((s1 + 2535));
    0x0000b0cc lw a2, -0x7fd0(gp)            |     a2 = *(gp);
                                             |     if (v1 == 0) {
    0x0000b0d0 beqz v1, 0xb958               |         void (*0xb958)() ();
                                             |     }
                                             | label_81:
    0x0000b114 addiu v0, zero, 1             |     v0 = 1;
    0x0000b118 lw t3, -0x7fd0(gp)            |     t3 = *(gp);
                                             |     if (s0 == v0) {
    0x0000b11c beq s0, v0, 0xb950            |         goto label_190;
                                             |     }
    0x0000b120 lw t3, -0x7fd0(gp)            |     t3 = *(gp);
                                             |     /* str._n_12u_inodes_used___2.2f____out_of__u__n */
    0x0000b124 addiu t3, t3, 0x5770          |     t3 += 0x5770;
                                             | label_76:
    0x0000b128 lw s3, 0x44(sp)               |     s3 = *(var_44h);
    0x0000b12c lw t9, -0x7f00(gp)            |     t9 = *(gp);
    0x0000b130 sw t3, 0x64(sp)               |     *(var_64h) = t3;
    0x0000b134 move a0, s0                   |     a0 = s0;
    0x0000b138 lw s1, -0x7fd0(gp)            |     s1 = *(gp);
    0x0000b13c sw s3, 0x18(sp)               |     *(var_18h) = s3;
    0x0000b140 jalr t9                       |     t9 ();
    0x0000b144 lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0000b148 lw a2, 0x69c8(s1)             |     a2 = *((s1 + 6770));
    0x0000b14c lw a3, 0x69cc(s1)             |     a3 = *((s1 + 6771));
    0x0000b150 lw t9, -0x7efc(gp)            |     t9 = *(gp);
    0x0000b154 move a1, v1                   |     a1 = v1;
    0x0000b158 move a0, v0                   |     a0 = v0;
    0x0000b15c jalr t9                       |     t9 ();
    0x0000b160 lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0000b164 move a0, s3                   |     a0 = s3;
    0x0000b168 sw v0, 0x38(sp)               |     *(var_38h) = v0;
    0x0000b16c lw t9, -0x7f00(gp)            |     t9 = *(gp);
    0x0000b170 sw v1, 0x3c(sp)               |     *(var_3ch) = v1;
    0x0000b174 jalr t9                       |     t9 ();
    0x0000b178 lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0000b17c lw t0, 0x38(sp)               |     t0 = *(var_38h);
    0x0000b180 lw t1, 0x3c(sp)               |     t1 = *(var_3ch);
    0x0000b184 lw t9, -0x7ef8(gp)            |     t9 = *(gp);
    0x0000b188 move a0, t0                   |     a0 = t0;
    0x0000b18c move a1, t1                   |     a1 = t1;
    0x0000b190 move a2, v0                   |     a2 = v0;
    0x0000b194 move a3, v1                   |     a3 = v1;
    0x0000b198 jalr t9                       |     t9 ();
    0x0000b19c lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0000b1a0 lw t3, 0x64(sp)               |     t3 = *(var_64h);
    0x0000b1a4 sw v0, 0x10(sp)               |     *(var_10h) = v0;
    0x0000b1a8 lw t9, -0x7f68(gp)            |     t9 = sym.log_out;
    0x0000b1ac move a2, s0                   |     a2 = s0;
    0x0000b1b0 sw v1, 0x14(sp)               |     *(var_14h) = v1;
    0x0000b1b4 move a1, t3                   |     a1 = t3;
    0x0000b1b8 move a0, s7                   |     a0 = s7;
    0x0000b1bc bal 0x29b80                   |     sym_log_out ();
    0x0000b1c0 lw a2, 0x268(s7)              |     a2 = *((s7 + 154));
    0x0000b1c4 addiu v0, zero, 1             |     v0 = 1;
    0x0000b1c8 lw gp, 0x30(sp)               |     gp = *(var_30h);
                                             |     if (a2 == v0) {
    0x0000b1cc beq a2, v0, 0xb944            |         goto label_191;
                                             |     }
    0x0000b1d0 lw a1, -0x7fd0(gp)            |     a1 = *(gp);
                                             |     /* str._12u_non_contiguous_files___0d._d____n */
    0x0000b1d4 addiu a1, a1, 0x57c0          |     a1 += 0x57c0;
                                             | label_75:
    0x0000b1d8 lw v0, 0x50(sp)               |     v0 = *(var_50h);
    0x0000b1dc addiu a3, zero, 0xa           |     a3 = 0xa;
    0x0000b1e0 div zero, v0, a3              |     __asm ("div zero, v0, a3");
    0x0000b1e4 teq a3, zero, 7               |     __asm ("teq a3, zero, 7");
    0x0000b1e8 lw t9, -0x7f68(gp)            |     t9 = sym.log_out;
    0x0000b1ec move a0, s7                   |     a0 = s7;
    0x0000b1f0 mfhi s6                       |     __asm ("mfhi s6");
    0x0000b1f4 mflo a3                       |     __asm ("mflo a3");
    0x0000b1f8 sw s6, 0x10(sp)               |     *(var_10h) = s6;
    0x0000b1fc bal 0x29b80                   |     sym_log_out ();
    0x0000b200 lw a2, 0x26c(s7)              |     a2 = *((s7 + 155));
    0x0000b204 addiu v0, zero, 1             |     v0 = 1;
    0x0000b208 lw gp, 0x30(sp)               |     gp = *(var_30h);
                                             |     if (a2 == v0) {
    0x0000b20c beq a2, v0, 0xb938            |         goto label_192;
                                             |     }
    0x0000b210 lw a1, -0x7fd0(gp)            |     a1 = *(gp);
                                             |     /* str._12u_non_contiguous_directories___0d._d____n */
    0x0000b214 addiu a1, a1, 0x5814          |     a1 += 0x5814;
                                             | label_74:
    0x0000b218 lw v0, 0x54(sp)               |     v0 = *(var_54h);
    0x0000b21c addiu a3, zero, 0xa           |     a3 = 0xa;
    0x0000b220 div zero, v0, a3              |     __asm ("div zero, v0, a3");
    0x0000b224 teq a3, zero, 7               |     __asm ("teq a3, zero, 7");
    0x0000b228 lw t9, -0x7f68(gp)            |     t9 = sym.log_out;
    0x0000b22c move a0, s7                   |     a0 = s7;
    0x0000b230 addiu s0, zero, 4             |     s0 = 4;
    0x0000b234 mfhi s3                       |     __asm ("mfhi s3");
    0x0000b238 mflo a3                       |     __asm ("mflo a3");
    0x0000b23c sw s3, 0x10(sp)               |     *(var_10h) = s3;
    0x0000b240 bal 0x29b80                   |     sym_log_out ();
    0x0000b244 lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0000b248 lw v0, 0x264(s7)              |     v0 = *((s7 + 153));
    0x0000b24c lw a3, 0x260(s7)              |     a3 = *((s7 + 152));
    0x0000b250 lw a1, -0x7fd0(gp)            |     a1 = *(gp);
    0x0000b254 lw t9, -0x7f68(gp)            |     t9 = sym.log_out;
    0x0000b258 lw a2, 0x25c(s7)              |     a2 = *(s7);
                                             |     /* str.______________of_inodes_with_ind_dind_tind_blocks:__u__u__u_n */
    0x0000b25c addiu a1, a1, 0x6730          |     a1 += 0x6730;
    0x0000b260 sw v0, 0x10(sp)               |     *(var_10h) = v0;
    0x0000b264 move a0, s7                   |     a0 = s7;
    0x0000b268 bal 0x29b80                   |     sym_log_out ();
    0x0000b26c lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0000b270 addiu v0, s7, 0x28c           |     v0 = s7 + aav.0x0000028c;
    0x0000b274 addiu v1, zero, -1            |     v1 = -1;
                                             |     do {
    0x0000b278 lw a0, (v0)                   |         a0 = *(v0);
    0x0000b27c lw a2, -0x7fd0(gp)            |         a2 = *(gp);
                                             |         if (a0 != 0) {
    0x0000b280 bnez a0, 0xb798               |             goto label_193;
                                             |         }
    0x0000b284 addiu s0, s0, -1              |         s0 += -1;
    0x0000b288 addiu v0, v0, -4              |         v0 += -4;
    0x0000b28c bne s0, v1, 0xb278            |         
                                             |     } while (s0 != v1);
                                             | label_60:
    0x0000b290 addiu v0, zero, 1             |     v0 = 1;
    0x0000b294 lw v0, 0x40(sp)               |     v0 = *(var_40h);
                                             |     if (s2 == v0) {
    0x0000b298 beq s2, v0, 0xb528            |         goto label_194;
                                             |     }
    0x0000b29c lw s0, -0x7fd0(gp)            |     s0 = *(gp);
                                             |     do {
                                             |         /* str._12llu_blocks_used___2.2f____out_of__llu__n */
    0x0000b2a0 addiu s0, s0, 0x586c          |         s0 += 0x586c;
                                             | label_49:
    0x0000b2a4 lw s4, 0x48(sp)               |         s4 = *(var_48h);
    0x0000b2a8 lw s5, 0x4c(sp)               |         s5 = *(var_4ch);
    0x0000b2ac lw s3, 0x40(sp)               |         s3 = *(var_40h);
    0x0000b2b0 lw t9, -0x7ef4(gp)            |         t9 = *(gp);
    0x0000b2b4 move a0, s2                   |         a0 = s2;
    0x0000b2b8 move a1, s3                   |         a1 = s3;
    0x0000b2bc sw s4, 0x18(sp)               |         *(var_18h) = s4;
    0x0000b2c0 sw s5, 0x1c(sp)               |         *(var_1ch) = s5;
    0x0000b2c4 jalr t9                       |         t9 ();
    0x0000b2c8 lw gp, 0x30(sp)               |         gp = *(var_30h);
    0x0000b2cc lw a2, 0x69c8(s1)             |         a2 = *((s1 + 6770));
    0x0000b2d0 lw a3, 0x69cc(s1)             |         a3 = *((s1 + 6771));
    0x0000b2d4 lw t9, -0x7efc(gp)            |         t9 = *(gp);
    0x0000b2d8 move a0, v0                   |         a0 = v0;
    0x0000b2dc move a1, v1                   |         a1 = v1;
    0x0000b2e0 jalr t9                       |         t9 ();
    0x0000b2e4 lw gp, 0x30(sp)               |         gp = *(var_30h);
    0x0000b2e8 move a0, s4                   |         a0 = s4;
    0x0000b2ec move a1, s5                   |         a1 = s5;
    0x0000b2f0 lw t9, -0x7ef4(gp)            |         t9 = *(gp);
    0x0000b2f4 move s4, v0                   |         s4 = v0;
    0x0000b2f8 move s5, v1                   |         s5 = v1;
    0x0000b2fc jalr t9                       |         t9 ();
    0x0000b300 lw gp, 0x30(sp)               |         gp = *(var_30h);
    0x0000b304 move a2, v0                   |         a2 = v0;
    0x0000b308 move a3, v1                   |         a3 = v1;
    0x0000b30c lw t9, -0x7ef8(gp)            |         t9 = *(gp);
    0x0000b310 move a0, s4                   |         a0 = s4;
    0x0000b314 move a1, s5                   |         a1 = s5;
    0x0000b318 jalr t9                       |         t9 ();
    0x0000b31c lw gp, 0x30(sp)               |         gp = *(var_30h);
    0x0000b320 sw v0, 0x10(sp)               |         *(var_10h) = v0;
    0x0000b324 move a2, s2                   |         a2 = s2;
    0x0000b328 lw t9, -0x7f68(gp)            |         t9 = sym.log_out;
    0x0000b32c sw v1, 0x14(sp)               |         *(var_14h) = v1;
    0x0000b330 move a3, s3                   |         a3 = s3;
    0x0000b334 move a1, s0                   |         a1 = s0;
    0x0000b338 move a0, s7                   |         a0 = s7;
    0x0000b33c bal 0x29b80                   |         sym_log_out ();
    0x0000b340 lw a2, 0x254(s7)              |         a2 = *(s7);
    0x0000b344 addiu v0, zero, 1             |         v0 = 1;
    0x0000b348 lw gp, 0x30(sp)               |         gp = *(var_30h);
                                             |         if (a2 == v0) {
    0x0000b34c beq a2, v0, 0xb92c            |             goto label_195;
                                             |         }
    0x0000b350 lw a1, -0x7fd0(gp)            |         a1 = *(gp);
                                             |         /* str._12u_bad_blocks_n */
    0x0000b354 addiu a1, a1, 0x58a8          |         a1 += 0x58a8;
                                             | label_73:
    0x0000b358 lw t9, -0x7f68(gp)            |         t9 = sym.log_out;
    0x0000b35c move a0, s7                   |         a0 = s7;
    0x0000b360 bal 0x29b80                   |         sym_log_out ();
    0x0000b364 lw a2, 0x270(s7)              |         a2 = *(s7);
    0x0000b368 addiu v0, zero, 1             |         v0 = 1;
    0x0000b36c lw gp, 0x30(sp)               |         gp = *(var_30h);
                                             |         if (a2 == v0) {
    0x0000b370 beq a2, v0, 0xb920            |             goto label_196;
                                             |         }
    0x0000b374 lw a1, -0x7fd0(gp)            |         a1 = *(gp);
                                             |         /* str._12u_large_files_n */
    0x0000b378 addiu a1, a1, 0x58d0          |         a1 += 0x58d0;
                                             | label_72:
    0x0000b37c lw t9, -0x7f68(gp)            |         t9 = sym.log_out;
    0x0000b380 move a0, s7                   |         a0 = s7;
    0x0000b384 bal 0x29b80                   |         sym_log_out ();
    0x0000b388 lw a2, 0x234(s7)              |         a2 = *(s7);
    0x0000b38c addiu v0, zero, 1             |         v0 = 1;
    0x0000b390 lw gp, 0x30(sp)               |         gp = *(var_30h);
                                             |         if (a2 == v0) {
    0x0000b394 beq a2, v0, 0xb914            |             goto label_197;
                                             |         }
    0x0000b398 lw a1, -0x7fd0(gp)            |         a1 = *(gp);
                                             |         /* str._n_12u_regular_files_n */
    0x0000b39c addiu a1, a1, 0x58f8          |         a1 += 0x58f8;
                                             | label_71:
    0x0000b3a0 lw t9, -0x7f68(gp)            |         t9 = sym.log_out;
    0x0000b3a4 move a0, s7                   |         a0 = s7;
    0x0000b3a8 bal 0x29b80                   |         sym_log_out ();
    0x0000b3ac lw a2, 0x230(s7)              |         a2 = *(s7);
    0x0000b3b0 addiu v0, zero, 1             |         v0 = 1;
    0x0000b3b4 lw gp, 0x30(sp)               |         gp = *(var_30h);
                                             |         if (a2 == v0) {
    0x0000b3b8 beq a2, v0, 0xb908            |             goto label_198;
                                             |         }
    0x0000b3bc lw a1, -0x7fd0(gp)            |         a1 = *(gp);
                                             |         /* str._12u_directories_n */
    0x0000b3c0 addiu a1, a1, 0x5920          |         a1 += 0x5920;
                                             | label_70:
    0x0000b3c4 lw t9, -0x7f68(gp)            |         t9 = sym.log_out;
    0x0000b3c8 move a0, s7                   |         a0 = s7;
    0x0000b3cc bal 0x29b80                   |         sym_log_out ();
    0x0000b3d0 lw a2, 0x23c(s7)              |         a2 = *(s7);
    0x0000b3d4 addiu v0, zero, 1             |         v0 = 1;
    0x0000b3d8 lw gp, 0x30(sp)               |         gp = *(var_30h);
                                             |         if (a2 == v0) {
    0x0000b3dc beq a2, v0, 0xb8fc            |             goto label_199;
                                             |         }
    0x0000b3e0 lw a1, -0x7fd0(gp)            |         a1 = *(gp);
                                             |         /* str._12u_character_device_files_n */
    0x0000b3e4 addiu a1, a1, 0x5950          |         a1 += 0x5950;
                                             | label_69:
    0x0000b3e8 lw t9, -0x7f68(gp)            |         t9 = sym.log_out;
    0x0000b3ec move a0, s7                   |         a0 = s7;
    0x0000b3f0 bal 0x29b80                   |         sym_log_out ();
    0x0000b3f4 lw a2, 0x238(s7)              |         a2 = *(s7);
    0x0000b3f8 addiu v0, zero, 1             |         v0 = 1;
    0x0000b3fc lw gp, 0x30(sp)               |         gp = *(var_30h);
                                             |         if (a2 == v0) {
    0x0000b400 beq a2, v0, 0xb8f0            |             goto label_200;
                                             |         }
    0x0000b404 lw a1, -0x7fd0(gp)            |         a1 = *(gp);
                                             |         /* str._12u_block_device_files_n */
    0x0000b408 addiu a1, a1, 0x5988          |         a1 += 0x5988;
                                             | label_68:
    0x0000b40c lw t9, -0x7f68(gp)            |         t9 = sym.log_out;
    0x0000b410 move a0, s7                   |         a0 = s7;
    0x0000b414 bal 0x29b80                   |         sym_log_out ();
    0x0000b418 lw a2, 0x24c(s7)              |         a2 = *(s7);
    0x0000b41c addiu v0, zero, 1             |         v0 = 1;
    0x0000b420 lw gp, 0x30(sp)               |         gp = *(var_30h);
                                             |         if (a2 == v0) {
    0x0000b424 beq a2, v0, 0xb8e4            |             goto label_201;
                                             |         }
    0x0000b428 lw a1, -0x7fd0(gp)            |         a1 = *(gp);
                                             |         /* str._12u_fifos_n */
    0x0000b42c addiu a1, a1, 0x59b0          |         a1 += 0x59b0;
                                             | label_67:
    0x0000b430 lw t9, -0x7f68(gp)            |         t9 = sym.log_out;
    0x0000b434 lw v0, 0x58(sp)               |         v0 = *(var_58h);
    0x0000b438 move a0, s7                   |         a0 = s7;
    0x0000b43c sll s0, v0, 1                 |         s0 = v0 << 1;
    0x0000b440 bal 0x29b80                   |         sym_log_out ();
    0x0000b444 lw v0, 0x60(sp)               |         v0 = *(var_60h);
    0x0000b448 addiu s0, s0, -1              |         s0 += -1;
    0x0000b44c addiu v0, v0, -1              |         v0 += -1;
    0x0000b450 lw gp, 0x30(sp)               |         gp = *(var_30h);
                                             |         if (v0 == s0) {
    0x0000b454 beq v0, s0, 0xb8d8            |             goto label_202;
                                             |         }
    0x0000b458 lw a1, -0x7fd0(gp)            |         a1 = *(gp);
                                             |         /* str._12u_links_n */
    0x0000b45c addiu a1, a1, 0x59c8          |         a1 += 0x59c8;
                                             | label_66:
    0x0000b460 lw a2, 0x240(s7)              |         a2 = *(s7);
    0x0000b464 lw t9, -0x7f68(gp)            |         t9 = sym.log_out;
    0x0000b468 subu a2, a2, s0               |         __asm ("subu a2, a2, s0");
    0x0000b46c move a0, s7                   |         a0 = s7;
    0x0000b470 bal 0x29b80                   |         sym_log_out ();
    0x0000b474 lw a2, 0x244(s7)              |         a2 = *(s7);
    0x0000b478 addiu v0, zero, 1             |         v0 = 1;
    0x0000b47c lw gp, 0x30(sp)               |         gp = *(var_30h);
                                             |         if (a2 == v0) {
    0x0000b480 beq a2, v0, 0xb8cc            |             goto label_203;
                                             |         }
    0x0000b484 lw a1, -0x7fd0(gp)            |         a1 = *(gp);
                                             |         /* str._12u_symbolic_links */
    0x0000b488 addiu a1, a1, 0x59e8          |         a1 += 0x59e8;
                                             | label_65:
    0x0000b48c lw t9, -0x7f68(gp)            |         t9 = sym.log_out;
    0x0000b490 move a0, s7                   |         a0 = s7;
    0x0000b494 bal 0x29b80                   |         sym_log_out ();
    0x0000b498 lw a2, 0x248(s7)              |         a2 = *(s7);
    0x0000b49c addiu v0, zero, 1             |         v0 = 1;
    0x0000b4a0 lw gp, 0x30(sp)               |         gp = *(var_30h);
                                             |         if (a2 == v0) {
    0x0000b4a4 beq a2, v0, 0xb8c0            |             goto label_204;
                                             |         }
    0x0000b4a8 lw a1, -0x7fd0(gp)            |         a1 = *(gp);
                                             |         /* str.___u_fast_symbolic_links__n */
    0x0000b4ac addiu a1, a1, 0x5a18          |         a1 += 0x5a18;
                                             | label_64:
    0x0000b4b0 lw t9, -0x7f68(gp)            |         t9 = sym.log_out;
    0x0000b4b4 move a0, s7                   |         a0 = s7;
    0x0000b4b8 bal 0x29b80                   |         sym_log_out ();
    0x0000b4bc lw a2, 0x258(s7)              |         a2 = *((s7 + 150));
    0x0000b4c0 addiu v0, zero, 1             |         v0 = 1;
    0x0000b4c4 lw gp, 0x30(sp)               |         gp = *(var_30h);
                                             |         if (a2 == v0) {
    0x0000b4c8 beq a2, v0, 0xb8b4            |             goto label_205;
                                             |         }
    0x0000b4cc lw a1, -0x7fd0(gp)            |         a1 = *(gp);
                                             |         /* str._12u_sockets_n */
    0x0000b4d0 addiu a1, a1, 0x5a44          |         a1 += 0x5a44;
                                             | label_63:
    0x0000b4d4 lw t9, -0x7f68(gp)            |         t9 = sym.log_out;
    0x0000b4d8 move a0, s7                   |         a0 = s7;
    0x0000b4dc bal 0x29b80                   |         sym_log_out ();
    0x0000b4e0 lw gp, 0x30(sp)               |         gp = *(var_30h);
    0x0000b4e4 move a0, s7                   |         a0 = s7;
    0x0000b4e8 lw a1, -0x7fd0(gp)            |         a1 = *(gp);
    0x0000b4ec lw t9, -0x7f68(gp)            |         t9 = sym.log_out;
                                             |         /* str._____________n */
    0x0000b4f0 addiu a1, a1, 0x6798          |         a1 += 0x6798;
    0x0000b4f4 bal 0x29b80                   |         sym_log_out ();
    0x0000b4f8 lw v0, 0x5c(sp)               |         v0 = *(var_5ch);
    0x0000b4fc subu a2, v0, s0               |         __asm ("subu a2, v0, s0");
    0x0000b500 addiu v0, zero, 1             |         v0 = 1;
    0x0000b504 lw gp, 0x30(sp)               |         gp = *(var_30h);
                                             |         if (a2 == v0) {
    0x0000b508 beq a2, v0, 0xb8a8            |             goto label_206;
                                             |         }
    0x0000b50c lw a1, -0x7fd0(gp)            |         a1 = *(gp);
                                             |         /* str._12u_files_n */
    0x0000b510 addiu a1, a1, 0x5a60          |         a1 += 0x5a60;
                                             | label_62:
    0x0000b514 lw t9, -0x7f68(gp)            |         t9 = sym.log_out;
    0x0000b518 move a0, s7                   |         a0 = s7;
    0x0000b51c bal 0x29b80                   |         sym_log_out ();
    0x0000b520 lw gp, 0x30(sp)               |         gp = *(var_30h);
    0x0000b524 b 0xad14                      |         goto label_48;
                                             | label_194:
    0x0000b528 lw s0, -0x7fd0(gp)            |         s0 = *(gp);
    0x0000b52c bnel v0, zero, 0xb2a0         |         
                                             |     } while (v0 == 0);
    0x0000b530 lw s0, -0x7fd0(gp)            |     s0 = *(gp);
                                             |     /* str._12llu_block_used___2.2f____out_of__llu__n */
    0x0000b534 addiu s0, s0, 0x5840          |     s0 += 0x5840;
    0x0000b538 b 0xb2a4                      |     goto label_49;
                                             | label_152:
    0x0000b53c lw v0, 0x90(sp)               |     v0 = *(var_90h);
    0x0000b540 lw t9, -0x7b34(gp)            |     t9 = sym.imp.ext2fs_close_free;
                                             |     if (v0 != 0) {
    0x0000b544 beqz v0, 0xb554               |         
    0x0000b548 move a0, s2                   |         a0 = s2;
    0x0000b54c jalr t9                       |         t9 ();
    0x0000b550 lw gp, 0x30(sp)               |         gp = *(var_30h);
                                             |     }
    0x0000b554 lw a0, 0x98(sp)               |     a0 = *(var_98h);
    0x0000b558 lw a1, -0x7fd0(gp)            |     a1 = *(gp);
    0x0000b55c lw t9, -0x7f68(gp)            |     t9 = sym.log_out;
    0x0000b560 lw a2, 4(a0)                  |     a2 = *((a0 + 1));
                                             |     /* str._s:_Trying_to_load_superblock_despite_errors..._n */
    0x0000b564 addiu a1, a1, 0x6070          |     a1 += 0x6070;
    0x0000b568 bal 0x29b80                   |     sym_log_out ();
    0x0000b56c lui v1, 0x80                  |     v1 = 0x800000;
    0x0000b570 or s1, s1, v1                 |     s1 |= v1;
    0x0000b574 lw v1, 0x80(sp)               |     v1 = *(var_80h);
    0x0000b578 addiu v0, zero, -1            |     v0 = -1;
    0x0000b57c lw gp, 0x30(sp)               |     gp = *(var_30h);
                                             |     if (v1 == v0) {
    0x0000b580 beq v1, v0, 0xb758            |         goto label_207;
                                             |     }
    0x0000b584 lw v0, 0x98(sp)               |     v0 = *(var_98h);
                                             | label_56:
    0x0000b588 lw v1, 0x80(sp)               |     v1 = *(var_80h);
    0x0000b58c sw v1, 0x38(v0)               |     *((v0 + 14)) = v1;
    0x0000b590 lw v1, 0x84(sp)               |     v1 = *(var_84h);
    0x0000b594 sw v1, 0x3c(v0)               |     *((v0 + 15)) = v1;
    0x0000b598 b 0x8bfc                      |     goto label_1;
                                             | label_175:
    0x0000b5b0 lw t9, -0x7f5c(gp)            |     t9 = sym.fix_problem;
    0x0000b5b4 move a2, s3                   |     a2 = s3;
    0x0000b5b8 addiu a1, zero, 0x42          |     a1 = 0x42;
    0x0000b5bc move a0, s0                   |     a0 = s0;
    0x0000b5c0 jalr t9                       |     t9 ();
    0x0000b5c4 lw gp, 0x30(sp)               |     gp = *(var_30h);
                                             |     if (v0 == 0) {
    0x0000b5c8 beqz v0, 0xaadc               |         goto label_47;
                                             |     }
    0x0000b5cc lw v0, 8(s2)                  |     v0 = *((s2 + 2));
    0x0000b5d0 lw v1, 0x10(s2)               |     v1 = *((s2 + 4));
    0x0000b5d4 ori v0, v0, 6                 |     v0 |= 6;
    0x0000b5d8 move a0, zero                 |     a0 = 0;
    0x0000b5dc move a1, zero                 |     a1 = 0;
    0x0000b5e0 sw a0, 0x168(v1)              |     *(v1) = a0;
    0x0000b5e4 sw a1, 0x16c(v1)              |     *(v1) = a1;
    0x0000b5e8 sw v0, 8(s2)                  |     *((s2 + 2)) = v0;
    0x0000b5ec b 0xa440                      |     goto label_45;
                                             | label_132:
    0x0000b5f0 lw t9, -0x7f60(gp)            |     t9 = sym.log_err;
    0x0000b5f4 lhu a3, 0x27c(s0)             |     a3 = *((s0 + 318));
    0x0000b5f8 lw a2, 8(fp)                  |     a2 = *(arg_8h);
                                             |     /* str._s_has_unsupported_encoding:__0x_n */
    0x0000b5fc addiu a1, a1, 0x6318          |     a1 += 0x6318;
    0x0000b600 move a0, fp                   |     a0 = fp;
    0x0000b604 bal 0x29c48                   |     sym_log_err ();
    0x0000b608 lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0000b60c b 0x97d4                      |     goto label_50;
                                             | label_180:
    0x0000b650 move a0, s7                   |     a0 = s7;
    0x0000b654 bal 0x2a588                   |     sym_e2fsck_write_bitmaps ();
    0x0000b658 lw v0, 0x90(sp)               |     v0 = *(var_90h);
    0x0000b65c lw v0, 8(v0)                  |     v0 = *((v0 + 2));
    0x0000b660 andi v0, v0, 4                |     v0 &= 4;
    0x0000b664 lw gp, 0x30(sp)               |     gp = *(var_30h);
                                             |     if (v0 != 0) {
    0x0000b668 bnez v0, 0xb9e0               |         goto label_208;
                                             |     }
                                             | label_77:
    0x0000b66c lw v0, 0x98(sp)               |     v0 = *(var_98h);
                                             | label_78:
    0x0000b670 lw v0, (v0)                   |     v0 = *(v0);
    0x0000b674 lw v0, 4(v0)                  |     v0 = *((v0 + 1));
    0x0000b678 move a0, v0                   |     a0 = v0;
    0x0000b67c lw v0, 4(v0)                  |     v0 = *((v0 + 1));
    0x0000b680 lw t9, 0x1c(v0)               |     t9 = *((v0 + 7));
    0x0000b684 jalr t9                       |     t9 ();
    0x0000b688 nop                           |     
    0x0000b68c sw v0, 0xa8(sp)               |     *(var_a8h) = v0;
    0x0000b690 lw gp, 0x30(sp)               |     gp = *(var_30h);
                                             |     if (v0 != 0) {
    0x0000b694 bnez v0, 0xb9bc               |         goto label_209;
                                             |     }
    0x0000b698 lw s7, 0x98(sp)               |     s7 = *(var_98h);
    0x0000b69c b 0xabfc                      |     goto label_51;
                                             | label_188:
    0x0000b6a0 lui a1, 0x7f2b                |     a1 = 0x7f2bb746;
    0x0000b6a4 ori a1, a1, 0xb746            |     
                                             | label_177:
    0x0000b6a8 lw a3, -0x7fd0(gp)            |     a3 = *(gp);
    0x0000b6ac lw a2, -0x7fd0(gp)            |     a2 = *(gp);
    0x0000b6b0 lw t9, -0x7914(gp)            |     t9 = sym.imp.com_err;
    0x0000b6b4 lw a0, 4(s0)                  |     a0 = *((s0 + 1));
                                             |     /* str.while_reading_MMP_block */
    0x0000b6b8 addiu a3, a3, 0x6810          |     a3 += aav.0x00006810;
                                             |     /* esilref: '&s' */
    0x0000b6bc addiu a2, a2, 0x62f4          |     a2 += 0x62f4;
    0x0000b6c0 jalr t9                       |     t9 ();
    0x0000b6c4 lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0000b6c8 b 0xaadc                      |     goto label_47;
                                             | label_189:
    0x0000b6cc move v0, zero                 |     v0 = 0;
    0x0000b6d0 sw zero, 0x54(sp)             |     *(var_54h) = 0;
    0x0000b6d4 sw zero, 0x50(sp)             |     *(var_50h) = 0;
    0x0000b6d8 b 0xb0c4                      |     goto label_52;
                                             | label_171:
    0x0000b708 lui a1, 0x7f2b                |     a1 = 0x7f2bb78c;
    0x0000b70c ori a1, a1, 0xb78c            |     
    0x0000b710 b 0xaeb0                      |     goto label_53;
                                             | label_182:
    0x0000b714 lw t9, -0x7f68(gp)            |     t9 = sym.log_out;
    0x0000b718 lw a2, 0xc(s7)                |     a2 = *((s7 + 3));
    0x0000b71c move a0, s7                   |     a0 = s7;
                                             |     /* str._n_s:__FILE_SYSTEM_WAS_MODIFIED__n */
    0x0000b720 addiu a1, a1, 0x661c          |     a1 += 0x661c;
    0x0000b724 bal 0x29b80                   |     sym_log_out ();
    0x0000b728 lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0000b72c lw s7, 0x98(sp)               |     s7 = *(var_98h);
    0x0000b730 b 0xac30                      |     goto label_54;
                                             | label_176:
    0x0000b734 lw t9, -0x7f5c(gp)            |     t9 = sym.fix_problem;
    0x0000b738 move a2, s3                   |     a2 = s3;
    0x0000b73c addiu a1, zero, 0x43          |     a1 = 0x43;
    0x0000b740 move a0, s0                   |     a0 = s0;
    0x0000b744 jalr t9                       |     t9 ();
    0x0000b748 lw gp, 0x30(sp)               |     gp = *(var_30h);
                                             |     if (v0 == 0) {
    0x0000b74c beqz v0, 0xaadc               |         goto label_47;
                                             |     }
    0x0000b750 lw t9, -0x7b30(gp)            |     t9 = sym.imp.ext2fs_mmp_clear;
    0x0000b754 b 0xaa84                      |     goto label_55;
                                             | label_207:
    0x0000b758 lw v0, 0x84(sp)               |     v0 = *(var_84h);
    0x0000b75c lw v0, 0x98(sp)               |     v0 = *(var_98h);
                                             |     if (v0 == v1) {
    0x0000b760 bnel v0, v1, 0xb588           |         goto label_56;
                                             |     }
    0x0000b764 lw v0, 0x40(sp)               |     v0 = *(var_40h);
    0x0000b768 b 0x8c00                      |     goto label_57;
                                             | label_178:
    0x0000b778 lw t9, -0x7f5c(gp)            |     t9 = sym.fix_problem;
    0x0000b77c lw a0, 0x98(sp)               |     a0 = *(var_98h);
    0x0000b780 lw a2, 0x50(sp)               |     a2 = *(var_50h);
    0x0000b784 lui a1, 6                     |     a1 = 0x60003;
    0x0000b788 addiu a1, a1, 3               |     
    0x0000b78c jalr t9                       |     t9 ();
    0x0000b790 lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0000b794 b 0xaba8                      |     goto label_58;
                                             | label_193:
    0x0000b798 lw a1, -0x7fd0(gp)            |     a1 = *(gp);
    0x0000b79c lw t9, -0x7f68(gp)            |     t9 = sym.log_out;
                                             |     /* str._____________Extent_depth_histogram:_ */
    0x0000b7a0 addiu a2, a2, 0x6770          |     a2 += 0x6770;
                                             |     /* esilref: '&s' */
    0x0000b7a4 addiu a1, a1, 0x62f4          |     a1 += 0x62f4;
    0x0000b7a8 move a0, s7                   |     a0 = s7;
    0x0000b7ac bal 0x29b80                   |     sym_log_out ();
    0x0000b7b0 lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0000b7b4 sw zero, 0x100(sp)            |     *(var_100h) = 0;
    0x0000b7b8 lw s3, -0x7fd0(gp)            |     s3 = *(gp);
    0x0000b7bc lw s6, -0x7b08(gp)            |     s6 = *((gp - 7874));
                                             |     /* esilref: '&u' */
    0x0000b7c0 addiu s3, s3, 0x6c98          |     s3 += 0x6c98;
                                             | label_59:
    0x0000b7c4 lw v0, 0x100(sp)              |     v0 = *(var_100h);
    0x0000b7c8 addiu v0, v0, 0x9e            |     v0 += 0x9e;
                                             |     do {
    0x0000b7cc sll v0, v0, 2                 |         v0 <<= 2;
    0x0000b7d0 addu v0, s7, v0               |         v0 = s7 + v0;
    0x0000b7d4 lw t9, -0x7f68(gp)            |         t9 = sym.log_out;
    0x0000b7d8 lw a2, 4(v0)                  |         a2 = *((v0 + 1));
    0x0000b7dc move a1, s3                   |         a1 = s3;
    0x0000b7e0 move a0, s7                   |         a0 = s7;
    0x0000b7e4 bal 0x29b80                   |         sym_log_out ();
    0x0000b7e8 lw v0, 0x100(sp)              |         v0 = *(var_100h);
    0x0000b7ec lw gp, 0x30(sp)               |         gp = *(var_30h);
    0x0000b7f0 slt v1, v0, s0                |         v1 = (v0 < s0) ? 1 : 0;
    0x0000b7f4 addiu v0, v0, 1               |         v0++;
    0x0000b7f8 sw v0, 0x100(sp)              |         *(var_100h) = v0;
                                             |         if (v1 == 0) {
    0x0000b7fc beqz v1, 0xb820               |             goto label_210;
                                             |         }
    0x0000b800 addiu v0, v0, 0x9e            |         v0 += 0x9e;
    0x0000b804 beqz v0, 0xb7cc               |         
                                             |     } while (v0 == 0);
    0x0000b808 lw t9, -0x7b94(gp)            |     t9 = sym.imp.fputc;
    0x0000b80c lw a1, (s6)                   |     a1 = *(s6);
    0x0000b810 addiu a0, zero, 0x2f          |     a0 = 0x2f;
    0x0000b814 jalr t9                       |     t9 ();
    0x0000b818 lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0000b81c b 0xb7c4                      |     goto label_59;
                                             | label_210:
    0x0000b820 lw a1, -0x7fd0(gp)            |     a1 = *(gp);
    0x0000b824 lw t9, -0x7f68(gp)            |     t9 = sym.log_out;
    0x0000b828 addiu a1, a1, 0x55d4          |     a1 += 0x55d4;
    0x0000b82c move a0, s7                   |     a0 = s7;
    0x0000b830 bal 0x29b80                   |     sym_log_out ();
    0x0000b834 lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0000b838 b 0xb290                      |     goto label_60;
                                             | label_174:
    0x0000b894 lw t9, -0x7814(gp)            |     t9 = sym.imp.free;
    0x0000b898 lw a0, 0x100(sp)              |     a0 = *(var_100h);
    0x0000b89c jalr t9                       |     t9 ();
    0x0000b8a0 lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0000b8a4 b 0xa7ec                      |     goto label_61;
                                             | label_206:
    0x0000b8a8 lw a1, -0x7fd0(gp)            |     a1 = *(gp);
                                             |     /* str._12u_file_n */
    0x0000b8ac addiu a1, a1, 0x5a54          |     a1 += 0x5a54;
    0x0000b8b0 b 0xb514                      |     goto label_62;
                                             | label_205:
    0x0000b8b4 lw a1, -0x7fd0(gp)            |     a1 = *(gp);
                                             |     /* str._12u_socket_n */
    0x0000b8b8 addiu a1, a1, 0x5a34          |     a1 += 0x5a34;
    0x0000b8bc b 0xb4d4                      |     goto label_63;
                                             | label_204:
    0x0000b8c0 lw a1, -0x7fd0(gp)            |     a1 = *(gp);
                                             |     /* str.___u_fast_symbolic_link__n */
    0x0000b8c4 addiu a1, a1, 0x59fc          |     a1 += 0x59fc;
    0x0000b8c8 b 0xb4b0                      |     goto label_64;
                                             | label_203:
    0x0000b8cc lw a1, -0x7fd0(gp)            |     a1 = *(gp);
                                             |     /* str._12u_symbolic_link */
    0x0000b8d0 addiu a1, a1, 0x59d4          |     a1 += 0x59d4;
    0x0000b8d4 b 0xb48c                      |     goto label_65;
                                             | label_202:
    0x0000b8d8 lw a1, -0x7fd0(gp)            |     a1 = *(gp);
                                             |     /* str._12u_link_n */
    0x0000b8dc addiu a1, a1, 0x59bc          |     a1 += 0x59bc;
    0x0000b8e0 b 0xb460                      |     goto label_66;
                                             | label_201:
    0x0000b8e4 lw a1, -0x7fd0(gp)            |     a1 = *(gp);
                                             |     /* str._12u_fifo_n */
    0x0000b8e8 addiu a1, a1, 0x59a4          |     a1 += 0x59a4;
    0x0000b8ec b 0xb430                      |     goto label_67;
                                             | label_200:
    0x0000b8f0 lw a1, -0x7fd0(gp)            |     a1 = *(gp);
                                             |     /* str._12u_block_device_file_n */
    0x0000b8f4 addiu a1, a1, 0x5970          |     a1 += 0x5970;
    0x0000b8f8 b 0xb40c                      |     goto label_68;
                                             | label_199:
    0x0000b8fc lw a1, -0x7fd0(gp)            |     a1 = *(gp);
                                             |     /* str._12u_character_device_file_n */
    0x0000b900 addiu a1, a1, 0x5934          |     a1 += 0x5934;
    0x0000b904 b 0xb3e8                      |     goto label_69;
                                             | label_198:
    0x0000b908 lw a1, -0x7fd0(gp)            |     a1 = *(gp);
                                             |     /* str._12u_directory_n */
    0x0000b90c addiu a1, a1, 0x5910          |     a1 += 0x5910;
    0x0000b910 b 0xb3c4                      |     goto label_70;
                                             | label_197:
    0x0000b914 lw a1, -0x7fd0(gp)            |     a1 = *(gp);
                                             |     /* str._n_12u_regular_file_n */
    0x0000b918 addiu a1, a1, 0x58e4          |     a1 += 0x58e4;
    0x0000b91c b 0xb3a0                      |     goto label_71;
                                             | label_196:
    0x0000b920 lw a1, -0x7fd0(gp)            |     a1 = *(gp);
                                             |     /* str._12u_large_file_n */
    0x0000b924 addiu a1, a1, 0x58bc          |     a1 += 0x58bc;
    0x0000b928 b 0xb37c                      |     goto label_72;
                                             | label_195:
    0x0000b92c lw a1, -0x7fd0(gp)            |     a1 = *(gp);
                                             |     /* str._12u_bad_block_n */
    0x0000b930 addiu a1, a1, 0x5898          |     a1 += 0x5898;
    0x0000b934 b 0xb358                      |     goto label_73;
                                             | label_192:
    0x0000b938 lw a1, -0x7fd0(gp)            |     a1 = *(gp);
                                             |     /* str._12u_non_contiguous_directory___0d._d____n */
    0x0000b93c addiu a1, a1, 0x57e8          |     a1 += 0x57e8;
    0x0000b940 b 0xb218                      |     goto label_74;
                                             | label_191:
    0x0000b944 lw a1, -0x7fd0(gp)            |     a1 = *(gp);
                                             |     /* str._12u_non_contiguous_file___0d._d____n */
    0x0000b948 addiu a1, a1, 0x5798          |     a1 += 0x5798;
    0x0000b94c b 0xb1d8                      |     goto label_75;
                                             |     /* str._n_12u_inode_used___2.2f____out_of__u__n */
                                             | label_190:
    0x0000b950 addiu t3, t3, 0x5748          |     t3 += 0x5748;
    0x0000b954 b 0xb128                      |     goto label_76;
                                             | label_209:
    0x0000b9bc lw t9, -0x7f5c(gp)            |     t9 = sym.fix_problem;
    0x0000b9c0 lw a0, 0x98(sp)               |     a0 = *(var_98h);
    0x0000b9c4 lw a2, 0x50(sp)               |     a2 = *(var_50h);
    0x0000b9c8 lui a1, 6                     |     a1 = 0x60005;
    0x0000b9cc addiu a1, a1, 5               |     
    0x0000b9d0 jalr t9                       |     t9 ();
    0x0000b9d4 lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0000b9d8 lw s7, 0x98(sp)               |     s7 = *(var_98h);
    0x0000b9dc b 0xabfc                      |     goto label_51;
                                             | label_208:
    0x0000b9e0 lw v0, 0x98(sp)               |     v0 = *(var_98h);
    0x0000b9e4 lw t9, -0x77e0(gp)            |     t9 = sym.imp.ext2fs_flush;
    0x0000b9e8 lw a0, (v0)                   |     a0 = *(v0);
    0x0000b9ec jalr t9                       |     t9 ();
    0x0000b9f0 sw v0, 0xa8(sp)               |     *(var_a8h) = v0;
    0x0000b9f4 lw gp, 0x30(sp)               |     gp = *(var_30h);
                                             |     if (v0 == 0) {
    0x0000b9f8 beqz v0, 0xb66c               |         goto label_77;
                                             |     }
    0x0000b9fc lw t9, -0x7f5c(gp)            |     t9 = sym.fix_problem;
    0x0000ba00 lw a0, 0x98(sp)               |     a0 = *(var_98h);
    0x0000ba04 lw a2, 0x50(sp)               |     a2 = *(var_50h);
    0x0000ba08 lui a1, 6                     |     a1 = 0x60004;
    0x0000ba0c addiu a1, a1, 4               |     
    0x0000ba10 jalr t9                       |     t9 ();
    0x0000ba14 lw v0, 0x98(sp)               |     v0 = *(var_98h);
    0x0000ba18 b 0xb670                      |     goto label_78;
                                             | label_86:
    0x0000bb30 lw a0, -0x7fd0(gp)            |     a0 = *(gp);
    0x0000bb34 lw a3, -0x7fd0(gp)            |     a3 = *(gp);
    0x0000bb38 lw a2, -0x7fd0(gp)            |     a2 = *(gp);
    0x0000bb3c lw t9, -0x7914(gp)            |     t9 = sym.imp.com_err;
    0x0000bb40 lw a1, 0x64(sp)               |     a1 = *(var_64h);
                                             |     /* str.e2fsck */
    0x0000bb44 addiu a0, a0, 0x5020          |     a0 += 0x5020;
                                             |     /* str.while_trying_to_initialize_program */
    0x0000bb48 addiu a3, a3, 0x5aa0          |     a3 += 0x5aa0;
                                             |     /* esilref: '&s' */
    0x0000bb4c addiu a2, a2, 0x62f4          |     a2 += 0x62f4;
    0x0000bb50 jalr t9                       |     t9 ();
    0x0000bb54 lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0000bb58 lw t9, -0x7a08(gp)            |     t9 = sym.imp.exit;
    0x0000bb5c addiu a0, zero, 8             |     a0 = 8;
    0x0000bb60 jalr t9                       |     t9 ();
    0x0000bb64 lw t9, -0x7f68(gp)            |     t9 = sym.log_out;
    0x0000bb68 move a0, s7                   |     a0 = s7;
    0x0000bb6c addiu a1, a1, 0x6710          |     a1 += 0x6710;
    0x0000bb70 bal 0x29b80                   |     sym_log_out ();
    0x0000bb74 lw v0, (s7)                   |     v0 = *(s7);
    0x0000bb78 lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0000bb7c move s1, zero                 |     s1 = 0;
    0x0000bb80 lw t0, 0x10(v0)               |     t0 = *((v0 + 4));
    0x0000bb84 lw v0, -0x7fd0(gp)            |     v0 = *(gp);
    0x0000bb88 move s3, zero                 |     s3 = 0;
    0x0000bb8c addiu fp, t0, 0x5c            |     fp = t0 + 0x5c;
    0x0000bb90 sw zero, 0x100(sp)            |     *(var_100h) = 0;
    0x0000bb94 addiu s6, zero, 1             |     s6 = 1;
    0x0000bb98 move a0, zero                 |     a0 = 0;
                                             |     /* esilref: ' &s' */
    0x0000bb9c addiu s5, v0, 0x7c78          |     s5 = v0 + 0x7c78;
    0x0000bba0 addiu s4, zero, 0x20          |     s4 = 0x20;
    0x0000bba4 b 0xbbb4                      |     goto label_80;
                                             | label_79:
    0x0000bba8 addiu s1, s1, 1               |     s1++;
                                             |     do {
    0x0000bbac sll s6, s6, 1                 |         s6 <<= 1;
                                             |         if (s1 == s4) {
    0x0000bbb0 beq s1, s4, 0xbbf8            |             goto label_211;
                                             |         }
                                             | label_80:
    0x0000bbb4 lw v0, (fp)                   |         v0 = *(fp);
    0x0000bbb8 and v0, s6, v0                |         v0 = s6 & v0;
    0x0000bbbc beql v0, zero, 0xbbac         |         
                                             |     } while (v0 == 0);
    0x0000bbc0 addiu s1, s1, 1               |     s1++;
    0x0000bbc4 lw t9, -0x7954(gp)            |     t9 = sym.imp.e2p_feature2string;
    0x0000bbc8 move a1, s6                   |     a1 = s6;
    0x0000bbcc jalr t9                       |     t9 ();
    0x0000bbd0 lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0000bbd4 move a0, s7                   |     a0 = s7;
    0x0000bbd8 move a2, v0                   |     a2 = v0;
    0x0000bbdc lw t9, -0x7f68(gp)            |     t9 = sym.log_out;
    0x0000bbe0 move a1, s5                   |     a1 = s5;
    0x0000bbe4 bal 0x29b80                   |     sym_log_out ();
    0x0000bbe8 addiu s3, s3, 1               |     s3++;
    0x0000bbec lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0000bbf0 lw a0, 0x100(sp)              |     a0 = *(var_100h);
    0x0000bbf4 b 0xbba8                      |     goto label_79;
                                             | label_211:
    0x0000bbf8 addiu a0, a0, 1               |     a0++;
    0x0000bbfc slti v0, a0, 3                |     v0 = (a0 < 3) ? 1 : 0;
    0x0000bc00 sw a0, 0x100(sp)              |     *(var_100h) = a0;
                                             |     if (v0 != 0) {
    0x0000bc04 beqz v0, 0xbc24               |         
    0x0000bc08 addiu fp, fp, 4               |         fp += 4;
    0x0000bc0c move s1, zero                 |         s1 = 0;
    0x0000bc10 addiu s6, zero, 1             |         s6 = 1;
    0x0000bc14 b 0xbbb4                      |         goto label_80;
                                             |     }
    0x0000bc24 lw a1, -0x7fd0(gp)            |     a1 = *(gp);
    0x0000bc28 beqz s3, 0xbcb4               |     
                                             |     while (1) {
    0x0000bc2c lw a1, -0x7fd0(gp)            |         a1 = *(gp);
    0x0000bc30 lw t9, -0x7f68(gp)            |         t9 = sym.log_out;
    0x0000bc34 addiu a1, a1, 0x55d4          |         a1 += 0x55d4;
    0x0000bc38 move a0, s7                   |         a0 = s7;
    0x0000bc3c bal 0x29b80                   |         sym_log_out ();
    0x0000bc40 lw gp, 0x30(sp)               |         gp = *(var_30h);
    0x0000bc44 b 0xb114                      |         goto label_81;
                                             | label_108:
    0x0000bc48 move s7, fp                   |         s7 = fp;
    0x0000bc4c addiu s3, zero, 0xc           |         s3 = 0xc;
                                             | label_112:
    0x0000bc50 lw t9, -0x7814(gp)            |         t9 = sym.imp.free;
    0x0000bc54 move a0, s5                   |         a0 = s5;
    0x0000bc58 jalr t9                       |         t9 ();
    0x0000bc5c lw gp, 0x30(sp)               |         gp = *(var_30h);
    0x0000bc60 lw a0, 4(s7)                  |         a0 = *((s7 + 1));
    0x0000bc64 move a1, s3                   |         a1 = s3;
    0x0000bc68 lw a3, -0x7fd0(gp)            |         a3 = *(gp);
    0x0000bc6c lw a2, -0x7fd0(gp)            |         a2 = *(gp);
    0x0000bc70 lw t9, -0x7914(gp)            |         t9 = sym.imp.com_err;
                                             |         /* str.while_trying_to_setup_undo_file_n */
    0x0000bc74 addiu a3, a3, 0x5e34          |         a3 += 0x5e34;
                                             |         /* esilref: '&s' */
    0x0000bc78 addiu a2, a2, 0x62f4          |         a2 += 0x62f4;
    0x0000bc7c jalr t9                       |         t9 ();
    0x0000bc80 lw gp, 0x30(sp)               |         gp = *(var_30h);
                                             | label_113:
    0x0000bc84 lw t9, -0x7a08(gp)            |         t9 = sym.imp.exit;
    0x0000bc88 addiu a0, zero, 8             |         a0 = 8;
    0x0000bc8c jalr t9                       |         t9 ();
                                             | label_168:
    0x0000bc90 lw t9, -0x7820(gp)            |         t9 = sym.imp.strdup;
    0x0000bc94 lw a0, 8(fp)                  |         a0 = *(arg_8h);
    0x0000bc98 jalr t9                       |         t9 ();
    0x0000bc9c move s5, v0                   |         s5 = v0;
    0x0000bca0 lw gp, 0x30(sp)               |         gp = *(var_30h);
                                             |         if (v0 == 0) {
    0x0000bca4 beqz v0, 0xbccc               |             goto label_212;
                                             |         }
    0x0000bca8 move s2, v0                   |         s2 = v0;
    0x0000bcac addiu s0, zero, 1             |         s0 = 1;
    0x0000bcb0 b 0x8d50                      |         goto label_82;
    0x0000bcb4 lw t9, -0x7f68(gp)            |         t9 = sym.log_out;
                                             |         /* str.__none_ */
    0x0000bcb8 addiu a1, a1, 0x6728          |         a1 += 0x6728;
    0x0000bcbc move a0, s7                   |         a0 = s7;
    0x0000bcc0 bal 0x29b80                   |         sym_log_out ();
    0x0000bcc4 lw gp, 0x30(sp)               |         gp = *(var_30h);
    0x0000bcc8 b 0xbc2c                      |         
                                             |     }
                                             | label_212:
    0x0000bccc addiu s3, zero, 0xc           |     s3 = 0xc;
    0x0000bcd0 b 0x8e30                      |     goto label_83;
                                             | label_187:
    0x0000bd1c lw t9, -0x78a4(gp)            |     t9 = sym.imp.__stack_chk_fail;
    0x0000bd20 jalr t9                       |     t9 ();
    0x0000bd24 nop                           |     
    0x0000bd28 lw v1, 0x90(sp)               |     v1 = *(var_90h);
    0x0000bd2c addiu a0, zero, -0x201        |     a0 = -0x201;
    0x0000bd30 lw s7, 0x98(sp)               |     s7 = *(var_98h);
    0x0000bd34 lw v0, 8(v1)                  |     v0 = *((v1 + 2));
    0x0000bd38 and v0, v0, a0                |     v0 &= a0;
    0x0000bd3c sw v0, 8(v1)                  |     *((v1 + 2)) = v0;
    0x0000bd40 b 0xab60                      |     goto label_84;
                                             | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/fsck.ext3 @ 0x38b70 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) sym.check_plausibility ()        | void check_plausibility () {
    0x00038b70 lui gp, 3                     |     
    0x00038b74 addiu gp, gp, 0x1250          |     
    0x00038b78 addu gp, gp, t9               |     gp += t9;
    0x00038b7c addiu sp, sp, -0x150          |     
    0x00038b80 lw t9, -0x7ccc(gp)            |     t9 = sym.imp.ext2fs_open_file;
    0x00038b84 sw s2, 0x13c(sp)              |     *(var_13ch) = s2;
    0x00038b88 lw s2, -0x7838(gp)            |     s2 = *((gp - 7694));
    0x00038b8c sw gp, 0x20(sp)               |     *(var_20h) = gp;
    0x00038b90 sw s4, 0x144(sp)              |     *(var_144h) = s4;
    0x00038b94 lw v0, (s2)                   |     v0 = *(s2);
    0x00038b98 sw s3, 0x140(sp)              |     *(var_140h) = s3;
    0x00038b9c sw s1, 0x138(sp)              |     *(var_138h) = s1;
    0x00038ba0 sw s0, 0x134(sp)              |     *(var_134h) = s0;
    0x00038ba4 sw ra, 0x14c(sp)              |     *(var_14ch) = ra;
    0x00038ba8 sw s5, 0x148(sp)              |     *(var_148h) = s5;
    0x00038bac move s0, a1                   |     s0 = a1;
    0x00038bb0 move s3, a2                   |     s3 = a2;
    0x00038bb4 move a1, zero                 |     a1 = 0;
    0x00038bb8 addiu a2, zero, 0x1b6         |     a2 = 0x1b6;
    0x00038bbc sw v0, 0x12c(sp)              |     *(var_12ch) = v0;
    0x00038bc0 sw zero, 0x2c(sp)             |     *(var_2ch) = 0;
    0x00038bc4 move s4, a0                   |     s4 = a0;
    0x00038bc8 jalr t9                       |     t9 ();
    0x00038bcc move s1, v0                   |     s1 = v0;
    0x00038bd0 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 < 0) {
    0x00038bd4 bltz v0, 0x38d80              |         goto label_13;
                                             |     }
                                             | label_5:
    0x00038bd8 lw t9, -0x7ac0(gp)            |     t9 = sym.imp.ext2fs_fstat;
                                             | label_4:
    0x00038bdc addiu a1, sp, 0x38            |     a1 = sp + 0x38;
    0x00038be0 move a0, s1                   |     a0 = s1;
    0x00038be4 jalr t9                       |     t9 ();
    0x00038be8 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 < 0) {
    0x00038bec bltz v0, 0x39100              |         goto label_14;
                                             |     }
    0x00038bf0 lw t9, -0x7cb0(gp)            |     t9 = sym.imp.close;
    0x00038bf4 move a0, s1                   |     a0 = s1;
    0x00038bf8 jalr t9                       |     t9 ();
    0x00038bfc lw v0, 0x50(sp)               |     v0 = *(var_50h);
    0x00038c00 addiu v1, zero, 0x6000        |     v1 = 0x6000;
    0x00038c04 andi v0, v0, 0xf000           |     v0 &= 0xf000;
    0x00038c08 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 == v1) {
    0x00038c0c beq v0, v1, 0x38c74           |         goto label_15;
                                             |     }
    0x00038c10 andi v0, s0, 1                |     v0 = s0 & 1;
                                             |     if (s3 == 0) {
    0x00038c14 beqz s3, 0x38df0              |         goto label_16;
                                             |     }
    0x00038c18 sw zero, (s3)                 |     *(s3) = 0;
                                             |     if (v0 == 0) {
    0x00038c1c beqz v0, 0x38c80              |         goto label_17;
                                             |     }
    0x00038c20 lw a1, -0x7fa8(gp)            |     a1 = *((gp - 8170));
                                             | label_2:
    0x00038c24 lw t9, -0x7b28(gp)            |     t9 = sym.imp.__printf_chk;
    0x00038c28 move a2, s4                   |     a2 = s4;
                                             |     /* str._s_is_not_a_block_special_device._n */
    0x00038c2c addiu a1, a1, -0x298c         |     a1 += -0x298c;
    0x00038c30 addiu a0, zero, 1             |     a0 = 1;
    0x00038c34 jalr t9                       |     t9 ();
    0x00038c38 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x00038c3c move s1, zero                 |     s1 = 0;
                                             |     do {
                                             | label_0:
    0x00038c40 lw a0, 0x12c(sp)              |         a0 = *(var_12ch);
    0x00038c44 lw v1, (s2)                   |         v1 = *(s2);
    0x00038c48 move v0, s1                   |         v0 = s1;
                                             |         if (a0 != v1) {
    0x00038c4c bne a0, v1, 0x39120           |             goto label_18;
                                             |         }
    0x00038c50 lw ra, 0x14c(sp)              |         ra = *(var_14ch);
    0x00038c54 lw s5, 0x148(sp)              |         s5 = *(var_148h);
    0x00038c58 lw s4, 0x144(sp)              |         s4 = *(var_144h);
    0x00038c5c lw s3, 0x140(sp)              |         s3 = *(var_140h);
    0x00038c60 lw s2, 0x13c(sp)              |         s2 = *(var_13ch);
    0x00038c64 lw s1, 0x138(sp)              |         s1 = *(var_138h);
    0x00038c68 lw s0, 0x134(sp)              |         s0 = *(var_134h);
    0x00038c6c addiu sp, sp, 0x150           |         
    0x00038c70 jr ra                         |         return v0;
                                             | label_15:
    0x00038c74 addiu v0, zero, 1             |         v0 = 1;
                                             |         if (s3 != 0) {
    0x00038c78 beqz s3, 0x38c80              |             
    0x00038c7c sw v0, (s3)                   |             *(s3) = v0;
                                             |         }
                                             | label_17:
    0x00038c80 andi s0, s0, 4                |         s0 &= 4;
                                             | label_1:
    0x00038c84 lw t9, -0x77d8(gp)            |         t9 = sym.imp.blkid_new_probe_from_filename;
                                             |         if (s0 != 0) {
    0x00038c88 beqz s0, 0x38ca8              |             
    0x00038c8c lw t9, -0x7c7c(gp)            |             t9 = sym.imp.blkid_get_cache;
    0x00038c90 move a1, zero                 |             a1 = 0;
    0x00038c94 addiu a0, sp, 0x2c            |             a0 = sp + 0x2c;
    0x00038c98 jalr t9                       |             t9 ();
    0x00038c9c lw gp, 0x20(sp)               |             gp = *(var_20h);
                                             |             if (v0 >= 0) {
    0x00038ca0 bgez v0, 0x38e00              |                 goto label_19;
                                             |             }
                                             | label_6:
    0x00038ca4 lw t9, -0x77d8(gp)            |             t9 = sym.imp.blkid_new_probe_from_filename;
                                             |         }
    0x00038ca8 move a0, s4                   |         a0 = s4;
    0x00038cac jalr t9                       |         t9 ();
    0x00038cb0 move s0, v0                   |         s0 = v0;
    0x00038cb4 lw gp, 0x20(sp)               |         gp = *(var_20h);
    0x00038cb8 addiu s1, zero, 1             |         s1 = 1;
    0x00038cbc beqz v0, 0x38c40              |         
                                             |     } while (v0 == 0);
    0x00038cc0 lw t9, -0x7840(gp)            |     t9 = sym.imp.blkid_probe_enable_partitions;
    0x00038cc4 addiu a1, zero, 1             |     a1 = 1;
    0x00038cc8 move a0, v0                   |     a0 = v0;
    0x00038ccc jalr t9                       |     t9 ();
    0x00038cd0 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 >= 0) {
    0x00038cd4 bltz v0, 0x38d68              |         
    0x00038cd8 lw t9, -0x7824(gp)            |         t9 = sym.imp.blkid_probe_enable_superblocks;
    0x00038cdc move a1, zero                 |         a1 = 0;
    0x00038ce0 move a0, s0                   |         a0 = s0;
    0x00038ce4 jalr t9                       |         t9 ();
    0x00038ce8 lw gp, 0x20(sp)               |         gp = *(var_20h);
                                             |         if (v0 < 0) {
    0x00038cec bltz v0, 0x38d68              |             goto label_20;
                                             |         }
    0x00038cf0 lw t9, -0x79e8(gp)            |         t9 = sym.imp.blkid_do_fullprobe;
    0x00038cf4 move a0, s0                   |         a0 = s0;
    0x00038cf8 jalr t9                       |         t9 ();
    0x00038cfc lw gp, 0x20(sp)               |         gp = *(var_20h);
                                             |         if (v0 < 0) {
    0x00038d00 bltz v0, 0x38d68              |             goto label_20;
                                             |         }
    0x00038d04 lw a1, -0x7fa8(gp)            |         a1 = *((gp - 8170));
    0x00038d08 lw t9, -0x77c0(gp)            |         t9 = sym.imp.blkid_probe_lookup_value;
    0x00038d0c move a3, zero                 |         a3 = 0;
    0x00038d10 addiu a2, sp, 0x34            |         a2 = sp + 0x34;
                                             |         /* str.PTTYPE */
    0x00038d14 addiu a1, a1, -0x28b4         |         a1 += -0x28b4;
    0x00038d18 move a0, s0                   |         a0 = s0;
    0x00038d1c jalr t9                       |         t9 ();
    0x00038d20 move s1, v0                   |         s1 = v0;
    0x00038d24 lw gp, 0x20(sp)               |         gp = *(var_20h);
                                             |         if (v0 != 0) {
    0x00038d28 bnez v0, 0x38d68              |             goto label_20;
                                             |         }
    0x00038d2c lw v0, -0x77dc(gp)            |         v0 = *((gp - 7671));
    0x00038d30 lw a2, -0x7fa8(gp)            |         a2 = *((gp - 8170));
    0x00038d34 lw t9, -0x7c2c(gp)            |         t9 = sym.imp.__fprintf_chk
    0x00038d38 lw a0, (v0)                   |         a0 = *(v0);
    0x00038d3c lw a3, 0x34(sp)               |         a3 = *(var_34h);
                                             |         /* str.Found_a__s_partition_table_in__s_n */
    0x00038d40 addiu a2, a2, -0x28ac         |         a2 += -0x28ac;
    0x00038d44 addiu a1, zero, 1             |         a1 = 1;
    0x00038d48 sw s4, 0x10(sp)               |         *(var_10h) = s4;
    0x00038d4c jalr t9                       |         t9 ();
    0x00038d50 lw gp, 0x20(sp)               |         gp = *(var_20h);
    0x00038d54 lw t9, -0x7b58(gp)            |         t9 = sym.imp.blkid_free_probe;
    0x00038d58 move a0, s0                   |         a0 = s0;
    0x00038d5c jalr t9                       |         t9 ();
    0x00038d60 lw gp, 0x20(sp)               |         gp = *(var_20h);
    0x00038d64 b 0x38c40                     |         goto label_0;
                                             |     }
                                             | label_20:
    0x00038d68 lw t9, -0x7b58(gp)            |     t9 = sym.imp.blkid_free_probe;
    0x00038d6c move a0, s0                   |     a0 = s0;
    0x00038d70 jalr t9                       |     t9 ();
    0x00038d74 addiu s1, zero, 1             |     s1 = 1;
    0x00038d78 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x00038d7c b 0x38c40                     |     goto label_0;
                                             | label_13:
    0x00038d80 lw t9, -0x7aa4(gp)            |     t9 = sym.imp.__errno_location;
    0x00038d84 jalr t9                       |     t9 ();
    0x00038d88 nop                           |     
    0x00038d8c move s5, v0                   |     s5 = v0;
    0x00038d90 addiu v0, zero, 2             |     v0 = 2;
    0x00038d94 lw a0, (s5)                   |     a0 = *(s5);
    0x00038d98 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (a0 == v0) {
    0x00038d9c beq a0, v0, 0x38ec4           |         goto label_21;
                                             |     }
                                             | label_10:
    0x00038da0 lw s0, -0x77dc(gp)            |     s0 = *((gp - 7671));
                                             | label_3:
    0x00038da4 lw t9, -0x7ac8(gp)            |     t9 = sym.imp.error_message;
    0x00038da8 lw s1, (s0)                   |     s1 = *(s0);
    0x00038dac jalr t9                       |     t9 ();
    0x00038db0 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x00038db4 sw v0, 0x10(sp)               |     *(var_10h) = v0;
    0x00038db8 move a3, s4                   |     a3 = s4;
    0x00038dbc lw a2, -0x7fa8(gp)            |     a2 = *((gp - 8170));
    0x00038dc0 lw t9, -0x7c2c(gp)            |     t9 = sym.imp.__fprintf_chk
                                             |     /* str.Could_not_open__s:__s_n */
    0x00038dc4 addiu a2, a2, -0x2888         |     a2 += -0x2888;
    0x00038dc8 addiu a1, zero, 1             |     a1 = 1;
    0x00038dcc move a0, s1                   |     a0 = s1;
    0x00038dd0 jalr t9                       |     t9 ();
    0x00038dd4 lw v1, (s5)                   |     v1 = *(s5);
    0x00038dd8 addiu v0, zero, 2             |     v0 = 2;
    0x00038ddc lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v1 == v0) {
    0x00038de0 beq v1, v0, 0x38f38           |         goto label_22;
                                             |     }
                                             | label_7:
    0x00038de4 lw t9, -0x7a08(gp)            |     t9 = sym.imp.exit;
    0x00038de8 addiu a0, zero, 1             |     a0 = 1;
    0x00038dec jalr t9                       |     t9 ();
                                             |     if (v0 == 0) {
                                             | label_16:
    0x00038df0 beql v0, zero, 0x38c84        |         goto label_1;
                                             |     }
    0x00038df4 andi s0, s0, 4                |     s0 &= 4;
    0x00038df8 lw a1, -0x7fa8(gp)            |     a1 = *((gp - 8170));
    0x00038dfc b 0x38c24                     |     goto label_2;
                                             | label_19:
    0x00038e00 lw a1, -0x7fa8(gp)            |     a1 = *((gp - 8170));
    0x00038e04 lw t9, -0x78e0(gp)            |     t9 = sym.imp.blkid_get_tag_value;
    0x00038e08 lw a0, 0x2c(sp)               |     a0 = *(var_2ch);
    0x00038e0c move a2, s4                   |     a2 = s4;
                                             |     /* str.TYPE */
    0x00038e10 addiu a1, a1, -0x2968         |     a1 += -0x2968;
    0x00038e14 jalr t9                       |     t9 ();
    0x00038e18 move s0, v0                   |     s0 = v0;
    0x00038e1c lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 == 0) {
    0x00038e20 beqz v0, 0x38f24              |         goto label_23;
                                             |     }
    0x00038e24 lw a1, -0x7fa8(gp)            |     a1 = *((gp - 8170));
    0x00038e28 lw t9, -0x78e0(gp)            |     t9 = sym.imp.blkid_get_tag_value;
    0x00038e2c lw a0, 0x2c(sp)               |     a0 = *(var_2ch);
    0x00038e30 move a2, s4                   |     a2 = s4;
                                             |     /* str.LABEL */
    0x00038e34 addiu a1, a1, -0x2960         |     a1 += -0x2960;
    0x00038e38 jalr t9                       |     t9 ();
    0x00038e3c lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x00038e40 lw a0, 0x2c(sp)               |     a0 = *(var_2ch);
    0x00038e44 lw t9, -0x7880(gp)            |     t9 = sym.imp.blkid_put_cache;
    0x00038e48 move s1, v0                   |     s1 = v0;
    0x00038e4c jalr t9                       |     t9 ();
    0x00038e50 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x00038e54 lw t9, -0x7b28(gp)            |     t9 = sym.imp.__printf_chk;
                                             |     if (s1 == 0) {
    0x00038e58 beqz s1, 0x39034              |         goto label_24;
                                             |     }
    0x00038e5c lw a1, -0x7fa8(gp)            |     a1 = *((gp - 8170));
    0x00038e60 sw s1, 0x10(sp)               |     *(var_10h) = s1;
    0x00038e64 move a3, s0                   |     a3 = s0;
    0x00038e68 move a2, s4                   |     a2 = s4;
                                             |     /* str._s_contains_a__s_file_system_labelled__s_n */
    0x00038e6c addiu a1, a1, -0x2958         |     a1 += -0x2958;
    0x00038e70 addiu a0, zero, 1             |     a0 = 1;
    0x00038e74 jalr t9                       |     t9 ();
    0x00038e78 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             | label_9:
    0x00038e7c lw a1, -0x7fd0(gp)            |     a1 = *(gp);
    0x00038e80 lw t9, -0x7c54(gp)            |     t9 = sym.imp.strncmp;
    0x00038e84 addiu a2, zero, 3             |     a2 = 3;
                                             |     /* esilref: 'ext' */
    0x00038e88 addiu a1, a1, 0x6618          |     a1 += 0x6618;
    0x00038e8c move a0, s0                   |     a0 = s0;
    0x00038e90 jalr t9                       |     t9 ();
    0x00038e94 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 == 0) {
    0x00038e98 beqz v0, 0x38f60              |         goto label_25;
                                             |     }
                                             | label_8:
    0x00038e9c lw t9, -0x7814(gp)            |     t9 = sym.imp.free;
    0x00038ea0 move a0, s0                   |     a0 = s0;
    0x00038ea4 jalr t9                       |     t9 ();
    0x00038ea8 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x00038eac move a0, s1                   |     a0 = s1;
    0x00038eb0 lw t9, -0x7814(gp)            |     t9 = sym.imp.free;
    0x00038eb4 move s1, zero                 |     s1 = 0;
    0x00038eb8 jalr t9                       |     t9 ();
    0x00038ebc lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x00038ec0 b 0x38c40                     |     goto label_0;
                                             | label_21:
    0x00038ec4 andi v0, s0, 0x10             |     v0 = s0 & 0x10;
    0x00038ec8 andi v0, s0, 2                |     v0 = s0 & 2;
                                             |     if (v0 != 0) {
    0x00038ecc bnez v0, 0x3912c              |         goto label_26;
                                             |     }
                                             |     if (v0 == 0) {
    0x00038ed0 beql v0, zero, 0x38da4        |         goto label_3;
                                             |     }
    0x00038ed4 lw s0, -0x77dc(gp)            |     s0 = *((gp - 7671));
    0x00038ed8 lw t9, -0x7ccc(gp)            |     t9 = sym.imp.ext2fs_open_file;
    0x00038edc addiu a2, zero, 0x1b6         |     a2 = 0x1b6;
    0x00038ee0 addiu a1, zero, 0x100         |     a1 = aav.0x00000100;
    0x00038ee4 move a0, s4                   |     a0 = s4;
    0x00038ee8 jalr t9                       |     t9 ();
    0x00038eec move s1, v0                   |     s1 = v0;
    0x00038ef0 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 < 0) {
    0x00038ef4 bltz v0, 0x39054              |         goto label_27;
                                             |     }
    0x00038ef8 andi v0, s0, 8                |     v0 = s0 & 8;
    0x00038efc lw t9, -0x7ac0(gp)            |     t9 = sym.imp.ext2fs_fstat;
                                             |     if (v0 == 0) {
    0x00038f00 beqz v0, 0x38bdc              |         goto label_4;
                                             |     }
    0x00038f04 lw a1, -0x7fa8(gp)            |     a1 = *((gp - 8170));
    0x00038f08 lw t9, -0x7b28(gp)            |     t9 = sym.imp.__printf_chk;
    0x00038f0c move a2, s4                   |     a2 = s4;
                                             |     /* str.Creating_regular_file__s_n */
    0x00038f10 addiu a1, a1, -0x29f8         |     a1 += -0x29f8;
    0x00038f14 addiu a0, zero, 1             |     a0 = 1;
    0x00038f18 jalr t9                       |     t9 ();
    0x00038f1c lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x00038f20 b 0x38bd8                     |     goto label_5;
                                             | label_23:
    0x00038f24 lw t9, -0x7880(gp)            |     t9 = sym.imp.blkid_put_cache;
    0x00038f28 lw a0, 0x2c(sp)               |     a0 = *(var_2ch);
    0x00038f2c jalr t9                       |     t9 ();
    0x00038f30 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x00038f34 b 0x38ca4                     |     goto label_6;
                                             | label_22:
    0x00038f38 lw a0, -0x7fa8(gp)            |     a0 = *((gp - 8170));
    0x00038f3c lw t9, -0x7938(gp)            |     t9 = sym.imp.fwrite;
    0x00038f40 lw a3, (s0)                   |     a3 = *(s0);
    0x00038f44 addiu a2, zero, 0x45          |     a2 = 0x45;
    0x00038f48 addiu a1, zero, 1             |     a1 = 1;
                                             |     /* str._nThe_device_apparently_does_not_exist__did_you_specify_it_correctly__n */
    0x00038f4c addiu a0, a0, -0x29dc         |     a0 += -0x29dc;
                                             | label_12:
    0x00038f50 jalr t9                       |     t9 ();
    0x00038f54 nop                           |     
    0x00038f58 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x00038f5c b 0x38de4                     |     goto label_7;
                                             | label_25:
    0x00038f60 lw v0, -0x7bb4(gp)            |     v0 = *((gp - 7917));
    0x00038f64 lw t9, -0x7aa0(gp)            |     t9 = sym.imp.ext2fs_open2;
    0x00038f68 addiu s3, sp, 0x30            |     s3 = sp + 0x30;
    0x00038f6c lw v0, (v0)                   |     v0 = *(v0);
    0x00038f70 move a3, zero                 |     a3 = 0;
    0x00038f74 sw s3, 0x18(sp)               |     *(var_18h) = s3;
    0x00038f78 sw v0, 0x14(sp)               |     *(var_14h) = v0;
    0x00038f7c sw zero, 0x10(sp)             |     *(var_10h) = 0;
    0x00038f80 lui a2, 2                     |     a2 = 0x20000;
    0x00038f84 move a1, zero                 |     a1 = 0;
    0x00038f88 move a0, s4                   |     a0 = s4;
    0x00038f8c jalr t9                       |     t9 ();
    0x00038f90 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 != 0) {
    0x00038f94 bnez v0, 0x38e9c              |         goto label_8;
                                             |     }
    0x00038f98 lw v0, 0x30(sp)               |     v0 = *(var_30h);
    0x00038f9c lw s4, 0x10(v0)               |     s4 = *((v0 + 4));
    0x00038fa0 lw v0, 0x2c(s4)               |     v0 = *((s4 + 11));
                                             |     if (v0 == 0) {
    0x00038fa4 beql v0, zero, 0x3905c        |         goto label_28;
                                             |     }
    0x00038fa8 lw v0, 0x108(s4)              |     v0 = *(s4);
    0x00038fac sw v0, 0x34(sp)               |     *(var_34h) = v0;
    0x00038fb0 lb v0, 0x88(s4)               |     v0 = *((s4 + 136));
    0x00038fb4 lw t9, -0x7884(gp)            |     t9 = sym.imp.ctime;
                                             |     if (v0 == 0) {
    0x00038fb8 beqz v0, 0x390a4              |         goto label_29;
                                             |     }
    0x00038fbc lw t9, -0x7a9c(gp)            |     t9 = sym.imp.memset;
    0x00038fc0 addiu s5, sp, 0xdc            |     s5 = sp + 0xdc;
    0x00038fc4 addiu a2, zero, 0x50          |     a2 = 0x50;
    0x00038fc8 move a1, zero                 |     a1 = 0;
    0x00038fcc move a0, s5                   |     a0 = s5;
    0x00038fd0 jalr t9                       |     t9 ();
    0x00038fd4 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x00038fd8 addiu a2, zero, 0x40          |     a2 = 0x40;
    0x00038fdc addiu a1, s4, 0x88            |     a1 = s4 + 0x88;
    0x00038fe0 lw t9, -0x7aa8(gp)            |     t9 = sym.imp.strncpy;
    0x00038fe4 move a0, s5                   |     a0 = s5;
    0x00038fe8 jalr t9                       |     t9 ();
    0x00038fec lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x00038ff0 lw t9, -0x7884(gp)            |     t9 = sym.imp.ctime;
    0x00038ff4 addiu a0, sp, 0x34            |     a0 = sp + 0x34;
    0x00038ff8 jalr t9                       |     t9 ();
    0x00038ffc lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x00039000 move a3, v0                   |     a3 = v0;
    0x00039004 move a2, s5                   |     a2 = s5;
    0x00039008 lw a1, -0x7fa8(gp)            |     a1 = *((gp - 8170));
    0x0003900c lw t9, -0x7b28(gp)            |     t9 = sym.imp.__printf_chk;
                                             |     /* str._tlast_mounted_on__s_on__s */
    0x00039010 addiu a1, a1, -0x290c         |     a1 += -0x290c;
    0x00039014 addiu a0, zero, 1             |     a0 = 1;
    0x00039018 jalr t9                       |     t9 ();
    0x0003901c lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             | label_11:
    0x00039020 lw t9, -0x7b34(gp)            |     t9 = sym.imp.ext2fs_close_free;
                                             |     do {
    0x00039024 move a0, s3                   |         a0 = s3;
    0x00039028 jalr t9                       |         t9 ();
    0x0003902c lw gp, 0x20(sp)               |         gp = *(var_20h);
    0x00039030 b 0x38e9c                     |         goto label_8;
                                             | label_24:
    0x00039034 lw a1, -0x7fa8(gp)            |         a1 = *((gp - 8170));
    0x00039038 move a3, s0                   |         a3 = s0;
    0x0003903c move a2, s4                   |         a2 = s4;
                                             |         /* str._s_contains_a__s_file_system_n */
    0x00039040 addiu a1, a1, -0x292c         |         a1 += -0x292c;
    0x00039044 addiu a0, zero, 1             |         a0 = 1;
    0x00039048 jalr t9                       |         t9 ();
    0x0003904c lw gp, 0x20(sp)               |         gp = *(var_20h);
    0x00039050 b 0x38e7c                     |         goto label_9;
                                             | label_27:
    0x00039054 lw a0, (s5)                   |         a0 = *(s5);
    0x00039058 b 0x38da0                     |         goto label_10;
                                             | label_28:
    0x0003905c lw t9, -0x7884(gp)            |         t9 = sym.imp.ctime;
                                             |         if (v0 != 0) {
    0x00039060 bnez v0, 0x390d0              |             goto label_30;
                                             |         }
    0x00039064 lw v0, 0x30(s4)               |         v0 = *((s4 + 12));
    0x00039068 lw t9, -0x7b34(gp)            |         t9 = sym.imp.ext2fs_close_free;
    0x0003906c beqz v0, 0x39024              |         
                                             |     } while (v0 == 0);
    0x00039070 lw t9, -0x7884(gp)            |     t9 = sym.imp.ctime;
    0x00039074 addiu a0, sp, 0x34            |     a0 = sp + 0x34;
    0x00039078 sw v0, 0x34(sp)               |     *(var_34h) = v0;
    0x0003907c jalr t9                       |     t9 ();
    0x00039080 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x00039084 move a2, v0                   |     a2 = v0;
    0x00039088 addiu a0, zero, 1             |     a0 = 1;
    0x0003908c lw a1, -0x7fa8(gp)            |     a1 = *((gp - 8170));
    0x00039090 lw t9, -0x7b28(gp)            |     t9 = sym.imp.__printf_chk;
                                             |     /* str._tlast_modified_on__s */
    0x00039094 addiu a1, a1, -0x28cc         |     a1 += -aav.0x000028cc;
    0x00039098 jalr t9                       |     t9 ();
    0x0003909c lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x000390a0 b 0x39020                     |     goto label_11;
                                             | label_29:
    0x000390a4 addiu a0, sp, 0x34            |     a0 = sp + 0x34;
    0x000390a8 jalr t9                       |     t9 ();
    0x000390ac lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x000390b0 move a2, v0                   |     a2 = v0;
    0x000390b4 addiu a0, zero, 1             |     a0 = 1;
    0x000390b8 lw a1, -0x7fa8(gp)            |     a1 = *((gp - 8170));
    0x000390bc lw t9, -0x7b28(gp)            |     t9 = sym.imp.__printf_chk;
                                             |     /* str._tlast_mounted_on__s */
    0x000390c0 addiu a1, a1, -0x28f0         |     a1 += -0x28f0;
    0x000390c4 jalr t9                       |     t9 ();
    0x000390c8 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x000390cc b 0x39020                     |     goto label_11;
                                             | label_30:
    0x000390d0 addiu a0, sp, 0x34            |     a0 = sp + 0x34;
    0x000390d4 sw v0, 0x34(sp)               |     *(var_34h) = v0;
    0x000390d8 jalr t9                       |     t9 ();
    0x000390dc lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x000390e0 move a2, v0                   |     a2 = v0;
    0x000390e4 addiu a0, zero, 1             |     a0 = 1;
    0x000390e8 lw a1, -0x7fa8(gp)            |     a1 = *((gp - 8170));
    0x000390ec lw t9, -0x7b28(gp)            |     t9 = sym.imp.__printf_chk;
                                             |     /* str._tcreated_on__s */
    0x000390f0 addiu a1, a1, -0x28dc         |     a1 += -0x28dc;
    0x000390f4 jalr t9                       |     t9 ();
    0x000390f8 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x000390fc b 0x39020                     |     goto label_11;
                                             | label_14:
    0x00039100 lw a0, -0x7fa8(gp)            |     a0 = *((gp - 8170));
    0x00039104 lw t9, -0x7930(gp)            |     t9 = sym.imp.perror;
                                             |     /* str.stat */
    0x00039108 addiu a0, a0, -0x2994         |     a0 += -0x2994;
    0x0003910c jalr t9                       |     t9 ();
    0x00039110 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x00039114 lw t9, -0x7a08(gp)            |     t9 = sym.imp.exit;
    0x00039118 addiu a0, zero, 1             |     a0 = 1;
    0x0003911c jalr t9                       |     t9 ();
                                             | label_18:
    0x00039120 lw t9, -0x78a4(gp)            |     t9 = sym.imp.__stack_chk_fail;
    0x00039124 jalr t9                       |     t9 ();
    0x00039128 nop                           |     
                                             | label_26:
    0x0003912c lw v0, -0x77dc(gp)            |     v0 = *((gp - 7671));
    0x00039130 lw a2, -0x7fa8(gp)            |     a2 = *((gp - 8170));
    0x00039134 lw t9, -0x7c2c(gp)            |     t9 = sym.imp.__fprintf_chk
    0x00039138 lw a0, (v0)                   |     a0 = *(v0);
    0x0003913c move a3, s4                   |     a3 = s4;
                                             |     /* str.The_file__s_does_not_exist_and_no_size_was_specified._n */
    0x00039140 addiu a2, a2, -0x2a30         |     a2 += -0x2a30;
    0x00039144 addiu a1, zero, 1             |     a1 = 1;
    0x00039148 b 0x38f50                     |     goto label_12;
                                             | }
    ; assembly                                   | /* r2dec pseudo code output */
                                                 | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/fsck.ext3 @ 0x2c23c */
                                                 | #include <stdint.h>
                                                 |  
    ; (fcn) sym.e2fsck_add_dir_info ()           | void e2fsck_add_dir_info () {
    0x0002c23c lui gp, 4                         |     
    0x0002c240 addiu gp, gp, -0x247c             |     
    0x0002c244 addu gp, gp, t9                   |     gp += t9;
    0x0002c248 addiu sp, sp, -0x90               |     
    0x0002c24c sw s2, 0x70(sp)                   |     *(var_70h) = s2;
    0x0002c250 lw s2, -0x7838(gp)                |     s2 = *((gp - 7694));
    0x0002c254 sw s0, 0x68(sp)                   |     *(var_68h) = s0;
    0x0002c258 lw s0, 0x1bc(a0)                  |     s0 = *(a0);
    0x0002c25c lw v0, (s2)                       |     v0 = *(s2);
    0x0002c260 sw gp, 0x18(sp)                   |     *(var_18h) = gp;
    0x0002c264 sw s4, 0x78(sp)                   |     *(var_78h) = s4;
    0x0002c268 sw s3, 0x74(sp)                   |     *(var_74h) = s3;
    0x0002c26c sw s1, 0x6c(sp)                   |     *(var_6ch) = s1;
    0x0002c270 sw ra, 0x8c(sp)                   |     *(var_8ch) = ra;
    0x0002c274 sw fp, 0x88(sp)                   |     *(var_88h) = fp;
    0x0002c278 sw s7, 0x84(sp)                   |     *(var_84h) = s7;
    0x0002c27c sw s6, 0x80(sp)                   |     *(var_80h) = s6;
    0x0002c280 sw s5, 0x7c(sp)                   |     *(var_7ch) = s5;
    0x0002c284 move s4, a0                       |     s4 = a0;
    0x0002c288 move s1, a1                       |     s1 = a1;
    0x0002c28c move s3, a2                       |     s3 = a2;
    0x0002c290 sw v0, 0x64(sp)                   |     *(var_64h) = v0;
    0x0002c294 lw a2, -0x7fd0(gp)                |     a2 = *(gp);
                                                 |     if (s0 == 0) {
    0x0002c298 beqz s0, 0x2c45c                  |         goto label_7;
                                                 |     }
                                                 | label_5:
    0x0002c29c lw a1, 4(s0)                      |     a1 = *((s0 + 1));
    0x0002c2a0 lw v0, (s0)                       |     v0 = *(s0);
    0x0002c2a4 slt v0, v0, a1                    |     v0 = (v0 < a1) ? 1 : 0;
                                                 |     if (v0 == 0) {
    0x0002c2a8 beql v0, zero, 0x2c404            |         goto label_8;
                                                 |     }
    0x0002c2ac addiu a1, a1, 0xa                 |     a1 += 0xa;
                                                 | label_3:
    0x0002c2b0 lw v0, 0x14(s0)                   |     v0 = *((s0 + 5));
                                                 | label_4:
    0x0002c2b4 lw t9, -0x7d90(gp)                |     t9 = *(gp);
                                                 |     if (v0 != 0) {
    0x0002c2b8 bnez v0, 0x2c3e0                  |         goto label_9;
                                                 |     }
    0x0002c2bc lw a3, (s0)                       |     a3 = *(s0);
    0x0002c2c0 lw t0, 8(s0)                      |     t0 = *((s0 + 2));
    0x0002c2c4 sll v0, a3, 1                     |     v0 = a3 << 1;
    0x0002c2c8 addu v0, v0, a3                   |     v0 += a3;
    0x0002c2cc sll v0, v0, 2                     |     v0 <<= 2;
    0x0002c2d0 addu v1, t0, v0                   |     v1 = t0 + v0;
                                                 |     if (a3 != 0) {
    0x0002c2d4 bnez a3, 0x2c32c                  |         goto label_10;
                                                 |     }
    0x0002c2d8 addiu a3, a3, 1                   |     a3++;
                                                 |     do {
    0x0002c2dc sw a3, (s0)                       |         *(s0) = a3;
    0x0002c2e0 move v0, v1                       |         v0 = v1;
                                                 | label_1:
    0x0002c2e4 sw s1, (v0)                       |         *(v0) = s1;
                                                 | label_0:
    0x0002c2e8 sw s3, 4(v0)                      |         *((v0 + 1)) = s3;
    0x0002c2ec sw s3, 8(v0)                      |         *((v0 + 2)) = s3;
                                                 | label_2:
    0x0002c2f0 lw v1, 0x64(sp)                   |         v1 = *(var_64h);
    0x0002c2f4 lw v0, (s2)                       |         v0 = *(s2);
    0x0002c2f8 lw ra, 0x8c(sp)                   |         ra = *(var_8ch);
                                                 |         if (v1 != v0) {
    0x0002c2fc bne v1, v0, 0x2c720               |             goto label_11;
                                                 |         }
    0x0002c300 lw fp, 0x88(sp)                   |         fp = *(var_88h);
    0x0002c304 lw s7, 0x84(sp)                   |         s7 = *(var_84h);
    0x0002c308 lw s6, 0x80(sp)                   |         s6 = *(var_80h);
    0x0002c30c lw s5, 0x7c(sp)                   |         s5 = *(var_7ch);
    0x0002c310 lw s4, 0x78(sp)                   |         s4 = *(var_78h);
    0x0002c314 lw s3, 0x74(sp)                   |         s3 = *(var_74h);
    0x0002c318 lw s2, 0x70(sp)                   |         s2 = *(var_70h);
    0x0002c31c lw s1, 0x6c(sp)                   |         s1 = *(var_6ch);
    0x0002c320 lw s0, 0x68(sp)                   |         s0 = *(var_68h);
    0x0002c324 addiu sp, sp, 0x90                |         
    0x0002c328 jr ra                             |         return v0;
                                                 | label_10:
    0x0002c32c lw a0, -0xc(v1)                   |         a0 = *((v1 - 3));
    0x0002c330 sltu a0, a0, s1                   |         a0 = (a0 < s1) ? 1 : 0;
    0x0002c334 addiu a3, a3, 1                   |         a3++;
    0x0002c338 bnel a0, zero, 0x2c2dc            |         
                                                 |     } while (a0 == 0);
    0x0002c33c addiu a2, a3, -1                  |     a2 = a3 + -1;
    0x0002c340 addiu v0, v0, -0xc                |     v0 += -0xc;
                                                 |     if (a2 <= 0) {
    0x0002c344 blez a2, 0x2c384                  |         goto label_12;
                                                 |     }
    0x0002c348 lw a0, -0x18(v1)                  |     a0 = *((v1 - 6));
    0x0002c34c sltu a0, a0, s1                   |     a0 = (a0 < s1) ? 1 : 0;
    0x0002c350 move a0, v1                       |     a0 = v1;
                                                 |     if (a0 != 0) {
    0x0002c354 bnez a0, 0x2c384                  |         goto label_12;
                                                 |     }
    0x0002c358 addiu t1, zero, -0x18             |     t1 = -0x18;
    0x0002c35c subu t1, t1, t0                   |     __asm ("subu t1, t1, t0");
    0x0002c360 b 0x2c378                         |     
                                                 |     while (a2 != 0) {
    0x0002c364 addiu a0, a0, -0xc                |         a0 += -0xc;
    0x0002c368 lw a1, -0x18(a0)                  |         a1 = *((a0 - 6));
    0x0002c36c sltu a1, a1, s1                   |         a1 = (a1 < s1) ? 1 : 0;
    0x0002c370 addu v0, t0, v0                   |         v0 = t0 + v0;
                                                 |         if (a1 == 0) {
    0x0002c374 bnel a1, zero, 0x2c388            |             goto label_13;
                                                 |         }
    0x0002c378 addiu a2, a2, -1                  |         a2 += -1;
    0x0002c37c addu v0, t1, a0                   |         v0 = t1 + a0;
    0x0002c380 bnez a2, 0x2c364                  |         
                                                 |     }
                                                 | label_12:
    0x0002c384 addu v0, t0, v0                   |     v0 = t0 + v0;
                                                 | label_13:
    0x0002c388 lw a0, (v0)                       |     a0 = *(v0);
                                                 |     if (a0 == s1) {
    0x0002c38c beql a0, s1, 0x2c2e8              |         goto label_0;
                                                 |     }
    0x0002c390 sw s1, (v0)                       |     *(v0) = s1;
    0x0002c394 addiu a0, a3, 1                   |     a0 = a3 + 1;
    0x0002c398 slt a3, a2, a3                    |     a3 = (a2 < a3) ? 1 : 0;
    0x0002c39c sw a0, (s0)                       |     *(s0) = a0;
                                                 |     if (a3 == 0) {
    0x0002c3a0 beqz a3, 0x2c2e4                  |         goto label_1;
                                                 |     }
    0x0002c3a4 sll a0, a2, 1                     |     a0 = a2 << 1;
    0x0002c3a8 addu a2, a0, a2                   |     a2 = a0 + a2;
    0x0002c3ac sll a2, a2, 2                     |     a2 <<= 2;
    0x0002c3b0 addu t0, t0, a2                   |     t0 += a2;
    0x0002c3b4 lw a2, -0xc(v1)                   |     a2 = *((v1 - 3));
                                                 |     do {
    0x0002c3b8 lw a1, -8(v1)                     |         a1 = *((v1 - 2));
    0x0002c3bc lw a0, -4(v1)                     |         a0 = *((v1 - 1));
    0x0002c3c0 sw a2, (v1)                       |         *(v1) = a2;
    0x0002c3c4 sw a1, 4(v1)                      |         *((v1 + 1)) = a1;
    0x0002c3c8 sw a0, 8(v1)                      |         *((v1 + 2)) = a0;
    0x0002c3cc addiu v1, v1, -0xc                |         v1 += -0xc;
    0x0002c3d0 lw a2, -0xc(v1)                   |         a2 = *((v1 - 3));
    0x0002c3d4 bnel t0, v1, 0x2c3b8              |         
                                                 |     } while (t0 == v1);
    0x0002c3d8 sw s1, (v0)                       |     *(v0) = s1;
    0x0002c3dc b 0x2c2e8                         |     goto label_0;
                                                 | label_9:
    0x0002c3e0 addiu a1, sp, 0x30                |     a1 = sp + 0x30;
    0x0002c3e4 move a0, s0                       |     a0 = s0;
    0x0002c3e8 sw s1, 0x30(sp)                   |     *(var_30h) = s1;
    0x0002c3ec sw s3, 0x38(sp)                   |     *(var_38h_2) = s3;
                                                 |     /* fcn.0002bf30 */
    0x0002c3f0 addiu t9, t9, -0x40d0             |     t9 += -0x40d0;
    0x0002c3f4 sw s3, 0x34(sp)                   |     *(var_34h_3) = s3;
    0x0002c3f8 bal 0x2bf30                       |     fcn_0002bf30 ();
    0x0002c3fc lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0002c400 b 0x2c2f0                         |     goto label_2;
                                                 | label_8:
    0x0002c404 addiu s5, s0, 8                   |     s5 = s0 + 8;
    0x0002c408 sw a1, 4(s0)                      |     *((s0 + 1)) = a1;
    0x0002c40c lwl a0, 3(s5)                     |     __asm ("lwl a0, 3(s5)");
    0x0002c410 sll v0, a1, 1                     |     v0 = a1 << 1;
    0x0002c414 lw t9, -0x79b0(gp)                |     t9 = sym.imp.realloc;
    0x0002c418 lwr a0, (s5)                      |     __asm ("lwr a0, (s5)");
    0x0002c41c addu a1, v0, a1                   |     a1 = v0 + a1;
    0x0002c420 lw s6, 8(s0)                      |     s6 = *((s0 + 2));
    0x0002c424 sll a1, a1, 2                     |     a1 <<= 2;
    0x0002c428 sw a0, 0x30(sp)                   |     *(var_30h) = a0;
    0x0002c42c jalr t9                           |     t9 ();
    0x0002c430 sw v0, 0x30(sp)                   |     *(var_30h) = v0;
    0x0002c434 lw gp, 0x18(sp)                   |     gp = *(var_18h);
                                                 |     if (v0 == 0) {
    0x0002c438 beqz v0, 0x2c690                  |         goto label_14;
                                                 |     }
    0x0002c43c swl v0, 3(s5)                     |     __asm ("swl v0, 3(s5)");
    0x0002c440 swr v0, (s5)                      |     __asm ("swr v0, (s5)");
    0x0002c444 lw s0, 0x1bc(s4)                  |     s0 = *(s4);
    0x0002c448 lw v0, 8(s0)                      |     v0 = *((s0 + 2));
    0x0002c44c sw zero, 0xc(s0)                  |     *((s0 + 3)) = 0;
                                                 |     if (v0 == s6) {
    0x0002c450 bnel v0, s6, 0x2c2b0              |         goto label_3;
                                                 |     }
    0x0002c454 lw v0, 0x14(s0)                   |     v0 = *((s0 + 5));
    0x0002c458 b 0x2c2b4                         |     goto label_4;
                                                 | label_7:
    0x0002c45c lw t9, -0x7ec8(gp)                |     t9 = sym.e2fsck_allocate_memory;
                                                 |     /* str.directory_map_db */
    0x0002c460 addiu a2, a2, 0x7dd8              |     a2 += 0x7dd8;
    0x0002c464 addiu a1, zero, 0x18              |     a1 = 0x18;
    0x0002c468 bal 0x29eb0                       |     sym_e2fsck_allocate_memory ();
    0x0002c46c lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0002c470 lw a0, (s4)                       |     a0 = *(s4);
    0x0002c474 sw zero, 4(v0)                    |     *((v0 + 1)) = 0;
    0x0002c478 lw t9, -0x7a8c(gp)                |     t9 = sym.imp.ext2fs_get_num_dirs;
    0x0002c47c sw zero, (v0)                     |     *(v0) = 0;
    0x0002c480 sw zero, 8(v0)                    |     *((v0 + 2)) = 0;
    0x0002c484 addiu a1, sp, 0x20                |     a1 = sp + 0x20;
    0x0002c488 sw v0, 0x1bc(s4)                  |     *(s4) = v0;
    0x0002c48c move s5, v0                       |     s5 = v0;
    0x0002c490 jalr t9                           |     t9 ();
    0x0002c494 lw gp, 0x18(sp)                   |     gp = *(var_18h);
                                                 |     if (v0 != 0) {
    0x0002c498 bnez v0, 0x2c680                  |         goto label_15;
                                                 |     }
    0x0002c49c lw s7, 0x20(sp)                   |     s7 = *(var_20h);
                                                 |     do {
    0x0002c4a0 lw s0, -0x7fd0(gp)                |         s0 = *(gp);
    0x0002c4a4 lw a2, -0x7fd0(gp)                |         a2 = *(gp);
    0x0002c4a8 lw a0, 0x29c(s4)                  |         a0 = *((s4 + 167));
    0x0002c4ac lw t9, -0x7f1c(gp)                |         t9 = sym.profile_get_string;
    0x0002c4b0 addiu v0, sp, 0x28                |         v0 = sp + 0x28;
    0x0002c4b4 move a3, zero                     |         a3 = 0;
                                                 |         /* str.directory */
    0x0002c4b8 addiu a2, a2, 0x6dc0              |         a2 += 0x6dc0;
                                                 |         /* str.scratch_files */
    0x0002c4bc addiu a1, s0, 0x6dcc              |         a1 = s0 + 0x6dcc;
    0x0002c4c0 sw v0, 0x14(sp)                   |         *(var_14h) = v0;
    0x0002c4c4 sw zero, 0x10(sp)                 |         *(var_10h_2) = 0;
    0x0002c4c8 lw s6, 0x1bc(s4)                  |         s6 = *(s4);
    0x0002c4cc bal 0x3b130                       |         sym_profile_get_string ();
    0x0002c4d0 lw gp, 0x18(sp)                   |         gp = *(var_18h);
    0x0002c4d4 lw a0, 0x29c(s4)                  |         a0 = *((s4 + 167));
    0x0002c4d8 addiu v0, sp, 0x24                |         v0 = sp + 0x24;
    0x0002c4dc lw a2, -0x7fd0(gp)                |         a2 = *(gp);
    0x0002c4e0 lw t9, -0x7e78(gp)                |         t9 = sym.profile_get_uint;
    0x0002c4e4 move a3, zero                     |         a3 = 0;
                                                 |         /* str.numdirs_threshold */
    0x0002c4e8 addiu a2, a2, 0x6ddc              |         a2 += 0x6ddc;
                                                 |         /* str.scratch_files */
    0x0002c4ec addiu a1, s0, 0x6dcc              |         a1 = s0 + 0x6dcc;
    0x0002c4f0 sw v0, 0x14(sp)                   |         *(var_14h) = v0;
    0x0002c4f4 sw zero, 0x10(sp)                 |         *(var_10h_2) = 0;
    0x0002c4f8 bal 0x3b38c                       |         sym_profile_get_uint ();
    0x0002c4fc lw gp, 0x18(sp)                   |         gp = *(var_18h);
    0x0002c500 addiu v0, sp, 0x2c                |         v0 = sp + 0x2c;
    0x0002c504 lw a0, 0x29c(s4)                  |         a0 = *((s4 + 167));
    0x0002c508 lw a2, -0x7fd0(gp)                |         a2 = *(gp);
    0x0002c50c lw t9, -0x7fac(gp)                |         t9 = sym.profile_get_boolean;
    0x0002c510 sw v0, 0x14(sp)                   |         *(var_14h) = v0;
    0x0002c514 addiu v0, zero, 1                 |         v0 = 1;
    0x0002c518 sw v0, 0x10(sp)                   |         *(var_10h_2) = v0;
    0x0002c51c move a3, zero                     |         a3 = 0;
                                                 |         /* str.dirinfo */
    0x0002c520 addiu a2, a2, 0x7dec              |         a2 += 0x7dec;
                                                 |         /* str.scratch_files */
    0x0002c524 addiu a1, s0, 0x6dcc              |         a1 = s0 + 0x6dcc;
    0x0002c528 bal 0x3b63c                       |         sym_profile_get_boolean ();
    0x0002c52c lw v0, 0x2c(sp)                   |         v0 = *(var_2ch_2);
    0x0002c530 lw gp, 0x18(sp)                   |         gp = *(var_18h);
                                                 |         if (v0 != 0) {
    0x0002c534 beqz v0, 0x2c66c                  |             
    0x0002c538 lw a0, 0x28(sp)                   |             a0 = *(var_28h);
    0x0002c53c lw t9, -0x7b04(gp)                |             t9 = sym.imp.access;
                                                 |             if (a0 == 0) {
    0x0002c540 beqz a0, 0x2c66c                  |                 goto label_6;
                                                 |             }
    0x0002c544 addiu a1, zero, 2                 |             a1 = 2;
    0x0002c548 jalr t9                           |             t9 ();
    0x0002c54c lw gp, 0x18(sp)                   |             gp = *(var_18h);
                                                 |             if (v0 != 0) {
    0x0002c550 bnez v0, 0x2c66c                  |                 goto label_6;
                                                 |             }
    0x0002c554 lw v0, 0x24(sp)                   |             v0 = *(var_24h);
    0x0002c558 sltu v0, v0, s7                   |             v0 = (v0 < s7) ? 1 : 0;
                                                 |             if (v0 != 0) {
    0x0002c55c beqz v0, 0x2c568                  |                 
                                                 |                 if (v0 == 0) {
    0x0002c560 beql v0, zero, 0x2c670            |                     goto label_16;
                                                 |                 }
    0x0002c564 lw v0, 0x14(s5)                   |                 v0 = *((s5 + 5));
                                                 |             }
    0x0002c568 lw t9, -0x7a54(gp)                |             t9 = sym.imp.strlen;
    0x0002c56c lw a0, 0x28(sp)                   |             a0 = *(var_28h);
    0x0002c570 addiu s0, s6, 0x10                |             s0 = s6 + 0x10;
    0x0002c574 jalr t9                           |             t9 ();
    0x0002c578 lw gp, 0x18(sp)                   |             gp = *(var_18h);
    0x0002c57c lw t9, -0x79bc(gp)                |             t9 = sym.imp.malloc;
    0x0002c580 addiu a0, v0, 0x40                |             a0 = v0 + 0x40;
    0x0002c584 jalr t9                           |             t9 ();
    0x0002c588 sw v0, 0x30(sp)                   |             *(var_30h) = v0;
    0x0002c58c lw gp, 0x18(sp)                   |             gp = *(var_18h);
                                                 |             if (v0 == 0) {
    0x0002c590 beqz v0, 0x2c66c                  |                 goto label_6;
                                                 |             }
    0x0002c594 swl v0, 0x13(s6)                  |             __asm ("swl v0, 0x13(s6)");
    0x0002c598 swr v0, (s0)                      |             __asm ("swr v0, (s0)");
    0x0002c59c lw v0, (s4)                       |             v0 = *(s4);
    0x0002c5a0 lw t9, -0x77a4(gp)                |             t9 = sym.imp.uuid_unparse;
    0x0002c5a4 addiu s0, sp, 0x3c                |             s0 = sp + 0x3c;
    0x0002c5a8 lw a0, 0x10(v0)                   |             a0 = *((v0 + 4));
    0x0002c5ac move a1, s0                       |             a1 = s0;
    0x0002c5b0 addiu a0, a0, 0x68                |             a0 += 0x68;
    0x0002c5b4 jalr t9                           |             t9 ();
    0x0002c5b8 lw gp, 0x18(sp)                   |             gp = *(var_18h);
    0x0002c5bc lw v0, 0x28(sp)                   |             v0 = *(var_28h);
    0x0002c5c0 lw a0, 0x10(s6)                   |             a0 = *((s6 + 4));
    0x0002c5c4 lw a3, -0x7fd0(gp)                |             a3 = *(gp);
    0x0002c5c8 lw t9, -0x7cd4(gp)                |             t9 = sym.imp.__sprintf_chk;
                                                 |             /* str._s__s_dirinfo_XXXXXX */
    0x0002c5cc addiu a3, a3, 0x7df4              |             a3 += 0x7df4;
    0x0002c5d0 addiu a2, zero, -1                |             a2 = -1;
    0x0002c5d4 addiu a1, zero, 1                 |             a1 = 1;
    0x0002c5d8 sw s0, 0x14(sp)                   |             *(var_14h) = s0;
    0x0002c5dc sw v0, 0x10(sp)                   |             *(var_10h_2) = v0;
    0x0002c5e0 jalr t9                           |             t9 ();
    0x0002c5e4 lw gp, 0x18(sp)                   |             gp = *(var_18h);
    0x0002c5e8 lw t9, -0x7c70(gp)                |             t9 = sym.imp.umask;
    0x0002c5ec addiu a0, zero, 0x3f              |             a0 = 0x3f;
    0x0002c5f0 jalr t9                           |             t9 ();
    0x0002c5f4 lw gp, 0x18(sp)                   |             gp = *(var_18h);
    0x0002c5f8 lw a0, 0x10(s6)                   |             a0 = *((s6 + 4));
    0x0002c5fc lw t9, -0x7a7c(gp)                |             t9 = sym.imp.mkstemp;
    0x0002c600 move fp, v0                       |             fp = v0;
    0x0002c604 jalr t9                           |             t9 ();
    0x0002c608 lw gp, 0x18(sp)                   |             gp = *(var_18h);
    0x0002c60c move s0, v0                       |             s0 = v0;
    0x0002c610 lw t9, -0x7c70(gp)                |             t9 = sym.imp.umask;
    0x0002c614 move a0, fp                       |             a0 = fp;
    0x0002c618 jalr t9                           |             t9 ();
    0x0002c61c lw gp, 0x18(sp)                   |             gp = *(var_18h);
                                                 |             if (s0 < 0) {
    0x0002c620 bltz s0, 0x2c718                  |                 goto label_17;
                                                 |             }
    0x0002c624 lui v0, 1                         |             v0 = 0x18697;
    0x0002c628 ori v0, v0, 0x8697                |             
    0x0002c62c sltu a1, s7, v0                   |             a1 = (s7 < v0) ? 1 : 0;
                                                 |             if (a1 != 0) {
    0x0002c630 movz v0, s7, a1                   |                 v0 = s7;
                                                 |             }
    0x0002c634 lw t9, -0x7b00(gp)                |             t9 = sym.imp.ext2fs_tdb_open;
    0x0002c638 move a1, v0                       |             a1 = v0;
    0x0002c63c lw a0, 0x10(s6)                   |             a0 = *((s6 + 4));
    0x0002c640 addiu v0, zero, 0x180             |             v0 = aav.0x00000180;
    0x0002c644 addiu a3, zero, 0x302             |             a3 = 0x302;
    0x0002c648 addiu a2, zero, 0x44              |             a2 = 0x44;
    0x0002c64c sw v0, 0x10(sp)                   |             *(var_10h_2) = v0;
    0x0002c650 jalr t9                           |             t9 ();
    0x0002c654 lw gp, 0x18(sp)                   |             gp = *(var_18h);
    0x0002c658 sw v0, 0x14(s6)                   |             *((s6 + 5)) = v0;
    0x0002c65c lw t9, -0x7cb0(gp)                |             t9 = sym.imp.close;
    0x0002c660 move a0, s0                       |             a0 = s0;
    0x0002c664 jalr t9                           |             t9 ();
    0x0002c668 lw gp, 0x18(sp)                   |             gp = *(var_18h);
                                                 |         }
                                                 | label_6:
    0x0002c66c lw v0, 0x14(s5)                   |         v0 = *((s5 + 5));
                                                 | label_16:
    0x0002c670 lw v0, 0x20(sp)                   |         v0 = *(var_20h);
                                                 |         if (v0 == 0) {
    0x0002c674 beqz v0, 0x2c6e0                  |             goto label_18;
                                                 |         }
    0x0002c678 lw s0, 0x1bc(s4)                  |         s0 = *(s4);
    0x0002c67c b 0x2c29c                         |         goto label_5;
                                                 | label_15:
    0x0002c680 addiu v0, zero, 0x400             |         v0 = aav.0x00000400;
    0x0002c684 sw v0, 0x20(sp)                   |         *(var_20h) = v0;
    0x0002c688 addiu s7, zero, 0x400             |         s7 = aav.0x00000400;
    0x0002c68c b 0x2c4a0                         |         
                                                 |     } while (1);
                                                 | label_14:
    0x0002c690 lw v0, 0x1bc(s4)                  |     v0 = *(s4);
    0x0002c694 lw a2, -0x7fd0(gp)                |     a2 = *(gp);
    0x0002c698 lw t9, -0x7c2c(gp)                |     t9 = sym.imp.__fprintf_chk
    0x0002c69c lw a3, 4(v0)                      |     a3 = *((v0 + 1));
    0x0002c6a0 lw v0, -0x77dc(gp)                |     v0 = *((gp - 7671));
                                                 |     /* str.Couldnt_reallocate_dir_info_structure_to__d_entries_n */
    0x0002c6a4 addiu a2, a2, 0x7e1c              |     a2 += 0x7e1c;
    0x0002c6a8 addiu a1, zero, 1                 |     a1 = 1;
    0x0002c6ac lw a0, (v0)                       |     a0 = *(v0);
    0x0002c6b0 jalr t9                           |     t9 ();
    0x0002c6b4 lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0002c6b8 move a1, zero                     |     a1 = 0;
    0x0002c6bc lw t9, -0x7fb8(gp)                |     t9 = sym.fatal_error;
    0x0002c6c0 move a0, s4                       |     a0 = s4;
    0x0002c6c4 bal 0x29d10                       |     sym_fatal_error ();
    0x0002c6c8 lw v1, 0x1bc(s4)                  |     v1 = *(s4);
    0x0002c6cc lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0002c6d0 lw v0, 4(v1)                      |     v0 = *((v1 + 1));
    0x0002c6d4 addiu v0, v0, -0xa                |     v0 += -0xa;
    0x0002c6d8 sw v0, 4(v1)                      |     *((v1 + 1)) = v0;
    0x0002c6dc b 0x2c2f0                         |     goto label_2;
                                                 | label_18:
    0x0002c6e0 lw a2, -0x7fd0(gp)                |     a2 = *(gp);
    0x0002c6e4 addiu v0, v0, 0xa                 |     v0 += 0xa;
    0x0002c6e8 sll a1, v0, 1                     |     a1 = v0 << 1;
    0x0002c6ec lw t9, -0x7ec8(gp)                |     t9 = sym.e2fsck_allocate_memory;
    0x0002c6f0 addu a1, a1, v0                   |     a1 += v0;
    0x0002c6f4 sw v0, 4(s5)                      |     *((s5 + 1)) = v0;
                                                 |     /* str.directory_map */
    0x0002c6f8 addiu a2, a2, 0x7e0c              |     a2 += 0x7e0c;
    0x0002c6fc sll a1, a1, 2                     |     a1 <<= 2;
    0x0002c700 move a0, s4                       |     a0 = s4;
    0x0002c704 bal 0x29eb0                       |     sym_e2fsck_allocate_memory ();
    0x0002c708 lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0002c70c lw s0, 0x1bc(s4)                  |     s0 = *(s4);
    0x0002c710 sw v0, 8(s5)                      |     *((s5 + 2)) = v0;
    0x0002c714 b 0x2c29c                         |     goto label_5;
                                                 | label_17:
    0x0002c718 sw zero, 0x14(s6)                 |     *((s6 + 5)) = 0;
    0x0002c71c b 0x2c66c                         |     goto label_6;
                                                 | label_11:
    0x0002c720 lw t9, -0x78a4(gp)                |     t9 = sym.imp.__stack_chk_fail;
    0x0002c724 jalr t9                           |     t9 ();
    0x0002c728 nop                               |     
                                                 | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/fsck.ext3 @ 0x2cd20 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) sym.e2fsck_add_dx_dir ()         | void e2fsck_add_dx_dir () {
    0x0002cd20 lui gp, 4                     |     
    0x0002cd24 addiu gp, gp, -0x2f60         |     
    0x0002cd28 addu gp, gp, t9               |     gp += t9;
    0x0002cd2c addiu sp, sp, -0x40           |     
    0x0002cd30 lw v0, 0x1c8(a0)              |     v0 = *(a0);
    0x0002cd34 sw s3, 0x30(sp)               |     *(var_30h) = s3;
    0x0002cd38 lw s3, -0x7838(gp)            |     s3 = *((gp - 7694));
    0x0002cd3c sw gp, 0x10(sp)               |     *(var_10h) = gp;
    0x0002cd40 sw s5, 0x38(sp)               |     *(var_38h) = s5;
    0x0002cd44 lw v1, (s3)                   |     v1 = *(s3);
    0x0002cd48 sw s4, 0x34(sp)               |     *(var_34h) = s4;
    0x0002cd4c sw s2, 0x2c(sp)               |     *(var_2ch) = s2;
    0x0002cd50 sw s1, 0x28(sp)               |     *(var_28h) = s1;
    0x0002cd54 sw ra, 0x3c(sp)               |     *(var_3ch) = ra;
    0x0002cd58 sw s0, 0x24(sp)               |     *(var_24h) = s0;
    0x0002cd5c move s1, a0                   |     s1 = a0;
    0x0002cd60 move s2, a1                   |     s2 = a1;
    0x0002cd64 move s4, a2                   |     s4 = a2;
    0x0002cd68 move s5, a3                   |     s5 = a3;
    0x0002cd6c sw v1, 0x1c(sp)               |     *(var_1ch) = v1;
    0x0002cd70 lw a2, -0x7fd0(gp)            |     a2 = *(gp);
                                             |     if (v0 == 0) {
    0x0002cd74 beqz v0, 0x2cf30              |         goto label_2;
                                             |     }
                                             | label_1:
    0x0002cd78 lw v1, 0x1c0(s1)              |     v1 = *(s1);
    0x0002cd7c lw a1, 0x1c4(s1)              |     a1 = *(s1);
    0x0002cd80 slt v0, v1, a1                |     v0 = (v1 < a1) ? 1 : 0;
                                             |     if (v0 == 0) {
    0x0002cd84 beql v0, zero, 0x2ceec        |         goto label_3;
                                             |     }
    0x0002cd88 addiu a1, a1, 0xa             |     a1 += 0xa;
                                             | label_0:
    0x0002cd8c sll s0, v1, 1                 |     s0 = v1 << 1;
    0x0002cd90 addu s0, s0, v1               |     s0 += v1;
    0x0002cd94 lw t0, 0x1c8(s1)              |     t0 = *(s1);
    0x0002cd98 sll s0, s0, 3                 |     s0 <<= 3;
    0x0002cd9c addu v0, t0, s0               |     v0 = t0 + s0;
                                             |     if (v1 == 0) {
    0x0002cda0 beqz v1, 0x2ce6c              |         goto label_4;
                                             |     }
    0x0002cda4 lw a0, -0x18(v0)              |     a0 = *((v0 - 6));
    0x0002cda8 sltu a0, a0, s2               |     a0 = (a0 < s2) ? 1 : 0;
    0x0002cdac addiu v1, v1, 1               |     v1++;
                                             |     if (a0 == 0) {
    0x0002cdb0 bnel a0, zero, 0x2ce70        |         goto label_5;
                                             |     }
    0x0002cdb4 addiu a2, v1, -1              |     a2 = v1 + -1;
    0x0002cdb8 addiu s0, s0, -0x18           |     s0 += -0x18;
                                             |     if (a2 <= 0) {
    0x0002cdbc blez a2, 0x2cdfc              |         goto label_6;
                                             |     }
    0x0002cdc0 lw a0, -0x30(v0)              |     a0 = *((v0 - 12));
    0x0002cdc4 sltu a0, a0, s2               |     a0 = (a0 < s2) ? 1 : 0;
    0x0002cdc8 move a0, v0                   |     a0 = v0;
                                             |     if (a0 != 0) {
    0x0002cdcc bnez a0, 0x2cdfc              |         goto label_6;
                                             |     }
    0x0002cdd0 addiu a3, zero, -0x30         |     a3 = -0x30;
    0x0002cdd4 subu a3, a3, t0               |     __asm ("subu a3, a3, t0");
    0x0002cdd8 b 0x2cdf0                     |     
                                             |     while (a2 != 0) {
    0x0002cddc addiu a0, a0, -0x18           |         a0 += -0x18;
    0x0002cde0 lw a1, -0x30(a0)              |         a1 = *((a0 - 12));
    0x0002cde4 sltu a1, a1, s2               |         a1 = (a1 < s2) ? 1 : 0;
    0x0002cde8 addu s0, t0, s0               |         s0 = t0 + s0;
                                             |         if (a1 == 0) {
    0x0002cdec bnel a1, zero, 0x2ce00        |             goto label_7;
                                             |         }
    0x0002cdf0 addiu a2, a2, -1              |         a2 += -1;
    0x0002cdf4 addu s0, a3, a0               |         s0 = a3 + a0;
    0x0002cdf8 bnez a2, 0x2cddc              |         
                                             |     }
                                             | label_6:
    0x0002cdfc addu s0, t0, s0               |     s0 = t0 + s0;
                                             | label_7:
    0x0002ce00 lw a0, (s0)                   |     a0 = *(s0);
    0x0002ce04 addiu a0, v1, 1               |     a0 = v1 + 1;
                                             |     if (a0 == s2) {
    0x0002ce08 beq a0, s2, 0x2ce78           |         goto label_8;
                                             |     }
    0x0002ce0c slt v1, a2, v1                |     v1 = (a2 < v1) ? 1 : 0;
    0x0002ce10 sw a0, 0x1c0(s1)              |     *(s1) = a0;
                                             |     if (v1 == 0) {
    0x0002ce14 beqz v1, 0x2ce78              |         goto label_8;
                                             |     }
    0x0002ce18 sll v1, a2, 1                 |     v1 = a2 << 1;
    0x0002ce1c addu a2, v1, a2               |     a2 = v1 + a2;
    0x0002ce20 sll a2, a2, 3                 |     a2 <<= 3;
    0x0002ce24 addu t0, t0, a2               |     t0 += a2;
    0x0002ce28 lw t1, -0x18(v0)              |     t1 = *((v0 - 6));
                                             |     do {
    0x0002ce2c lw a3, -0x14(v0)              |         a3 = *((v0 - 5));
    0x0002ce30 lw a2, -0x10(v0)              |         a2 = *((v0 - 4));
    0x0002ce34 lw a1, -0xc(v0)               |         a1 = *((v0 - 3));
    0x0002ce38 lw a0, -8(v0)                 |         a0 = *((v0 - 2));
    0x0002ce3c lw v1, -4(v0)                 |         v1 = *((v0 - 1));
    0x0002ce40 sw t1, (v0)                   |         *(v0) = t1;
    0x0002ce44 sw a3, 4(v0)                  |         *((v0 + 1)) = a3;
    0x0002ce48 sw a2, 8(v0)                  |         *((v0 + 2)) = a2;
    0x0002ce4c sw a1, 0xc(v0)                |         *((v0 + 3)) = a1;
    0x0002ce50 sw a0, 0x10(v0)               |         *((v0 + 4)) = a0;
    0x0002ce54 sw v1, 0x14(v0)               |         *((v0 + 5)) = v1;
    0x0002ce58 addiu v0, v0, -0x18           |         v0 += -0x18;
    0x0002ce5c lw t1, -0x18(v0)              |         t1 = *((v0 - 6));
    0x0002ce60 bnel t0, v0, 0x2ce2c          |         
                                             |     } while (t0 == v0);
    0x0002ce64 lw v0, 0x20(s4)               |     v0 = *((s4 + 8));
    0x0002ce68 b 0x2ce7c                     |     goto label_9;
                                             | label_4:
    0x0002ce6c addiu v1, v1, 1               |     v1++;
                                             | label_5:
    0x0002ce70 sw v1, 0x1c0(s1)              |     *(s1) = v1;
    0x0002ce74 move s0, v0                   |     s0 = v0;
                                             | label_8:
    0x0002ce78 lw v0, 0x20(s4)               |     v0 = *((s4 + 8));
                                             | label_9:
    0x0002ce7c lw a2, -0x7fd0(gp)            |     a2 = *(gp);
    0x0002ce80 lui v1, 0x4000                |     v1 = 0x40000000;
    0x0002ce84 sll a1, s5, 3                 |     a1 = s5 << 3;
    0x0002ce88 lw t9, -0x7ec8(gp)            |     t9 = sym.e2fsck_allocate_memory;
    0x0002ce8c and v0, v0, v1                |     v0 &= v1;
    0x0002ce90 subu a1, a1, s5               |     __asm ("subu a1, a1, s5");
    0x0002ce94 sw s2, (s0)                   |     *(s0) = s2;
    0x0002ce98 sw s5, 4(s0)                  |     *((s0 + 1)) = s5;
    0x0002ce9c sw zero, 8(s0)                |     *((s0 + 2)) = 0;
    0x0002cea0 sw v0, 0x14(s0)               |     *((s0 + 5)) = v0;
                                             |     /* str.dx_block_info_array */
    0x0002cea4 addiu a2, a2, 0x7ef4          |     a2 += 0x7ef4;
    0x0002cea8 sll a1, a1, 3                 |     a1 <<= 3;
    0x0002ceac move a0, s1                   |     a0 = s1;
    0x0002ceb0 bal 0x29eb0                   |     sym_e2fsck_allocate_memory ();
    0x0002ceb4 lw gp, 0x10(sp)               |     gp = *(var_10h);
    0x0002ceb8 sw v0, 0x10(s0)               |     *((s0 + 4)) = v0;
                                             |     do {
    0x0002cebc lw v1, 0x1c(sp)               |         v1 = *(var_1ch);
    0x0002cec0 lw v0, (s3)                   |         v0 = *(s3);
    0x0002cec4 lw ra, 0x3c(sp)               |         ra = *(var_3ch);
                                             |         if (v1 != v0) {
    0x0002cec8 bne v1, v0, 0x2cfa0           |             goto label_10;
                                             |         }
    0x0002cecc lw s5, 0x38(sp)               |         s5 = *(var_38h);
    0x0002ced0 lw s4, 0x34(sp)               |         s4 = *(var_34h);
    0x0002ced4 lw s3, 0x30(sp)               |         s3 = *(var_30h);
    0x0002ced8 lw s2, 0x2c(sp)               |         s2 = *(var_2ch);
    0x0002cedc lw s1, 0x28(sp)               |         s1 = *(var_28h);
    0x0002cee0 lw s0, 0x24(sp)               |         s0 = *(var_24h);
    0x0002cee4 addiu sp, sp, 0x40            |         
    0x0002cee8 jr ra                         |         return v0;
                                             | label_3:
    0x0002ceec addiu s0, s1, 0x1c8           |         s0 = s1 + segment.ABIFLAGS;
    0x0002cef0 sw a1, 0x1c4(s1)              |         *(s1) = a1;
    0x0002cef4 lwl a0, 3(s0)                 |         __asm ("lwl a0, 3(s0)");
    0x0002cef8 sll v0, a1, 1                 |         v0 = a1 << 1;
    0x0002cefc lw t9, -0x79b0(gp)            |         t9 = sym.imp.realloc;
    0x0002cf00 lwr a0, (s0)                  |         __asm ("lwr a0, (s0)");
    0x0002cf04 addu a1, v0, a1               |         a1 = v0 + a1;
    0x0002cf08 sw a0, 0x18(sp)               |         *(var_18h) = a0;
    0x0002cf0c sll a1, a1, 3                 |         a1 <<= 3;
    0x0002cf10 jalr t9                       |         t9 ();
    0x0002cf14 sw v0, 0x18(sp)               |         *(var_18h) = v0;
    0x0002cf18 lw gp, 0x10(sp)               |         gp = *(var_10h);
                                             |         if (v0 != 0) {
    0x0002cf1c beqz v0, 0x2cf58              |             
    0x0002cf20 swl v0, 3(s0)                 |             __asm ("swl v0, 3(s0)");
    0x0002cf24 swr v0, (s0)                  |             __asm ("swr v0, (s0)");
    0x0002cf28 lw v1, 0x1c0(s1)              |             v1 = *(s1);
    0x0002cf2c b 0x2cd8c                     |             goto label_0;
                                             | label_2:
    0x0002cf30 lw t9, -0x7ec8(gp)            |             t9 = sym.e2fsck_allocate_memory;
    0x0002cf34 addiu v0, zero, 0x64          |             v0 = 0x64;
    0x0002cf38 sw zero, 0x1c0(a0)            |             *(a0) = 0;
    0x0002cf3c sw v0, 0x1c4(a0)              |             *(a0) = v0;
                                             |             /* str.directory_map */
    0x0002cf40 addiu a2, a2, 0x7e0c          |             a2 += 0x7e0c;
    0x0002cf44 addiu a1, zero, 0x960         |             a1 = 0x960;
    0x0002cf48 bal 0x29eb0                   |             sym_e2fsck_allocate_memory ();
    0x0002cf4c lw gp, 0x10(sp)               |             gp = *(var_10h);
    0x0002cf50 sw v0, 0x1c8(s1)              |             *(s1) = v0;
    0x0002cf54 b 0x2cd78                     |             goto label_1;
                                             |         }
    0x0002cf58 lw v0, -0x77dc(gp)            |         v0 = *((gp - 7671));
    0x0002cf5c lw a2, -0x7fd0(gp)            |         a2 = *(gp);
    0x0002cf60 lw t9, -0x7c2c(gp)            |         t9 = sym.imp.__fprintf_chk
    0x0002cf64 lw a3, 0x1c4(s1)              |         a3 = *(s1);
    0x0002cf68 lw a0, (v0)                   |         a0 = *(v0);
                                             |         /* str.Couldnt_reallocate_dx_dir_info_structure_to__d_entries_n */
    0x0002cf6c addiu a2, a2, 0x7eb8          |         a2 += 0x7eb8;
    0x0002cf70 addiu a1, zero, 1             |         a1 = 1;
    0x0002cf74 jalr t9                       |         t9 ();
    0x0002cf78 lw gp, 0x10(sp)               |         gp = *(var_10h);
    0x0002cf7c move a1, zero                 |         a1 = 0;
    0x0002cf80 lw t9, -0x7fb8(gp)            |         t9 = sym.fatal_error;
    0x0002cf84 move a0, s1                   |         a0 = s1;
    0x0002cf88 bal 0x29d10                   |         sym_fatal_error ();
    0x0002cf8c lw v0, 0x1c4(s1)              |         v0 = *(s1);
    0x0002cf90 lw gp, 0x10(sp)               |         gp = *(var_10h);
    0x0002cf94 addiu v0, v0, -0xa            |         v0 += -0xa;
    0x0002cf98 sw v0, 0x1c4(s1)              |         *(s1) = v0;
    0x0002cf9c b 0x2cebc                     |         
                                             |     } while (1);
                                             | label_10:
    0x0002cfa0 lw t9, -0x78a4(gp)            |     t9 = sym.imp.__stack_chk_fail;
    0x0002cfa4 jalr t9                       |     t9 ();
    0x0002cfa8 nop                           |     
                                             | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/fsck.ext3 @ 0x29d10 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) sym.fatal_error ()               | void fatal_error () {
    0x00029d10 lui gp, 4                     |     
    0x00029d14 addiu gp, gp, 0xb0            |     
    0x00029d18 addu gp, gp, t9               |     gp += t9;
    0x00029d1c addiu sp, sp, -0x28           |     
    0x00029d20 sw gp, 0x10(sp)               |     *(var_10h) = gp;
    0x00029d24 sw s1, 0x1c(sp)               |     *(var_1ch) = s1;
    0x00029d28 sw s0, 0x18(sp)               |     *(var_18h) = s0;
    0x00029d2c sw ra, 0x24(sp)               |     *(var_24h) = ra;
    0x00029d30 sw s2, 0x20(sp)               |     *(var_20h) = s2;
    0x00029d34 move s0, a0                   |     s0 = a0;
    0x00029d38 lw s1, (a0)                   |     s1 = *(a0);
                                             |     if (a1 != 0) {
    0x00029d3c beqz a1, 0x29d64              |         
    0x00029d40 lw v0, -0x77dc(gp)            |         v0 = *((gp - 7671));
    0x00029d44 lw a2, -0x7fd0(gp)            |         a2 = *(gp);
    0x00029d48 lw t9, -0x7c2c(gp)            |         t9 = sym.imp.__fprintf_chk
    0x00029d4c lw a0, (v0)                   |         a0 = *(v0);
    0x00029d50 move a3, a1                   |         a3 = a1;
                                             |         /* str.e2fsck:__s_n */
    0x00029d54 addiu a2, a2, 0x7954          |         a2 += 0x7954;
    0x00029d58 addiu a1, zero, 1             |         a1 = 1;
    0x00029d5c jalr t9                       |         t9 ();
    0x00029d60 lw gp, 0x10(sp)               |         gp = *(var_10h);
                                             |     }
    0x00029d64 addiu s2, zero, 8             |     s2 = 8;
                                             |     if (s1 == 0) {
    0x00029d68 beqz s1, 0x29dd8              |         goto label_2;
                                             |     }
    0x00029d6c lw v0, 4(s1)                  |     v0 = *((s1 + 1));
                                             |     if (v0 != 0) {
    0x00029d70 beql v0, zero, 0x29dc0        |         
    0x00029d74 lw v0, 8(s1)                  |         v0 = *((s1 + 2));
    0x00029d78 lw v0, 0x10(s1)               |         v0 = *((s1 + 4));
    0x00029d7c lw t9, -0x78b8(gp)            |         t9 = sym.imp.ext2fs_mmp_stop;
                                             |         if (v0 != 0) {
    0x00029d80 beqz v0, 0x29dbc              |             
    0x00029d84 lw a0, (s0)                   |             a0 = *(s0);
    0x00029d88 jalr t9                       |             t9 ();
    0x00029d8c lw v1, (s0)                   |             v1 = *(s0);
    0x00029d90 lui v0, 0x7f2b                |             v0 = 0x7f2bb705;
    0x00029d94 ori v0, v0, 0xb705            |             
    0x00029d98 lw a0, 4(v1)                  |             a0 = *((v1 + 1));
    0x00029d9c lw v1, (a0)                   |             v1 = *(a0);
    0x00029da0 lw gp, 0x10(sp)               |             gp = *(var_10h);
                                             |             if (v1 != v0) {
    0x00029da4 bne v1, v0, 0x29e88           |                 goto label_3;
                                             |             }
    0x00029da8 lw v0, 4(a0)                  |             v0 = *((a0 + 1));
    0x00029dac lw t9, 0x1c(v0)               |             t9 = *((v0 + 7));
    0x00029db0 jalr t9                       |             t9 ();
    0x00029db4 nop                           |             
    0x00029db8 lw gp, 0x10(sp)               |             gp = *(var_10h);
                                             |         }
                                             | label_1:
    0x00029dbc lw v0, 8(s1)                  |         v0 = *((s1 + 2));
                                             |     }
    0x00029dc0 andi v1, v0, 2                |     v1 = v0 & 2;
    0x00029dc4 addiu s2, zero, 8             |     s2 = 8;
                                             |     if (v1 != 0) {
    0x00029dc8 bnez v1, 0x29e54              |         goto label_4;
                                             |     }
                                             | label_0:
    0x00029dcc andi v0, v0, 8                |     v0 &= 8;
    0x00029dd0 lw a1, -0x7fd0(gp)            |     a1 = *(gp);
    0x00029dd4 beqz v0, 0x29e2c              |     
                                             |     while (1) {
                                             | label_2:
    0x00029dd8 lw v0, 0x24(s0)               |         v0 = *((s0 + 9));
    0x00029ddc ori v1, v0, 1                 |         v1 = v0 | 1;
    0x00029de0 andi v0, v0, 0x10             |         v0 &= 0x10;
    0x00029de4 sw v1, 0x24(s0)               |         *((s0 + 9)) = v1;
                                             |         if (v0 == 0) {
    0x00029de8 bnez v0, 0x29e1c              |             
    0x00029dec lw a0, 0x14(s0)               |             a0 = *((s0 + 5));
    0x00029df0 lw a2, -0x7fd0(gp)            |             a2 = *(gp);
                                             |             if (a0 != 0) {
    0x00029df4 beqz a0, 0x29e10              |                 
    0x00029df8 lw t9, -0x7c2c(gp)            |                 t9 = sym.imp.__fprintf_chk
    0x00029dfc move a3, s2                   |                 a3 = s2;
                                             |                 /* str.Exit_status:__d_n */
    0x00029e00 addiu a2, a2, 0x67a8          |                 a2 += 0x67a8;
    0x00029e04 addiu a1, zero, 1             |                 a1 = 1;
    0x00029e08 jalr t9                       |                 t9 ();
    0x00029e0c lw gp, 0x10(sp)               |                 gp = *(var_10h);
                                             |             }
    0x00029e10 lw t9, -0x7a08(gp)            |             t9 = sym.imp.exit;
    0x00029e14 move a0, s2                   |             a0 = s2;
    0x00029e18 jalr t9                       |             t9 ();
                                             |         }
    0x00029e1c lw t9, -0x7b4c(gp)            |         t9 = sym.imp.__longjmp_chk;
    0x00029e20 addiu a1, zero, 1             |         a1 = 1;
    0x00029e24 addiu a0, s0, 0x60            |         a0 = s0 + 0x60;
    0x00029e28 jalr t9                       |         t9 ();
    0x00029e2c lw t9, -0x7f68(gp)            |         t9 = sym.log_out;
    0x00029e30 lw a2, 0xc(s0)                |         a2 = *((s0 + 3));
    0x00029e34 addiu a1, a1, 0x6668          |         a1 += 0x6668;
    0x00029e38 move a0, s0                   |         a0 = s0;
    0x00029e3c bal 0x29b80                   |         sym_log_out ();
    0x00029e40 addiu v0, zero, -2            |         v0 = -2;
    0x00029e44 and s2, s2, v0                |         s2 &= v0;
    0x00029e48 lw gp, 0x10(sp)               |         gp = *(var_10h);
    0x00029e4c ori s2, s2, 4                 |         s2 |= 4;
    0x00029e50 b 0x29dd8                     |         
                                             |     }
                                             | label_4:
    0x00029e54 lw a1, -0x7fd0(gp)            |     a1 = *(gp);
    0x00029e58 lw t9, -0x7f68(gp)            |     t9 = sym.log_out;
    0x00029e5c lw a2, 0xc(s0)                |     a2 = *((s0 + 3));
                                             |     /* str._n_s:__FILE_SYSTEM_WAS_MODIFIED__n */
    0x00029e60 addiu a1, a1, 0x661c          |     a1 += 0x661c;
    0x00029e64 move a0, s0                   |     a0 = s0;
    0x00029e68 bal 0x29b80                   |     sym_log_out ();
    0x00029e6c lw v0, 0x54(s0)               |     v0 = *((s0 + 21));
    0x00029e70 andi v0, v0, 2                |     v0 &= 2;
    0x00029e74 lw gp, 0x10(sp)               |     gp = *(var_10h);
                                             |     if (v0 != 0) {
    0x00029e78 beqz v0, 0x29ea4              |         
    0x00029e7c addiu s2, zero, 0xb           |         s2 = 0xb;
    0x00029e80 lw v0, 8(s1)                  |         v0 = *((s1 + 2));
    0x00029e84 b 0x29dcc                     |         goto label_0;
                                             | label_3:
    0x00029e88 lw a1, -0x7fd0(gp)            |         a1 = *(gp);
    0x00029e8c lw t9, -0x7f60(gp)            |         t9 = sym.log_err;
                                             |         /* str.e2fsck:_io_manager_magic_bad__n */
    0x00029e90 addiu a1, a1, 0x7960          |         a1 += 0x7960;
    0x00029e94 move a0, s0                   |         a0 = s0;
    0x00029e98 bal 0x29c48                   |         sym_log_err ();
    0x00029e9c lw gp, 0x10(sp)               |         gp = *(var_10h);
    0x00029ea0 b 0x29dbc                     |         goto label_1;
                                             |     }
    0x00029ea4 lw v0, 8(s1)                  |     v0 = *((s1 + 2));
    0x00029ea8 addiu s2, zero, 9             |     s2 = 9;
    0x00029eac b 0x29dcc                     |     goto label_0;
                                             | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/fsck.ext3 @ 0x2d7bc */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) sym.fix_problem ()               | void fix_problem () {
                                             | label_5:
    0x0002d7bc lui gp, 4                     |     
    0x0002d7c0 addiu gp, gp, -0x39fc         |     
    0x0002d7c4 addu gp, gp, t9               |     gp += t9;
    0x0002d7c8 lw v0, -0x7838(gp)            |     v0 = *((gp - 7694));
    0x0002d7cc lw a3, -0x7fc8(gp)            |     a3 = *((gp - 8178));
    0x0002d7d0 addiu sp, sp, -0x78           |     
    0x0002d7d4 lw v1, (v0)                   |     v1 = *(v0);
    0x0002d7d8 sw v0, 0x20(sp)               |     *(var_20h) = v0;
    0x0002d7dc sw v1, 0x4c(sp)               |     *(var_4ch) = v1;
    0x0002d7e0 lw v0, -0xf20(a3)             |     v0 = *((a3 - 968));
    0x0002d7e4 lw v1, (a0)                   |     v1 = *(a0);
    0x0002d7e8 sw gp, 0x18(sp)               |     *(var_18h) = gp;
    0x0002d7ec sw s4, 0x60(sp)               |     *(var_60h) = s4;
    0x0002d7f0 sw ra, 0x74(sp)               |     *(var_74h) = ra;
    0x0002d7f4 sw fp, 0x70(sp)               |     *(var_70h) = fp;
    0x0002d7f8 sw s7, 0x6c(sp)               |     *(var_6ch) = s7;
    0x0002d7fc sw s6, 0x68(sp)               |     *(var_68h) = s6;
    0x0002d800 sw s5, 0x64(sp)               |     *(var_64h) = s5;
    0x0002d804 sw s3, 0x5c(sp)               |     *(var_5ch) = s3;
    0x0002d808 sw s2, 0x58(sp)               |     *(var_58h) = s2;
    0x0002d80c sw s1, 0x54(sp)               |     *(var_54h) = s1;
    0x0002d810 sw s0, 0x50(sp)               |     *(var_50h) = s0;
    0x0002d814 move s4, a1                   |     s4 = a1;
    0x0002d818 sw v1, 0x28(sp)               |     *(var_28h) = v1;
                                             |     if (v0 == 0) {
    0x0002d81c beqz v0, 0x2d850              |         goto label_44;
                                             |     }
    0x0002d820 move s6, a0                   |     s6 = a0;
    0x0002d824 move s2, a2                   |     s2 = a2;
                                             |     if (v0 == a1) {
    0x0002d828 beq v0, a1, 0x2e5b8           |         goto label_45;
                                             |     }
    0x0002d82c lw v0, -0x7fc8(gp)            |     v0 = *((gp - 8178));
    0x0002d830 move s0, zero                 |     s0 = 0;
    0x0002d834 addiu v0, v0, -0xf04          |     v0 += -aav.0x00000f04;
    0x0002d838 b 0x2d844                     |     
                                             |     while (v1 != 0) {
    0x0002d83c addiu v0, v0, 0x1c            |         v0 += 0x1c;
                                             |         if (s4 == v1) {
    0x0002d840 beq s4, v1, 0x2d8b4           |             goto label_46;
                                             |         }
    0x0002d844 lw v1, (v0)                   |         v1 = *(v0);
    0x0002d848 addiu s0, s0, 1               |         s0++;
    0x0002d84c bnez v1, 0x2d83c              |         
                                             |     }
                                             | label_44:
    0x0002d850 lw a1, -0x7fa8(gp)            |     a1 = *((gp - 8170));
    0x0002d854 lw t9, -0x7b28(gp)            |     t9 = sym.imp.__printf_chk;
    0x0002d858 move a2, s4                   |     a2 = s4;
                                             |     /* str.Unhandled_error_code__0x_x___n */
    0x0002d85c addiu a1, a1, -0x7e30         |     a1 += -0x7e30;
    0x0002d860 addiu a0, zero, 1             |     a0 = 1;
    0x0002d864 jalr t9                       |     t9 ();
    0x0002d868 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0002d86c move s5, zero                 |     s5 = 0;
                                             | label_3:
    0x0002d870 lw v0, 0x20(sp)               |     v0 = *(var_20h);
                                             | label_2:
    0x0002d874 lw a0, 0x4c(sp)               |     a0 = *(var_4ch);
    0x0002d878 lw v1, (v0)                   |     v1 = *(v0);
    0x0002d87c move v0, s5                   |     v0 = s5;
                                             |     if (a0 != v1) {
    0x0002d880 bne a0, v1, 0x2e6ac           |         goto label_47;
                                             |     }
    0x0002d884 lw ra, 0x74(sp)               |     ra = *(var_74h);
    0x0002d888 lw fp, 0x70(sp)               |     fp = *(var_70h);
    0x0002d88c lw s7, 0x6c(sp)               |     s7 = *(var_6ch);
    0x0002d890 lw s6, 0x68(sp)               |     s6 = *(var_68h);
    0x0002d894 lw s5, 0x64(sp)               |     s5 = *(var_64h);
    0x0002d898 lw s4, 0x60(sp)               |     s4 = *(var_60h);
    0x0002d89c lw s3, 0x5c(sp)               |     s3 = *(var_5ch);
    0x0002d8a0 lw s2, 0x58(sp)               |     s2 = *(var_58h);
    0x0002d8a4 lw s1, 0x54(sp)               |     s1 = *(var_54h);
    0x0002d8a8 lw s0, 0x50(sp)               |     s0 = *(var_50h);
    0x0002d8ac addiu sp, sp, 0x78            |     
    0x0002d8b0 jr ra                         |     return v0;
                                             | label_46:
    0x0002d8b4 sll t2, s0, 3                 |     t2 = s0 << 3;
    0x0002d8b8 subu t3, t2, s0               |     __asm ("subu t3, t2, s0");
    0x0002d8bc sll fp, t3, 2                 |     fp = t3 << 2;
    0x0002d8c0 addiu s3, a3, -0xf20          |     s3 = a3 + -0xf20;
    0x0002d8c4 addu v0, s3, fp               |     v0 = s3 + fp;
    0x0002d8c8 sw v0, 0x24(sp)               |     *(var_24h) = v0;
                                             | label_34:
    0x0002d8cc subu s5, t2, s0               |     __asm ("subu s5, t2, s0");
    0x0002d8d0 sll s5, s5, 2                 |     s5 <<= 2;
    0x0002d8d4 addu s5, s3, s5               |     s5 = s3 + s5;
    0x0002d8d8 lw v0, 0xc(s5)                |     v0 = *((s5 + 3));
    0x0002d8dc ext v0, v0, 0x13, 1           |     __asm ("ext v0, v0, 0x13, 1");
    0x0002d8e0 lw s7, -0x7fd0(gp)            |     s7 = *(gp);
                                             |     if (v0 == 0) {
    0x0002d8e4 beqz v0, 0x2def8              |         goto label_48;
                                             |     }
                                             | label_12:
    0x0002d8e8 subu v0, t2, s0               |     __asm ("subu v0, t2, s0");
    0x0002d8ec sll v0, v0, 2                 |     v0 <<= 2;
    0x0002d8f0 addu v0, s3, v0               |     v0 = s3 + v0;
    0x0002d8f4 lw a0, 0x14(v0)               |     a0 = *((v0 + 5));
    0x0002d8f8 lw s1, 0xc(v0)                |     s1 = *((v0 + 3));
    0x0002d8fc addiu a0, a0, 1               |     a0++;
    0x0002d900 andi s5, s1, 4                |     s5 = s1 & 4;
    0x0002d904 sw a0, 0x14(v0)               |     *((v0 + 5)) = a0;
                                             |     if (s5 != 0) {
    0x0002d908 bnez s5, 0x2da7c              |         goto label_49;
                                             |     }
    0x0002d90c ext v0, s1, 0x11, 1           |     __asm ("ext v0, s1, 0x11, 1");
    0x0002d910 lw a0, 0x28(s6)               |     a0 = *((s6 + 10));
                                             |     if (v0 == 0) {
    0x0002d914 beqz v0, 0x2d994              |         goto label_50;
                                             |     }
    0x0002d918 andi v0, a0, 2                |     v0 = a0 & 2;
                                             |     if (v0 == 0) {
    0x0002d91c beql v0, zero, 0x2d998        |         goto label_51;
                                             |     }
    0x0002d920 andi s5, a0, 8                |     s5 = a0 & 8;
                                             | label_1:
    0x0002d924 andi s1, s1, 0xff0            |     s1 &= 0xff0;
    0x0002d928 move s7, zero                 |     s7 = 0;
                                             |     if (s1 == 0) {
    0x0002d92c beqz s1, 0x2d9a8              |         goto label_19;
                                             |     }
                                             | label_0:
    0x0002d930 lw a2, -0x7fc8(gp)            |     a2 = *((gp - 8178));
    0x0002d934 lw v0, -0xfe0(a2)             |     v0 = *((a2 - 1016));
                                             |     if (v0 < 0) {
    0x0002d938 bltz v0, 0x2e6b8              |         goto label_52;
                                             |     }
    0x0002d93c nop                           |     
    0x0002d940 lw v0, -0x7fc8(gp)            |     v0 = *((gp - 8178));
                                             |     if (s1 == v0) {
    0x0002d944 beq s1, v0, 0x2e654           |         goto label_53;
                                             |     }
    0x0002d948 move a1, zero                 |     a1 = 0;
    0x0002d94c addiu v0, v0, -0xfd0          |     v0 += -0xfd0;
                                             |     do {
    0x0002d950 lw a0, (v0)                   |         a0 = *(v0);
    0x0002d954 addiu a1, a1, 1               |         a1++;
                                             |         if (a0 < 0) {
    0x0002d958 bltz a0, 0x2e6b8              |             goto label_52;
                                             |         }
    0x0002d95c addiu v0, v0, 0x10            |         v0 += 0x10;
    0x0002d960 bne s1, a0, 0x2d950           |         
                                             |     } while (s1 != a0);
    0x0002d964 sll fp, a1, 4                 |     fp = a1 << 4;
                                             |     /* esilref: '' */
    0x0002d968 addiu a3, a2, -0xfe0          |     a3 = a2 + -0xfe0;
    0x0002d96c addu s7, a3, fp               |     s7 = a3 + fp;
                                             | label_40:
    0x0002d970 addu t3, a3, fp               |     t3 = a3 + fp;
    0x0002d974 lw a1, 4(t3)                  |     a1 = *((t3 + 1));
    0x0002d978 lw s1, 0xc(t3)                |     s1 = *((t3 + 3));
                                             |     if (a1 != 0) {
    0x0002d97c beqz a1, 0x2d98c              |         
    0x0002d980 andi v0, s1, 4                |         v0 = s1 & 4;
    0x0002d984 lw t9, -0x7f5c(gp)            |         t9 = sym.fix_problem;
                                             |         if (v0 == 0) {
    0x0002d988 beqz v0, 0x2e280              |             goto label_54;
                                             |         }
                                             |     }
    0x0002d98c ext s1, s1, 3, 1              |     __asm ("ext s1, s1, 3, 1");
    0x0002d990 b 0x2d9a8                     |     goto label_19;
                                             | label_50:
    0x0002d994 andi s5, a0, 8                |     s5 = a0 & 8;
                                             | label_51:
    0x0002d998 andi s1, s1, 0xff0            |     s1 &= 0xff0;
    0x0002d99c sltiu s5, s5, 1               |     s5 = (s5 < 1) ? 1 : 0;
                                             |     if (s1 != 0) {
    0x0002d9a0 bnez s1, 0x2d930              |         goto label_0;
                                             |     }
    0x0002d9a4 move s7, zero                 |     s7 = 0;
                                             | label_19:
    0x0002d9a8 subu v0, t2, s0               |     __asm ("subu v0, t2, s0");
    0x0002d9ac sll v0, v0, 2                 |     v0 <<= 2;
    0x0002d9b0 addu v0, s3, v0               |     v0 = s3 + v0;
    0x0002d9b4 lw a1, 0xc(v0)                |     a1 = *((v0 + 3));
    0x0002d9b8 andi v0, a1, 0x4000           |     v0 = a1 & 0x4000;
    0x0002d9bc subu v0, t2, s0               |     __asm ("subu v0, t2, s0");
                                             |     if (v0 != 0) {
    0x0002d9c0 beqz v0, 0x2d9d8              |         
    0x0002d9c4 lw v0, 0x28(s6)               |         v0 = *((s6 + 10));
    0x0002d9c8 andi v0, v0, 2                |         v0 &= 2;
    0x0002d9cc addiu s1, s1, 1               |         s1++;
                                             |         if (v0 != 0) {
    0x0002d9d0 bnel v0, zero, 0x2d9d4        |             
                                             |         }
    0x0002d9d4 subu v0, t2, s0               |         __asm ("subu v0, t2, s0");
                                             |     }
    0x0002d9d8 sll v0, v0, 2                 |     v0 <<= 2;
    0x0002d9dc addu v0, s3, v0               |     v0 = s3 + v0;
    0x0002d9e0 ext a0, a1, 0x10, 1           |     __asm ("ext a0, a1, 0x10, 1");
    0x0002d9e4 lw a2, 0x18(v0)               |     a2 = *((v0 + 6));
                                             |     if (a0 == 0) {
    0x0002d9e8 beqz a0, 0x2de08              |         goto label_55;
                                             |     }
    0x0002d9ec lw a0, 0x28(s6)               |     a0 = *((s6 + 10));
    0x0002d9f0 lui t3, 0x10                  |     t3 = 0x100000;
    0x0002d9f4 andi a3, a0, 8                |     a3 = a0 & 8;
    0x0002d9f8 and t3, a1, t3                |     t3 = a1 & t3;
    0x0002d9fc or a3, a3, t3                 |     a3 |= t3;
                                             |     if (a3 == 0) {
    0x0002da00 beqz a3, 0x2de08              |         goto label_55;
                                             |     }
    0x0002da04 nop                           |     
    0x0002da08 addiu s1, s1, 1               |     s1++;
                                             |     if (a2 != 0) {
    0x0002da0c beqz a2, 0x2da84              |         
    0x0002da10 lw a3, 0x14(v0)               |         a3 = *((v0 + 5));
    0x0002da14 slt t3, a2, a3                |         t3 = (a2 < a3) ? 1 : 0;
                                             |         if (t3 == 0) {
    0x0002da18 beql t3, zero, 0x2da88        |             goto label_9;
                                             |         }
    0x0002da1c lw fp, 4(v0)                  |         fp = *((v0 + 1));
                                             | label_8:
    0x0002da20 andi v0, a0, 0xc              |         v0 = a0 & 0xc;
    0x0002da24 addiu s1, s1, 1               |         s1++;
                                             |         if (v0 != 0) {
    0x0002da28 bnel v0, zero, 0x2da2c        |             
                                             |         }
    0x0002da2c andi a0, a0, 2                |         a0 &= 2;
                                             |         if (a0 != 0) {
    0x0002da30 beql a0, zero, 0x2da48        |             
    0x0002da34 andi a1, a1, 0xff0            |             a1 &= 0xff0;
    0x0002da38 andi v0, a1, 1                |             v0 = a1 & 1;
    0x0002da3c addiu s1, s1, 1               |             s1++;
                                             |             if (v0 != 0) {
    0x0002da40 bnel v0, zero, 0x2da44        |                 
                                             |             }
    0x0002da44 andi a1, a1, 0xff0            |             a1 &= 0xff0;
                                             |         }
    0x0002da48 addiu a2, a2, 1               |         a2++;
                                             |         if (a1 == 0) {
    0x0002da4c beqz a1, 0x2e344              |             goto label_56;
                                             |         }
    0x0002da50 lw v0, 0xc(s7)                |         v0 = *((s7 + 3));
    0x0002da54 andi v0, v0, 3                |         v0 &= 3;
                                             |         if (v0 == 0) {
    0x0002da58 beqz v0, 0x2e344              |             goto label_56;
                                             |         }
    0x0002da5c nop                           |         
    0x0002da60 addiu s1, s1, 1               |         s1++;
                                             |         if (a2 == a3) {
    0x0002da64 beq a2, a3, 0x2e34c           |             goto label_57;
                                             |         }
    0x0002da68 subu v0, t2, s0               |         __asm ("subu v0, t2, s0");
    0x0002da6c sll v0, v0, 2                 |         v0 <<= 2;
    0x0002da70 addu v0, s3, v0               |         v0 = s3 + v0;
    0x0002da74 lw fp, 4(v0)                  |         fp = *((v0 + 1));
    0x0002da78 b 0x2da88                     |         goto label_9;
                                             | label_49:
    0x0002da7c move s5, zero                 |         s5 = 0;
    0x0002da80 b 0x2d924                     |         goto label_1;
                                             |     }
    0x0002da84 lw fp, 4(v0)                  |     fp = *((v0 + 1));
                                             | label_9:
    0x0002da88 lw a0, 0x14(s6)               |     a0 = *((s6 + 5));
                                             | label_10:
    0x0002da8c lw t9, -0x7d70(gp)            |     t9 = sym.print_e2fsck_message;
                                             |     if (a0 != 0) {
    0x0002da90 beqz a0, 0x2dabc              |         
    0x0002da94 addiu v0, zero, 1             |         v0 = 1;
    0x0002da98 sw t2, 0x2c(sp)               |         *(var_2ch) = t2;
    0x0002da9c sw zero, 0x14(sp)             |         *(var_14h) = 0;
    0x0002daa0 sw v0, 0x10(sp)               |         *(var_10h_2) = v0;
    0x0002daa4 move a3, s2                   |         a3 = s2;
    0x0002daa8 move a2, fp                   |         a2 = fp;
    0x0002daac move a1, s6                   |         a1 = s6;
    0x0002dab0 bal 0x2ea90                   |         sym_print_e2fsck_message ();
    0x0002dab4 lw gp, 0x18(sp)               |         gp = *(var_18h);
    0x0002dab8 lw t2, 0x2c(sp)               |         t2 = *(var_2ch);
                                             |     }
    0x0002dabc subu fp, t2, s0               |     __asm ("subu fp, t2, s0");
    0x0002dac0 sll fp, fp, 2                 |     fp <<= 2;
    0x0002dac4 addu fp, s3, fp               |     fp = s3 + fp;
    0x0002dac8 lw v0, 0xc(fp)                |     v0 = *(arg_ch);
    0x0002dacc andi a0, v0, 1                |     a0 = v0 & 1;
    0x0002dad0 andi a0, v0, 0x1000           |     a0 = v0 & 0x1000;
                                             |     if (a0 != 0) {
    0x0002dad4 bnez a0, 0x2dce4              |         goto label_58;
                                             |     }
    0x0002dad8 lb a0, 8(fp)                  |     a0 = *(arg_8h);
    0x0002dadc andi a0, v0, 0x1000           |     a0 = v0 & 0x1000;
                                             |     if (a0 != 0) {
    0x0002dae0 bnez a0, 0x2dcc4              |         goto label_59;
                                             |     }
    0x0002dae4 lw t9, -0x7fb8(gp)            |     t9 = sym.fatal_error;
                                             |     if (a0 != 0) {
    0x0002dae8 bnez a0, 0x2decc              |         goto label_60;
                                             |     }
                                             | label_4:
    0x0002daec andi a0, v0, 0x8000           |     a0 = v0 & 0x8000;
    0x0002daf0 andi v0, v0, 0x2000           |     v0 &= 0x2000;
                                             |     if (a0 == 0) {
    0x0002daf4 beqz a0, 0x2e234              |         goto label_61;
                                             |     }
    0x0002daf8 addiu s5, zero, -1            |     s5 = -1;
                                             | label_38:
    0x0002dafc subu v0, t2, s0               |     __asm ("subu v0, t2, s0");
                                             |     if (v0 != 0) {
    0x0002db00 bnez v0, 0x2ddc8              |         goto label_18;
                                             |     }
                                             | label_6:
    0x0002db04 sll v0, v0, 2                 |     v0 <<= 2;
                                             | label_41:
    0x0002db08 addu v0, s3, v0               |     v0 = s3 + v0;
    0x0002db0c lb v0, 8(v0)                  |     v0 = *((v0 + 8));
                                             |     if (v0 != 0) {
                                             | label_35:
    0x0002db10 beql v0, zero, 0x2db38        |         
    0x0002db14 move s0, zero                 |         s0 = 0;
    0x0002db18 subu t2, t2, s0               |         __asm ("subu t2, t2, s0");
    0x0002db1c sll t2, t2, 2                 |         t2 <<= 2;
    0x0002db20 addu v1, s3, t2               |         v1 = s3 + t2;
    0x0002db24 lw v0, 0xc(v1)                |         v0 = *((v1 + 3));
    0x0002db28 ext v0, v0, 0x15, 1           |         __asm ("ext v0, v0, 0x15, 1");
                                             |         if (v0 == 0) {
                                             | label_17:
    0x0002db2c beql v0, zero, 0x2e270        |             goto label_62;
                                             |         }
    0x0002db30 lw v0, 0x24(s6)               |         v0 = *((s6 + 9));
    0x0002db34 move s0, zero                 |         s0 = 0;
                                             |     }
                                             | label_7:
    0x0002db38 lw s1, 0x1c(s6)               |     s1 = *((s6 + 7));
    0x0002db3c lw v0, 0x20(sp)               |     v0 = *(var_20h);
                                             |     if (s1 == 0) {
    0x0002db40 beqz s1, 0x2d874              |         goto label_2;
                                             |     }
    0x0002db44 lw v0, 0x24(sp)               |     v0 = *(var_24h);
    0x0002db48 lw v0, 0xc(v0)                |     v0 = *((v0 + 3));
    0x0002db4c ext v0, v0, 0x16, 1           |     __asm ("ext v0, v0, 0x16, 1");
    0x0002db50 lw t9, -0x7c2c(gp)            |     t9 = sym.imp.__fprintf_chk
                                             |     if (v0 != 0) {
    0x0002db54 bnez v0, 0x2e3bc              |         goto label_63;
                                             |     }
    0x0002db58 lw a2, -0x7fa8(gp)            |     a2 = *((gp - 8170));
    0x0002db5c move a3, s4                   |     a3 = s4;
    0x0002db60 sw s5, 0x10(sp)               |     *(var_10h_2) = s5;
                                             |     /* str._problem_code_0x_06x__answer__d_ */
    0x0002db64 addiu a2, a2, -0x7f10         |     a2 += -0x7f10;
    0x0002db68 addiu a1, zero, 1             |     a1 = 1;
    0x0002db6c move a0, s1                   |     a0 = s1;
    0x0002db70 jalr t9                       |     t9 ();
    0x0002db74 lw a3, (s2)                   |     a3 = *(s2);
    0x0002db78 lw gp, 0x18(sp)               |     gp = *(var_18h);
                                             |     if (a3 != 0) {
    0x0002db7c bnez a3, 0x2e3dc              |         goto label_64;
                                             |     }
    0x0002db80 lw a0, -0x7fa8(gp)            |     a0 = *((gp - 8170));
                                             |     if (s0 == 0) {
    0x0002db84 bnel s0, zero, 0x2e400        |         goto label_65;
                                             |     }
                                             | label_23:
    0x0002db88 lw a3, 4(s2)                  |     a3 = *((s2 + 1));
    0x0002db8c lw a2, -0x7fa8(gp)            |     a2 = *((gp - 8170));
                                             |     if (a3 != 0) {
    0x0002db90 bnez a3, 0x2e428              |         goto label_66;
                                             |     }
                                             | label_24:
    0x0002db94 lw a3, 8(s2)                  |     a3 = *((s2 + 2));
    0x0002db98 lw a2, -0x7fa8(gp)            |     a2 = *((gp - 8170));
                                             |     if (a3 != 0) {
    0x0002db9c bnez a3, 0x2e44c              |         goto label_67;
                                             |     }
                                             | label_25:
    0x0002dba0 lw a3, 0xc(s2)                |     a3 = *((s2 + 3));
    0x0002dba4 lw a2, -0x7fa8(gp)            |     a2 = *((gp - 8170));
                                             |     if (a3 != 0) {
    0x0002dba8 bnez a3, 0x2e470              |         goto label_68;
                                             |     }
                                             | label_26:
    0x0002dbac lw v1, 0x18(s2)               |     v1 = *((s2 + 6));
    0x0002dbb0 lw v0, 0x1c(s2)               |     v0 = *((s2 + 7));
    0x0002dbb4 or a0, v1, v0                 |     a0 = v1 | v0;
    0x0002dbb8 lw a2, -0x7fa8(gp)            |     a2 = *((gp - 8170));
                                             |     if (a0 != 0) {
    0x0002dbbc bnez a0, 0x2e49c              |         goto label_69;
                                             |     }
                                             | label_27:
    0x0002dbc0 lw v1, 0x20(s2)               |     v1 = *((s2 + 8));
    0x0002dbc4 lw v0, 0x24(s2)               |     v0 = *((s2 + 9));
    0x0002dbc8 or a0, v1, v0                 |     a0 = v1 | v0;
    0x0002dbcc lw a2, -0x7fa8(gp)            |     a2 = *((gp - 8170));
                                             |     if (a0 != 0) {
    0x0002dbd0 bnez a0, 0x2e4d0              |         goto label_70;
                                             |     }
                                             | label_28:
    0x0002dbd4 lw v0, 0x28(s2)               |     v0 = *((s2 + 10));
    0x0002dbd8 addiu v1, zero, -1            |     v1 = -1;
    0x0002dbdc lw a0, 0x2c(s2)               |     a0 = *((s2 + 11));
                                             |     if (v0 == v1) {
    0x0002dbe0 bne v0, v1, 0x2dbec           |         
                                             |         if (a0 == v0) {
    0x0002dbe4 beql a0, v0, 0x2dc14          |             goto label_71;
                                             |         }
    0x0002dbe8 lw a3, 0x30(s2)               |         a3 = *((s2 + 12));
                                             |     }
    0x0002dbec lw a2, -0x7fa8(gp)            |     a2 = *((gp - 8170));
    0x0002dbf0 lw t9, -0x7c2c(gp)            |     t9 = sym.imp.__fprintf_chk
    0x0002dbf4 sw a0, 0x14(sp)               |     *(var_14h) = a0;
    0x0002dbf8 sw v0, 0x10(sp)               |     *(var_10h_2) = v0;
                                             |     /* str._blkcount__lld_ */
    0x0002dbfc addiu a2, a2, -0x7e90         |     a2 += -0x7e90;
    0x0002dc00 addiu a1, zero, 1             |     a1 = 1;
    0x0002dc04 move a0, s1                   |     a0 = s1;
    0x0002dc08 jalr t9                       |     t9 ();
    0x0002dc0c lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0002dc10 lw a3, 0x30(s2)               |     a3 = *((s2 + 12));
                                             | label_71:
    0x0002dc14 addiu v0, zero, -1            |     v0 = -1;
                                             |     if (a3 != v0) {
    0x0002dc18 beql a3, v0, 0x2dc40          |         
    0x0002dc1c lw a3, 0x34(s2)               |         a3 = *((s2 + 13));
    0x0002dc20 lw a2, -0x7fa8(gp)            |         a2 = *((gp - 8170));
    0x0002dc24 lw t9, -0x7c2c(gp)            |         t9 = sym.imp.__fprintf_chk
                                             |         /* str._group__u_ */
    0x0002dc28 addiu a2, a2, -0x7e7c         |         a2 += -0x7e7c;
    0x0002dc2c addiu a1, zero, 1             |         a1 = 1;
    0x0002dc30 move a0, s1                   |         a0 = s1;
    0x0002dc34 jalr t9                       |         t9 ();
    0x0002dc38 lw gp, 0x18(sp)               |         gp = *(var_18h);
    0x0002dc3c lw a3, 0x34(s2)               |         a3 = *((s2 + 13));
                                             |     }
    0x0002dc40 lw a2, -0x7fa8(gp)            |     a2 = *((gp - 8170));
                                             |     if (a3 != 0) {
    0x0002dc44 bnez a3, 0x2e558              |         goto label_72;
                                             |     }
                                             | label_32:
    0x0002dc48 lw a3, 0x38(s2)               |     a3 = *((s2 + 14));
    0x0002dc4c lw a2, -0x7fa8(gp)            |     a2 = *((gp - 8170));
                                             |     if (a3 != 0) {
    0x0002dc50 bnez a3, 0x2e53c              |         goto label_73;
                                             |     }
                                             | label_31:
    0x0002dc54 lw v1, 0x40(s2)               |     v1 = *((s2 + 16));
    0x0002dc58 lw v0, 0x44(s2)               |     v0 = *((s2 + 17));
    0x0002dc5c or a0, v1, v0                 |     a0 = v1 | v0;
    0x0002dc60 lw a2, -0x7fa8(gp)            |     a2 = *((gp - 8170));
                                             |     if (a0 != 0) {
    0x0002dc64 bnez a0, 0x2e518              |         goto label_74;
                                             |     }
                                             | label_30:
    0x0002dc68 lw v1, 0x48(s2)               |     v1 = *((s2 + 18));
    0x0002dc6c lw v0, 0x4c(s2)               |     v0 = *((s2 + 19));
    0x0002dc70 or a0, v1, v0                 |     a0 = v1 | v0;
    0x0002dc74 lw a2, -0x7fa8(gp)            |     a2 = *((gp - 8170));
                                             |     if (a0 != 0) {
    0x0002dc78 bnez a0, 0x2e4f4              |         goto label_75;
                                             |     }
                                             | label_29:
    0x0002dc7c lw a3, 0x50(s2)               |     a3 = *((s2 + 20));
    0x0002dc80 lw a2, -0x7fa8(gp)            |     a2 = *((gp - 8170));
                                             |     if (a3 != 0) {
    0x0002dc84 beqz a3, 0x2dca0              |         
    0x0002dc88 lw t9, -0x7c2c(gp)            |         t9 = sym.imp.__fprintf_chk
                                             |         /* str._str__s_ */
    0x0002dc8c addiu a2, a2, -0x7e3c         |         a2 += -0x7e3c;
    0x0002dc90 addiu a1, zero, 1             |         a1 = 1;
    0x0002dc94 move a0, s1                   |         a0 = s1;
    0x0002dc98 jalr t9                       |         t9 ();
    0x0002dc9c lw gp, 0x18(sp)               |         gp = *(var_18h);
                                             |     }
    0x0002dca0 lw a0, -0x7fd0(gp)            |     a0 = *(gp);
    0x0002dca4 lw t9, -0x7938(gp)            |     t9 = sym.imp.fwrite;
    0x0002dca8 move a3, s1                   |     a3 = s1;
    0x0002dcac addiu a2, zero, 3             |     a2 = 3;
    0x0002dcb0 addiu a1, zero, 1             |     a1 = 1;
                                             |     /* esilref: '/>
' */
    0x0002dcb4 addiu a0, a0, 0x5b64          |     a0 += 0x5b64;
    0x0002dcb8 jalr t9                       |     t9 ();
    0x0002dcbc lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0002dcc0 b 0x2d870                     |     goto label_3;
                                             | label_59:
    0x0002dcc4 lw t9, -0x7f24(gp)            |     t9 = sym.preenhalt;
    0x0002dcc8 sw t2, 0x2c(sp)               |     *(var_2ch) = t2;
    0x0002dccc move a0, s6                   |     a0 = s6;
    0x0002dcd0 bal 0x2a63c                   |     sym_preenhalt ();
    0x0002dcd4 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0002dcd8 lw v0, 0xc(fp)                |     v0 = *(arg_ch);
    0x0002dcdc lw t2, 0x2c(sp)               |     t2 = *(var_2ch);
    0x0002dce0 andi a0, v0, 0x1000           |     a0 = v0 & 0x1000;
                                             | label_58:
    0x0002dce4 lw t9, -0x7fb8(gp)            |     t9 = sym.fatal_error;
                                             |     if (a0 != 0) {
    0x0002dce8 bnez a0, 0x2decc              |         goto label_60;
                                             |     }
                                             | label_11:
    0x0002dcec subu a0, t2, s0               |     __asm ("subu a0, t2, s0");
    0x0002dcf0 sll a0, a0, 2                 |     a0 <<= 2;
    0x0002dcf4 addu a0, s3, a0               |     a0 = s3 + a0;
    0x0002dcf8 lb a1, 8(a0)                  |     a1 = *((a0 + 8));
    0x0002dcfc ext a2, v0, 0x14, 1           |     __asm ("ext a2, v0, 0x14, 1");
                                             |     if (a1 == 0) {
    0x0002dd00 beqz a1, 0x2daec              |         goto label_4;
                                             |     }
    0x0002dd04 andi v0, v0, 2                |     v0 &= 2;
                                             |     if (a2 != 0) {
    0x0002dd08 bnel a2, zero, 0x2dd48        |         
    0x0002dd0c lw a2, 0x28(s6)               |         a2 = *((s6 + 10));
    0x0002dd10 andi a2, a2, 2                |         a2 &= 2;
    0x0002dd14 andi a2, v0, 0x4000           |         a2 = v0 & 0x4000;
                                             |         if (a2 != 0) {
    0x0002dd18 bnez a2, 0x2e244              |             goto label_76;
                                             |         }
    0x0002dd1c andi a0, v0, 0xff0            |         a0 = v0 & 0xff0;
                                             |         if (a0 == 0) {
    0x0002dd20 beql a0, zero, 0x2e2d0        |             goto label_77;
                                             |         }
    0x0002dd24 addiu v0, zero, 0x15          |         v0 = 0x15;
    0x0002dd28 lw a0, 0xc(s7)                |         a0 = *((s7 + 3));
    0x0002dd2c andi a2, a0, 3                |         a2 = a0 & 3;
                                             |         if (a2 == 0) {
    0x0002dd30 beql a2, zero, 0x2e2d0        |             goto label_77;
                                             |         }
    0x0002dd34 addiu v0, zero, 0x15          |         v0 = 0x15;
    0x0002dd38 andi a0, a0, 1                |         a0 &= 1;
                                             |         if (a0 != 0) {
    0x0002dd3c bnez a0, 0x2e1a0              |             goto label_78;
                                             |         }
    0x0002dd40 nop                           |         
    0x0002dd44 andi v0, v0, 2                |         v0 &= 2;
                                             |     }
                                             | label_13:
    0x0002dd48 lw v1, 0x28(sp)               |     v1 = *(var_28h);
                                             |     if (v0 == 0) {
    0x0002dd4c bnez v0, 0x2dd60              |         
    0x0002dd50 addiu a0, zero, -9            |         a0 = -9;
    0x0002dd54 lw v0, 8(v1)                  |         v0 = *((v1 + 2));
    0x0002dd58 and v0, v0, a0                |         v0 &= a0;
    0x0002dd5c sw v0, 8(v1)                  |         *((v1 + 2)) = v0;
                                             |     }
    0x0002dd60 lw s1, -0x7fa8(gp)            |     s1 = *((gp - 8170));
                                             |     if (s1 == 0) {
    0x0002dd64 beqz s1, 0x2e574              |         goto label_79;
                                             |     }
    0x0002dd68 lw a0, 0x14(s6)               |     a0 = *((s6 + 5));
                                             |     if (a0 == 0) {
    0x0002dd6c beql a0, zero, 0x2e5a4        |         goto label_80;
                                             |     }
    0x0002dd70 subu a0, t2, s0               |     __asm ("subu a0, t2, s0");
    0x0002dd74 lw s7, -0x7fa8(gp)            |     s7 = *((gp - 8170));
                                             | label_33:
    0x0002dd78 lw t9, -0x7c2c(gp)            |     t9 = sym.imp.__fprintf_chk
    0x0002dd7c sw t2, 0x28(sp)               |     *(var_28h) = t2;
    0x0002dd80 addiu a1, zero, 1             |     a1 = 1;
                                             |     /* str.IGNORED */
    0x0002dd84 addiu a3, s1, -0x7f34         |     a3 = s1 + -0x7f34;
                                             |     /* str._s._n */
    0x0002dd88 addiu a2, s7, -0x7f3c         |     a2 = s7 + -0x7f3c;
    0x0002dd8c jalr t9                       |     t9 ();
    0x0002dd90 lw t2, 0x28(sp)               |     t2 = *(var_28h);
    0x0002dd94 addiu a0, zero, 0xb           |     a0 = 0xb;
    0x0002dd98 subu v0, t2, s0               |     __asm ("subu v0, t2, s0");
    0x0002dd9c sll v0, v0, 2                 |     v0 <<= 2;
    0x0002dda0 addu v0, s3, v0               |     v0 = s3 + v0;
    0x0002dda4 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0002dda8 lb a1, 8(v0)                  |     a1 = *((v0 + 8));
    0x0002ddac move s5, zero                 |     s5 = 0;
                                             |     if (a1 != a0) {
    0x0002ddb0 bne a1, a0, 0x2e220           |         goto label_81;
                                             |     }
    0x0002ddb4 lw v0, 0xc(v0)                |     v0 = *((v0 + 3));
    0x0002ddb8 andi v0, v0, 0x2000           |     v0 &= 0x2000;
                                             | label_20:
    0x0002ddbc move s5, zero                 |     s5 = 0;
                                             |     if (v0 == 0) {
    0x0002ddc0 beqz v0, 0x2de00              |         goto label_82;
                                             |     }
    0x0002ddc4 subu v0, t2, s0               |     __asm ("subu v0, t2, s0");
                                             | label_18:
    0x0002ddc8 sll v0, v0, 2                 |     v0 <<= 2;
                                             | label_15:
    0x0002ddcc addu v0, s3, v0               |     v0 = s3 + v0;
    0x0002ddd0 lw t9, -0x7f5c(gp)            |     t9 = sym.fix_problem;
    0x0002ddd4 lw a1, 0x10(v0)               |     a1 = *((v0 + 4));
    0x0002ddd8 sw t2, 0x28(sp)               |     *(var_28h) = t2;
    0x0002dddc move a2, s2                   |     a2 = s2;
    0x0002dde0 move a0, s6                   |     a0 = s6;
    0x0002dde4 bal 0x2d7bc                   |     sym_fix_problem ();
                                             |     goto label_5;
    0x0002dde8 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0002ddec lw t2, 0x28(sp)               |     t2 = *(var_28h);
    0x0002ddf0 move s5, v0                   |     s5 = v0;
                                             | label_14:
    0x0002ddf4 subu v0, t2, s0               |     __asm ("subu v0, t2, s0");
                                             |     if (s5 != 0) {
    0x0002ddf8 bnez s5, 0x2db04              |         goto label_6;
                                             |     }
    0x0002ddfc move s5, zero                 |     s5 = 0;
                                             | label_82:
    0x0002de00 move s0, zero                 |     s0 = 0;
    0x0002de04 b 0x2db38                     |     goto label_7;
                                             | label_55:
    0x0002de08 subu v0, t2, s0               |     __asm ("subu v0, t2, s0");
                                             |     if (a2 == 0) {
    0x0002de0c beqz a2, 0x2de2c              |         goto label_21;
                                             |     }
    0x0002de10 sll v0, v0, 2                 |     v0 <<= 2;
    0x0002de14 addu v0, s3, v0               |     v0 = s3 + v0;
    0x0002de18 lw a3, 0x14(v0)               |     a3 = *((v0 + 5));
    0x0002de1c slt v0, a2, a3                |     v0 = (a2 < a3) ? 1 : 0;
    0x0002de20 lw a0, 0x28(s6)               |     a0 = *((s6 + 10));
                                             |     if (v0 == 0) {
    0x0002de24 bnel v0, zero, 0x2da20        |         goto label_8;
                                             |     }
                                             | label_22:
    0x0002de28 subu v0, t2, s0               |     __asm ("subu v0, t2, s0");
                                             | label_21:
    0x0002de2c sll v0, v0, 2                 |     v0 <<= 2;
    0x0002de30 addu v0, s3, v0               |     v0 = s3 + v0;
    0x0002de34 lw fp, 4(v0)                  |     fp = *((v0 + 1));
                                             |     if (s1 != 0) {
    0x0002de38 bnez s1, 0x2da88              |         goto label_9;
                                             |     }
    0x0002de3c lw a0, 0x28(s6)               |     a0 = *((s6 + 10));
    0x0002de40 andi a0, a0, 2                |     a0 &= 2;
                                             |     if (a0 == 0) {
    0x0002de44 beql a0, zero, 0x2de8c        |         goto label_83;
                                             |     }
    0x0002de48 lb v0, (fp)                   |     v0 = *(fp);
    0x0002de4c lw v0, 0xc(v0)                |     v0 = *((v0 + 3));
    0x0002de50 ext v0, v0, 0x12, 1           |     __asm ("ext v0, v0, 0x12, 1");
    0x0002de54 lb v0, (fp)                   |     v0 = *(fp);
                                             |     if (v0 == 0) {
    0x0002de58 bnel v0, zero, 0x2de8c        |         goto label_83;
                                             |     }
    0x0002de5c lw a2, 0xc(s6)                |     a2 = *((s6 + 3));
                                             |     if (a2 != 0) {
    0x0002de60 beql a2, zero, 0x2de68        |         
    0x0002de64 lw a2, 8(s6)                  |         a2 = *((s6 + 2));
                                             |     }
    0x0002de68 lw a1, -0x7fd0(gp)            |     a1 = *(gp);
    0x0002de6c lw t9, -0x7b28(gp)            |     t9 = sym.imp.__printf_chk;
    0x0002de70 sw t2, 0x2c(sp)               |     *(var_2ch) = t2;
                                             |     /* str._s:_ */
    0x0002de74 addiu a1, a1, 0x63f0          |     a1 += 0x63f0;
    0x0002de78 addiu a0, zero, 1             |     a0 = 1;
    0x0002de7c jalr t9                       |     t9 ();
    0x0002de80 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0002de84 lw t2, 0x2c(sp)               |     t2 = *(var_2ch);
    0x0002de88 lb v0, (fp)                   |     v0 = *(fp);
                                             |     if (v0 == 0) {
                                             | label_83:
    0x0002de8c beql v0, zero, 0x2da8c        |         goto label_10;
                                             |     }
    0x0002de90 lw a0, 0x14(s6)               |     a0 = *((s6 + 5));
    0x0002de94 lw v0, -0x7b08(gp)            |     v0 = *((gp - 7874));
    0x0002de98 lw t9, -0x7d70(gp)            |     t9 = sym.print_e2fsck_message;
    0x0002de9c sw t2, 0x2c(sp)               |     *(var_2ch) = t2;
    0x0002dea0 lw a0, (v0)                   |     a0 = *(v0);
    0x0002dea4 addiu v0, zero, 1             |     v0 = 1;
    0x0002dea8 sw zero, 0x14(sp)             |     *(var_14h) = 0;
    0x0002deac sw v0, 0x10(sp)               |     *(var_10h_2) = v0;
    0x0002deb0 move a3, s2                   |     a3 = s2;
    0x0002deb4 move a2, fp                   |     a2 = fp;
    0x0002deb8 move a1, s6                   |     a1 = s6;
    0x0002debc bal 0x2ea90                   |     sym_print_e2fsck_message ();
    0x0002dec0 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0002dec4 lw t2, 0x2c(sp)               |     t2 = *(var_2ch);
    0x0002dec8 b 0x2da88                     |     goto label_9;
                                             | label_60:
    0x0002decc sw t2, 0x2c(sp)               |     *(var_2ch) = t2;
    0x0002ded0 move a1, zero                 |     a1 = 0;
    0x0002ded4 move a0, s6                   |     a0 = s6;
    0x0002ded8 bal 0x29d10                   |     sym_fatal_error ();
    0x0002dedc lw t2, 0x2c(sp)               |     t2 = *(var_2ch);
    0x0002dee0 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0002dee4 subu v0, t2, s0               |     __asm ("subu v0, t2, s0");
    0x0002dee8 sll v0, v0, 2                 |     v0 <<= 2;
    0x0002deec addu v0, s3, v0               |     v0 = s3 + v0;
    0x0002def0 lw v0, 0xc(v0)                |     v0 = *((v0 + 3));
    0x0002def4 b 0x2dcec                     |     goto label_11;
                                             | label_48:
    0x0002def8 lw a3, -0x7fd0(gp)            |     a3 = *(gp);
    0x0002defc lw t9, -0x7cd4(gp)            |     t9 = sym.imp.__sprintf_chk;
    0x0002df00 addiu s1, sp, 0x40            |     s1 = sp + 0x40;
    0x0002df04 sw t2, 0x30(sp)               |     *(var_30h) = t2;
                                             |     /* str.0x_06x */
    0x0002df08 addiu a3, a3, 0x7fcc          |     a3 += 0x7fcc;
    0x0002df0c addiu a2, zero, 9             |     a2 = 9;
    0x0002df10 addiu a1, zero, 1             |     a1 = 1;
    0x0002df14 move a0, s1                   |     a0 = s1;
    0x0002df18 sw s4, 0x10(sp)               |     *(var_10h_2) = s4;
    0x0002df1c sw zero, 0x3c(sp)             |     *(var_3ch) = 0;
    0x0002df20 sw s7, 0x2c(sp)               |     *(var_2ch) = s7;
    0x0002df24 jalr t9                       |     t9 ();
    0x0002df28 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0002df2c lw a0, 0x29c(s6)              |     a0 = *((s6 + 167));
    0x0002df30 addiu v0, sp, 0x3c            |     v0 = sp + 0x3c;
    0x0002df34 lw a3, -0x7fd0(gp)            |     a3 = *(gp);
    0x0002df38 lw t9, -0x7f1c(gp)            |     t9 = sym.profile_get_string;
    0x0002df3c sw v0, 0x14(sp)               |     *(var_14h) = v0;
    0x0002df40 sw zero, 0x10(sp)             |     *(var_10h_2) = 0;
                                             |     /* str.description */
    0x0002df44 addiu a3, a3, 0x7fd4          |     a3 += 0x7fd4;
    0x0002df48 move a2, s1                   |     a2 = s1;
                                             |     /* str.problems */
    0x0002df4c addiu a1, s7, 0x7fc0          |     a1 = s7 + 0x7fc0;
    0x0002df50 bal 0x3b130                   |     sym_profile_get_string ();
    0x0002df54 lw v0, 0x3c(sp)               |     v0 = *(var_3ch);
    0x0002df58 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0002df5c lw t2, 0x30(sp)               |     t2 = *(var_30h);
                                             |     if (v0 != 0) {
    0x0002df60 beqz v0, 0x2df68              |         
    0x0002df64 sw v0, 4(s5)                  |         *((s5 + 1)) = v0;
                                             |     }
    0x0002df68 lw v0, 0x24(sp)               |     v0 = *(var_24h);
    0x0002df6c lw s5, -0x7d90(gp)            |     s5 = *(gp);
    0x0002df70 addiu s7, v0, 0xc             |     s7 = v0 + 0xc;
    0x0002df74 lw v0, -0x7fd0(gp)            |     v0 = *(gp);
                                             |     /* fcn.0002d5c0 */
    0x0002df78 addiu s5, s5, -0x2a40         |     s5 += -0x2a40;
    0x0002df7c lw a0, 0x29c(s6)              |     a0 = *((s6 + 167));
                                             |     /* str.preen_ok */
    0x0002df80 addiu v0, v0, 0x7fe0          |     v0 += 0x7fe0;
    0x0002df84 sw t2, 0x30(sp)               |     *(var_30h) = t2;
    0x0002df88 move a1, s7                   |     a1 = s7;
    0x0002df8c move t9, s5                   |     t9 = s5;
    0x0002df90 addiu a3, zero, 1             |     a3 = 1;
    0x0002df94 move a2, s1                   |     a2 = s1;
    0x0002df98 sw v0, 0x10(sp)               |     *(var_10h_2) = v0;
    0x0002df9c bal 0x2d5c0                   |     fcn_0002d5c0 ();
    0x0002dfa0 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0002dfa4 lw a0, 0x29c(s6)              |     a0 = *((s6 + 167));
    0x0002dfa8 move a1, s7                   |     a1 = s7;
    0x0002dfac lw v0, -0x7fd0(gp)            |     v0 = *(gp);
    0x0002dfb0 move t9, s5                   |     t9 = s5;
                                             |     /* str.no_ok */
    0x0002dfb4 addiu v0, v0, 0x7fec          |     v0 += 0x7fec;
    0x0002dfb8 addiu a3, zero, 2             |     a3 = 2;
    0x0002dfbc move a2, s1                   |     a2 = s1;
    0x0002dfc0 sw v0, 0x10(sp)               |     *(var_10h_2) = v0;
    0x0002dfc4 bal 0x2d5c0                   |     fcn_0002d5c0 ();
    0x0002dfc8 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0002dfcc lw a0, 0x29c(s6)              |     a0 = *((s6 + 167));
    0x0002dfd0 move a1, s7                   |     a1 = s7;
    0x0002dfd4 lw v0, -0x7fd0(gp)            |     v0 = *(gp);
    0x0002dfd8 move t9, s5                   |     t9 = s5;
                                             |     /* str.no_default */
    0x0002dfdc addiu v0, v0, 0x7ff4          |     v0 += 0x7ff4;
    0x0002dfe0 addiu a3, zero, 4             |     a3 = 4;
    0x0002dfe4 move a2, s1                   |     a2 = s1;
    0x0002dfe8 sw v0, 0x10(sp)               |     *(var_10h_2) = v0;
    0x0002dfec bal 0x2d5c0                   |     fcn_0002d5c0 ();
    0x0002dff0 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0002dff4 lw a0, 0x29c(s6)              |     a0 = *((s6 + 167));
    0x0002dff8 move a1, s7                   |     a1 = s7;
    0x0002dffc lw v0, -0x7fa8(gp)            |     v0 = *((gp - 8170));
    0x0002e000 move t9, s5                   |     t9 = s5;
                                             |     /* str.print_message_only */
    0x0002e004 addiu v0, v0, -0x8000         |     v0 += -0x8000;
    0x0002e008 addiu a3, zero, 8             |     a3 = 8;
    0x0002e00c move a2, s1                   |     a2 = s1;
    0x0002e010 sw v0, 0x10(sp)               |     *(var_10h_2) = v0;
    0x0002e014 bal 0x2d5c0                   |     fcn_0002d5c0 ();
    0x0002e018 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0002e01c lw a0, 0x29c(s6)              |     a0 = *((s6 + 167));
    0x0002e020 move a1, s7                   |     a1 = s7;
    0x0002e024 lw v0, -0x7fa8(gp)            |     v0 = *((gp - 8170));
    0x0002e028 move t9, s5                   |     t9 = s5;
                                             |     /* str.preen_nomessage */
    0x0002e02c addiu v0, v0, -0x7fec         |     v0 += -0x7fec;
    0x0002e030 addiu a3, zero, 0x4000        |     a3 = 0x4000;
    0x0002e034 move a2, s1                   |     a2 = s1;
    0x0002e038 sw v0, 0x10(sp)               |     *(var_10h_2) = v0;
    0x0002e03c bal 0x2d5c0                   |     fcn_0002d5c0 ();
    0x0002e040 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0002e044 lw a0, 0x29c(s6)              |     a0 = *((s6 + 167));
    0x0002e048 move a1, s7                   |     a1 = s7;
    0x0002e04c lw v0, -0x7fa8(gp)            |     v0 = *((gp - 8170));
    0x0002e050 move t9, s5                   |     t9 = s5;
                                             |     /* str.no_collate */
    0x0002e054 addiu v0, v0, -0x7fdc         |     v0 += -0x7fdc;
    0x0002e058 ori a3, zero, 0x8000          |     a3 = 0x8000;
    0x0002e05c move a2, s1                   |     a2 = s1;
    0x0002e060 sw v0, 0x10(sp)               |     *(var_10h_2) = v0;
    0x0002e064 bal 0x2d5c0                   |     fcn_0002d5c0 ();
    0x0002e068 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0002e06c lw a0, 0x29c(s6)              |     a0 = *((s6 + 167));
    0x0002e070 move a1, s7                   |     a1 = s7;
    0x0002e074 lw v0, -0x7fa8(gp)            |     v0 = *((gp - 8170));
    0x0002e078 move t9, s5                   |     t9 = s5;
                                             |     /* str.no_nomsg */
    0x0002e07c addiu v0, v0, -0x7fd0         |     v0 += -0x7fd0;
    0x0002e080 lui a3, 1                     |     a3 = 0x10000;
    0x0002e084 move a2, s1                   |     a2 = s1;
    0x0002e088 sw v0, 0x10(sp)               |     *(var_10h_2) = v0;
    0x0002e08c bal 0x2d5c0                   |     fcn_0002d5c0 ();
    0x0002e090 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0002e094 lw a0, 0x29c(s6)              |     a0 = *((s6 + 167));
    0x0002e098 move a1, s7                   |     a1 = s7;
    0x0002e09c lw v0, -0x7fa8(gp)            |     v0 = *((gp - 8170));
    0x0002e0a0 move t9, s5                   |     t9 = s5;
                                             |     /* str.preen_noheader */
    0x0002e0a4 addiu v0, v0, -0x7fc4         |     v0 += -0x7fc4;
    0x0002e0a8 lui a3, 4                     |     a3 = 0x40000;
    0x0002e0ac move a2, s1                   |     a2 = s1;
    0x0002e0b0 sw v0, 0x10(sp)               |     *(var_10h_2) = v0;
    0x0002e0b4 bal 0x2d5c0                   |     fcn_0002d5c0 ();
    0x0002e0b8 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0002e0bc lw a0, 0x29c(s6)              |     a0 = *((s6 + 167));
    0x0002e0c0 move a1, s7                   |     a1 = s7;
    0x0002e0c4 lw v0, -0x7fa8(gp)            |     v0 = *((gp - 8170));
    0x0002e0c8 move t9, s5                   |     t9 = s5;
                                             |     /* str.force_no */
    0x0002e0cc addiu v0, v0, -0x7fb4         |     v0 += -0x7fb4;
    0x0002e0d0 lui a3, 0x10                  |     a3 = 0x100000;
    0x0002e0d4 move a2, s1                   |     a2 = s1;
    0x0002e0d8 sw v0, 0x10(sp)               |     *(var_10h_2) = v0;
    0x0002e0dc bal 0x2d5c0                   |     fcn_0002d5c0 ();
    0x0002e0e0 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0002e0e4 lw a0, 0x29c(s6)              |     a0 = *((s6 + 167));
    0x0002e0e8 move a1, s7                   |     a1 = s7;
    0x0002e0ec lw v0, -0x7fa8(gp)            |     v0 = *((gp - 8170));
    0x0002e0f0 move t9, s5                   |     t9 = s5;
                                             |     /* str.not_a_fix */
    0x0002e0f4 addiu v0, v0, -0x7fa8         |     v0 += -0x7fa8;
    0x0002e0f8 lui a3, 0x20                  |     a3 = 0x200000;
    0x0002e0fc move a2, s1                   |     a2 = s1;
    0x0002e100 sw v0, 0x10(sp)               |     *(var_10h_2) = v0;
    0x0002e104 bal 0x2d5c0                   |     fcn_0002d5c0 ();
    0x0002e108 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0002e10c addiu t3, fp, 0x18            |     t3 = fp + 0x18;
    0x0002e110 addu s5, s3, t3               |     s5 = s3 + t3;
    0x0002e114 lw a2, -0x7fa8(gp)            |     a2 = *((gp - 8170));
    0x0002e118 lw a1, -0x7fd0(gp)            |     a1 = *(gp);
    0x0002e11c lw a0, 0x29c(s6)              |     a0 = *((s6 + 167));
    0x0002e120 lw t9, -0x7fa4(gp)            |     t9 = sym.profile_get_integer;
    0x0002e124 move a3, zero                 |     a3 = 0;
                                             |     /* str.max_count_problems */
    0x0002e128 addiu a2, a2, -0x7f9c         |     a2 += -0x7f9c;
                                             |     /* str.options */
    0x0002e12c addiu a1, a1, 0x54e4          |     a1 += 0x54e4;
    0x0002e130 sw s5, 0x14(sp)               |     *(var_14h) = s5;
    0x0002e134 sw zero, 0x10(sp)             |     *(var_10h_2) = 0;
    0x0002e138 bal 0x3b234                   |     sym_profile_get_integer ();
    0x0002e13c lw t2, 0x30(sp)               |     t2 = *(var_30h);
    0x0002e140 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0002e144 subu s7, t2, s0               |     __asm ("subu s7, t2, s0");
    0x0002e148 sll s7, s7, 2                 |     s7 <<= 2;
    0x0002e14c addu s7, s3, s7               |     s7 = s3 + s7;
    0x0002e150 lw a0, 0x29c(s6)              |     a0 = *((s6 + 167));
    0x0002e154 lw v0, 0x18(s7)               |     v0 = *((s7 + 6));
    0x0002e158 lw a3, -0x7fa8(gp)            |     a3 = *((gp - 8170));
    0x0002e15c sw v0, 0x10(sp)               |     *(var_10h_2) = v0;
    0x0002e160 lw v0, 0x2c(sp)               |     v0 = *(var_2ch);
    0x0002e164 lw t9, -0x7fa4(gp)            |     t9 = sym.profile_get_integer;
    0x0002e168 sw s5, 0x14(sp)               |     *(var_14h) = s5;
                                             |     /* str.max_count */
    0x0002e16c addiu a3, a3, -0x7f88         |     a3 += -0x7f88;
    0x0002e170 move a2, s1                   |     a2 = s1;
    0x0002e174 addiu a1, v0, 0x7fc0          |     a1 = v0 + 0x7fc0;
    0x0002e178 bal 0x3b234                   |     sym_profile_get_integer ();
    0x0002e17c lw v0, 0xc(s7)                |     v0 = *((s7 + 3));
    0x0002e180 lui a0, 8                     |     a0 = 0x80000;
    0x0002e184 or v0, v0, a0                 |     v0 |= a0;
    0x0002e188 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0002e18c sw v0, 0xc(s7)                |     *((s7 + 3)) = v0;
    0x0002e190 lw t2, 0x30(sp)               |     t2 = *(var_30h);
    0x0002e194 b 0x2d8e8                     |     goto label_12;
                                             |     if (s5 == 0) {
                                             | label_16:
    0x0002e198 beql s5, zero, 0x2dd48        |         goto label_13;
                                             |     }
    0x0002e19c andi v0, v0, 2                |     v0 &= 2;
                                             | label_78:
    0x0002e1a0 lw s5, -0x7fc8(gp)            |     s5 = *((gp - 8178));
                                             |     if (s1 != 0) {
    0x0002e1a4 bnez s1, 0x2e698              |         goto label_84;
                                             |     }
    0x0002e1a8 sll a1, a1, 2                 |     a1 <<= 2;
                                             |     /* esilref: '(NONE)' */
    0x0002e1ac addiu s5, s5, -0x11dc         |     s5 += -0x11dc;
    0x0002e1b0 lw s7, -0x7fa8(gp)            |     s7 = *((gp - 8170));
    0x0002e1b4 lw t9, -0x7b28(gp)            |     t9 = sym.imp.__printf_chk;
    0x0002e1b8 lwx a2, a1(s5)                |     __asm ("lwx a2, a1(s5)");
    0x0002e1bc sw t2, 0x28(sp)               |     *(var_28h) = t2;
    0x0002e1c0 addiu a0, zero, 1             |     a0 = 1;
                                             |     /* str._s._n */
    0x0002e1c4 addiu a1, s7, -0x7f3c         |     a1 = s7 + -0x7f3c;
    0x0002e1c8 jalr t9                       |     t9 ();
    0x0002e1cc lw a0, 0x14(s6)               |     a0 = *((s6 + 5));
    0x0002e1d0 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0002e1d4 lw t2, 0x28(sp)               |     t2 = *(var_28h);
                                             |     if (a0 == 0) {
    0x0002e1d8 beqz a0, 0x2e664              |         goto label_42;
                                             |     }
                                             | label_43:
    0x0002e1dc subu s1, t2, s0               |     __asm ("subu s1, t2, s0");
    0x0002e1e0 sll s1, s1, 2                 |     s1 <<= 2;
    0x0002e1e4 addu s1, s3, s1               |     s1 = s3 + s1;
    0x0002e1e8 lw t9, -0x7c2c(gp)            |     t9 = sym.imp.__fprintf_chk
    0x0002e1ec lb a3, 8(s1)                  |     a3 = *((s1 + 8));
    0x0002e1f0 sw t2, 0x28(sp)               |     *(var_28h) = t2;
    0x0002e1f4 sll a3, a3, 2                 |     a3 <<= 2;
                                             |     /* str._s._n */
    0x0002e1f8 addiu a2, s7, -0x7f3c         |     a2 = s7 + -0x7f3c;
    0x0002e1fc lwx a3, a3(s5)                |     __asm ("lwx a3, a3(s5)");
    0x0002e200 addiu a1, zero, 1             |     a1 = 1;
    0x0002e204 jalr t9                       |     t9 ();
    0x0002e208 lb a0, 8(s1)                  |     a0 = *((s1 + 8));
    0x0002e20c addiu v0, zero, 0xb           |     v0 = 0xb;
    0x0002e210 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0002e214 lw t2, 0x28(sp)               |     t2 = *(var_28h);
                                             |     if (a0 == v0) {
    0x0002e218 beq a0, v0, 0x2e610           |         goto label_85;
                                             |     }
    0x0002e21c addiu s5, zero, 1             |     s5 = 1;
                                             | label_81:
    0x0002e220 subu v0, t2, s0               |     __asm ("subu v0, t2, s0");
    0x0002e224 sll v0, v0, 2                 |     v0 <<= 2;
    0x0002e228 addu v0, s3, v0               |     v0 = s3 + v0;
    0x0002e22c lw v0, 0xc(v0)                |     v0 = *((v0 + 3));
    0x0002e230 andi v0, v0, 0x2000           |     v0 &= 0x2000;
                                             | label_61:
    0x0002e234 subu v0, t2, s0               |     __asm ("subu v0, t2, s0");
                                             |     if (v0 == 0) {
    0x0002e238 beqz v0, 0x2ddf4              |         goto label_14;
                                             |     }
    0x0002e23c sll v0, v0, 2                 |     v0 <<= 2;
    0x0002e240 b 0x2ddcc                     |     goto label_15;
                                             |     if (a2 == 0) {
                                             | label_76:
    0x0002e244 beqz a2, 0x2e198              |         goto label_16;
                                             |     }
    0x0002e248 nop                           |     
                                             |     if (s5 == 0) {
    0x0002e24c beql s5, zero, 0x2e5f8        |         goto label_86;
                                             |     }
    0x0002e250 andi a2, v0, 2                |     a2 = v0 & 2;
    0x0002e254 addiu a0, zero, 0xb           |     a0 = 0xb;
    0x0002e258 andi a0, v0, 0x2000           |     a0 = v0 & 0x2000;
                                             |     if (a1 == a0) {
    0x0002e25c beq a1, a0, 0x2e610           |         goto label_85;
                                             |     }
                                             |     if (a0 == 0) {
    0x0002e260 beql a0, zero, 0x2db2c        |         goto label_17;
                                             |     }
    0x0002e264 ext v0, v0, 0x15, 1           |     __asm ("ext v0, v0, 0x15, 1");
    0x0002e268 subu v0, t2, s0               |     __asm ("subu v0, t2, s0");
    0x0002e26c b 0x2ddc8                     |     goto label_18;
                                             | label_62:
    0x0002e270 addiu s0, zero, 1             |     s0 = 1;
    0x0002e274 ori v0, v0, 0x4000            |     v0 |= 0x4000;
    0x0002e278 sw v0, 0x24(s6)               |     *((s6 + 9)) = v0;
    0x0002e27c b 0x2db38                     |     goto label_7;
                                             | label_54:
    0x0002e280 sw t2, 0x34(sp)               |     *(var_34h) = t2;
    0x0002e284 sw a3, 0x30(sp)               |     *(var_30h) = a3;
    0x0002e288 sw t3, 0x2c(sp)               |     *(var_2ch) = t3;
    0x0002e28c move a0, s6                   |     a0 = s6;
    0x0002e290 move a2, s2                   |     a2 = s2;
    0x0002e294 bal 0x2d7bc                   |     sym_fix_problem ();
                                             |     goto label_5;
    0x0002e298 lw t3, 0x2c(sp)               |     t3 = *(var_2ch);
    0x0002e29c addiu a0, zero, 1             |     a0 = 1;
    0x0002e2a0 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0002e2a4 lw a3, 0x30(sp)               |     a3 = *(var_30h);
    0x0002e2a8 lw t2, 0x34(sp)               |     t2 = *(var_34h);
    0x0002e2ac lw s1, 0xc(t3)                |     s1 = *((t3 + 3));
                                             |     if (v0 == a0) {
    0x0002e2b0 beq v0, a0, 0x2e608           |         goto label_87;
                                             |     }
                                             |     if (v0 != 0) {
    0x0002e2b4 beql v0, zero, 0x2e2bc        |         
    0x0002e2b8 ori s1, s1, 2                 |         s1 |= 2;
                                             |     }
                                             | label_37:
    0x0002e2bc addu a1, a3, fp               |     a1 = a3 + fp;
    0x0002e2c0 ori s1, s1, 4                 |     s1 |= 4;
    0x0002e2c4 sw s1, 0xc(a1)                |     *((a1 + 3)) = s1;
    0x0002e2c8 ext s1, s1, 3, 1              |     __asm ("ext s1, s1, 3, 1");
    0x0002e2cc b 0x2d9a8                     |     goto label_19;
                                             | label_77:
    0x0002e2d0 lw v0, -0x7fc8(gp)            |     v0 = *((gp - 8178));
                                             |     if (a1 == v0) {
    0x0002e2d4 beq a1, v0, 0x2e648           |         goto label_88;
                                             |     }
    0x0002e2d8 sll a1, a1, 2                 |     a1 <<= 2;
                                             |     /* esilref: '(no prompt)' */
    0x0002e2dc addiu v0, v0, -0x1184         |     v0 += -0x1184;
    0x0002e2e0 lwx a1, a1(v0)                |     __asm ("lwx a1, a1(v0)");
                                             | label_39:
    0x0002e2e4 lw t9, -0x7d74(gp)            |     t9 = sym.ask;
    0x0002e2e8 sw t2, 0x2c(sp)               |     *(var_2ch) = t2;
    0x0002e2ec move a2, s5                   |     a2 = s5;
    0x0002e2f0 move a0, s6                   |     a0 = s6;
    0x0002e2f4 bal 0x2a49c                   |     sym_ask ();
    0x0002e2f8 lw t2, 0x2c(sp)               |     t2 = *(var_2ch);
    0x0002e2fc lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0002e300 subu a0, t2, s0               |     __asm ("subu a0, t2, s0");
    0x0002e304 sll a0, a0, 2                 |     a0 <<= 2;
    0x0002e308 move s5, v0                   |     s5 = v0;
    0x0002e30c addu a0, s3, a0               |     a0 = s3 + a0;
                                             |     if (v0 != 0) {
    0x0002e310 bnez v0, 0x2e5d0              |         goto label_89;
                                             |     }
    0x0002e314 lw v0, 0xc(a0)                |     v0 = *((a0 + 3));
    0x0002e318 andi a1, v0, 2                |     a1 = v0 & 2;
    0x0002e31c andi v0, v0, 0x2000           |     v0 &= 0x2000;
                                             |     if (a1 == 0) {
    0x0002e320 bnel a1, zero, 0x2ddbc        |         goto label_20;
                                             |     }
    0x0002e324 lw v1, 0x28(sp)               |     v1 = *(var_28h);
                                             | label_36:
    0x0002e328 addiu a1, zero, -9            |     a1 = -9;
    0x0002e32c lw v0, 8(v1)                  |     v0 = *((v1 + 2));
    0x0002e330 and v0, v0, a1                |     v0 &= a1;
    0x0002e334 sw v0, 8(v1)                  |     *((v1 + 2)) = v0;
    0x0002e338 lw v0, 0xc(a0)                |     v0 = *((a0 + 3));
    0x0002e33c andi v0, v0, 0x2000           |     v0 &= 0x2000;
    0x0002e340 b 0x2ddbc                     |     goto label_20;
                                             | label_56:
    0x0002e344 subu v0, t2, s0               |     __asm ("subu v0, t2, s0");
                                             |     if (a2 != a3) {
    0x0002e348 bne a2, a3, 0x2de2c           |         goto label_21;
                                             |     }
                                             | label_57:
    0x0002e34c lw a0, 0x1c(s6)               |     a0 = *((s6 + 7));
    0x0002e350 lw t9, -0x7c2c(gp)            |     t9 = sym.imp.__fprintf_chk
                                             |     if (a0 != 0) {
    0x0002e354 beqz a0, 0x2e378              |         
    0x0002e358 lw a2, -0x7fa8(gp)            |         a2 = *((gp - 8170));
    0x0002e35c sw t2, 0x2c(sp)               |         *(var_2ch) = t2;
    0x0002e360 move a3, s4                   |         a3 = s4;
                                             |         /* str._suppressed_code_0x_06x____n */
    0x0002e364 addiu a2, a2, -0x7f7c         |         a2 += -0x7f7c;
    0x0002e368 addiu a1, zero, 1             |         a1 = 1;
    0x0002e36c jalr t9                       |         t9 ();
    0x0002e370 lw gp, 0x18(sp)               |         gp = *(var_18h);
    0x0002e374 lw t2, 0x2c(sp)               |         t2 = *(var_2ch);
                                             |     }
    0x0002e378 subu a2, t2, s0               |     __asm ("subu a2, t2, s0");
    0x0002e37c sll a2, a2, 2                 |     a2 <<= 2;
    0x0002e380 lw a1, -0x7fa8(gp)            |     a1 = *((gp - 8170));
    0x0002e384 lw t9, -0x7b28(gp)            |     t9 = sym.imp.__printf_chk;
    0x0002e388 lwx a2, a2(s3)                |     __asm ("lwx a2, a2(s3)");
    0x0002e38c sw t2, 0x2c(sp)               |     *(var_2ch) = t2;
                                             |     /* str....problem_0x_06x_suppressed_n */
    0x0002e390 addiu a1, a1, -0x7f5c         |     a1 += -0x7f5c;
    0x0002e394 addiu a0, zero, 1             |     a0 = 1;
    0x0002e398 jalr t9                       |     t9 ();
    0x0002e39c lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0002e3a0 lw v0, -0x7b08(gp)            |     v0 = *((gp - 7874));
    0x0002e3a4 lw t9, -0x77c8(gp)            |     t9 = sym.imp.fflush;
    0x0002e3a8 lw a0, (v0)                   |     a0 = *(v0);
    0x0002e3ac jalr t9                       |     t9 ();
    0x0002e3b0 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0002e3b4 lw t2, 0x2c(sp)               |     t2 = *(var_2ch);
    0x0002e3b8 b 0x2de28                     |     goto label_22;
                                             | label_63:
    0x0002e3bc lw a2, -0x7fa8(gp)            |     a2 = *((gp - 8170));
    0x0002e3c0 move a3, s4                   |     a3 = s4;
                                             |     /* str._header_code_0x_06x____n */
    0x0002e3c4 addiu a2, a2, -0x7f2c         |     a2 += -0x7f2c;
    0x0002e3c8 addiu a1, zero, 1             |     a1 = 1;
    0x0002e3cc move a0, s1                   |     a0 = s1;
    0x0002e3d0 jalr t9                       |     t9 ();
    0x0002e3d4 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0002e3d8 b 0x2d870                     |     goto label_3;
                                             | label_64:
    0x0002e3dc lw a2, -0x7fa8(gp)            |     a2 = *((gp - 8170));
    0x0002e3e0 lw t9, -0x7c2c(gp)            |     t9 = sym.imp.__fprintf_chk
                                             |     /* str._errcode__lu_ */
    0x0002e3e4 addiu a2, a2, -0x7eec         |     a2 += -0x7eec;
    0x0002e3e8 addiu a1, zero, 1             |     a1 = 1;
    0x0002e3ec move a0, s1                   |     a0 = s1;
    0x0002e3f0 jalr t9                       |     t9 ();
    0x0002e3f4 lw gp, 0x18(sp)               |     gp = *(var_18h);
                                             |     if (s0 == 0) {
    0x0002e3f8 beqz s0, 0x2db88              |         goto label_23;
                                             |     }
    0x0002e3fc lw a0, -0x7fa8(gp)            |     a0 = *((gp - 8170));
                                             | label_65:
    0x0002e400 lw t9, -0x7938(gp)            |     t9 = sym.imp.fwrite;
    0x0002e404 move a3, s1                   |     a3 = s1;
    0x0002e408 addiu a2, zero, 0xa           |     a2 = 0xa;
    0x0002e40c addiu a1, zero, 1             |     a1 = 1;
                                             |     /* str._fixed_1_ */
    0x0002e410 addiu a0, a0, -0x7edc         |     a0 += -0x7edc;
    0x0002e414 jalr t9                       |     t9 ();
    0x0002e418 lw a3, 4(s2)                  |     a3 = *((s2 + 1));
    0x0002e41c lw gp, 0x18(sp)               |     gp = *(var_18h);
                                             |     if (a3 == 0) {
    0x0002e420 beqz a3, 0x2db94              |         goto label_24;
                                             |     }
    0x0002e424 lw a2, -0x7fa8(gp)            |     a2 = *((gp - 8170));
                                             | label_66:
    0x0002e428 lw t9, -0x7c2c(gp)            |     t9 = sym.imp.__fprintf_chk
                                             |     /* str._ino__u_ */
    0x0002e42c addiu a2, a2, -0x7ed0         |     a2 += -0x7ed0;
    0x0002e430 addiu a1, zero, 1             |     a1 = 1;
    0x0002e434 move a0, s1                   |     a0 = s1;
    0x0002e438 jalr t9                       |     t9 ();
    0x0002e43c lw a3, 8(s2)                  |     a3 = *((s2 + 2));
    0x0002e440 lw gp, 0x18(sp)               |     gp = *(var_18h);
                                             |     if (a3 == 0) {
    0x0002e444 beqz a3, 0x2dba0              |         goto label_25;
                                             |     }
    0x0002e448 lw a2, -0x7fa8(gp)            |     a2 = *((gp - 8170));
                                             | label_67:
    0x0002e44c lw t9, -0x7c2c(gp)            |     t9 = sym.imp.__fprintf_chk
                                             |     /* str._ino2__u_ */
    0x0002e450 addiu a2, a2, -0x7ec4         |     a2 += -0x7ec4;
    0x0002e454 addiu a1, zero, 1             |     a1 = 1;
    0x0002e458 move a0, s1                   |     a0 = s1;
    0x0002e45c jalr t9                       |     t9 ();
    0x0002e460 lw a3, 0xc(s2)                |     a3 = *((s2 + 3));
    0x0002e464 lw gp, 0x18(sp)               |     gp = *(var_18h);
                                             |     if (a3 == 0) {
    0x0002e468 beqz a3, 0x2dbac              |         goto label_26;
                                             |     }
    0x0002e46c lw a2, -0x7fa8(gp)            |     a2 = *((gp - 8170));
                                             | label_68:
    0x0002e470 lw t9, -0x7c2c(gp)            |     t9 = sym.imp.__fprintf_chk
    0x0002e474 move a0, s1                   |     a0 = s1;
                                             |     /* str._dir__u_ */
    0x0002e478 addiu a2, a2, -0x7eb8         |     a2 += -0x7eb8;
    0x0002e47c addiu a1, zero, 1             |     a1 = 1;
    0x0002e480 jalr t9                       |     t9 ();
    0x0002e484 lw v1, 0x18(s2)               |     v1 = *((s2 + 6));
    0x0002e488 lw v0, 0x1c(s2)               |     v0 = *((s2 + 7));
    0x0002e48c or a0, v1, v0                 |     a0 = v1 | v0;
    0x0002e490 lw gp, 0x18(sp)               |     gp = *(var_18h);
                                             |     if (a0 == 0) {
    0x0002e494 beqz a0, 0x2dbc0              |         goto label_27;
                                             |     }
    0x0002e498 lw a2, -0x7fa8(gp)            |     a2 = *((gp - 8170));
                                             | label_69:
    0x0002e49c lw t9, -0x7c2c(gp)            |     t9 = sym.imp.__fprintf_chk
    0x0002e4a0 sw v1, 0x10(sp)               |     *(var_10h_2) = v1;
    0x0002e4a4 move a0, s1                   |     a0 = s1;
    0x0002e4a8 sw v0, 0x14(sp)               |     *(var_14h) = v0;
                                             |     /* str._blk__llu_ */
    0x0002e4ac addiu a2, a2, -0x7eac         |     a2 += -0x7eac;
    0x0002e4b0 addiu a1, zero, 1             |     a1 = 1;
    0x0002e4b4 jalr t9                       |     t9 ();
    0x0002e4b8 lw v1, 0x20(s2)               |     v1 = *((s2 + 8));
    0x0002e4bc lw v0, 0x24(s2)               |     v0 = *((s2 + 9));
    0x0002e4c0 or a0, v1, v0                 |     a0 = v1 | v0;
    0x0002e4c4 lw gp, 0x18(sp)               |     gp = *(var_18h);
                                             |     if (a0 == 0) {
    0x0002e4c8 beqz a0, 0x2dbd4              |         goto label_28;
                                             |     }
    0x0002e4cc lw a2, -0x7fa8(gp)            |     a2 = *((gp - 8170));
                                             | label_70:
    0x0002e4d0 lw t9, -0x7c2c(gp)            |     t9 = sym.imp.__fprintf_chk
    0x0002e4d4 sw v1, 0x10(sp)               |     *(var_10h_2) = v1;
    0x0002e4d8 sw v0, 0x14(sp)               |     *(var_14h) = v0;
                                             |     /* str._blk2__llu_ */
    0x0002e4dc addiu a2, a2, -0x7ea0         |     a2 += -0x7ea0;
    0x0002e4e0 addiu a1, zero, 1             |     a1 = 1;
    0x0002e4e4 move a0, s1                   |     a0 = s1;
    0x0002e4e8 jalr t9                       |     t9 ();
    0x0002e4ec lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0002e4f0 b 0x2dbd4                     |     goto label_28;
                                             | label_75:
    0x0002e4f4 lw t9, -0x7c2c(gp)            |     t9 = sym.imp.__fprintf_chk
    0x0002e4f8 sw v1, 0x10(sp)               |     *(var_10h_2) = v1;
    0x0002e4fc sw v0, 0x14(sp)               |     *(var_14h) = v0;
                                             |     /* str._num2__llu_ */
    0x0002e500 addiu a2, a2, -0x7e4c         |     a2 += -0x7e4c;
    0x0002e504 addiu a1, zero, 1             |     a1 = 1;
    0x0002e508 move a0, s1                   |     a0 = s1;
    0x0002e50c jalr t9                       |     t9 ();
    0x0002e510 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0002e514 b 0x2dc7c                     |     goto label_29;
                                             | label_74:
    0x0002e518 lw t9, -0x7c2c(gp)            |     t9 = sym.imp.__fprintf_chk
    0x0002e51c sw v1, 0x10(sp)               |     *(var_10h_2) = v1;
    0x0002e520 sw v0, 0x14(sp)               |     *(var_14h) = v0;
                                             |     /* str._num__llu_ */
    0x0002e524 addiu a2, a2, -0x7e58         |     a2 += -0x7e58;
    0x0002e528 addiu a1, zero, 1             |     a1 = 1;
    0x0002e52c move a0, s1                   |     a0 = s1;
    0x0002e530 jalr t9                       |     t9 ();
    0x0002e534 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0002e538 b 0x2dc68                     |     goto label_30;
                                             | label_73:
    0x0002e53c lw t9, -0x7c2c(gp)            |     t9 = sym.imp.__fprintf_chk
                                             |     /* str._csum2__u_ */
    0x0002e540 addiu a2, a2, -0x7e64         |     a2 += -0x7e64;
    0x0002e544 addiu a1, zero, 1             |     a1 = 1;
    0x0002e548 move a0, s1                   |     a0 = s1;
    0x0002e54c jalr t9                       |     t9 ();
    0x0002e550 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0002e554 b 0x2dc54                     |     goto label_31;
                                             | label_72:
    0x0002e558 lw t9, -0x7c2c(gp)            |     t9 = sym.imp.__fprintf_chk
                                             |     /* str._csum1__u_ */
    0x0002e55c addiu a2, a2, -0x7e70         |     a2 += -0x7e70;
    0x0002e560 addiu a1, zero, 1             |     a1 = 1;
    0x0002e564 move a0, s1                   |     a0 = s1;
    0x0002e568 jalr t9                       |     t9 ();
    0x0002e56c lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0002e570 b 0x2dc48                     |     goto label_32;
                                             | label_79:
    0x0002e574 lw s7, -0x7fa8(gp)            |     s7 = *((gp - 8170));
    0x0002e578 lw t9, -0x7b28(gp)            |     t9 = sym.imp.__printf_chk;
    0x0002e57c sw t2, 0x28(sp)               |     *(var_28h) = t2;
    0x0002e580 addiu a0, zero, 1             |     a0 = 1;
                                             |     /* str.IGNORED */
    0x0002e584 addiu a2, s1, -0x7f34         |     a2 = s1 + -0x7f34;
                                             |     /* str._s._n */
    0x0002e588 addiu a1, s7, -0x7f3c         |     a1 = s7 + -0x7f3c;
    0x0002e58c jalr t9                       |     t9 ();
    0x0002e590 lw a0, 0x14(s6)               |     a0 = *((s6 + 5));
    0x0002e594 lw gp, 0x18(sp)               |     gp = *(var_18h);
    0x0002e598 lw t2, 0x28(sp)               |     t2 = *(var_28h);
                                             |     if (a0 != 0) {
    0x0002e59c bnez a0, 0x2dd78              |         goto label_33;
                                             |     }
    0x0002e5a0 subu a0, t2, s0               |     __asm ("subu a0, t2, s0");
                                             | label_80:
    0x0002e5a4 sll a0, a0, 2                 |     a0 <<= 2;
    0x0002e5a8 addu a0, s3, a0               |     a0 = s3 + a0;
    0x0002e5ac lw v0, 0xc(a0)                |     v0 = *((a0 + 3));
    0x0002e5b0 andi v0, v0, 0x2000           |     v0 &= 0x2000;
    0x0002e5b4 b 0x2ddbc                     |     goto label_20;
                                             | label_45:
    0x0002e5b8 addiu s3, a3, -0xf20          |     s3 = a3 + -0xf20;
    0x0002e5bc move fp, zero                 |     fp = 0;
    0x0002e5c0 sw s3, 0x24(sp)               |     *(var_24h) = s3;
    0x0002e5c4 move s0, zero                 |     s0 = 0;
    0x0002e5c8 move t2, zero                 |     t2 = 0;
    0x0002e5cc b 0x2d8cc                     |     goto label_34;
                                             | label_89:
    0x0002e5d0 lb v0, 8(a0)                  |     v0 = *((a0 + 8));
    0x0002e5d4 addiu a1, zero, 0xb           |     a1 = 0xb;
    0x0002e5d8 lw t9, -0x7fb8(gp)            |     t9 = sym.fatal_error;
                                             |     if (v0 == a1) {
    0x0002e5dc beq v0, a1, 0x2e618           |         goto label_90;
                                             |     }
    0x0002e5e0 lw a0, 0xc(a0)                |     a0 = *((a0 + 3));
    0x0002e5e4 andi a0, a0, 0x2000           |     a0 &= 0x2000;
                                             |     if (a0 == 0) {
    0x0002e5e8 beqz a0, 0x2db10              |         goto label_35;
                                             |     }
    0x0002e5ec nop                           |     
    0x0002e5f0 subu v0, t2, s0               |     __asm ("subu v0, t2, s0");
    0x0002e5f4 b 0x2ddc8                     |     goto label_18;
                                             | label_86:
    0x0002e5f8 lw v1, 0x28(sp)               |     v1 = *(var_28h);
                                             |     if (a2 == 0) {
    0x0002e5fc beqz a2, 0x2e328              |         goto label_36;
                                             |     }
    0x0002e600 andi v0, v0, 0x2000           |     v0 &= 0x2000;
    0x0002e604 b 0x2ddbc                     |     goto label_20;
                                             | label_87:
    0x0002e608 ori s1, s1, 1                 |     s1 |= 1;
    0x0002e60c b 0x2e2bc                     |     goto label_37;
                                             | label_85:
    0x0002e610 addiu s5, zero, 1             |     s5 = 1;
                                             |     do {
    0x0002e614 lw t9, -0x7fb8(gp)            |         t9 = sym.fatal_error;
                                             | label_90:
    0x0002e618 sw t2, 0x28(sp)               |         *(var_28h) = t2;
    0x0002e61c move a1, zero                 |         a1 = 0;
    0x0002e620 move a0, s6                   |         a0 = s6;
    0x0002e624 bal 0x29d10                   |         sym_fatal_error ();
    0x0002e628 lw t2, 0x28(sp)               |         t2 = *(var_28h);
    0x0002e62c lw gp, 0x18(sp)               |         gp = *(var_18h);
    0x0002e630 subu v0, t2, s0               |         __asm ("subu v0, t2, s0");
    0x0002e634 sll v0, v0, 2                 |         v0 <<= 2;
    0x0002e638 addu v0, s3, v0               |         v0 = s3 + v0;
    0x0002e63c lw v0, 0xc(v0)                |         v0 = *((v0 + 3));
    0x0002e640 andi v0, v0, 0x2000           |         v0 &= 0x2000;
    0x0002e644 b 0x2dafc                     |         goto label_38;
                                             | label_88:
    0x0002e648 lw a1, -0x7fd0(gp)            |         a1 = *(gp);
    0x0002e64c addiu a1, a1, 0x5c60          |         a1 += 0x5c60;
    0x0002e650 b 0x2e2e4                     |         goto label_39;
                                             |         /* esilref: '' */
                                             | label_53:
    0x0002e654 addiu a3, a2, -0xfe0          |         a3 = a2 + -0xfe0;
    0x0002e658 move s7, a3                   |         s7 = a3;
    0x0002e65c move fp, zero                 |         fp = 0;
    0x0002e660 b 0x2d970                     |         goto label_40;
                                             | label_42:
    0x0002e664 subu v0, t2, s0               |         __asm ("subu v0, t2, s0");
    0x0002e668 sll v0, v0, 2                 |         v0 <<= 2;
    0x0002e66c addu v0, s3, v0               |         v0 = s3 + v0;
    0x0002e670 addiu a0, zero, 0xb           |         a0 = 0xb;
    0x0002e674 lb a1, 8(v0)                  |         a1 = *((v0 + 8));
    0x0002e678 addiu s5, zero, 1             |         s5 = 1;
    0x0002e67c beq a1, a0, 0x2e614           |         
                                             |     } while (a1 == a0);
    0x0002e680 lw v0, 0xc(v0)                |     v0 = *((v0 + 3));
    0x0002e684 andi v0, v0, 0x2000           |     v0 &= 0x2000;
    0x0002e688 subu v0, t2, s0               |     __asm ("subu v0, t2, s0");
                                             |     if (v0 != 0) {
    0x0002e68c bnez v0, 0x2ddc8              |         goto label_18;
                                             |     }
    0x0002e690 sll v0, v0, 2                 |     v0 <<= 2;
    0x0002e694 b 0x2db08                     |     goto label_41;
                                             | label_84:
    0x0002e698 lw a0, 0x14(s6)               |     a0 = *((s6 + 5));
    0x0002e69c lw s7, -0x7fa8(gp)            |     s7 = *((gp - 8170));
                                             |     if (a0 == 0) {
    0x0002e6a0 beqz a0, 0x2e664              |         goto label_42;
                                             |     }
                                             |     /* esilref: '(NONE)' */
    0x0002e6a4 addiu s5, s5, -0x11dc         |     s5 += -0x11dc;
    0x0002e6a8 b 0x2e1dc                     |     goto label_43;
                                             | label_47:
    0x0002e6ac lw t9, -0x78a4(gp)            |     t9 = sym.imp.__stack_chk_fail;
    0x0002e6b0 jalr t9                       |     t9 ();
    0x0002e6b4 nop                           |     
                                             | label_52:
    0x0002e6b8 lw v0, 4(zero)                |     v0 = *((zero + 1));
    0x0002e6bc teq zero, zero                |     __asm ("teq zero, zero");
                                             | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/fsck.ext3 @ 0x3cb14 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) sym.get_empty_dquot ()           | void get_empty_dquot () {
    0x0003cb14 lui gp, 3                     |     
    0x0003cb18 addiu gp, gp, -0x2d54         |     
    0x0003cb1c addu gp, gp, t9               |     gp += t9;
    0x0003cb20 addiu sp, sp, -0x28           |     
    0x0003cb24 lw t9, -0x7cd0(gp)            |     t9 = sym.imp.calloc;
    0x0003cb28 addiu a1, zero, 1             |     a1 = 1;
    0x0003cb2c sw gp, 0x18(sp)               |     *(var_18h_2) = gp;
    0x0003cb30 sw s0, 0x20(sp)               |     *(var_20h_4) = s0;
    0x0003cb34 sw ra, 0x24(sp)               |     *(var_24h) = ra;
    0x0003cb38 addiu a0, zero, 0x50          |     a0 = 0x50;
    0x0003cb3c jalr t9                       |     t9 ();
    0x0003cb40 move s0, v0                   |     s0 = v0;
    0x0003cb44 lw gp, 0x18(sp)               |     gp = *(var_18h_2);
                                             |     if (v0 != 0) {
    0x0003cb48 beqz v0, 0x3cb68              |         
    0x0003cb4c lw ra, 0x24(sp)               |         ra = *(var_24h);
    0x0003cb50 addiu v0, zero, -1            |         v0 = -1;
    0x0003cb54 sw v0, 4(s0)                  |         *((s0 + 1)) = v0;
    0x0003cb58 move v0, s0                   |         v0 = s0;
    0x0003cb5c lw s0, 0x20(sp)               |         s0 = *(var_20h_4);
    0x0003cb60 addiu sp, sp, 0x28            |         
    0x0003cb64 jr ra                         |         return v0;
                                             |     }
    0x0003cb68 lw v0, -0x77dc(gp)            |     v0 = *((gp - 7671));
    0x0003cb6c lw a3, -0x7fa8(gp)            |     a3 = *((gp - 8170));
    0x0003cb70 lw a2, -0x7fa8(gp)            |     a2 = *((gp - 8170));
    0x0003cb74 lw a0, (v0)                   |     a0 = *(v0);
    0x0003cb78 lw v0, -0x7fa8(gp)            |     v0 = *((gp - 8170));
    0x0003cb7c lw t9, -0x7c2c(gp)            |     t9 = sym.imp.__fprintf_chk
                                             |     /* str.get_empty_dquot */
    0x0003cb80 addiu v0, v0, -0x2120         |     v0 += -0x2120;
    0x0003cb84 sw v0, 0x14(sp)               |     *(var_14h) = v0;
    0x0003cb88 addiu v0, zero, 0x1b8         |     v0 = aav.0x000001b8;
    0x0003cb8c sw v0, 0x10(sp)               |     *(var_10h) = v0;
                                             |     /* str..._.._.._git_lib_support_quotaio.c */
    0x0003cb90 addiu a3, a3, -0x23f0         |     a3 += -0x23f0;
                                             |     /* str._ERROR___s:_d:_s::_Failed_to_allocate_dquot_n */
    0x0003cb94 addiu a2, a2, -0x216c         |     a2 += -0x216c;
    0x0003cb98 addiu a1, zero, 1             |     a1 = 1;
    0x0003cb9c jalr t9                       |     t9 ();
    0x0003cba0 lw ra, 0x24(sp)               |     ra = *(var_24h);
    0x0003cba4 move v0, s0                   |     v0 = s0;
    0x0003cba8 lw s0, 0x20(sp)               |     s0 = *(var_20h_4);
    0x0003cbac addiu sp, sp, 0x28            |     
    0x0003cbb0 jr ra                         |     return v0;
                                             | }
    ; assembly                                   | /* r2dec pseudo code output */
                                                 | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/fsck.ext3 @ 0x2ea90 */
                                                 | #include <stdint.h>
                                                 |  
    ; (fcn) sym.print_e2fsck_message ()          | void print_e2fsck_message () {
                                                 | label_2:
    0x0002ea90 lui gp, 4                         |     
    0x0002ea94 addiu gp, gp, -0x4cd0             |     
    0x0002ea98 addu gp, gp, t9                   |     gp += t9;
    0x0002ea9c addiu sp, sp, -0x68               |     
    0x0002eaa0 lw t9, -0x7d78(gp)                |     t9 = sym.e2fsck_clear_progbar;
    0x0002eaa4 sw s6, 0x58(sp)                   |     *(var_58h) = s6;
    0x0002eaa8 lw s6, -0x7838(gp)                |     s6 = *((gp - 7694));
    0x0002eaac sw s5, 0x54(sp)                   |     *(var_54h) = s5;
    0x0002eab0 move s5, a2                       |     s5 = a2;
    0x0002eab4 lw v0, (s6)                       |     v0 = *(s6);
    0x0002eab8 sw gp, 0x18(sp)                   |     *(var_18h) = gp;
    0x0002eabc sw s7, 0x5c(sp)                   |     *(var_5ch) = s7;
    0x0002eac0 sw s4, 0x50(sp)                   |     *(var_50h) = s4;
    0x0002eac4 sw s3, 0x4c(sp)                   |     *(var_4ch) = s3;
    0x0002eac8 sw s1, 0x44(sp)                   |     *(var_44h) = s1;
    0x0002eacc sw s0, 0x40(sp)                   |     *(var_40h) = s0;
    0x0002ead0 sw v0, 0x3c(sp)                   |     *(var_3ch) = v0;
    0x0002ead4 sw ra, 0x64(sp)                   |     *(var_64h) = ra;
    0x0002ead8 sw fp, 0x60(sp)                   |     *(var_60h) = fp;
    0x0002eadc sw s2, 0x48(sp)                   |     *(var_48h) = s2;
    0x0002eae0 move s0, a0                       |     s0 = a0;
    0x0002eae4 move a0, a1                       |     a0 = a1;
    0x0002eae8 move s3, a1                       |     s3 = a1;
    0x0002eaec move s1, a3                       |     s1 = a3;
    0x0002eaf0 lw s7, 0x78(sp)                   |     s7 = *(arg_78h);
    0x0002eaf4 lw s4, (a1)                       |     s4 = *(a1);
    0x0002eaf8 jalr t9                           |     t9 ();
    0x0002eafc lb v0, (s5)                       |     v0 = *(s5);
    0x0002eb00 lw gp, 0x18(sp)                   |     gp = *(var_18h);
                                                 |     if (v0 == 0) {
    0x0002eb04 beqz v0, 0x2ebc8                  |         goto label_4;
                                                 |     }
    0x0002eb08 lw v1, -0x7fa8(gp)                |     v1 = *((gp - 8170));
    0x0002eb0c lw s2, -0x7fa8(gp)                |     s2 = *((gp - 8170));
    0x0002eb10 sw v1, 0x20(sp)                   |     *(var_20h) = v1;
    0x0002eb14 lw v1, -0x7fa8(gp)                |     v1 = *((gp - 8170));
    0x0002eb18 addiu s2, s2, -0x3760             |     s2 += -0x3760;
    0x0002eb1c sw v1, 0x28(sp)                   |     *(var_28h) = v1;
    0x0002eb20 lw v1, -0x7d90(gp)                |     v1 = *(gp);
    0x0002eb24 addiu v1, v1, -0x16e4             |     v1 += -0x16e4;
    0x0002eb28 sw v1, 0x24(sp)                   |     *(var_24h) = v1;
    0x0002eb2c lw v1, -0x7fa8(gp)                |     v1 = *((gp - 8170));
                                                 |     /* str.NULL */
    0x0002eb30 addiu v1, v1, -0x3afc             |     v1 += -0x3afc;
    0x0002eb34 sw v1, 0x30(sp)                   |     *(var_30h) = v1;
                                                 | label_0:
    0x0002eb38 addiu v1, zero, 0x40              |     v1 = 0x40;
    0x0002eb3c addiu v1, zero, 0x25              |     v1 = 0x25;
                                                 |     if (v0 == v1) {
    0x0002eb40 beq v0, v1, 0x2ec9c               |         goto label_5;
                                                 |     }
    0x0002eb44 addiu v0, zero, -0x41             |     v0 = -0x41;
                                                 |     if (v0 == v1) {
    0x0002eb48 beq v0, v1, 0x2ec04               |         goto label_6;
                                                 |     }
    0x0002eb4c lb a0, (s5)                       |     a0 = *(s5);
    0x0002eb50 and v0, a0, v0                    |     v0 = a0 & v0;
    0x0002eb54 addiu t0, zero, -1                |     t0 = -1;
                                                 |     if (v0 == 0) {
    0x0002eb58 beqz v0, 0x2ee4c                  |         goto label_7;
                                                 |     }
    0x0002eb5c addiu a0, zero, -0x41             |     a0 = -0x41;
                                                 |     if (a0 == v1) {
    0x0002eb60 beq a0, v1, 0x2ee4c               |         goto label_7;
                                                 |     }
    0x0002eb64 move t0, zero                     |     t0 = 0;
    0x0002eb68 addiu a1, zero, 0x25              |     a1 = 0x25;
    0x0002eb6c b 0x2eb7c                         |     
                                                 |     while (v1 != 0) {
    0x0002eb70 lw a2, -0x7fa8(gp)                |         a2 = *((gp - 8170));
                                                 |         if (v0 == a1) {
    0x0002eb74 beq v0, a1, 0x2eb98               |             goto label_8;
                                                 |         }
    0x0002eb78 move t0, a3                       |         t0 = a3;
    0x0002eb7c addiu a3, t0, 1                   |         a3 = t0 + 1;
    0x0002eb80 addu v0, s5, a3                   |         v0 = s5 + a3;
    0x0002eb84 lb v0, (v0)                       |         v0 = *(v0);
    0x0002eb88 and v1, v0, a0                    |         v1 = v0 & a0;
    0x0002eb8c bnez v1, 0x2eb70                  |         
                                                 |     }
    0x0002eb90 nop                               |     
                                                 | label_3:
    0x0002eb94 lw a2, -0x7fa8(gp)                |     a2 = *((gp - 8170));
                                                 | label_8:
    0x0002eb98 lw t9, -0x7c2c(gp)                |     t9 = sym.imp.__fprintf_chk
    0x0002eb9c sw s5, 0x10(sp)                   |     *(var_10h) = s5;
                                                 |     /* str._.s */
    0x0002eba0 addiu a2, a2, -0x3a00             |     a2 += -0x3a00;
    0x0002eba4 addiu a1, zero, 1                 |     a1 = 1;
    0x0002eba8 move a0, s0                       |     a0 = s0;
    0x0002ebac addu fp, s5, t0                   |     fp = s5 + t0;
    0x0002ebb0 jalr t9                           |     t9 ();
    0x0002ebb4 lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0002ebb8 addiu s5, fp, 1                   |     s5 = fp + 1;
                                                 | label_1:
    0x0002ebbc lb v0, 1(fp)                      |     v0 = *(arg_1h);
    0x0002ebc0 move s7, zero                     |     s7 = 0;
                                                 |     if (v0 != 0) {
    0x0002ebc4 bnez v0, 0x2eb38                  |         goto label_0;
                                                 |     }
                                                 | label_4:
    0x0002ebc8 lw v1, 0x3c(sp)                   |     v1 = *(var_3ch);
    0x0002ebcc lw v0, (s6)                       |     v0 = *(s6);
    0x0002ebd0 lw ra, 0x64(sp)                   |     ra = *(var_64h);
                                                 |     if (v1 != v0) {
    0x0002ebd4 bne v1, v0, 0x2f684               |         goto label_9;
                                                 |     }
    0x0002ebd8 lw fp, 0x60(sp)                   |     fp = *(var_60h);
    0x0002ebdc lw s7, 0x5c(sp)                   |     s7 = *(var_5ch);
    0x0002ebe0 lw s6, 0x58(sp)                   |     s6 = *(var_58h);
    0x0002ebe4 lw s5, 0x54(sp)                   |     s5 = *(var_54h);
    0x0002ebe8 lw s4, 0x50(sp)                   |     s4 = *(var_50h);
    0x0002ebec lw s3, 0x4c(sp)                   |     s3 = *(var_4ch);
    0x0002ebf0 lw s2, 0x48(sp)                   |     s2 = *(var_48h);
    0x0002ebf4 lw s1, 0x44(sp)                   |     s1 = *(var_44h);
    0x0002ebf8 lw s0, 0x40(sp)                   |     s0 = *(var_40h);
    0x0002ebfc addiu sp, sp, 0x68                |     
    0x0002ec00 jr ra                             |     return v0;
                                                 | label_6:
    0x0002ec04 lw t9, -0x7cc0(gp)                |     t9 = sym.imp.__ctype_b_loc;
    0x0002ec08 addiu fp, s5, 1                   |     fp = s5 + 1;
    0x0002ec0c jalr t9                           |     t9 ();
    0x0002ec10 lw a0, (v0)                       |     a0 = *(v0);
    0x0002ec14 lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0002ec18 move a1, zero                     |     a1 = 0;
    0x0002ec1c b 0x2ec38                         |     
                                                 |     while (v1 != 0) {
    0x0002ec20 sll v0, a1, 2                     |         v0 = a1 << 2;
    0x0002ec24 addu v0, v0, a1                   |         v0 += a1;
    0x0002ec28 sll v0, v0, 1                     |         v0 <<= 1;
    0x0002ec2c addu v0, v0, a3                   |         v0 += a3;
    0x0002ec30 addiu a1, v0, -0x30               |         a1 = v0 + -0x30;
    0x0002ec34 move fp, s5                       |         fp = s5;
    0x0002ec38 lb a3, (fp)                       |         a3 = *(fp);
    0x0002ec3c sll v1, a3, 1                     |         v1 = a3 << 1;
    0x0002ec40 addu v1, a0, v1                   |         v1 = a0 + v1;
    0x0002ec44 lhu v1, (v1)                      |         v1 = *(v1);
    0x0002ec48 andi v1, v1, 0x800                |         v1 &= 0x800;
    0x0002ec4c addiu s5, fp, 1                   |         s5 = fp + 1;
    0x0002ec50 bnez v1, 0x2ec20                  |         
                                                 |     }
    0x0002ec54 addiu v0, zero, 0x49              |     v0 = 0x49;
    0x0002ec58 addiu v0, zero, 0x44              |     v0 = 0x44;
                                                 |     if (a3 == v0) {
    0x0002ec5c beq a3, v0, 0x2ee08               |         goto label_10;
                                                 |     }
                                                 |     if (a3 == v0) {
    0x0002ec60 beq a3, v0, 0x2ed80               |         goto label_11;
                                                 |     }
    0x0002ec64 nop                               |     
    0x0002ec68 move a2, zero                     |     a2 = 0;
                                                 |     if (s4 != 0) {
    0x0002ec6c beqz s4, 0x2ec74                  |         
    0x0002ec70 lw a2, 0x80(s4)                   |         a2 = *((s4 + 32));
                                                 |     }
    0x0002ec74 addiu v0, a3, -0x25               |     v0 = a3 + -0x25;
                                                 |     if (s1 == 0) {
    0x0002ec78 beqz s1, 0x2ede8                  |         goto label_12;
                                                 |     }
    0x0002ec7c andi v0, v0, 0xff                 |     v0 &= 0xff;
    0x0002ec80 sltiu v1, v0, 0x55                |     v1 = (v0 < 0x55) ? 1 : 0;
    0x0002ec84 sll v0, v0, 2                     |     v0 <<= 2;
                                                 |     if (v1 == 0) {
    0x0002ec88 beqz v1, 0x2ede8                  |         goto label_12;
                                                 |     }
    0x0002ec8c lwx v0, v0(s2)                    |     __asm ("lwx v0, v0(s2)");
    0x0002ec90 addu v0, v0, gp                   |     v0 += gp;
    0x0002ec94 jr v0                             |     v0 ();
    0x0002ec98 nop                               |     
                                                 | label_5:
    0x0002ec9c lw v0, -0x7fc8(gp)                |     v0 = *((gp - 8178));
    0x0002eca0 addiu fp, s5, 1                   |     fp = s5 + 1;
    0x0002eca4 lw v1, 0x1a90(v0)                 |     v1 = *((v0 + 1700));
    0x0002eca8 lb a3, 1(s5)                      |     a3 = *((s5 + 1));
                                                 |     if (v1 == 0) {
    0x0002ecac beqz v1, 0x2ecdc                  |         goto label_13;
                                                 |     }
    0x0002ecb0 lb a0, (v1)                       |     a0 = *(v1);
                                                 |     /* esilref: 'aextended attribute' */
    0x0002ecb4 addiu v0, v0, 0x1a90              |     v0 += 0x1a90;
                                                 |     if (a0 == a3) {
    0x0002ecb8 beq a0, a3, 0x2ed00               |         goto label_14;
                                                 |     }
    0x0002ecbc addiu v0, v0, 4                   |     v0 += 4;
    0x0002ecc0 b 0x2ecd0                         |     
                                                 |     while (v1 == 0) {
                                                 |         if (a0 == a3) {
    0x0002ecc4 beql a0, a3, 0x2ed04              |             goto label_15;
                                                 |         }
    0x0002ecc8 lw v0, 0x7c(sp)                   |         v0 = *(arg_7ch);
    0x0002eccc addiu v0, v0, 4                   |         v0 += 4;
    0x0002ecd0 lw v1, (v0)                       |         v1 = *(v0);
    0x0002ecd4 lb a0, (v1)                       |         a0 = *(v1);
    0x0002ecd8 bnel v1, zero, 0x2ecc4            |         
                                                 |     }
                                                 | label_13:
    0x0002ecdc lw a2, -0x7fa8(gp)                |     a2 = *((gp - 8170));
                                                 |     do {
    0x0002ece0 lw t9, -0x7c2c(gp)                |         t9 = sym.imp.__fprintf_chk
                                                 |         /* esilref: '@&c' */
    0x0002ece4 addiu a2, a2, -0x3ac8             |         a2 += -0x3ac8;
    0x0002ece8 addiu a1, zero, 1                 |         a1 = 1;
    0x0002ecec move a0, s0                       |         a0 = s0;
    0x0002ecf0 jalr t9                           |         t9 ();
    0x0002ecf4 addiu s5, s5, 2                   |         s5 += 2;
    0x0002ecf8 lw gp, 0x18(sp)                   |         gp = *(var_18h);
    0x0002ecfc b 0x2ebbc                         |         goto label_1;
                                                 | label_14:
    0x0002ed00 lw v0, 0x7c(sp)                   |         v0 = *(arg_7ch);
                                                 | label_15:
    0x0002ed04 slti v0, v0, 0xa                  |         v0 = (v0 < 0xa) ? 1 : 0;
    0x0002ed08 lw a2, -0x7fa8(gp)                |         a2 = *((gp - 8170));
    0x0002ed0c beqz v0, 0x2ece0                  |         
                                                 |     } while (v0 == 0);
    0x0002ed10 addiu a2, v1, 1                   |     a2 = v1 + 1;
    0x0002ed14 sw v1, 0x2c(sp)                   |     *(var_2ch) = v1;
                                                 |     if (s7 == 0) {
    0x0002ed18 beqz s7, 0x2ed50                  |         goto label_16;
                                                 |     }
    0x0002ed1c lw t9, -0x7cc0(gp)                |     t9 = sym.imp.__ctype_b_loc;
    0x0002ed20 sw a2, 0x34(sp)                   |     *(var_34h) = a2;
    0x0002ed24 jalr t9                           |     t9 ();
    0x0002ed28 lw v1, 0x2c(sp)                   |     v1 = *(var_2ch);
    0x0002ed2c lw v0, (v0)                       |     v0 = *(v0);
    0x0002ed30 lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0002ed34 lb a1, 1(v1)                      |     a1 = *((v1 + 1));
    0x0002ed38 sll a0, a1, 1                     |     a0 = a1 << 1;
    0x0002ed3c addu v0, v0, a0                   |     v0 += a0;
    0x0002ed40 lhu v0, (v0)                      |     v0 = *(v0);
    0x0002ed44 andi v0, v0, 0x200                |     v0 &= aav.0x00000200;
    0x0002ed48 lw a2, 0x34(sp)                   |     a2 = *(var_34h);
    0x0002ed4c bnez v0, 0x2ee54                  |     
                                                 |     while (1) {
                                                 | label_16:
    0x0002ed50 lw v0, 0x7c(sp)                   |         v0 = *(arg_7ch);
    0x0002ed54 lw t9, -0x7d70(gp)                |         t9 = sym.print_e2fsck_message;
    0x0002ed58 addiu v0, v0, 1                   |         v0++;
    0x0002ed5c sw v0, 0x14(sp)                   |         *(var_14h) = v0;
    0x0002ed60 sw s7, 0x10(sp)                   |         *(var_10h) = s7;
    0x0002ed64 move a3, s1                       |         a3 = s1;
    0x0002ed68 move a1, s3                       |         a1 = s3;
    0x0002ed6c move a0, s0                       |         a0 = s0;
    0x0002ed70 bal 0x2ea90                       |         sym_print_e2fsck_message ();
                                                 |         goto label_2;
    0x0002ed74 addiu s5, s5, 2                   |         s5 += 2;
    0x0002ed78 lw gp, 0x18(sp)                   |         gp = *(var_18h);
    0x0002ed7c b 0x2ebbc                         |         goto label_1;
                                                 | label_11:
    0x0002ed80 lb a3, 1(fp)                      |         a3 = *(arg_1h);
                                                 |         if (s1 != 0) {
    0x0002ed84 beqz s1, 0x2edbc                  |             
    0x0002ed88 lw s7, 0x14(s1)                   |             s7 = *((s1 + 5));
    0x0002ed8c addiu v0, a3, -0x69               |             v0 = a3 + -0x69;
                                                 |             if (s7 == 0) {
    0x0002ed90 beqz s7, 0x2edbc                  |                 goto label_17;
                                                 |             }
    0x0002ed94 andi v0, v0, 0xff                 |             v0 &= 0xff;
    0x0002ed98 sltiu v1, v0, 0xc                 |             v1 = (v0 < 0xc) ? 1 : 0;
    0x0002ed9c sll v1, v0, 2                     |             v1 = v0 << 2;
                                                 |             if (v1 == 0) {
    0x0002eda0 beqz v1, 0x2edbc                  |                 goto label_17;
                                                 |             }
    0x0002eda4 lw v0, -0x7fa8(gp)                |             v0 = *((gp - 8170));
    0x0002eda8 addiu v0, v0, -0x360c             |             v0 += -0x360c;
    0x0002edac lwx v0, v1(v0)                    |             __asm ("lwx v0, v1(v0)");
    0x0002edb0 addu v0, v0, gp                   |             v0 += gp;
    0x0002edb4 jr v0                             |             v0 ();
    0x0002edb8 nop                               |             
                                                 |         }
                                                 | label_17:
    0x0002edbc lw a2, -0x7fa8(gp)                |         a2 = *((gp - 8170));
    0x0002edc0 lw t9, -0x7c2c(gp)                |         t9 = sym.imp.__fprintf_chk
                                                 |         /* str.__D_c */
    0x0002edc4 addiu a2, a2, -0x3a44             |         a2 += -0x3a44;
    0x0002edc8 addiu a1, zero, 1                 |         a1 = 1;
    0x0002edcc move a0, s0                       |         a0 = s0;
    0x0002edd0 jalr t9                           |         t9 ();
    0x0002edd4 lw gp, 0x18(sp)                   |         gp = *(var_18h);
    0x0002edd8 addiu v0, fp, 2                   |         v0 = fp + 2;
    0x0002eddc move fp, s5                       |         fp = s5;
    0x0002ede0 move s5, v0                       |         s5 = v0;
    0x0002ede4 b 0x2ebbc                         |         goto label_1;
                                                 | label_12:
    0x0002ede8 lw v0, 0x20(sp)                   |         v0 = *(var_20h);
    0x0002edec lw t9, -0x7c2c(gp)                |         t9 = sym.imp.__fprintf_chk
    0x0002edf0 addiu a2, v0, -0x3a08             |         a2 = v0 + -0x3a08;
    0x0002edf4 addiu a1, zero, 1                 |         a1 = 1;
    0x0002edf8 move a0, s0                       |         a0 = s0;
    0x0002edfc jalr t9                           |         t9 ();
    0x0002ee00 lw gp, 0x18(sp)                   |         gp = *(var_18h);
    0x0002ee04 b 0x2ebbc                         |         goto label_1;
                                                 | label_10:
    0x0002ee08 lb a3, 1(fp)                      |         a3 = *(arg_1h);
    0x0002ee0c addiu s7, fp, 2                   |         s7 = fp + 2;
                                                 |         if (s1 == 0) {
    0x0002ee10 beqz s1, 0x2ef50                  |             goto label_18;
                                                 |         }
    0x0002ee14 lw a1, 0x10(s1)                   |         a1 = *((s1 + 4));
    0x0002ee18 addiu v0, a3, -0x46               |         v0 = a3 + -0x46;
                                                 |         if (a1 == 0) {
    0x0002ee1c beqz a1, 0x2ef50                  |             goto label_18;
                                                 |         }
    0x0002ee20 andi v0, v0, 0xff                 |         v0 &= 0xff;
    0x0002ee24 sltiu v1, v0, 0x30                |         v1 = (v0 < 0x30) ? 1 : 0;
    0x0002ee28 sll v1, v0, 2                     |         v1 = v0 << 2;
                                                 |         if (v1 == 0) {
    0x0002ee2c beqz v1, 0x2ef50                  |             goto label_18;
                                                 |         }
    0x0002ee30 lw v0, -0x7fa8(gp)                |         v0 = *((gp - 8170));
    0x0002ee34 addiu v0, v0, -0x35dc             |         v0 += -0x35dc;
    0x0002ee38 lwx v0, v1(v0)                    |         __asm ("lwx v0, v1(v0)");
    0x0002ee3c addu v0, v0, gp                   |         v0 += gp;
    0x0002ee40 jr v0                             |         v0 ();
    0x0002ee44 nop                               |         
                                                 | label_7:
    0x0002ee4c move a3, zero                     |         a3 = 0;
    0x0002ee50 b 0x2eb94                         |         goto label_3;
    0x0002ee54 lw t9, -0x774c(gp)                |         t9 = sym.imp.__ctype_toupper_loc;
    0x0002ee58 addiu a2, v1, 2                   |         a2 = v1 + 2;
    0x0002ee5c sw a2, 0x2c(sp)                   |         *(var_2ch) = a2;
    0x0002ee60 sw a1, 0x34(sp)                   |         *(var_34h) = a1;
    0x0002ee64 jalr t9                           |         t9 ();
    0x0002ee68 lw a1, 0x34(sp)                   |         a1 = *(var_34h);
    0x0002ee6c lw gp, 0x18(sp)                   |         gp = *(var_18h);
    0x0002ee70 lw a0, (v0)                       |         a0 = *(v0);
    0x0002ee74 sll a1, a1, 2                     |         a1 <<= 2;
    0x0002ee78 lw t9, -0x7b94(gp)                |         t9 = sym.imp.fputc;
    0x0002ee7c lwx a0, a1(a0)                    |         __asm ("lwx a0, a1(a0)");
    0x0002ee80 move a1, s0                       |         a1 = s0;
    0x0002ee84 jalr t9                           |         t9 ();
    0x0002ee88 move s7, zero                     |         s7 = 0;
    0x0002ee8c lw gp, 0x18(sp)                   |         gp = *(var_18h);
    0x0002ee90 lw a2, 0x2c(sp)                   |         a2 = *(var_2ch);
    0x0002ee94 b 0x2ed50                         |         
                                                 |     }
                                                 | label_18:
    0x0002ef50 lw a2, -0x7fa8(gp)                |     a2 = *((gp - 8170));
    0x0002ef54 lw t9, -0x7c2c(gp)                |     t9 = sym.imp.__fprintf_chk
                                                 |     /* str.__I_c */
    0x0002ef58 addiu a2, a2, -0x3a4c             |     a2 += -0x3a4c;
    0x0002ef5c addiu a1, zero, 1                 |     a1 = 1;
    0x0002ef60 move a0, s0                       |     a0 = s0;
    0x0002ef64 jalr t9                           |     t9 ();
    0x0002ef68 move fp, s5                       |     fp = s5;
    0x0002ef6c lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0002ef70 move s5, s7                       |     s5 = s7;
    0x0002ef74 b 0x2ebbc                         |     goto label_1;
                                                 | label_9:
    0x0002f684 lw t9, -0x78a4(gp)                |     t9 = sym.imp.__stack_chk_fail;
    0x0002f688 jalr t9                           |     t9 ();
    0x0002f68c nop                               |     
    0x0002f690 lw a0, -0x7fa8(gp)                |     a0 = *((gp - 8170));
    0x0002f694 lw t9, -0x7938(gp)                |     t9 = sym.imp.fwrite;
    0x0002f698 move a3, s0                       |     a3 = s0;
    0x0002f69c addiu a2, zero, 6                 |     a2 = 6;
    0x0002f6a0 addiu a1, zero, 1                 |     a1 = 1;
                                                 |     /* str.socket */
    0x0002f6a4 addiu a0, a0, -0x3a74             |     a0 += -0x3a74;
    0x0002f6a8 jalr t9                           |     t9 ();
    0x0002f6ac move fp, s5                       |     fp = s5;
    0x0002f6b0 lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0002f6b4 move s5, s7                       |     s5 = s7;
    0x0002f6b8 b 0x2ebbc                         |     goto label_1;
                                                 | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/fsck.ext3 @ 0x3f180 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) sym.qtree_read_dquot ()          | void qtree_read_dquot () {
    0x0003f180 lui gp, 3                     |     
    0x0003f184 addiu gp, gp, -0x53c0         |     
    0x0003f188 addu gp, gp, t9               |     gp += t9;
    0x0003f18c addiu sp, sp, -0x40           |     
    0x0003f190 lw t9, -0x7cf8(gp)            |     t9 = sym.get_empty_dquot;
    0x0003f194 sw gp, 0x20(sp)               |     *(var_20h_3) = gp;
    0x0003f198 sw s3, 0x34(sp)               |     *(var_34h_2) = s3;
    0x0003f19c sw s1, 0x2c(sp)               |     *(var_2ch_2) = s1;
    0x0003f1a0 sw s0, 0x28(sp)               |     *(var_28h) = s0;
    0x0003f1a4 sw ra, 0x3c(sp)               |     *(var_3ch_2) = ra;
    0x0003f1a8 sw s4, 0x38(sp)               |     *(var_38h_2) = s4;
    0x0003f1ac sw s2, 0x30(sp)               |     *(var_30h) = s2;
    0x0003f1b0 move s1, a0                   |     s1 = a0;
    0x0003f1b4 move s3, a1                   |     s3 = a1;
    0x0003f1b8 bal 0x3cb14                   |     sym_get_empty_dquot ();
    0x0003f1bc move s0, v0                   |     s0 = v0;
    0x0003f1c0 lw gp, 0x20(sp)               |     gp = *(var_20h_3);
                                             |     if (v0 == 0) {
    0x0003f1c4 beqz v0, 0x3f2ec              |         goto label_3;
                                             |     }
    0x0003f1c8 lw t9, -0x79bc(gp)            |     t9 = sym.imp.malloc;
    0x0003f1cc lw a0, 0x3c(s1)               |     a0 = *((s1 + 15));
    0x0003f1d0 jalr t9                       |     t9 ();
    0x0003f1d4 move s2, v0                   |     s2 = v0;
    0x0003f1d8 lw gp, 0x20(sp)               |     gp = *(var_20h_3);
                                             |     if (v0 == 0) {
    0x0003f1dc beqz v0, 0x3f338              |         goto label_4;
                                             |     }
    0x0003f1e0 lw t9, -0x7a9c(gp)            |     t9 = sym.imp.memset;
    0x0003f1e4 addiu a2, zero, 0x40          |     a2 = 0x40;
    0x0003f1e8 move a1, zero                 |     a1 = 0;
    0x0003f1ec addiu a0, s0, 0x10            |     a0 = s0 + 0x10;
    0x0003f1f0 sw s3, 4(s0)                  |     *((s0 + 1)) = s3;
    0x0003f1f4 sw s1, 0xc(s0)                |     *((s0 + 3)) = s1;
    0x0003f1f8 jalr t9                       |     t9 ();
    0x0003f1fc lw gp, 0x20(sp)               |     gp = *(var_20h_3);
    0x0003f200 move a3, zero                 |     a3 = 0;
    0x0003f204 addiu a2, zero, 1             |     a2 = 1;
    0x0003f208 lw t9, -0x7fd0(gp)            |     t9 = *(gp);
    0x0003f20c move a1, s0                   |     a1 = s0;
                                             |     /* fcn.0003dbc8 */
    0x0003f210 addiu t9, t9, -0x2438         |     t9 += -0x2438;
    0x0003f214 move a0, s1                   |     a0 = s1;
    0x0003f218 bal 0x3dbc8                   |     fcn_0003dbc8 ();
    0x0003f21c move a3, v1                   |     a3 = v1;
    0x0003f220 lw gp, 0x20(sp)               |     gp = *(var_20h_3);
                                             |     if (v1 <= 0) {
    0x0003f224 blez v1, 0x3f310              |         goto label_5;
                                             |     }
    0x0003f228 lw v1, 0x3c(s1)               |     v1 = *((s1 + 15));
                                             | label_0:
    0x0003f22c lw t9, 0x1c(s1)               |     t9 = *((s1 + 7));
    0x0003f230 move a2, v0                   |     a2 = v0;
    0x0003f234 sw v0, 0x48(s0)               |     *((s0 + 18)) = v0;
    0x0003f238 sw a3, 0x4c(s0)               |     *((s0 + 19)) = a3;
    0x0003f23c addiu a0, s1, 0x10            |     a0 = s1 + 0x10;
    0x0003f240 sw v1, 0x14(sp)               |     *(var_14h_2) = v1;
    0x0003f244 sw s2, 0x10(sp)               |     *(var_10h_3) = s2;
    0x0003f248 jalr t9                       |     t9 ();
    0x0003f24c lw v1, 0x3c(s1)               |     v1 = *((s1 + 15));
    0x0003f250 lw gp, 0x20(sp)               |     gp = *(var_20h_3);
    0x0003f254 move s3, v0                   |     s3 = v0;
                                             |     if (v1 != v0) {
    0x0003f258 beq v1, v0, 0x3f2c8           |         
    0x0003f25c lw t9, -0x7aa4(gp)            |         t9 = sym.imp.__errno_location;
    0x0003f260 jalr t9                       |         t9 ();
    0x0003f264 nop                           |         
    0x0003f268 lw gp, 0x20(sp)               |         gp = *(var_20h_3);
                                             |         if (s3 != 0) {
    0x0003f26c bnez s3, 0x3f328              |             goto label_6;
                                             |         }
    0x0003f270 lw a0, (v0)                   |         a0 = *(v0);
                                             | label_2:
    0x0003f274 lw v0, -0x77dc(gp)            |         v0 = *((gp - 7671));
    0x0003f278 lw t9, -0x79f4(gp)            |         t9 = sym.imp.strerror;
    0x0003f27c lw s4, 4(s0)                  |         s4 = *((s0 + 1));
    0x0003f280 lw s3, (v0)                   |         s3 = *(v0);
    0x0003f284 jalr t9                       |         t9 ();
    0x0003f288 lw gp, 0x20(sp)               |         gp = *(var_20h_3);
    0x0003f28c sw v0, 0x1c(sp)               |         *(var_1ch_3) = v0;
    0x0003f290 sw s4, 0x18(sp)               |         *(var_18h_3) = s4;
    0x0003f294 lw v0, -0x7fa8(gp)            |         v0 = *((gp - 8170));
    0x0003f298 lw a3, -0x7fa8(gp)            |         a3 = *((gp - 8170));
                                             |         /* str.qtree_read_dquot */
    0x0003f29c addiu v0, v0, -0x1bac         |         v0 += -0x1bac;
    0x0003f2a0 lw a2, -0x7fa8(gp)            |         a2 = *((gp - 8170));
    0x0003f2a4 lw t9, -0x7c2c(gp)            |         t9 = sym.imp.__fprintf_chk
    0x0003f2a8 sw v0, 0x14(sp)               |         *(var_14h_2) = v0;
    0x0003f2ac addiu v0, zero, 0x217         |         v0 = 0x217;
    0x0003f2b0 sw v0, 0x10(sp)               |         *(var_10h_3) = v0;
                                             |         /* str..._.._.._git_lib_support_quotaio_tree.c */
    0x0003f2b4 addiu a3, a3, -0x1ef0         |         a3 += -0x1ef0;
                                             |         /* str._ERROR___s:_d:_s::_Cannot_read_quota_structure_for_id__u:__s_n */
    0x0003f2b8 addiu a2, a2, -0x1c18         |         a2 += -0x1c18;
    0x0003f2bc addiu a1, zero, 1             |         a1 = 1;
    0x0003f2c0 move a0, s3                   |         a0 = s3;
    0x0003f2c4 jalr t9                       |         t9 ();
                                             |     }
    0x0003f2c8 lw v0, 0x40(s1)               |     v0 = *((s1 + 16));
    0x0003f2cc move a1, s2                   |     a1 = s2;
    0x0003f2d0 lw t9, 4(v0)                  |     t9 = *((v0 + 1));
    0x0003f2d4 move a0, s0                   |     a0 = s0;
    0x0003f2d8 jalr t9                       |     t9 ();
    0x0003f2dc lw gp, 0x20(sp)               |     gp = *(var_20h_3);
    0x0003f2e0 lw t9, -0x7814(gp)            |     t9 = sym.imp.free;
                                             |     do {
                                             | label_1:
    0x0003f2e4 move a0, s2                   |         a0 = s2;
    0x0003f2e8 jalr t9                       |         t9 ();
                                             | label_3:
    0x0003f2ec lw ra, 0x3c(sp)               |         ra = *(var_3ch_2);
    0x0003f2f0 move v0, s0                   |         v0 = s0;
    0x0003f2f4 lw s4, 0x38(sp)               |         s4 = *(var_38h_2);
    0x0003f2f8 lw s3, 0x34(sp)               |         s3 = *(var_34h_2);
    0x0003f2fc lw s2, 0x30(sp)               |         s2 = *(var_30h);
    0x0003f300 lw s1, 0x2c(sp)               |         s1 = *(var_2ch_2);
    0x0003f304 lw s0, 0x28(sp)               |         s0 = *(var_28h);
    0x0003f308 addiu sp, sp, 0x40            |         
    0x0003f30c jr ra                         |         return v0;
                                             | label_5:
    0x0003f310 lw t9, -0x7814(gp)            |         t9 = sym.imp.free;
    0x0003f314 bnez v1, 0x3f2e4              |         
                                             |     } while (v1 != 0);
    0x0003f318 lw v1, 0x3c(s1)               |     v1 = *((s1 + 15));
                                             |     if (v0 == 0) {
    0x0003f31c bnel v0, zero, 0x3f22c        |         goto label_0;
                                             |     }
    0x0003f320 b 0x3f2e4                     |     goto label_1;
    0x0003f324 nop                           |     
                                             | label_6:
    0x0003f328 addiu v1, zero, 5             |     v1 = 5;
    0x0003f32c sw v1, (v0)                   |     *(v0) = v1;
    0x0003f330 addiu a0, zero, 5             |     a0 = 5;
    0x0003f334 b 0x3f274                     |     goto label_2;
                                             | label_4:
    0x0003f338 lw t9, -0x7814(gp)            |     t9 = sym.imp.free;
    0x0003f33c move a0, s0                   |     a0 = s0;
    0x0003f340 jalr t9                       |     t9 ();
    0x0003f344 lw ra, 0x3c(sp)               |     ra = *(var_3ch_2);
    0x0003f348 move s0, zero                 |     s0 = 0;
    0x0003f34c move v0, s0                   |     v0 = s0;
    0x0003f350 lw s4, 0x38(sp)               |     s4 = *(var_38h_2);
    0x0003f354 lw s3, 0x34(sp)               |     s3 = *(var_34h_2);
    0x0003f358 lw s2, 0x30(sp)               |     s2 = *(var_30h);
    0x0003f35c lw s1, 0x2c(sp)               |     s1 = *(var_2ch_2);
    0x0003f360 lw s0, 0x28(sp)               |     s0 = *(var_28h);
    0x0003f364 addiu sp, sp, 0x40            |     
    0x0003f368 jr ra                         |     return v0;
                                             | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/fsck.ext3 @ 0x3ee40 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) sym.qtree_write_dquot ()         | void qtree_write_dquot () {
    0x0003ee40 lui gp, 3                     |     
    0x0003ee44 addiu gp, gp, -0x5080         |     
    0x0003ee48 addu gp, gp, t9               |     gp += t9;
    0x0003ee4c addiu sp, sp, -0x50           |     
    0x0003ee50 lw t9, -0x7cd0(gp)            |     t9 = sym.imp.calloc;
    0x0003ee54 sw s3, 0x40(sp)               |     *(var_40h) = s3;
    0x0003ee58 lw s3, -0x7838(gp)            |     s3 = *((gp - 7694));
    0x0003ee5c sw s1, 0x38(sp)               |     *(var_38h) = s1;
    0x0003ee60 lw s1, 0xc(a0)                |     s1 = *((a0 + 3));
    0x0003ee64 lw v0, (s3)                   |     v0 = *(s3);
    0x0003ee68 sw s0, 0x34(sp)               |     *(var_34h) = s0;
    0x0003ee6c move s0, a0                   |     s0 = a0;
    0x0003ee70 lw a0, 0x3c(s1)               |     a0 = *((s1 + 15));
    0x0003ee74 sw gp, 0x20(sp)               |     *(var_20h) = gp;
    0x0003ee78 sw ra, 0x4c(sp)               |     *(var_4ch) = ra;
    0x0003ee7c sw s5, 0x48(sp)               |     *(var_48h) = s5;
    0x0003ee80 sw s4, 0x44(sp)               |     *(var_44h) = s4;
    0x0003ee84 sw s2, 0x3c(sp)               |     *(var_3ch) = s2;
    0x0003ee88 addiu a1, zero, 1             |     a1 = 1;
    0x0003ee8c sw v0, 0x2c(sp)               |     *(var_2ch) = v0;
    0x0003ee90 jalr t9                       |     t9 ();
    0x0003ee94 nop                           |     
    0x0003ee98 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 == 0) {
    0x0003ee9c beqz v0, 0x3efa4              |         goto label_2;
                                             |     }
    0x0003eea0 move s2, v0                   |     s2 = v0;
    0x0003eea4 lw v1, 0x4c(s0)               |     v1 = *((s0 + 19));
    0x0003eea8 lw v0, 0x48(s0)               |     v0 = *((s0 + 18));
    0x0003eeac or v0, v0, v1                 |     v0 |= v1;
    0x0003eeb0 lw t9, -0x7fd0(gp)            |     t9 = *(gp);
    0x0003eeb4 beqz v0, 0x3f048              |     
                                             |     while (v0 >= 0) {
    0x0003eeb8 lw v0, 0x40(s1)               |         v0 = *((s1 + 16));
                                             | label_0:
    0x0003eebc move a1, s0                   |         a1 = s0;
    0x0003eec0 lw t9, (v0)                   |         t9 = *(v0);
    0x0003eec4 move a0, s2                   |         a0 = s2;
    0x0003eec8 jalr t9                       |         t9 ();
    0x0003eecc lw v0, 0x3c(s1)               |         v0 = *((s1 + 15));
    0x0003eed0 sw s2, 0x10(sp)               |         *(var_10h) = s2;
    0x0003eed4 sw v0, 0x14(sp)               |         *(var_14h) = v0;
    0x0003eed8 lw t9, 0x20(s1)               |         t9 = *((s1 + 8));
    0x0003eedc lw a2, 0x48(s0)               |         a2 = *((s0 + 18));
    0x0003eee0 lw a3, 0x4c(s0)               |         a3 = *((s0 + 19));
    0x0003eee4 addiu a0, s1, 0x10            |         a0 = s1 + 0x10;
    0x0003eee8 jalr t9                       |         t9 ();
    0x0003eeec lw v1, 0x3c(s1)               |         v1 = *((s1 + 15));
    0x0003eef0 lw gp, 0x20(sp)               |         gp = *(var_20h);
    0x0003eef4 move s1, v0                   |         s1 = v0;
                                             |         if (v1 != v0) {
    0x0003eef8 beq v1, v0, 0x3ef6c           |             
    0x0003eefc lw t9, -0x7aa4(gp)            |             t9 = sym.imp.__errno_location;
    0x0003ef00 jalr t9                       |             t9 ();
    0x0003ef04 nop                           |             
    0x0003ef08 lw gp, 0x20(sp)               |             gp = *(var_20h);
                                             |             if (s1 != 0) {
    0x0003ef0c bnez s1, 0x3f0dc              |                 goto label_3;
                                             |             }
    0x0003ef10 lw a0, (v0)                   |             a0 = *(v0);
                                             | label_1:
    0x0003ef14 lw v0, -0x77dc(gp)            |             v0 = *((gp - 7671));
    0x0003ef18 lw t9, -0x79f4(gp)            |             t9 = sym.imp.strerror;
    0x0003ef1c lw s0, 4(s0)                  |             s0 = *((s0 + 1));
    0x0003ef20 lw s1, (v0)                   |             s1 = *(v0);
    0x0003ef24 jalr t9                       |             t9 ();
    0x0003ef28 lw gp, 0x20(sp)               |             gp = *(var_20h);
    0x0003ef2c sw v0, 0x1c(sp)               |             *(var_1ch) = v0;
    0x0003ef30 sw s0, 0x18(sp)               |             *(var_18h) = s0;
    0x0003ef34 lw v0, -0x7fa8(gp)            |             v0 = *((gp - 8170));
    0x0003ef38 lw a3, -0x7fa8(gp)            |             a3 = *((gp - 8170));
    0x0003ef3c lw a2, -0x7fa8(gp)            |             a2 = *((gp - 8170));
                                             |             /* str.qtree_write_dquot */
    0x0003ef40 addiu v0, v0, -0x1b20         |             v0 += -0x1b20;
    0x0003ef44 lw t9, -0x7c2c(gp)            |             t9 = sym.imp.__fprintf_chk
    0x0003ef48 sw v0, 0x14(sp)               |             *(var_14h) = v0;
    0x0003ef4c addiu v0, zero, 0x15c         |             v0 = aav.0x0000015c;
    0x0003ef50 sw v0, 0x10(sp)               |             *(var_10h) = v0;
                                             |             /* str..._.._.._git_lib_support_quotaio_tree.c */
    0x0003ef54 addiu a3, a3, -0x1ef0         |             a3 += -0x1ef0;
                                             |             /* str._ERROR___s:_d:_s::_Quota_write_failed__id__u_:__s_n */
    0x0003ef58 addiu a2, a2, -0x1c80         |             a2 += -0x1c80;
    0x0003ef5c addiu a1, zero, 1             |             a1 = 1;
    0x0003ef60 move a0, s1                   |             a0 = s1;
    0x0003ef64 jalr t9                       |             t9 ();
    0x0003ef68 lw gp, 0x20(sp)               |             gp = *(var_20h);
                                             |         }
    0x0003ef6c lw v1, 0x2c(sp)               |         v1 = *(var_2ch);
    0x0003ef70 lw v0, (s3)                   |         v0 = *(s3);
    0x0003ef74 lw ra, 0x4c(sp)               |         ra = *(var_4ch);
                                             |         if (v1 != v0) {
    0x0003ef78 bne v1, v0, 0x3f0ec           |             goto label_4;
                                             |         }
    0x0003ef7c lw s5, 0x48(sp)               |         s5 = *(var_48h);
    0x0003ef80 lw s4, 0x44(sp)               |         s4 = *(var_44h);
    0x0003ef84 lw s3, 0x40(sp)               |         s3 = *(var_40h);
    0x0003ef88 lw s1, 0x38(sp)               |         s1 = *(var_38h);
    0x0003ef8c lw s0, 0x34(sp)               |         s0 = *(var_34h);
    0x0003ef90 move a0, s2                   |         a0 = s2;
    0x0003ef94 lw t9, -0x7814(gp)            |         t9 = sym.imp.free;
    0x0003ef98 lw s2, 0x3c(sp)               |         s2 = *(var_3ch);
    0x0003ef9c addiu sp, sp, 0x50            |         
    0x0003efa0 jr t9                         |         t9 ();
                                             | label_2:
    0x0003efa4 lw t9, -0x7aa4(gp)            |         t9 = sym.imp.__errno_location;
    0x0003efa8 jalr t9                       |         t9 ();
    0x0003efac nop                           |         
    0x0003efb0 lw gp, 0x20(sp)               |         gp = *(var_20h);
    0x0003efb4 addiu v1, zero, 0xc           |         v1 = 0xc;
    0x0003efb8 sw v1, (v0)                   |         *(v0) = v1;
    0x0003efbc lw v0, -0x77dc(gp)            |         v0 = *((gp - 7671));
    0x0003efc0 lw t9, -0x79f4(gp)            |         t9 = sym.imp.strerror;
    0x0003efc4 addiu a0, zero, 0xc           |         a0 = 0xc;
    0x0003efc8 lw s1, (v0)                   |         s1 = *(v0);
    0x0003efcc lw s0, 4(s0)                  |         s0 = *((s0 + 1));
    0x0003efd0 jalr t9                       |         t9 ();
    0x0003efd4 lw gp, 0x20(sp)               |         gp = *(var_20h);
    0x0003efd8 sw v0, 0x1c(sp)               |         *(var_1ch) = v0;
    0x0003efdc sw s0, 0x18(sp)               |         *(var_18h) = s0;
    0x0003efe0 lw v0, -0x7fa8(gp)            |         v0 = *((gp - 8170));
    0x0003efe4 lw a3, -0x7fa8(gp)            |         a3 = *((gp - 8170));
    0x0003efe8 lw a2, -0x7fa8(gp)            |         a2 = *((gp - 8170));
                                             |         /* str.qtree_write_dquot */
    0x0003efec addiu v0, v0, -0x1b20         |         v0 += -0x1b20;
    0x0003eff0 lw t9, -0x7c2c(gp)            |         t9 = sym.imp.__fprintf_chk
    0x0003eff4 sw v0, 0x14(sp)               |         *(var_14h) = v0;
    0x0003eff8 addiu v0, zero, 0x14a         |         v0 = 0x14a;
    0x0003effc sw v0, 0x10(sp)               |         *(var_10h) = v0;
                                             |         /* str..._.._.._git_lib_support_quotaio_tree.c */
    0x0003f000 addiu a3, a3, -0x1ef0         |         a3 += -0x1ef0;
                                             |         /* str._ERROR___s:_d:_s::_Quota_write_failed__id__u_:__s_n */
    0x0003f004 addiu a2, a2, -0x1c80         |         a2 += -0x1c80;
    0x0003f008 addiu a1, zero, 1             |         a1 = 1;
    0x0003f00c move a0, s1                   |         a0 = s1;
    0x0003f010 jalr t9                       |         t9 ();
    0x0003f014 lw v1, 0x2c(sp)               |         v1 = *(var_2ch);
    0x0003f018 lw v0, (s3)                   |         v0 = *(s3);
    0x0003f01c lw gp, 0x20(sp)               |         gp = *(var_20h);
                                             |         if (v1 != v0) {
    0x0003f020 bne v1, v0, 0x3f0ec           |             goto label_4;
                                             |         }
    0x0003f024 lw ra, 0x4c(sp)               |         ra = *(var_4ch);
    0x0003f028 lw s5, 0x48(sp)               |         s5 = *(var_48h);
    0x0003f02c lw s4, 0x44(sp)               |         s4 = *(var_44h);
    0x0003f030 lw s3, 0x40(sp)               |         s3 = *(var_40h);
    0x0003f034 lw s2, 0x3c(sp)               |         s2 = *(var_3ch);
    0x0003f038 lw s1, 0x38(sp)               |         s1 = *(var_38h);
    0x0003f03c lw s0, 0x34(sp)               |         s0 = *(var_34h);
    0x0003f040 addiu sp, sp, 0x50            |         
    0x0003f044 jr ra                         |         return v1;
    0x0003f048 addiu v0, zero, 1             |         v0 = 1;
    0x0003f04c move a3, zero                 |         a3 = 0;
    0x0003f050 addiu a2, sp, 0x28            |         a2 = sp + 0x28;
    0x0003f054 move a1, s0                   |         a1 = s0;
    0x0003f058 move a0, s1                   |         a0 = s1;
                                             |         /* fcn.0003e2c4 */
    0x0003f05c addiu t9, t9, -0x1d3c         |         t9 += -0x1d3c;
    0x0003f060 sw v0, 0x28(sp)               |         *(var_28h_2) = v0;
    0x0003f064 bal 0x3e2c4                   |         fcn_0003e2c4 ();
    0x0003f068 lw gp, 0x20(sp)               |         gp = *(var_20h);
    0x0003f06c bgez v0, 0x3eeb8              |         
                                             |     }
    0x0003f070 lw v0, -0x77dc(gp)            |     v0 = *((gp - 7671));
    0x0003f074 lw t9, -0x7aa4(gp)            |     t9 = sym.imp.__errno_location;
    0x0003f078 lw s5, 4(s0)                  |     s5 = *((s0 + 1));
    0x0003f07c lw s4, (v0)                   |     s4 = *(v0);
    0x0003f080 jalr t9                       |     t9 ();
    0x0003f084 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x0003f088 lw t9, -0x79f4(gp)            |     t9 = sym.imp.strerror;
    0x0003f08c lw a0, (v0)                   |     a0 = *(v0);
    0x0003f090 jalr t9                       |     t9 ();
    0x0003f094 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x0003f098 sw v0, 0x1c(sp)               |     *(var_1ch) = v0;
    0x0003f09c sw s5, 0x18(sp)               |     *(var_18h) = s5;
    0x0003f0a0 lw v0, -0x7fa8(gp)            |     v0 = *((gp - 8170));
    0x0003f0a4 lw a3, -0x7fa8(gp)            |     a3 = *((gp - 8170));
                                             |     /* str.dq_insert_tree */
    0x0003f0a8 addiu v0, v0, -0x1b30         |     v0 += -0x1b30;
    0x0003f0ac lw a2, -0x7fa8(gp)            |     a2 = *((gp - 8170));
    0x0003f0b0 lw t9, -0x7c2c(gp)            |     t9 = sym.imp.__fprintf_chk
    0x0003f0b4 sw v0, 0x14(sp)               |     *(var_14h) = v0;
    0x0003f0b8 addiu v0, zero, 0x137         |     v0 = 0x137;
    0x0003f0bc sw v0, 0x10(sp)               |     *(var_10h) = v0;
                                             |     /* str..._.._.._git_lib_support_quotaio_tree.c */
    0x0003f0c0 addiu a3, a3, -0x1ef0         |     a3 += -0x1ef0;
                                             |     /* str._ERROR___s:_d:_s::_Cannot_write_quota__id__u_:__s_n */
    0x0003f0c4 addiu a2, a2, -0x1c4c         |     a2 += -0x1c4c;
    0x0003f0c8 addiu a1, zero, 1             |     a1 = 1;
    0x0003f0cc move a0, s4                   |     a0 = s4;
    0x0003f0d0 jalr t9                       |     t9 ();
    0x0003f0d4 lw v0, 0x40(s1)               |     v0 = *((s1 + 16));
    0x0003f0d8 b 0x3eebc                     |     goto label_0;
                                             | label_3:
    0x0003f0dc addiu v1, zero, 0x1c          |     v1 = 0x1c;
    0x0003f0e0 sw v1, (v0)                   |     *(v0) = v1;
    0x0003f0e4 addiu a0, zero, 0x1c          |     a0 = 0x1c;
    0x0003f0e8 b 0x3ef14                     |     goto label_1;
                                             | label_4:
    0x0003f0ec lw t9, -0x78a4(gp)            |     t9 = sym.imp.__stack_chk_fail;
    0x0003f0f0 jalr t9                       |     t9 ();
    0x0003f0f4 nop                           |     
                                             | }
    ; assembly                                   | /* r2dec pseudo code output */
                                                 | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/fsck.ext3 @ 0x38844 */
                                                 | #include <stdint.h>
                                                 |  
    ; (fcn) sym.quota_compare_and_update ()      | void quota_compare_and_update () {
    0x00038844 lui gp, 3                         |     
    0x00038848 addiu gp, gp, 0x157c              |     
    0x0003884c addu gp, gp, t9                   |     gp += t9;
    0x00038850 addiu sp, sp, -0xb0               |     
    0x00038854 sw s2, 0x94(sp)                   |     *(var_94h) = s2;
    0x00038858 sw s0, 0x8c(sp)                   |     *(var_8ch) = s0;
    0x0003885c lw s2, -0x7838(gp)                |     s2 = *((gp - 7694));
    0x00038860 sll s0, a1, 2                     |     s0 = a1 << 2;
    0x00038864 addu s0, a0, s0                   |     s0 = a0 + s0;
    0x00038868 sw s1, 0x90(sp)                   |     *(var_90h) = s1;
    0x0003886c lw v0, (s2)                       |     v0 = *(s2);
    0x00038870 lw s1, 4(s0)                      |     s1 = *((s0 + 1));
    0x00038874 sw gp, 0x18(sp)                   |     *(var_18h_2) = gp;
    0x00038878 sw ra, 0xac(sp)                   |     *(var_ach) = ra;
    0x0003887c sw s7, 0xa8(sp)                   |     *(var_a8h) = s7;
    0x00038880 sw s6, 0xa4(sp)                   |     *(var_a4h) = s6;
    0x00038884 sw s5, 0xa0(sp)                   |     *(var_a0h) = s5;
    0x00038888 sw s4, 0x9c(sp)                   |     *(var_9ch) = s4;
    0x0003888c sw s3, 0x98(sp)                   |     *(var_98h) = s3;
    0x00038890 sw v0, 0x84(sp)                   |     *(var_84h) = v0;
    0x00038894 lw t9, -0x7d24(gp)                |     t9 = sym.quota_file_open;
                                                 |     if (s1 == 0) {
    0x00038898 beqz s1, 0x38984                  |         goto label_3;
                                                 |     }
    0x0003889c addiu v0, zero, -1                |     v0 = -1;
    0x000388a0 addiu s4, sp, 0x34                |     s4 = sp + 0x34;
    0x000388a4 move a3, a1                       |     a3 = a1;
    0x000388a8 move s5, a2                       |     s5 = a2;
    0x000388ac sw zero, 0x14(sp)                 |     *(var_14h) = 0;
    0x000388b0 sw v0, 0x10(sp)                   |     *(var_10h_2) = v0;
    0x000388b4 move a2, zero                     |     a2 = 0;
    0x000388b8 move a1, s4                       |     a1 = s4;
    0x000388bc move s3, a0                       |     s3 = a0;
    0x000388c0 bal 0x3c74c                       |     sym_quota_file_open ();
    0x000388c4 move s6, v0                       |     s6 = v0;
    0x000388c8 lw gp, 0x18(sp)                   |     gp = *(var_18h_2);
                                                 |     if (v0 != 0) {
    0x000388cc bnez v0, 0x38948                  |         goto label_4;
                                                 |     }
    0x000388d0 lw v1, 0x58(sp)                   |     v1 = *(var_58h);
    0x000388d4 lw v0, 4(s0)                      |     v0 = *((s0 + 1));
    0x000388d8 lw a1, -0x7d90(gp)                |     a1 = *(gp);
    0x000388dc addiu s0, zero, 1                 |     s0 = 1;
    0x000388e0 lw t9, 0x1c(v1)                   |     t9 = *((v1 + 7));
    0x000388e4 sw v0, 0x20(sp)                   |     *(var_20h) = v0;
    0x000388e8 sw s0, 0x24(sp)                   |     *(var_24h_2) = s0;
    0x000388ec sw zero, 0x28(sp)                 |     *(var_28h_2) = 0;
    0x000388f0 sw s0, 0x2c(sp)                   |     *(var_2ch_2) = s0;
    0x000388f4 sw zero, 0x30(sp)                 |     *(var_30h_2) = 0;
    0x000388f8 addiu a2, sp, 0x20                |     a2 = sp + 0x20;
    0x000388fc addiu a1, a1, 0x74d4              |     a1 += 0x74d4;
    0x00038900 move a0, s4                       |     a0 = s4;
    0x00038904 jalr t9                           |     t9 ();
    0x00038908 lw gp, 0x18(sp)                   |     gp = *(var_18h_2);
                                                 |     if (v0 == 0) {
    0x0003890c beqz v0, 0x3898c                  |         goto label_5;
                                                 |     }
    0x00038910 sw s0, (s5)                       |     *(s5) = s0;
                                                 | label_2:
    0x00038914 lw t9, -0x7d28(gp)                |     t9 = sym.quota_file_close;
    0x00038918 move a1, s4                       |     a1 = s4;
    0x0003891c move a0, s3                       |     a0 = s3;
    0x00038920 bal 0x3c530                       |     sym_quota_file_close ();
    0x00038924 move s6, v0                       |     s6 = v0;
    0x00038928 lw gp, 0x18(sp)                   |     gp = *(var_18h_2);
                                                 |     if (v0 == 0) {
    0x0003892c beqz v0, 0x38984                  |         goto label_3;
                                                 |     }
    0x00038930 lw a0, 0x4c(sp)                   |     a0 = *(var_4ch_2);
    0x00038934 lw t9, -0x77f4(gp)                |     t9 = sym.imp.ext2fs_file_close;
                                                 |     if (a0 == 0) {
    0x00038938 beqz a0, 0x38948                  |         goto label_4;
                                                 |     }
    0x0003893c jalr t9                           |     t9 ();
    0x00038940 nop                               |     
    0x00038944 lw gp, 0x18(sp)                   |     gp = *(var_18h_2);
                                                 |     do {
                                                 | label_4:
    0x00038948 lw a0, 0x84(sp)                   |         a0 = *(var_84h);
    0x0003894c lw v1, (s2)                       |         v1 = *(s2);
    0x00038950 move v0, s6                       |         v0 = s6;
                                                 |         if (a0 != v1) {
    0x00038954 bne a0, v1, 0x38a34               |             goto label_6;
                                                 |         }
    0x00038958 lw ra, 0xac(sp)                   |         ra = *(var_ach);
    0x0003895c lw s7, 0xa8(sp)                   |         s7 = *(var_a8h);
    0x00038960 lw s6, 0xa4(sp)                   |         s6 = *(var_a4h);
    0x00038964 lw s5, 0xa0(sp)                   |         s5 = *(var_a0h);
    0x00038968 lw s4, 0x9c(sp)                   |         s4 = *(var_9ch);
    0x0003896c lw s3, 0x98(sp)                   |         s3 = *(var_98h);
    0x00038970 lw s2, 0x94(sp)                   |         s2 = *(var_94h);
    0x00038974 lw s1, 0x90(sp)                   |         s1 = *(var_90h);
    0x00038978 lw s0, 0x8c(sp)                   |         s0 = *(var_8ch);
    0x0003897c addiu sp, sp, 0xb0                |         
    0x00038980 jr ra                             |         return v0;
                                                 | label_3:
    0x00038984 move s6, zero                     |         s6 = 0;
    0x00038988 b 0x38948                         |         
                                                 |     } while (1);
                                                 | label_5:
    0x0003898c lw t9, -0x7dfc(gp)                |     t9 = sym.dict_first;
    0x00038990 move a0, s1                       |     a0 = s1;
    0x00038994 bal 0x3facc                       |     sym_dict_first ();
    0x00038998 move s0, v0                       |     s0 = v0;
    0x0003899c lw gp, 0x18(sp)                   |     gp = *(var_18h_2);
                                                 |     if (v0 == 0) {
    0x000389a0 beqz v0, 0x38a28                  |         goto label_7;
                                                 |     }
    0x000389a4 lw s6, -0x7fa8(gp)                |     s6 = *((gp - 8170));
    0x000389a8 lw s7, -0x77dc(gp)                |     s7 = *((gp - 7671));
                                                 |     /* str._QUOTA_WARNING__Missing_quota_entry_ID__d_n */
    0x000389ac addiu s6, s6, -0x2adc             |     s6 += -0x2adc;
    0x000389b0 b 0x389cc                         |     
                                                 |     while (v1 == 0) {
    0x000389b4 move a1, s0                       |         a1 = s0;
                                                 | label_0:
    0x000389b8 move a0, s1                       |         a0 = s1;
    0x000389bc bal 0x3fb4c                       |         sym_dict_next ();
    0x000389c0 move s0, v0                       |         s0 = v0;
    0x000389c4 lw gp, 0x18(sp)                   |         gp = *(var_18h_2);
                                                 |         if (v0 == 0) {
    0x000389c8 beqz v0, 0x38a28                  |             goto label_7;
                                                 |         }
                                                 | label_1:
    0x000389cc lw v1, 0x14(s0)                   |         v1 = *((s0 + 5));
    0x000389d0 lw t9, -0x7df8(gp)                |         t9 = sym.dict_next;
    0x000389d4 beqz v1, 0x389b4                  |         
                                                 |     }
    0x000389d8 lw v0, 8(v1)                      |     v0 = *((v1 + 2));
    0x000389dc andi v0, v0, 1                    |     v0 &= 1;
    0x000389e0 move a1, s0                       |     a1 = s0;
                                                 |     if (v0 != 0) {
    0x000389e4 bnez v0, 0x389b8                  |         goto label_0;
                                                 |     }
    0x000389e8 lw t9, -0x7c2c(gp)                |     t9 = sym.imp.__fprintf_chk
    0x000389ec lw a3, 4(v1)                      |     a3 = *((v1 + 1));
    0x000389f0 lw a0, (s7)                       |     a0 = *(s7);
    0x000389f4 move a2, s6                       |     a2 = s6;
    0x000389f8 addiu a1, zero, 1                 |     a1 = 1;
    0x000389fc jalr t9                           |     t9 ();
    0x00038a00 lw gp, 0x18(sp)                   |     gp = *(var_18h_2);
    0x00038a04 addiu v0, zero, 1                 |     v0 = 1;
    0x00038a08 move a1, s0                       |     a1 = s0;
    0x00038a0c lw t9, -0x7df8(gp)                |     t9 = sym.dict_next;
    0x00038a10 sw v0, 0x30(sp)                   |     *(var_30h_2) = v0;
    0x00038a14 move a0, s1                       |     a0 = s1;
    0x00038a18 bal 0x3fb4c                       |     sym_dict_next ();
    0x00038a1c move s0, v0                       |     s0 = v0;
    0x00038a20 lw gp, 0x18(sp)                   |     gp = *(var_18h_2);
                                                 |     if (v0 != 0) {
    0x00038a24 bnez v0, 0x389cc                  |         goto label_1;
                                                 |     }
                                                 | label_7:
    0x00038a28 lw v0, 0x30(sp)                   |     v0 = *(var_30h_2);
    0x00038a2c sw v0, (s5)                       |     *(s5) = v0;
    0x00038a30 b 0x38914                         |     goto label_2;
                                                 | label_6:
    0x00038a34 lw t9, -0x78a4(gp)                |     t9 = sym.imp.__stack_chk_fail;
    0x00038a38 jalr t9                           |     t9 ();
    0x00038a3c nop                               |     
                                                 | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/fsck.ext3 @ 0x38468 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) sym.quota_compute_usage ()       | void quota_compute_usage () {
    0x00038468 lui gp, 3                     |     
    0x0003846c addiu gp, gp, 0x1958          |     
    0x00038470 addu gp, gp, t9               |     gp += t9;
    0x00038474 addiu sp, sp, -0x68           |     
    0x00038478 sw s4, 0x50(sp)               |     *(var_50h) = s4;
    0x0003847c lw s4, -0x7838(gp)            |     s4 = *((gp - 7694));
    0x00038480 sw gp, 0x20(sp)               |     *(var_20h) = gp;
    0x00038484 sw ra, 0x64(sp)               |     *(var_64h) = ra;
    0x00038488 lw v0, (s4)                   |     v0 = *(s4);
    0x0003848c sw fp, 0x60(sp)               |     *(var_60h) = fp;
    0x00038490 sw s7, 0x5c(sp)               |     *(var_5ch) = s7;
    0x00038494 sw s6, 0x58(sp)               |     *(var_58h) = s6;
    0x00038498 sw s5, 0x54(sp)               |     *(var_54h) = s5;
    0x0003849c sw s3, 0x4c(sp)               |     *(var_4ch) = s3;
    0x000384a0 sw s2, 0x48(sp)               |     *(var_48h) = s2;
    0x000384a4 sw s1, 0x44(sp)               |     *(var_44h) = s1;
    0x000384a8 sw s0, 0x40(sp)               |     *(var_40h) = s0;
    0x000384ac sw v0, 0x3c(sp)               |     *(var_3ch) = v0;
    0x000384b0 lw t9, -0x794c(gp)            |     t9 = sym.imp.ext2fs_open_inode_scan;
                                             |     if (a0 == 0) {
    0x000384b4 beqz a0, 0x386b0              |         goto label_2;
                                             |     }
    0x000384b8 lw s3, (a0)                   |     s3 = *(a0);
    0x000384bc move s2, a0                   |     s2 = a0;
    0x000384c0 addiu a2, sp, 0x38            |     a2 = sp + 0x38;
    0x000384c4 move a1, zero                 |     a1 = 0;
    0x000384c8 move a0, s3                   |     a0 = s3;
    0x000384cc jalr t9                       |     t9 ();
    0x000384d0 move fp, v0                   |     fp = v0;
    0x000384d4 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 != 0) {
    0x000384d8 bnez v0, 0x385cc              |         goto label_3;
                                             |     }
    0x000384dc lw v0, 0x10(s3)               |     v0 = *((s3 + 4));
    0x000384e0 lw t9, -0x79bc(gp)            |     t9 = sym.imp.malloc;
    0x000384e4 addiu s5, sp, 0x34            |     s5 = sp + 0x34;
    0x000384e8 lhu s1, 0x58(v0)              |     s1 = *((v0 + 44));
    0x000384ec move a0, s1                   |     a0 = s1;
    0x000384f0 jalr t9                       |     t9 ();
    0x000384f4 move s0, v0                   |     s0 = v0;
    0x000384f8 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x000384fc lw a0, 0x38(sp)               |     a0 = *(var_38h_2);
                                             |     if (v0 == 0) {
    0x00038500 beqz v0, 0x386b8              |         goto label_4;
                                             |     }
    0x00038504 lw v0, -0x7d90(gp)            |     v0 = *(gp);
    0x00038508 lw s6, -0x7d90(gp)            |     s6 = *(gp);
    0x0003850c addiu v0, v0, 0x7824          |     v0 += 0x7824;
    0x00038510 addiu s7, zero, 2             |     s7 = 2;
                                             |     /* fcn.00037658 */
    0x00038514 addiu s6, s6, 0x7658          |     s6 += 0x7658;
    0x00038518 sw v0, 0x2c(sp)               |     *(var_2ch) = v0;
                                             |     do {
                                             | label_0:
    0x0003851c lw t9, -0x7b50(gp)            |         t9 = sym.imp.ext2fs_get_next_inode_full;
    0x00038520 move a3, s1                   |         a3 = s1;
    0x00038524 move a2, s0                   |         a2 = s0;
    0x00038528 move a1, s5                   |         a1 = s5;
    0x0003852c jalr t9                       |         t9 ();
    0x00038530 move fp, v0                   |         fp = v0;
    0x00038534 lw gp, 0x20(sp)               |         gp = *(var_20h);
                                             |         if (v0 != 0) {
    0x00038538 bnez v0, 0x3864c              |             goto label_5;
                                             |         }
    0x0003853c lw v0, 0x34(sp)               |         v0 = *(var_34h_2);
    0x00038540 lw t9, -0x7844(gp)            |         t9 = sym.imp.ext2fs_close_inode_scan;
                                             |         if (v0 == 0) {
    0x00038544 beqz v0, 0x38690              |             goto label_6;
                                             |         }
    0x00038548 lhu v1, 0x1a(s0)              |         v1 = *((s0 + 13));
    0x0003854c lw a0, 0x38(sp)               |         a0 = *(var_38h_2);
    0x00038550 beqz v1, 0x3851c              |         
                                             |     } while (v1 == 0);
    0x00038554 lw t9, -0x7bfc(gp)            |     t9 = sym.imp.ext2fs_inode_i_blocks;
                                             |     if (v0 == s7) {
    0x00038558 beq v0, s7, 0x38580           |         goto label_7;
                                             |     }
    0x0003855c lw v1, 0x10(s3)               |     v1 = *((s3 + 4));
    0x00038560 lw a0, 0x4c(v1)               |     a0 = *((v1 + 19));
                                             |     if (a0 != 0) {
    0x00038564 beql a0, zero, 0x38570        |         
    0x00038568 addiu v1, zero, 0xb           |         v1 = 0xb;
    0x0003856c lw v1, 0x54(v1)               |         v1 = *((v1 + 21));
                                             |     }
    0x00038570 sltu v0, v0, v1               |     v0 = (v0 < v1) ? 1 : 0;
    0x00038574 lw a0, 0x38(sp)               |     a0 = *(var_38h_2);
                                             |     if (v0 == 0) {
    0x00038578 bnel v0, zero, 0x3851c        |         goto label_0;
                                             |     }
    0x0003857c lw t9, -0x7bfc(gp)            |     t9 = sym.imp.ext2fs_inode_i_blocks;
                                             | label_7:
    0x00038580 move a1, s0                   |     a1 = s0;
    0x00038584 move a0, s3                   |     a0 = s3;
    0x00038588 jalr t9                       |     t9 ();
    0x0003858c srl a3, v0, 0x17              |     a3 = v0 >> 0x17;
    0x00038590 sll v1, v1, 9                 |     v1 <<= 9;
    0x00038594 sll a2, v0, 9                 |     a2 = v0 << 9;
    0x00038598 or a3, a3, v1                 |     a3 |= v1;
    0x0003859c move a1, s0                   |     a1 = s0;
    0x000385a0 move t9, s6                   |     t9 = s6;
    0x000385a4 move a0, s2                   |     a0 = s2;
    0x000385a8 bal 0x37658                   |     fcn_00037658 ();
    0x000385ac lw t9, 0x2c(sp)               |     t9 = *(var_2ch);
    0x000385b0 addiu a2, zero, 1             |     a2 = 1;
    0x000385b4 move a1, s0                   |     a1 = s0;
    0x000385b8 move a0, s2                   |     a0 = s2;
    0x000385bc jalr t9                       |     t9 ();
    0x000385c0 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x000385c4 lw a0, 0x38(sp)               |     a0 = *(var_38h_2);
    0x000385c8 b 0x3851c                     |     goto label_0;
                                             | label_3:
    0x000385cc lw v0, -0x77dc(gp)            |     v0 = *((gp - 7671));
    0x000385d0 lw a3, -0x7fa8(gp)            |     a3 = *((gp - 8170));
    0x000385d4 lw a2, -0x7fa8(gp)            |     a2 = *((gp - 8170));
    0x000385d8 lw a0, (v0)                   |     a0 = *(v0);
    0x000385dc lw v0, -0x7fa8(gp)            |     v0 = *((gp - 8170));
    0x000385e0 lw t9, -0x7c2c(gp)            |     t9 = sym.imp.__fprintf_chk
                                             |     /* str.quota_compute_usage */
    0x000385e4 addiu v0, v0, -0x2a70         |     v0 += -0x2a70;
    0x000385e8 sw v0, 0x14(sp)               |     *(var_14h) = v0;
    0x000385ec addiu v0, zero, 0x1e3         |     v0 = 0x1e3;
    0x000385f0 sw fp, 0x18(sp)               |     *(var_18h_2) = fp;
    0x000385f4 sw v0, 0x10(sp)               |     *(var_10h) = v0;
                                             |     /* str..._.._.._git_lib_support_mkquota.c */
    0x000385f8 addiu a3, a3, -0x2c2c         |     a3 += -0x2c2c;
                                             |     /* str._ERROR___s:_d:_s::_while_opening_inode_scan._ret_ld_n */
    0x000385fc addiu a2, a2, -0x2b4c         |     a2 += -0x2b4c;
    0x00038600 addiu a1, zero, 1             |     a1 = 1;
    0x00038604 jalr t9                       |     t9 ();
    0x00038608 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     do {
                                             | label_1:
    0x0003860c lw a0, 0x3c(sp)               |         a0 = *(var_3ch);
    0x00038610 lw v1, (s4)                   |         v1 = *(s4);
    0x00038614 move v0, fp                   |         v0 = fp;
                                             |         if (a0 != v1) {
    0x00038618 bne a0, v1, 0x386cc           |             goto label_8;
                                             |         }
    0x0003861c lw ra, 0x64(sp)               |         ra = *(var_64h);
    0x00038620 lw fp, 0x60(sp)               |         fp = *(var_60h);
    0x00038624 lw s7, 0x5c(sp)               |         s7 = *(var_5ch);
    0x00038628 lw s6, 0x58(sp)               |         s6 = *(var_58h);
    0x0003862c lw s5, 0x54(sp)               |         s5 = *(var_54h);
    0x00038630 lw s4, 0x50(sp)               |         s4 = *(var_50h);
    0x00038634 lw s3, 0x4c(sp)               |         s3 = *(var_4ch);
    0x00038638 lw s2, 0x48(sp)               |         s2 = *(var_48h);
    0x0003863c lw s1, 0x44(sp)               |         s1 = *(var_44h);
    0x00038640 lw s0, 0x40(sp)               |         s0 = *(var_40h);
    0x00038644 addiu sp, sp, 0x68            |         
    0x00038648 jr ra                         |         return v0;
                                             | label_5:
    0x0003864c lw v0, -0x77dc(gp)            |         v0 = *((gp - 7671));
    0x00038650 lw a3, -0x7fa8(gp)            |         a3 = *((gp - 8170));
    0x00038654 lw a2, -0x7fa8(gp)            |         a2 = *((gp - 8170));
    0x00038658 lw a0, (v0)                   |         a0 = *(v0);
    0x0003865c lw v0, -0x7fa8(gp)            |         v0 = *((gp - 8170));
    0x00038660 lw t9, -0x7c2c(gp)            |         t9 = sym.imp.__fprintf_chk
                                             |         /* str.quota_compute_usage */
    0x00038664 addiu v0, v0, -0x2a70         |         v0 += -0x2a70;
    0x00038668 sw v0, 0x14(sp)               |         *(var_14h) = v0;
    0x0003866c addiu v0, zero, 0x1f0         |         v0 = aav.0x000001f0;
                                             |         /* str..._.._.._git_lib_support_mkquota.c */
    0x00038670 addiu a3, a3, -0x2c2c         |         a3 += -0x2c2c;
                                             |         /* str._ERROR___s:_d:_s::_while_getting_next_inode._ret_ld_n */
    0x00038674 addiu a2, a2, -0x2b14         |         a2 += -0x2b14;
    0x00038678 addiu a1, zero, 1             |         a1 = 1;
    0x0003867c sw fp, 0x18(sp)               |         *(var_18h_2) = fp;
    0x00038680 sw v0, 0x10(sp)               |         *(var_10h) = v0;
    0x00038684 jalr t9                       |         t9 ();
    0x00038688 lw gp, 0x20(sp)               |         gp = *(var_20h);
    0x0003868c lw t9, -0x7844(gp)            |         t9 = sym.imp.ext2fs_close_inode_scan;
                                             | label_6:
    0x00038690 lw a0, 0x38(sp)               |         a0 = *(var_38h_2);
    0x00038694 jalr t9                       |         t9 ();
    0x00038698 lw gp, 0x20(sp)               |         gp = *(var_20h);
    0x0003869c lw t9, -0x7814(gp)            |         t9 = sym.imp.free;
    0x000386a0 move a0, s0                   |         a0 = s0;
    0x000386a4 jalr t9                       |         t9 ();
    0x000386a8 lw gp, 0x20(sp)               |         gp = *(var_20h);
    0x000386ac b 0x3860c                     |         
                                             |     } while (1);
                                             | label_2:
    0x000386b0 move fp, zero                 |     fp = 0;
    0x000386b4 b 0x3860c                     |     goto label_1;
                                             | label_4:
    0x000386b8 lw t9, -0x7844(gp)            |     t9 = sym.imp.ext2fs_close_inode_scan;
    0x000386bc addiu fp, zero, 0xc           |     fp = 0xc;
    0x000386c0 jalr t9                       |     t9 ();
    0x000386c4 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x000386c8 b 0x3860c                     |     goto label_1;
                                             | label_8:
    0x000386cc lw t9, -0x78a4(gp)            |     t9 = sym.imp.__stack_chk_fail;
    0x000386d0 jalr t9                       |     t9 ();
    0x000386d4 nop                           |     
                                             | }
    ; assembly                                   | /* r2dec pseudo code output */
                                                 | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/fsck.ext3 @ 0x3c064 */
                                                 | #include <stdint.h>
                                                 |  
    ; (fcn) sym.quota_file_create ()             | void quota_file_create () {
    0x0003c064 lui gp, 3                         |     
    0x0003c068 addiu gp, gp, -0x22a4             |     
    0x0003c06c addu gp, gp, t9                   |     gp += t9;
    0x0003c070 addiu sp, sp, -0xe0               |     
    0x0003c074 addiu v0, zero, -1                |     v0 = -1;
    0x0003c078 sw s4, 0xcc(sp)                   |     *(var_cch) = s4;
    0x0003c07c lw s4, -0x7838(gp)                |     s4 = *((gp - 7694));
    0x0003c080 sw gp, 0x20(sp)                   |     *(var_20h) = gp;
    0x0003c084 sw s3, 0xc8(sp)                   |     *(var_c8h) = s3;
    0x0003c088 lw v1, (s4)                       |     v1 = *(s4);
    0x0003c08c sw s2, 0xc4(sp)                   |     *(var_c4h) = s2;
    0x0003c090 sw s1, 0xc0(sp)                   |     *(var_c0h) = s1;
    0x0003c094 sw ra, 0xdc(sp)                   |     *(var_dch) = ra;
    0x0003c098 sw s7, 0xd8(sp)                   |     *(var_d8h) = s7;
    0x0003c09c sw s6, 0xd4(sp)                   |     *(var_d4h) = s6;
    0x0003c0a0 sw s5, 0xd0(sp)                   |     *(var_d0h) = s5;
    0x0003c0a4 sw s0, 0xbc(sp)                   |     *(var_bch) = s0;
    0x0003c0a8 move s3, a0                       |     s3 = a0;
    0x0003c0ac move s1, a1                       |     s1 = a1;
    0x0003c0b0 move s2, a2                       |     s2 = a2;
    0x0003c0b4 sw v1, 0xb4(sp)                   |     *(var_b4h) = v1;
    0x0003c0b8 addiu v0, zero, 1                 |     v0 = 1;
                                                 |     if (a3 == v0) {
    0x0003c0bc beq a3, v0, 0x3c3a0               |         goto label_7;
                                                 |     }
    0x0003c0c0 move s5, a3                       |     s5 = a3;
    0x0003c0c4 sw s1, 0x10(s3)                   |     *((s3 + 4)) = s1;
                                                 |     if (s2 == v0) {
    0x0003c0c8 beq s2, v0, 0x3c3ac               |         goto label_8;
                                                 |     }
                                                 | label_2:
    0x0003c0cc addiu v0, zero, 2                 |     v0 = 2;
                                                 |     if (s2 == 0) {
    0x0003c0d0 beqz s2, 0x3c3d4                  |         goto label_9;
                                                 |     }
    0x0003c0d4 lui s0, 0x7f2b                    |     s0 = 0x7f2b0000;
                                                 |     if (s2 != v0) {
    0x0003c0d8 bne s2, v0, 0x3c1b0               |         goto label_10;
                                                 |     }
    0x0003c0dc lw v0, 0x10(s1)                   |     v0 = *((s1 + 4));
    0x0003c0e0 lw v0, 0x26c(v0)                  |     v0 = *((v0 + 155));
    0x0003c0e4 sw v0, 0x30(sp)                   |     *(var_30h) = v0;
                                                 |     if (v0 != 0) {
    0x0003c0e8 bnez v0, 0x3c17c                  |         goto label_11;
                                                 |     }
    0x0003c0ec lw t9, -0x7958(gp)                |     t9 = sym.imp.ext2fs_new_inode;
    0x0003c0f0 addiu v0, sp, 0x30                |     v0 = sp + 0x30;
    0x0003c0f4 sw v0, 0x10(sp)                   |     *(var_10h_3) = v0;
    0x0003c0f8 move a3, zero                     |     a3 = 0;
    0x0003c0fc ori a2, zero, 0x8180              |     a2 = 0x8180;
    0x0003c100 addiu a1, zero, 2                 |     a1 = 2;
    0x0003c104 move a0, s1                       |     a0 = s1;
    0x0003c108 jalr t9                           |     t9 ();
    0x0003c10c move s0, v0                       |     s0 = v0;
    0x0003c110 lw gp, 0x20(sp)                   |     gp = *(var_20h);
    0x0003c114 beqz v0, 0x3c154                  |     
                                                 |     while (a1 == 0) {
                                                 | label_0:
    0x0003c118 lw a0, 0xb4(sp)                   |         a0 = *(var_b4h);
    0x0003c11c lw v1, (s4)                       |         v1 = *(s4);
    0x0003c120 move v0, s0                       |         v0 = s0;
                                                 |         if (a0 != v1) {
    0x0003c124 bne a0, v1, 0x3c524               |             goto label_12;
                                                 |         }
    0x0003c128 lw ra, 0xdc(sp)                   |         ra = *(var_dch);
    0x0003c12c lw s7, 0xd8(sp)                   |         s7 = *(var_d8h);
    0x0003c130 lw s6, 0xd4(sp)                   |         s6 = *(var_d4h);
    0x0003c134 lw s5, 0xd0(sp)                   |         s5 = *(var_d0h);
    0x0003c138 lw s4, 0xcc(sp)                   |         s4 = *(var_cch);
    0x0003c13c lw s3, 0xc8(sp)                   |         s3 = *(var_c8h);
    0x0003c140 lw s2, 0xc4(sp)                   |         s2 = *(var_c4h);
    0x0003c144 lw s1, 0xc0(sp)                   |         s1 = *(var_c0h);
    0x0003c148 lw s0, 0xbc(sp)                   |         s0 = *(var_bch);
    0x0003c14c addiu sp, sp, 0xe0                |         
    0x0003c150 jr ra                             |         return v0;
    0x0003c154 lw t9, -0x7b78(gp)                |         t9 = sym.imp.ext2fs_inode_alloc_stats2;
    0x0003c158 lw a1, 0x30(sp)                   |         a1 = *(var_30h);
    0x0003c15c move a3, zero                     |         a3 = 0;
    0x0003c160 addiu a2, zero, 1                 |         a2 = 1;
    0x0003c164 move a0, s1                       |         a0 = s1;
    0x0003c168 jalr t9                           |         t9 ();
    0x0003c16c lw v0, 8(s1)                      |         v0 = *((s1 + 2));
    0x0003c170 lw gp, 0x20(sp)                   |         gp = *(var_20h);
    0x0003c174 ori v0, v0, 0x12                  |         v0 |= 0x12;
    0x0003c178 sw v0, 8(s1)                      |         *((s1 + 2)) = v0;
                                                 | label_11:
    0x0003c17c lw t9, -0x77d0(gp)                |         t9 = sym.imp.ext2fs_read_bitmaps;
    0x0003c180 move a0, s1                       |         a0 = s1;
    0x0003c184 jalr t9                           |         t9 ();
    0x0003c188 move s0, v0                       |         s0 = v0;
    0x0003c18c lw gp, 0x20(sp)                   |         gp = *(var_20h);
                                                 |         if (v0 == 0) {
    0x0003c190 beqz v0, 0x3c1b8                  |             goto label_13;
                                                 |         }
                                                 | label_1:
    0x0003c194 lw a1, 0x30(sp)                   |         a1 = *(var_30h);
    0x0003c198 lw t9, -0x7d34(gp)                |         t9 = sym.quota_inode_truncate;
    0x0003c19c beqz a1, 0x3c118                  |         
                                                 |     }
                                                 | label_5:
    0x0003c1a0 move a0, s1                       |     a0 = s1;
    0x0003c1a4 bal 0x3bed8                       |     sym_quota_inode_truncate ();
    0x0003c1a8 lw gp, 0x20(sp)                   |     gp = *(var_20h);
    0x0003c1ac b 0x3c118                         |     goto label_0;
                                                 | label_10:
    0x0003c1b0 ori s0, s0, 0xb729                |     s0 |= 0xb729;
    0x0003c1b4 b 0x3c118                         |     goto label_0;
                                                 | label_13:
    0x0003c1b8 lw s7, 0x30(sp)                   |     s7 = *(var_30h);
                                                 | label_3:
    0x0003c1bc lw t9, -0x7770(gp)                |     t9 = sym.imp.ext2fs_read_inode;
    0x0003c1c0 addiu s6, sp, 0x34                |     s6 = sp + 0x34;
    0x0003c1c4 move a2, s6                       |     a2 = s6;
    0x0003c1c8 move a1, s7                       |     a1 = s7;
    0x0003c1cc move a0, s1                       |     a0 = s1;
    0x0003c1d0 jalr t9                           |     t9 ();
    0x0003c1d4 move s0, v0                       |     s0 = v0;
    0x0003c1d8 lw gp, 0x20(sp)                   |     gp = *(var_20h);
                                                 |     if (v0 != 0) {
    0x0003c1dc bnez v0, 0x3c454                  |         goto label_14;
                                                 |     }
    0x0003c1e0 lw v1, 0xa0(sp)                   |     v1 = *(var_a0h);
    0x0003c1e4 lw v0, 0x38(sp)                   |     v0 = *(var_38h_3);
    0x0003c1e8 or v0, v0, v1                     |     v0 |= v1;
    0x0003c1ec lw t9, -0x7a9c(gp)                |     t9 = sym.imp.memset;
                                                 |     if (v0 != 0) {
    0x0003c1f0 beqz v0, 0x3c214                  |         
    0x0003c1f4 lw t9, -0x7d34(gp)                |         t9 = sym.quota_inode_truncate;
    0x0003c1f8 move a1, s7                       |         a1 = s7;
    0x0003c1fc move a0, s1                       |         a0 = s1;
    0x0003c200 bal 0x3bed8                       |         sym_quota_inode_truncate ();
    0x0003c204 move s0, v0                       |         s0 = v0;
    0x0003c208 lw gp, 0x20(sp)                   |         gp = *(var_20h);
                                                 |         if (v0 != 0) {
    0x0003c20c bnez v0, 0x3c4d4                  |             goto label_15;
                                                 |         }
    0x0003c210 lw t9, -0x7a9c(gp)                |         t9 = sym.imp.memset;
                                                 |     }
    0x0003c214 addiu a2, zero, 0x80              |     a2 = 0x80;
    0x0003c218 move a1, zero                     |     a1 = 0;
    0x0003c21c move a0, s6                       |     a0 = s6;
    0x0003c220 jalr t9                           |     t9 ();
    0x0003c224 lw gp, 0x20(sp)                   |     gp = *(var_20h);
    0x0003c228 move a2, zero                     |     a2 = 0;
    0x0003c22c move a3, zero                     |     a3 = 0;
    0x0003c230 lw t9, -0x7810(gp)                |     t9 = *(gp);
    0x0003c234 move a1, s6                       |     a1 = s6;
    0x0003c238 move a0, s1                       |     a0 = s1;
    0x0003c23c jalr t9                           |     t9 ();
    0x0003c240 lw v0, 0x60(s1)                   |     v0 = *((s1 + 24));
    0x0003c244 lw gp, 0x20(sp)                   |     gp = *(var_20h);
                                                 |     if (v0 == 0) {
    0x0003c248 beqz v0, 0x3c440                  |         goto label_16;
                                                 |     }
                                                 | label_4:
    0x0003c24c lw v1, 0x10(s1)                   |     v1 = *((s1 + 4));
    0x0003c250 lw a0, 0x54(sp)                   |     a0 = *(var_54h_2);
    0x0003c254 sw v0, 0x40(sp)                   |     *(var_40h_3) = v0;
    0x0003c258 lw v1, 0x60(v1)                   |     v1 = *((v1 + 24));
    0x0003c25c sw v0, 0x44(sp)                   |     *(var_44h_3) = v0;
    0x0003c260 sw v0, 0x3c(sp)                   |     *(var_3ch_3) = v0;
    0x0003c264 addiu v0, zero, 1                 |     v0 = 1;
    0x0003c268 ori a1, a0, 0x10                  |     a1 = a0 | 0x10;
    0x0003c26c sh v0, 0x4e(sp)                   |     *(var_4eh) = v0;
    0x0003c270 andi v1, v1, 0x40                 |     v1 &= 0x40;
    0x0003c274 addiu v0, zero, -0x7e80           |     v0 = -0x7e80;
    0x0003c278 sh v0, 0x34(sp)                   |     *(var_34h_3) = v0;
    0x0003c27c sw a1, 0x54(sp)                   |     *(var_54h_2) = a1;
                                                 |     if (v1 != 0) {
    0x0003c280 beqz v1, 0x3c294                  |         
    0x0003c284 lui v0, 8                         |         v0 = 0x80010;
    0x0003c288 addiu v0, v0, 0x10                |         
    0x0003c28c or a0, a0, v0                     |         a0 |= v0;
    0x0003c290 sw a0, 0x54(sp)                   |         *(var_54h_2) = a0;
                                                 |     }
    0x0003c294 lw t9, -0x79b4(gp)                |     t9 = sym.imp.ext2fs_write_new_inode;
    0x0003c298 move a2, s6                       |     a2 = s6;
    0x0003c29c move a1, s7                       |     a1 = s7;
    0x0003c2a0 move a0, s1                       |     a0 = s1;
    0x0003c2a4 jalr t9                           |     t9 ();
    0x0003c2a8 move s0, v0                       |     s0 = v0;
    0x0003c2ac lw gp, 0x20(sp)                   |     gp = *(var_20h);
                                                 |     if (v0 != 0) {
    0x0003c2b0 bnez v0, 0x3c4e0                  |         goto label_17;
                                                 |     }
    0x0003c2b4 addiu v0, zero, 3                 |     v0 = 3;
    0x0003c2b8 sw v0, 8(s3)                      |     *((s3 + 2)) = v0;
    0x0003c2bc lw v0, -0x7fd0(gp)                |     v0 = *(gp);
    0x0003c2c0 lw a1, 0x30(sp)                   |     a1 = *(var_30h);
    0x0003c2c4 addiu v0, v0, -0x44bc             |     v0 += -0x44bc;
    0x0003c2c8 sw v0, 0x20(s3)                   |     *((s3 + 8)) = v0;
    0x0003c2cc lw v0, -0x7fd0(gp)                |     v0 = *(gp);
    0x0003c2d0 lw t9, -0x784c(gp)                |     t9 = sym.imp.ext2fs_file_open;
    0x0003c2d4 addiu v0, v0, -0x45f8             |     v0 += -0x45f8;
    0x0003c2d8 sw a1, 0x14(s3)                   |     *((s3 + 5)) = a1;
    0x0003c2dc sw v0, 0x1c(s3)                   |     *((s3 + 7)) = v0;
    0x0003c2e0 addiu a3, sp, 0x2c                |     a3 = sp + 0x2c;
    0x0003c2e4 addiu a2, zero, 3                 |     a2 = 3;
    0x0003c2e8 move a0, s1                       |     a0 = s1;
    0x0003c2ec jalr t9                           |     t9 ();
    0x0003c2f0 move s0, v0                       |     s0 = v0;
    0x0003c2f4 lw gp, 0x20(sp)                   |     gp = *(var_20h);
                                                 |     if (v0 != 0) {
    0x0003c2f8 bnez v0, 0x3c3fc                  |         goto label_18;
                                                 |     }
    0x0003c2fc lw v0, 0x2c(sp)                   |     v0 = *(var_2ch_3);
    0x0003c300 lw t9, -0x7a9c(gp)                |     t9 = sym.imp.memset;
    0x0003c304 sw v0, 0x18(s3)                   |     *((s3 + 6)) = v0;
    0x0003c308 sw zero, 0xc(s3)                  |     *((s3 + 3)) = 0;
    0x0003c30c sw s2, (s3)                       |     *(s3) = s2;
    0x0003c310 sw s5, 4(s3)                      |     *((s3 + 1)) = s5;
    0x0003c314 addiu a2, zero, 0x28              |     a2 = 0x28;
    0x0003c318 move a1, zero                     |     a1 = 0;
    0x0003c31c addiu a0, s3, 0x28                |     a0 = s3 + 0x28;
    0x0003c320 jalr t9                           |     t9 ();
    0x0003c324 lw gp, 0x20(sp)                   |     gp = *(var_20h);
    0x0003c328 lw v0, -0x7d14(gp)                |     v0 = *(gp);
    0x0003c32c sw v0, 0x24(s3)                   |     *((s3 + 9)) = v0;
    0x0003c330 lw t9, 8(v0)                      |     t9 = *((v0 + 2));
                                                 |     if (t9 == 0) {
    0x0003c334 beqz t9, 0x3c118                  |         goto label_0;
                                                 |     }
    0x0003c338 nop                               |     
    0x0003c33c move a0, s3                       |     a0 = s3;
    0x0003c340 jalr t9                           |     t9 ();
    0x0003c344 lw gp, 0x20(sp)                   |     gp = *(var_20h);
                                                 |     if (v0 >= 0) {
    0x0003c348 bgez v0, 0x3c118                  |         goto label_0;
                                                 |     }
    0x0003c34c lw v0, -0x77dc(gp)                |     v0 = *((gp - 7671));
    0x0003c350 lw a3, -0x7fa8(gp)                |     a3 = *((gp - 8170));
    0x0003c354 lw a2, -0x7fa8(gp)                |     a2 = *((gp - 8170));
    0x0003c358 lw a0, (v0)                       |     a0 = *(v0);
    0x0003c35c lw v0, -0x7fa8(gp)                |     v0 = *((gp - 8170));
    0x0003c360 lw t9, -0x7c2c(gp)                |     t9 = sym.imp.__fprintf_chk
                                                 |     /* str.quota_file_create */
    0x0003c364 addiu v0, v0, -0x20f8             |     v0 += -0x20f8;
    0x0003c368 sw v0, 0x14(sp)                   |     *(var_14h_3) = v0;
    0x0003c36c addiu v0, zero, 0x182             |     v0 = 0x182;
                                                 |     /* str..._.._.._git_lib_support_quotaio.c */
    0x0003c370 addiu a3, a3, -0x23f0             |     a3 += -0x23f0;
                                                 |     /* str._ERROR___s:_d:_s::_qh_ops__new_io_failed_n */
    0x0003c374 addiu a2, a2, -0x2288             |     a2 += -0x2288;
    0x0003c378 addiu a1, zero, 1                 |     a1 = 1;
    0x0003c37c sw v0, 0x10(sp)                   |     *(var_10h_3) = v0;
    0x0003c380 jalr t9                           |     t9 ();
    0x0003c384 lw gp, 0x20(sp)                   |     gp = *(var_20h);
    0x0003c388 lw a0, 0x2c(sp)                   |     a0 = *(var_2ch_3);
    0x0003c38c lw t9, -0x77f4(gp)                |     t9 = sym.imp.ext2fs_file_close;
    0x0003c390 addiu s0, zero, 5                 |     s0 = 5;
    0x0003c394 jalr t9                           |     t9 ();
    0x0003c398 lw gp, 0x20(sp)                   |     gp = *(var_20h);
    0x0003c39c b 0x3c194                         |     goto label_1;
                                                 | label_7:
    0x0003c3a0 addiu s5, zero, 4                 |     s5 = 4;
    0x0003c3a4 sw s1, 0x10(s3)                   |     *((s3 + 4)) = s1;
                                                 |     if (s2 != v0) {
    0x0003c3a8 bne s2, v0, 0x3c0cc               |         goto label_2;
                                                 |     }
                                                 | label_8:
    0x0003c3ac lw t9, -0x77d0(gp)                |     t9 = sym.imp.ext2fs_read_bitmaps;
    0x0003c3b0 addiu v0, zero, 4                 |     v0 = 4;
    0x0003c3b4 sw v0, 0x30(sp)                   |     *(var_30h) = v0;
    0x0003c3b8 move a0, s1                       |     a0 = s1;
    0x0003c3bc jalr t9                           |     t9 ();
    0x0003c3c0 move s0, v0                       |     s0 = v0;
    0x0003c3c4 lw gp, 0x20(sp)                   |     gp = *(var_20h);
                                                 |     if (v0 != 0) {
    0x0003c3c8 bnez v0, 0x3c194                  |         goto label_1;
                                                 |     }
    0x0003c3cc lw s7, 0x30(sp)                   |     s7 = *(var_30h);
    0x0003c3d0 b 0x3c1bc                         |     goto label_3;
                                                 | label_9:
    0x0003c3d4 lw t9, -0x77d0(gp)                |     t9 = sym.imp.ext2fs_read_bitmaps;
    0x0003c3d8 addiu v0, zero, 3                 |     v0 = 3;
    0x0003c3dc sw v0, 0x30(sp)                   |     *(var_30h) = v0;
    0x0003c3e0 move a0, s1                       |     a0 = s1;
    0x0003c3e4 jalr t9                           |     t9 ();
    0x0003c3e8 move s0, v0                       |     s0 = v0;
    0x0003c3ec lw gp, 0x20(sp)                   |     gp = *(var_20h);
                                                 |     if (v0 != 0) {
    0x0003c3f0 bnez v0, 0x3c194                  |         goto label_1;
                                                 |     }
    0x0003c3f4 lw s7, 0x30(sp)                   |     s7 = *(var_30h);
    0x0003c3f8 b 0x3c1bc                         |     goto label_3;
                                                 | label_18:
    0x0003c3fc lw v0, -0x77dc(gp)                |     v0 = *((gp - 7671));
    0x0003c400 lw a3, -0x7fa8(gp)                |     a3 = *((gp - 8170));
    0x0003c404 lw a2, -0x7fa8(gp)                |     a2 = *((gp - 8170));
    0x0003c408 lw a0, (v0)                       |     a0 = *(v0);
    0x0003c40c lw v0, -0x7fa8(gp)                |     v0 = *((gp - 8170));
    0x0003c410 lw t9, -0x7c2c(gp)                |     t9 = sym.imp.__fprintf_chk
                                                 |     /* str.quota_file_create */
    0x0003c414 addiu v0, v0, -0x20f8             |     v0 += -0x20f8;
    0x0003c418 sw v0, 0x14(sp)                   |     *(var_14h_3) = v0;
    0x0003c41c addiu v0, zero, 0x176             |     v0 = 0x176;
    0x0003c420 sw s0, 0x18(sp)                   |     *(var_18h_4) = s0;
    0x0003c424 sw v0, 0x10(sp)                   |     *(var_10h_3) = v0;
                                                 |     /* str..._.._.._git_lib_support_quotaio.c */
    0x0003c428 addiu a3, a3, -0x23f0             |     a3 += -0x23f0;
                                                 |     /* str._ERROR___s:_d:_s::_ext2fs_file_open_failed:__ld_n */
    0x0003c42c addiu a2, a2, -0x22bc             |     a2 += -0x22bc;
    0x0003c430 addiu a1, zero, 1                 |     a1 = 1;
    0x0003c434 jalr t9                           |     t9 ();
    0x0003c438 lw gp, 0x20(sp)                   |     gp = *(var_20h);
    0x0003c43c b 0x3c194                         |     goto label_1;
                                                 | label_16:
    0x0003c440 lw t9, -0x7850(gp)                |     t9 = sym.imp.time;
    0x0003c444 move a0, zero                     |     a0 = 0;
    0x0003c448 jalr t9                           |     t9 ();
    0x0003c44c lw gp, 0x20(sp)                   |     gp = *(var_20h);
    0x0003c450 b 0x3c24c                         |     goto label_4;
                                                 | label_14:
    0x0003c454 lw s3, -0x77dc(gp)                |     s3 = *((gp - 7671));
    0x0003c458 lw v0, -0x7fa8(gp)                |     v0 = *((gp - 8170));
    0x0003c45c lw s2, -0x7fa8(gp)                |     s2 = *((gp - 8170));
    0x0003c460 lw a2, -0x7fa8(gp)                |     a2 = *((gp - 8170));
                                                 |     /* str.quota_inode_init_new */
    0x0003c464 addiu v0, v0, -0x2110             |     v0 += -0x2110;
    0x0003c468 lw t9, -0x7c2c(gp)                |     t9 = sym.imp.__fprintf_chk
    0x0003c46c lw a0, (s3)                       |     a0 = *(s3);
    0x0003c470 sw v0, 0x14(sp)                   |     *(var_14h_3) = v0;
    0x0003c474 addiu v0, zero, 0x12f             |     v0 = 0x12f;
    0x0003c478 sw v0, 0x10(sp)                   |     *(var_10h_3) = v0;
                                                 |     /* str..._.._.._git_lib_support_quotaio.c */
    0x0003c47c addiu a3, s2, -0x23f0             |     a3 = s2 + -0x23f0;
                                                 |     /* str._ERROR___s:_d:_s::_ex2fs_read_inode_failed_n */
    0x0003c480 addiu a2, a2, -0x2320             |     a2 += -0x2320;
    0x0003c484 addiu a1, zero, 1                 |     a1 = 1;
    0x0003c488 jalr t9                           |     t9 ();
    0x0003c48c lw gp, 0x20(sp)                   |     gp = *(var_20h);
                                                 | label_6:
    0x0003c490 lw v0, -0x7fa8(gp)                |     v0 = *((gp - 8170));
    0x0003c494 lw a2, -0x7fa8(gp)                |     a2 = *((gp - 8170));
                                                 |     /* str.quota_file_create */
    0x0003c498 addiu v0, v0, -0x20f8             |     v0 += -0x20f8;
    0x0003c49c lw t9, -0x7c2c(gp)                |     t9 = sym.imp.__fprintf_chk
    0x0003c4a0 lw a0, (s3)                       |     a0 = *(s3);
    0x0003c4a4 sw v0, 0x14(sp)                   |     *(var_14h_3) = v0;
    0x0003c4a8 addiu v0, zero, 0x16b             |     v0 = 0x16b;
    0x0003c4ac addiu a1, zero, 1                 |     a1 = 1;
    0x0003c4b0 sw v0, 0x10(sp)                   |     *(var_10h_3) = v0;
                                                 |     /* str..._.._.._git_lib_support_quotaio.c */
    0x0003c4b4 addiu a3, s2, -0x23f0             |     a3 = s2 + -0x23f0;
                                                 |     /* str._ERROR___s:_d:_s::_init_new_quota_inode_failed_n */
    0x0003c4b8 addiu a2, a2, -0x225c             |     a2 += -0x225c;
    0x0003c4bc jalr t9                           |     t9 ();
    0x0003c4c0 lw a1, 0x30(sp)                   |     a1 = *(var_30h);
    0x0003c4c4 lw gp, 0x20(sp)                   |     gp = *(var_20h);
                                                 |     if (a1 == 0) {
    0x0003c4c8 beqz a1, 0x3c118                  |         goto label_0;
                                                 |     }
    0x0003c4cc lw t9, -0x7d34(gp)                |     t9 = sym.quota_inode_truncate;
    0x0003c4d0 b 0x3c1a0                         |     goto label_5;
                                                 | label_15:
    0x0003c4d4 lw s3, -0x77dc(gp)                |     s3 = *((gp - 7671));
    0x0003c4d8 lw s2, -0x7fa8(gp)                |     s2 = *((gp - 8170));
    0x0003c4dc b 0x3c490                         |     goto label_6;
                                                 | label_17:
    0x0003c4e0 lw s3, -0x77dc(gp)                |     s3 = *((gp - 7671));
    0x0003c4e4 lw s2, -0x7fa8(gp)                |     s2 = *((gp - 8170));
    0x0003c4e8 lw a2, -0x7fa8(gp)                |     a2 = *((gp - 8170));
    0x0003c4ec lw a0, (s3)                       |     a0 = *(s3);
    0x0003c4f0 sw v0, 0x18(sp)                   |     *(var_18h_4) = v0;
    0x0003c4f4 lw v0, -0x7fa8(gp)                |     v0 = *((gp - 8170));
    0x0003c4f8 lw t9, -0x7c2c(gp)                |     t9 = sym.imp.__fprintf_chk
                                                 |     /* str.quota_inode_init_new */
    0x0003c4fc addiu v0, v0, -0x2110             |     v0 += -0x2110;
    0x0003c500 sw v0, 0x14(sp)                   |     *(var_14h_3) = v0;
    0x0003c504 addiu v0, zero, 0x145             |     v0 = 0x145;
    0x0003c508 sw v0, 0x10(sp)                   |     *(var_10h_3) = v0;
                                                 |     /* str..._.._.._git_lib_support_quotaio.c */
    0x0003c50c addiu a3, s2, -0x23f0             |     a3 = s2 + -0x23f0;
                                                 |     /* str._ERROR___s:_d:_s::_ext2fs_write_new_inode_failed:__ld_n */
    0x0003c510 addiu a2, a2, -0x22f4             |     a2 += -0x22f4;
    0x0003c514 addiu a1, zero, 1                 |     a1 = 1;
    0x0003c518 jalr t9                           |     t9 ();
    0x0003c51c lw gp, 0x20(sp)                   |     gp = *(var_20h);
    0x0003c520 b 0x3c490                         |     goto label_6;
                                                 | label_12:
    0x0003c524 lw t9, -0x78a4(gp)                |     t9 = sym.imp.__stack_chk_fail;
    0x0003c528 jalr t9                           |     t9 ();
    0x0003c52c nop                               |     
                                                 | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/fsck.ext3 @ 0x3c74c */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) sym.quota_file_open ()           | void quota_file_open () {
    0x0003c74c lui gp, 3                     |     
    0x0003c750 addiu gp, gp, -0x298c         |     
    0x0003c754 addu gp, gp, t9               |     gp += t9;
    0x0003c758 addiu sp, sp, -0x58           |     
    0x0003c75c sltiu v0, a3, 3               |     v0 = (a3 < 3) ? 1 : 0;
    0x0003c760 sw s3, 0x3c(sp)               |     *(var_3ch_2) = s3;
    0x0003c764 lw s3, -0x7838(gp)            |     s3 = *((gp - 7694));
    0x0003c768 sw gp, 0x20(sp)               |     *(var_20h_3) = gp;
    0x0003c76c sw s7, 0x4c(sp)               |     *(var_4ch_2) = s7;
    0x0003c770 lw v1, (s3)                   |     v1 = *(s3);
    0x0003c774 sw ra, 0x54(sp)               |     *(var_54h) = ra;
    0x0003c778 sw fp, 0x50(sp)               |     *(var_50h) = fp;
    0x0003c77c sw s6, 0x48(sp)               |     *(var_48h_2) = s6;
    0x0003c780 sw s5, 0x44(sp)               |     *(var_44h_2) = s5;
    0x0003c784 sw s4, 0x40(sp)               |     *(var_40h_2) = s4;
    0x0003c788 sw s2, 0x38(sp)               |     *(var_38h_2) = s2;
    0x0003c78c sw s1, 0x34(sp)               |     *(var_34h_2) = s1;
    0x0003c790 sw s0, 0x30(sp)               |     *(var_30h_3) = s0;
    0x0003c794 lw s7, 0x68(sp)               |     s7 = *(var_68h);
    0x0003c798 sw v1, 0x2c(sp)               |     *(var_2ch_2) = v1;
    0x0003c79c addiu s1, zero, 0x16          |     s1 = 0x16;
                                             |     if (v0 == 0) {
    0x0003c7a0 beqz v0, 0x3c8d4              |         goto label_0;
                                             |     }
    0x0003c7a4 addiu v0, zero, -1            |     v0 = -1;
    0x0003c7a8 move s2, a3                   |     s2 = a3;
    0x0003c7ac move s6, a0                   |     s6 = a0;
    0x0003c7b0 move s0, a1                   |     s0 = a1;
    0x0003c7b4 move s5, a2                   |     s5 = a2;
                                             |     if (s7 == v0) {
    0x0003c7b8 bne s7, v0, 0x3c7c0           |         
    0x0003c7bc addiu s7, zero, 4             |         s7 = 4;
                                             |     }
    0x0003c7c0 lw s4, (s6)                   |     s4 = *(s6);
    0x0003c7c4 lw t9, -0x77d0(gp)            |     t9 = sym.imp.ext2fs_read_bitmaps;
    0x0003c7c8 move a0, s4                   |     a0 = s4;
    0x0003c7cc jalr t9                       |     t9 ();
    0x0003c7d0 move s1, v0                   |     s1 = v0;
    0x0003c7d4 lw gp, 0x20(sp)               |     gp = *(var_20h_3);
                                             |     if (v0 != 0) {
    0x0003c7d8 bnez v0, 0x3c8d4              |         goto label_0;
                                             |     }
    0x0003c7dc lw t9, -0x784c(gp)            |     t9 = sym.imp.ext2fs_file_open;
                                             |     if (s5 != 0) {
    0x0003c7e0 bnez s5, 0x3c808              |         goto label_3;
                                             |     }
    0x0003c7e4 addiu v1, zero, 1             |     v1 = 1;
    0x0003c7e8 lw v0, 0x10(s4)               |     v0 = *((s4 + 4));
                                             |     if (s2 == v1) {
    0x0003c7ec beq s2, v1, 0x3c984           |         goto label_4;
                                             |     }
    0x0003c7f0 addiu v1, zero, 2             |     v1 = 2;
                                             |     if (s2 == v1) {
    0x0003c7f4 beql s2, v1, 0x3c914          |         goto label_5;
                                             |     }
    0x0003c7f8 addiu v0, v0, 0x26c           |     v0 += 0x26c;
    0x0003c7fc addiu v0, v0, 0x240           |     v0 += aav.0x00000240;
    0x0003c800 lw s5, (v0)                   |     s5 = *(v0);
                                             |     do {
                                             | label_1:
    0x0003c804 lw t9, -0x784c(gp)            |         t9 = sym.imp.ext2fs_file_open;
                                             | label_3:
    0x0003c808 lw a2, 0x6c(sp)               |         a2 = *(var_6ch);
    0x0003c80c addiu a3, sp, 0x28            |         a3 = sp + 0x28;
    0x0003c810 move a1, s5                   |         a1 = s5;
    0x0003c814 move a0, s4                   |         a0 = s4;
    0x0003c818 jalr t9                       |         t9 ();
    0x0003c81c move s1, v0                   |         s1 = v0;
    0x0003c820 lw gp, 0x20(sp)               |         gp = *(var_20h_3);
                                             |         if (v0 != 0) {
    0x0003c824 bnez v0, 0x3c92c              |             goto label_6;
                                             |         }
    0x0003c828 move fp, zero                 |         fp = 0;
                                             |         if (s0 == 0) {
    0x0003c82c beqz s0, 0x3c990              |             goto label_7;
                                             |         }
                                             | label_2:
    0x0003c830 lw v0, 0x28(sp)               |         v0 = *(var_28h);
    0x0003c834 lw t9, -0x7a9c(gp)            |         t9 = sym.imp.memset;
    0x0003c838 sw v0, 0x18(s0)               |         *((s0 + 6)) = v0;
    0x0003c83c lw v0, -0x7fd0(gp)            |         v0 = *(gp);
    0x0003c840 sw s4, 0x10(s0)               |         *((s0 + 4)) = s4;
    0x0003c844 addiu v0, v0, -0x44bc         |         v0 += -0x44bc;
    0x0003c848 sw v0, 0x20(s0)               |         *((s0 + 8)) = v0;
    0x0003c84c lw v0, -0x7fd0(gp)            |         v0 = *(gp);
    0x0003c850 sw s5, 0x14(s0)               |         *((s0 + 5)) = s5;
    0x0003c854 addiu v0, v0, -0x45f8         |         v0 += -0x45f8;
    0x0003c858 sw v0, 0x1c(s0)               |         *((s0 + 7)) = v0;
    0x0003c85c lw v0, 0x6c(sp)               |         v0 = *(var_6ch);
    0x0003c860 sw zero, 0xc(s0)              |         *((s0 + 3)) = 0;
    0x0003c864 sw v0, 8(s0)                  |         *((s0 + 2)) = v0;
    0x0003c868 sw s2, (s0)                   |         *(s0) = s2;
    0x0003c86c sw s7, 4(s0)                  |         *((s0 + 1)) = s7;
    0x0003c870 addiu a2, zero, 0x28          |         a2 = 0x28;
    0x0003c874 move a1, zero                 |         a1 = 0;
    0x0003c878 addiu a0, s0, 0x28            |         a0 = s0 + 0x28;
    0x0003c87c jalr t9                       |         t9 ();
    0x0003c880 lw gp, 0x20(sp)               |         gp = *(var_20h_3);
    0x0003c884 lw v0, -0x7d14(gp)            |         v0 = *(gp);
    0x0003c888 sw v0, 0x24(s0)               |         *((s0 + 9)) = v0;
    0x0003c88c lw t9, (v0)                   |         t9 = *(v0);
    0x0003c890 move a2, s7                   |         a2 = s7;
                                             |         if (t9 != 0) {
    0x0003c894 beqz t9, 0x3c8b0              |             
    0x0003c898 move a1, s2                   |             a1 = s2;
    0x0003c89c move a0, s0                   |             a0 = s0;
    0x0003c8a0 jalr t9                       |             t9 ();
    0x0003c8a4 lw gp, 0x20(sp)               |             gp = *(var_20h_3);
                                             |             if (v0 == 0) {
    0x0003c8a8 beqz v0, 0x3ca00              |                 goto label_8;
                                             |             }
    0x0003c8ac lw v0, 0x24(s0)               |             v0 = *((s0 + 9));
                                             |         }
    0x0003c8b0 lw t9, 4(v0)                  |         t9 = *((v0 + 1));
                                             |         if (t9 != 0) {
    0x0003c8b4 beqz t9, 0x3c8cc              |             
    0x0003c8b8 nop                           |             
    0x0003c8bc move a0, s0                   |             a0 = s0;
    0x0003c8c0 jalr t9                       |             t9 ();
    0x0003c8c4 lw gp, 0x20(sp)               |             gp = *(var_20h_3);
                                             |             if (v0 < 0) {
    0x0003c8c8 bltz v0, 0x3ca58              |                 goto label_9;
                                             |             }
                                             |         }
    0x0003c8cc addiu s2, s2, 4               |         s2 += 4;
                                             |         if (fp == 0) {
    0x0003c8d0 bnel fp, zero, 0x3c91c        |             goto label_10;
                                             |         }
                                             | label_0:
    0x0003c8d4 lw a0, 0x2c(sp)               |         a0 = *(var_2ch_2);
    0x0003c8d8 lw v1, (s3)                   |         v1 = *(s3);
    0x0003c8dc move v0, s1                   |         v0 = s1;
                                             |         if (a0 != v1) {
    0x0003c8e0 bne a0, v1, 0x3cb08           |             goto label_11;
                                             |         }
    0x0003c8e4 lw ra, 0x54(sp)               |         ra = *(var_54h);
    0x0003c8e8 lw fp, 0x50(sp)               |         fp = *(var_50h);
    0x0003c8ec lw s7, 0x4c(sp)               |         s7 = *(var_4ch_2);
    0x0003c8f0 lw s6, 0x48(sp)               |         s6 = *(var_48h_2);
    0x0003c8f4 lw s5, 0x44(sp)               |         s5 = *(var_44h_2);
    0x0003c8f8 lw s4, 0x40(sp)               |         s4 = *(var_40h_2);
    0x0003c8fc lw s3, 0x3c(sp)               |         s3 = *(var_3ch_2);
    0x0003c900 lw s2, 0x38(sp)               |         s2 = *(var_38h_2);
    0x0003c904 lw s1, 0x34(sp)               |         s1 = *(var_34h_2);
    0x0003c908 lw s0, 0x30(sp)               |         s0 = *(var_30h_3);
    0x0003c90c addiu sp, sp, 0x58            |         
    0x0003c910 jr ra                         |         return v0;
                                             | label_5:
    0x0003c914 lw s5, (v0)                   |         s5 = *(v0);
    0x0003c918 b 0x3c804                     |         
                                             |     } while (1);
                                             | label_10:
    0x0003c91c sll s2, s2, 2                 |     s2 <<= 2;
    0x0003c920 addu s2, s6, s2               |     s2 = s6 + s2;
    0x0003c924 sw s0, (s2)                   |     *(s2) = s0;
    0x0003c928 b 0x3c8d4                     |     goto label_0;
                                             | label_6:
    0x0003c92c move a0, v0                   |     a0 = v0;
    0x0003c930 lw v0, -0x77dc(gp)            |     v0 = *((gp - 7671));
    0x0003c934 lw t9, -0x7ac8(gp)            |     t9 = sym.imp.error_message;
    0x0003c938 lw s0, (v0)                   |     s0 = *(v0);
    0x0003c93c jalr t9                       |     t9 ();
    0x0003c940 lw gp, 0x20(sp)               |     gp = *(var_20h_3);
    0x0003c944 sw v0, 0x18(sp)               |     *(var_18h_3) = v0;
    0x0003c948 addiu a1, zero, 1             |     a1 = 1;
    0x0003c94c lw v0, -0x7fa8(gp)            |     v0 = *((gp - 8170));
    0x0003c950 lw a3, -0x7fa8(gp)            |     a3 = *((gp - 8170));
    0x0003c954 lw a2, -0x7fa8(gp)            |     a2 = *((gp - 8170));
                                             |     /* str.quota_file_open */
    0x0003c958 addiu v0, v0, -0x20bc         |     v0 += -0x20bc;
    0x0003c95c lw t9, -0x7c2c(gp)            |     t9 = sym.imp.__fprintf_chk
    0x0003c960 sw v0, 0x14(sp)               |     *(var_14h_2) = v0;
    0x0003c964 addiu v0, zero, 0xee          |     v0 = 0xee;
    0x0003c968 sw v0, 0x10(sp)               |     *(var_10h_2) = v0;
                                             |     /* str..._.._.._git_lib_support_quotaio.c */
    0x0003c96c addiu a3, a3, -0x23f0         |     a3 += -0x23f0;
                                             |     /* str._ERROR___s:_d:_s::_ext2fs_file_open_failed:__s_n */
    0x0003c970 addiu a2, a2, -0x222c         |     a2 += -0x222c;
    0x0003c974 move a0, s0                   |     a0 = s0;
    0x0003c978 jalr t9                       |     t9 ();
    0x0003c97c lw gp, 0x20(sp)               |     gp = *(var_20h_3);
    0x0003c980 b 0x3c8d4                     |     goto label_0;
                                             | label_4:
    0x0003c984 addiu v0, v0, 0x244           |     v0 += aav.0x00000244;
    0x0003c988 lw s5, (v0)                   |     s5 = *(v0);
    0x0003c98c b 0x3c804                     |     goto label_1;
                                             | label_7:
    0x0003c990 addiu a1, s2, 4               |     a1 = s2 + 4;
    0x0003c994 sll a1, a1, 2                 |     a1 <<= 2;
    0x0003c998 lwx a1, a1(s6)                |     __asm ("lwx a1, a1(s6)");
    0x0003c99c lw v0, 0x6c(sp)               |     v0 = *(var_6ch);
                                             |     if (a1 != 0) {
    0x0003c9a0 beqz a1, 0x3c9d0              |         
    0x0003c9a4 andi v0, v0, 1                |         v0 &= 1;
    0x0003c9a8 lw t9, -0x77f4(gp)            |         t9 = sym.imp.ext2fs_file_close;
                                             |         if (v0 == 0) {
    0x0003c9ac beqz v0, 0x3c9f0              |             goto label_12;
                                             |         }
    0x0003c9b0 lw v0, 8(a1)                  |         v0 = *((a1 + 2));
    0x0003c9b4 andi v0, v0, 1                |         v0 &= 1;
                                             |         if (v0 != 0) {
    0x0003c9b8 bnez v0, 0x3c9f0              |             goto label_12;
                                             |         }
    0x0003c9bc nop                           |         
    0x0003c9c0 lw t9, -0x7d28(gp)            |         t9 = sym.quota_file_close;
    0x0003c9c4 move a0, s6                   |         a0 = s6;
    0x0003c9c8 bal 0x3c530                   |         sym_quota_file_close ();
    0x0003c9cc lw gp, 0x20(sp)               |         gp = *(var_20h_3);
                                             |     }
    0x0003c9d0 lw t9, -0x79bc(gp)            |     t9 = sym.imp.malloc;
    0x0003c9d4 addiu a0, zero, 0x50          |     a0 = 0x50;
    0x0003c9d8 jalr t9                       |     t9 ();
    0x0003c9dc move s0, v0                   |     s0 = v0;
    0x0003c9e0 lw gp, 0x20(sp)               |     gp = *(var_20h_3);
                                             |     if (v0 == 0) {
    0x0003c9e4 beqz v0, 0x3cab0              |         goto label_13;
                                             |     }
    0x0003c9e8 addiu fp, zero, 1             |     fp = 1;
    0x0003c9ec b 0x3c830                     |     goto label_2;
                                             | label_12:
    0x0003c9f0 lw a0, 0x28(sp)               |     a0 = *(var_28h);
    0x0003c9f4 jalr t9                       |     t9 ();
    0x0003c9f8 lw gp, 0x20(sp)               |     gp = *(var_20h_3);
    0x0003c9fc b 0x3c8d4                     |     goto label_0;
                                             | label_8:
    0x0003ca00 lw v0, -0x77dc(gp)            |     v0 = *((gp - 7671));
    0x0003ca04 lw a3, -0x7fa8(gp)            |     a3 = *((gp - 8170));
    0x0003ca08 lw a2, -0x7fa8(gp)            |     a2 = *((gp - 8170));
    0x0003ca0c lw a0, (v0)                   |     a0 = *(v0);
    0x0003ca10 lw v0, -0x7fa8(gp)            |     v0 = *((gp - 8170));
    0x0003ca14 lw t9, -0x7c2c(gp)            |     t9 = sym.imp.__fprintf_chk
                                             |     /* str.quota_file_open */
    0x0003ca18 addiu v0, v0, -0x20bc         |     v0 += -0x20bc;
    0x0003ca1c sw v0, 0x14(sp)               |     *(var_14h_2) = v0;
    0x0003ca20 addiu v0, zero, 0x113         |     v0 = 0x113;
    0x0003ca24 sw v0, 0x10(sp)               |     *(var_10h_2) = v0;
                                             |     /* str..._.._.._git_lib_support_quotaio.c */
    0x0003ca28 addiu a3, a3, -0x23f0         |     a3 += -0x23f0;
                                             |     /* str._ERROR___s:_d:_s::_qh_ops__check_file_failed_n */
    0x0003ca2c addiu a2, a2, -0x21c8         |     a2 += -0x21c8;
    0x0003ca30 addiu a1, zero, 1             |     a1 = 1;
    0x0003ca34 jalr t9                       |     t9 ();
    0x0003ca38 lw gp, 0x20(sp)               |     gp = *(var_20h_3);
                                             |     do {
    0x0003ca3c lw t9, -0x77f4(gp)            |         t9 = sym.imp.ext2fs_file_close;
    0x0003ca40 lw a0, 0x28(sp)               |         a0 = *(var_28h);
    0x0003ca44 jalr t9                       |         t9 ();
    0x0003ca48 lw gp, 0x20(sp)               |         gp = *(var_20h_3);
                                             |         if (fp != 0) {
    0x0003ca4c bnez fp, 0x3ca98              |             goto label_14;
                                             |         }
    0x0003ca50 addiu s1, zero, 5             |         s1 = 5;
    0x0003ca54 b 0x3c8d4                     |         goto label_0;
                                             | label_9:
    0x0003ca58 lw v0, -0x77dc(gp)            |         v0 = *((gp - 7671));
    0x0003ca5c lw a3, -0x7fa8(gp)            |         a3 = *((gp - 8170));
    0x0003ca60 lw a2, -0x7fa8(gp)            |         a2 = *((gp - 8170));
    0x0003ca64 lw a0, (v0)                   |         a0 = *(v0);
    0x0003ca68 lw v0, -0x7fa8(gp)            |         v0 = *((gp - 8170));
    0x0003ca6c lw t9, -0x7c2c(gp)            |         t9 = sym.imp.__fprintf_chk
                                             |         /* str.quota_file_open */
    0x0003ca70 addiu v0, v0, -0x20bc         |         v0 += -0x20bc;
    0x0003ca74 sw v0, 0x14(sp)               |         *(var_14h_2) = v0;
    0x0003ca78 addiu v0, zero, 0x119         |         v0 = 0x119;
    0x0003ca7c sw v0, 0x10(sp)               |         *(var_10h_2) = v0;
                                             |         /* str..._.._.._git_lib_support_quotaio.c */
    0x0003ca80 addiu a3, a3, -0x23f0         |         a3 += -0x23f0;
                                             |         /* str._ERROR___s:_d:_s::_qh_ops__init_io_failed_n */
    0x0003ca84 addiu a2, a2, -0x2198         |         a2 += -0x2198;
    0x0003ca88 addiu a1, zero, 1             |         a1 = 1;
    0x0003ca8c jalr t9                       |         t9 ();
    0x0003ca90 lw gp, 0x20(sp)               |         gp = *(var_20h_3);
    0x0003ca94 b 0x3ca3c                     |         
                                             |     } while (1);
                                             | label_14:
    0x0003ca98 lw t9, -0x7814(gp)            |     t9 = sym.imp.free;
    0x0003ca9c move a0, s0                   |     a0 = s0;
    0x0003caa0 jalr t9                       |     t9 ();
    0x0003caa4 addiu s1, zero, 5             |     s1 = 5;
    0x0003caa8 lw gp, 0x20(sp)               |     gp = *(var_20h_3);
    0x0003caac b 0x3c8d4                     |     goto label_0;
                                             | label_13:
    0x0003cab0 lw v0, -0x77dc(gp)            |     v0 = *((gp - 7671));
    0x0003cab4 lw a3, -0x7fa8(gp)            |     a3 = *((gp - 8170));
    0x0003cab8 lw a2, -0x7fa8(gp)            |     a2 = *((gp - 8170));
    0x0003cabc lw a0, (v0)                   |     a0 = *(v0);
    0x0003cac0 lw v0, -0x7fa8(gp)            |     v0 = *((gp - 8170));
    0x0003cac4 lw t9, -0x7c2c(gp)            |     t9 = sym.imp.__fprintf_chk
                                             |     /* str.quota_file_open */
    0x0003cac8 addiu v0, v0, -0x20bc         |     v0 += -0x20bc;
    0x0003cacc sw v0, 0x14(sp)               |     *(var_14h_2) = v0;
    0x0003cad0 addiu v0, zero, 0xfe          |     v0 = 0xfe;
                                             |     /* str..._.._.._git_lib_support_quotaio.c */
    0x0003cad4 addiu a3, a3, -0x23f0         |     a3 += -0x23f0;
                                             |     /* str._ERROR___s:_d:_s::_Unable_to_allocate_quota_handle_n */
    0x0003cad8 addiu a2, a2, -0x21fc         |     a2 += -0x21fc;
    0x0003cadc addiu a1, zero, 1             |     a1 = 1;
    0x0003cae0 sw v0, 0x10(sp)               |     *(var_10h_2) = v0;
    0x0003cae4 jalr t9                       |     t9 ();
    0x0003cae8 lw gp, 0x20(sp)               |     gp = *(var_20h_3);
    0x0003caec lw a0, 0x28(sp)               |     a0 = *(var_28h);
    0x0003caf0 lui s1, 0x7f2b                |     s1 = 0x7f2b0000;
    0x0003caf4 lw t9, -0x77f4(gp)            |     t9 = sym.imp.ext2fs_file_close;
    0x0003caf8 ori s1, s1, 0xb746            |     s1 |= 0xb746;
    0x0003cafc jalr t9                       |     t9 ();
    0x0003cb00 lw gp, 0x20(sp)               |     gp = *(var_20h_3);
    0x0003cb04 b 0x3c8d4                     |     goto label_0;
                                             | label_11:
    0x0003cb08 lw t9, -0x78a4(gp)            |     t9 = sym.imp.__stack_chk_fail;
    0x0003cb0c jalr t9                       |     t9 ();
    0x0003cb10 nop                           |     
                                             | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/fsck.ext3 @ 0x37ee8 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) sym.quota_release_context ()     | void quota_release_context () {
    0x00037ee8 lui gp, 3                     |     
    0x00037eec addiu gp, gp, 0x1ed8          |     
    0x00037ef0 addu gp, gp, t9               |     gp += t9;
    0x00037ef4 addiu sp, sp, -0x60           |     
    0x00037ef8 sw s5, 0x4c(sp)               |     *(var_4ch) = s5;
    0x00037efc lw s5, -0x7838(gp)            |     s5 = *((gp - 7694));
    0x00037f00 sw gp, 0x20(sp)               |     *(var_20h) = gp;
    0x00037f04 sw ra, 0x5c(sp)               |     *(var_5ch) = ra;
    0x00037f08 lw v0, (s5)                   |     v0 = *(s5);
    0x00037f0c sw fp, 0x58(sp)               |     *(var_58h) = fp;
    0x00037f10 sw s7, 0x54(sp)               |     *(var_54h) = s7;
    0x00037f14 sw s6, 0x50(sp)               |     *(var_50h) = s6;
    0x00037f18 sw s4, 0x48(sp)               |     *(var_48h) = s4;
    0x00037f1c sw s3, 0x44(sp)               |     *(var_44h) = s3;
    0x00037f20 sw s2, 0x40(sp)               |     *(var_40h) = s2;
    0x00037f24 sw s1, 0x3c(sp)               |     *(var_3ch) = s1;
    0x00037f28 sw s0, 0x38(sp)               |     *(var_38h) = s0;
    0x00037f2c sw v0, 0x34(sp)               |     *(var_34h) = v0;
    0x00037f30 lw s7, -0x7fa8(gp)            |     s7 = *((gp - 8170));
                                             |     if (a0 == 0) {
    0x00037f34 beqz a0, 0x3807c              |         goto label_1;
                                             |     }
    0x00037f38 lw s2, (a0)                   |     s2 = *(a0);
    0x00037f3c lw s6, -0x7fa8(gp)            |     s6 = *((gp - 8170));
    0x00037f40 lw fp, -0x7fa8(gp)            |     fp = *((gp - 8170));
    0x00037f44 move s3, a0                   |     s3 = a0;
    0x00037f48 addiu s0, s2, 4               |     s0 = s2 + 4;
    0x00037f4c addiu s4, s2, 0x10            |     s4 = s2 + 0x10;
                                             |     /* str.quota_release_context */
    0x00037f50 addiu s7, s7, -0x2a54         |     s7 += -0x2a54;
                                             |     /* str..._.._.._git_lib_support_mkquota.c */
    0x00037f54 addiu s6, s6, -0x2c2c         |     s6 += -0x2c2c;
    0x00037f58 lw s1, (s0)                   |     s1 = *(s0);
                                             |     do {
    0x00037f5c sw zero, (s0)                 |         *(s0) = 0;
                                             |         if (s1 != 0) {
    0x00037f60 beqz s1, 0x37f84              |             
    0x00037f64 lw t9, -0x7df4(gp)            |             t9 = sym.dict_free_nodes;
    0x00037f68 move a0, s1                   |             a0 = s1;
    0x00037f6c bal 0x3f67c                   |             sym_dict_free_nodes ();
    0x00037f70 lw gp, 0x20(sp)               |             gp = *(var_20h);
    0x00037f74 lw t9, -0x7814(gp)            |             t9 = sym.imp.free;
    0x00037f78 move a0, s1                   |             a0 = s1;
    0x00037f7c jalr t9                       |             t9 ();
    0x00037f80 lw gp, 0x20(sp)               |             gp = *(var_20h);
                                             |         }
    0x00037f84 lw a1, 0xc(s0)                |         a1 = *((s0 + 3));
    0x00037f88 lw t9, -0x7d28(gp)            |         t9 = sym.quota_file_close;
                                             |         if (a1 != 0) {
    0x00037f8c beqz a1, 0x37fa0              |             
    0x00037f90 move a0, s2                   |             a0 = s2;
    0x00037f94 bal 0x3c530                   |             sym_quota_file_close ();
    0x00037f98 lw gp, 0x20(sp)               |             gp = *(var_20h);
                                             |             if (v0 != 0) {
    0x00037f9c bnez v0, 0x37ff4              |                 goto label_2;
                                             |             }
                                             |         }
                                             | label_0:
    0x00037fa0 addiu s0, s0, 4               |         s0 += 4;
    0x00037fa4 lw s1, (s0)                   |         s1 = *(s0);
    0x00037fa8 bnel s0, s4, 0x37f5c          |         
                                             |     } while (s0 == s4);
    0x00037fac sw zero, (s3)                 |     *(s3) = 0;
    0x00037fb0 lw v1, 0x34(sp)               |     v1 = *(var_34h);
    0x00037fb4 lw v0, (s5)                   |     v0 = *(s5);
    0x00037fb8 lw ra, 0x5c(sp)               |     ra = *(var_5ch);
                                             |     if (v1 == v0) {
    0x00037fbc bne v1, v0, 0x380b8           |         
    0x00037fc0 lw fp, 0x58(sp)               |         fp = *(var_58h);
    0x00037fc4 lw s7, 0x54(sp)               |         s7 = *(var_54h);
    0x00037fc8 lw s6, 0x50(sp)               |         s6 = *(var_50h);
    0x00037fcc lw s5, 0x4c(sp)               |         s5 = *(var_4ch);
    0x00037fd0 lw s4, 0x48(sp)               |         s4 = *(var_48h);
    0x00037fd4 lw s3, 0x44(sp)               |         s3 = *(var_44h);
    0x00037fd8 lw s1, 0x3c(sp)               |         s1 = *(var_3ch);
    0x00037fdc lw s0, 0x38(sp)               |         s0 = *(var_38h);
    0x00037fe0 move a0, s2                   |         a0 = s2;
    0x00037fe4 lw t9, -0x7814(gp)            |         t9 = sym.imp.free;
    0x00037fe8 lw s2, 0x40(sp)               |         s2 = *(var_40h);
    0x00037fec addiu sp, sp, 0x60            |         
    0x00037ff0 jr t9                         |         t9 ();
                                             | label_2:
    0x00037ff4 lw v0, -0x77dc(gp)            |         v0 = *((gp - 7671));
    0x00037ff8 lw t9, -0x7aa4(gp)            |         t9 = sym.imp.__errno_location;
    0x00037ffc addiu s1, s0, 0xc             |         s1 = s0 + 0xc;
    0x00038000 lw v1, (v0)                   |         v1 = *(v0);
    0x00038004 sw v1, 0x2c(sp)               |         *(var_2ch_2) = v1;
    0x00038008 jalr t9                       |         t9 ();
    0x0003800c lw gp, 0x20(sp)               |         gp = *(var_20h);
    0x00038010 lw t9, -0x79f4(gp)            |         t9 = sym.imp.strerror;
    0x00038014 lw a0, (v0)                   |         a0 = *(v0);
    0x00038018 jalr t9                       |         t9 ();
    0x0003801c lw gp, 0x20(sp)               |         gp = *(var_20h);
    0x00038020 lw v1, 0x2c(sp)               |         v1 = *(var_2ch_2);
    0x00038024 sw v0, 0x18(sp)               |         *(var_18h) = v0;
    0x00038028 lw t9, -0x7c2c(gp)            |         t9 = sym.imp.__fprintf_chk
    0x0003802c addiu v0, zero, 0x161         |         v0 = 0x161;
    0x00038030 move a0, v1                   |         a0 = v1;
    0x00038034 move a3, s6                   |         a3 = s6;
                                             |         /* str._ERROR___s:_d:_s::_Cannot_close_quotafile:__s_n */
    0x00038038 addiu a2, fp, -0x2b7c         |         a2 = fp + -0x2b7c;
    0x0003803c addiu a1, zero, 1             |         a1 = 1;
    0x00038040 sw s7, 0x14(sp)               |         *(var_14h) = s7;
    0x00038044 sw v0, 0x10(sp)               |         *(var_10h_2) = v0;
    0x00038048 jalr t9                       |         t9 ();
    0x0003804c lwl a0, 3(s1)                 |         __asm ("lwl a0, 3(s1)");
    0x00038050 lw gp, 0x20(sp)               |         gp = *(var_20h);
    0x00038054 lwr a0, (s1)                  |         __asm ("lwr a0, (s1)");
    0x00038058 lw t9, -0x7814(gp)            |         t9 = sym.imp.free;
    0x0003805c sw a0, 0x30(sp)               |         *(var_30h_2) = a0;
    0x00038060 jalr t9                       |         t9 ();
    0x00038064 move v0, zero                 |         v0 = 0;
    0x00038068 lw gp, 0x20(sp)               |         gp = *(var_20h);
    0x0003806c swl v0, 3(s1)                 |         __asm ("swl v0, 3(s1)");
    0x00038070 sw zero, 0x30(sp)             |         *(var_30h_2) = 0;
    0x00038074 swr v0, (s1)                  |         __asm ("swr v0, (s1)");
    0x00038078 b 0x37fa0                     |         goto label_0;
                                             | label_1:
    0x0003807c lw v1, 0x34(sp)               |         v1 = *(var_34h);
    0x00038080 lw v0, (s5)                   |         v0 = *(s5);
    0x00038084 lw ra, 0x5c(sp)               |         ra = *(var_5ch);
                                             |         if (v1 != v0) {
    0x00038088 bne v1, v0, 0x380b8           |             goto label_3;
                                             |         }
    0x0003808c lw fp, 0x58(sp)               |         fp = *(var_58h);
    0x00038090 lw s7, 0x54(sp)               |         s7 = *(var_54h);
    0x00038094 lw s6, 0x50(sp)               |         s6 = *(var_50h);
    0x00038098 lw s5, 0x4c(sp)               |         s5 = *(var_4ch);
    0x0003809c lw s4, 0x48(sp)               |         s4 = *(var_48h);
    0x000380a0 lw s3, 0x44(sp)               |         s3 = *(var_44h);
    0x000380a4 lw s2, 0x40(sp)               |         s2 = *(var_40h);
    0x000380a8 lw s1, 0x3c(sp)               |         s1 = *(var_3ch);
    0x000380ac lw s0, 0x38(sp)               |         s0 = *(var_38h);
    0x000380b0 addiu sp, sp, 0x60            |         
    0x000380b4 jr ra                         |         return v1;
                                             |     }
                                             | label_3:
    0x000380b8 lw t9, -0x78a4(gp)            |     t9 = sym.imp.__stack_chk_fail;
    0x000380bc jalr t9                       |     t9 ();
    0x000380c0 nop                           |     
                                             | }

[*] Function fprintf used 85 times fsck.ext3