[*] 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