[*] Binary protection state of badblocks

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


[*] Function fprintf tear down of badblocks

    ; assembly                           | /* r2dec pseudo code output */
                                         | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/badblocks @ 0x21f0 */
                                         | #include <stdint.h>
                                         |  
    ; (fcn) fcn.000021f0 ()              | void fcn_000021f0 () {
    0x000021f0 lui gp, 2                 |     
    0x000021f4 addiu gp, gp, -0x31c0     |     
    0x000021f8 addu gp, gp, t9           |     gp += t9;
    0x000021fc lw v0, -0x7ed0(gp)        |     v0 = *((gp - 8116));
    0x00002200 addiu sp, sp, -0x20       |     
    0x00002204 lw a2, -0x7fd8(gp)        |     a2 = *((gp - 8182));
    0x00002208 lw a0, (v0)               |     a0 = *(v0);
    0x0000220c lw v0, -0x7fdc(gp)        |     v0 = *((gp - 8183));
    0x00002210 lw t9, -0x7f7c(gp)        |     t9 = sym.imp.__fprintf_chk
    0x00002214 addiu a2, a2, 0x5fb4      |     a2 += str._s:_The__n_and__w_options_are_mutually_exclusive._n_n;
    0x00002218 lw a3, 0x7020(v0)         |     a3 = *((v0 + 7176));
    0x0000221c sw gp, 0x10(sp)           |     *(var_10h) = gp;
    0x00002220 sw ra, 0x1c(sp)           |     *(var_1ch) = ra;
    0x00002224 addiu a1, zero, 1         |     a1 = 1;
    0x00002228 jalr t9                   |     t9 ();
    0x0000222c lw gp, 0x10(sp)           |     gp = *(var_10h);
    0x00002230 lw t9, -0x7f28(gp)        |     t9 = sym.imp.exit;
    0x00002234 addiu a0, zero, 1         |     a0 = 1;
    0x00002238 jalr t9                   |     return t9 ();
                                         | }
    ; assembly                           | /* r2dec pseudo code output */
                                         | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/badblocks @ 0x223c */
                                         | #include <stdint.h>
                                         |  
    ; (fcn) fcn.0000223c ()              | void fcn_0000223c () {
    0x0000223c lui gp, 2                 |     
    0x00002240 addiu gp, gp, -0x320c     |     
    0x00002244 addu gp, gp, t9           |     gp += t9;
    0x00002248 lw v0, -0x7ed0(gp)        |     v0 = *((gp - 8116));
    0x0000224c addiu sp, sp, -0x20       |     
    0x00002250 lw a2, -0x7fd8(gp)        |     a2 = *((gp - 8182));
    0x00002254 lw a0, (v0)               |     a0 = *(v0);
    0x00002258 lw v0, -0x7fdc(gp)        |     v0 = *((gp - 8183));
    0x0000225c lw t9, -0x7f7c(gp)        |     t9 = sym.imp.__fprintf_chk
    0x00002260 addiu a2, a2, 0x5fe8      |     a2 += str.Usage:__s___b_block_size____i_input_file____o_output_file____svwnfBX__n_________c_blocks_at_once____d_delay_factor_between_reads____e_max_bad_blocks__n_________p_num_passes____t_test_pattern___t_test_pattern__...____n_______device__last_block__first_block___n;
    0x00002264 lw a3, 0x7020(v0)         |     a3 = *((v0 + 7176));
    0x00002268 sw gp, 0x10(sp)           |     *(var_10h) = gp;
    0x0000226c sw ra, 0x1c(sp)           |     *(var_1ch) = ra;
    0x00002270 addiu a1, zero, 1         |     a1 = 1;
    0x00002274 jalr t9                   |     t9 ();
    0x00002278 lw gp, 0x10(sp)           |     gp = *(var_10h);
    0x0000227c lw t9, -0x7f28(gp)        |     t9 = sym.imp.exit;
    0x00002280 addiu a0, zero, 1         |     a0 = 1;
    0x00002284 jalr t9                   |     t9 ();
    0x00002288 lui gp, 2                 |     
    0x0000228c addiu gp, gp, -0x3258     |     
    0x00002290 addu gp, gp, t9           |     gp += t9;
    0x00002294 lw v0, -0x7fdc(gp)        |     v0 = *((gp - 8183));
    0x00002298 addiu sp, sp, -0x28       |     
    0x0000229c lw t9, -0x7ec8(gp)        |     t9 = sym.imp.fflush;
    0x000022a0 lw a0, 0x71bc(v0)         |     a0 = *((v0 + 7279));
    0x000022a4 sw ra, 0x24(sp)           |     *(var_24h) = ra;
    0x000022a8 sw gp, 0x18(sp)           |     *(var_18h) = gp;
    0x000022ac sw s0, 0x20(sp)           |     *(var_20h) = s0;
    0x000022b0 lw s0, -0x7ed0(gp)        |     s0 = *((gp - 8116));
    0x000022b4 jalr t9                   |     t9 ();
    0x000022b8 nop                       |     
    0x000022bc lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x000022c0 lw a0, (s0)               |     a0 = *(s0);
    0x000022c4 addiu a1, zero, 1         |     a1 = 1;
    0x000022c8 lw v0, -0x7fdc(gp)        |     v0 = *((gp - 8183));
    0x000022cc lw a2, -0x7fd8(gp)        |     a2 = *((gp - 8182));
    0x000022d0 lw t9, -0x7f7c(gp)        |     t9 = sym.imp.__fprintf_chk
    0x000022d4 lw v0, 0x71d4(v0)         |     v0 = *((v0 + 7285));
    0x000022d8 addiu a2, a2, 0x60e8      |     a2 += str._n_nInterrupted_at_block__llu_n;
    0x000022dc sw v0, 0x10(sp)           |     *(var_10h_2) = v0;
    0x000022e0 sw zero, 0x14(sp)         |     *(var_14h) = 0;
    0x000022e4 jalr t9                   |     t9 ();
    0x000022e8 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x000022ec lw t9, -0x7ec8(gp)        |     t9 = sym.imp.fflush;
    0x000022f0 lw a0, (s0)               |     a0 = *(s0);
    0x000022f4 jalr t9                   |     t9 ();
    0x000022f8 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x000022fc lw v0, -0x7fdc(gp)        |     v0 = *((gp - 8183));
    0x00002300 lw a0, 0x71b0(v0)         |     a0 = *((v0 + 7276));
    0x00002304 lw t9, -0x7f60(gp)        |     t9 = sym.imp.__longjmp_chk;
                                         |     if (a0 != 0) {
    0x00002308 beqz a0, 0x2314           |         
    0x0000230c addiu a1, zero, 1         |         a1 = 1;
    0x00002310 jalr t9                   |         t9 ();
                                         |     }
    0x00002314 lw t9, -0x7f28(gp)        |     t9 = sym.imp.exit;
    0x00002318 addiu a0, zero, 1         |     a0 = 1;
    0x0000231c jalr t9                   |     return t9 ();
                                         | }
    ; assembly                           | /* r2dec pseudo code output */
                                         | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/badblocks @ 0x29b4 */
                                         | #include <stdint.h>
                                         |  
    ; (fcn) fcn.000029b4 ()              | void fcn_000029b4 () {
    0x000029b4 lui gp, 2                 |     
    0x000029b8 addiu gp, gp, -0x3984     |     
    0x000029bc addu gp, gp, t9           |     gp += t9;
    0x000029c0 addiu sp, sp, -0x40       |     
    0x000029c4 sra v1, a3, 0x1f          |     v1 = a3 >> 0x1f;
    0x000029c8 lw v0, 0x50(sp)           |     v0 = *(arg_50h);
    0x000029cc sw s4, 0x34(sp)           |     *(var_34h) = s4;
    0x000029d0 mul s4, a2, a3            |     __asm ("mul s4, a2, a3");
    0x000029d4 multu v0, a3              |     __asm ("multu v0, a3");
    0x000029d8 sw s1, 0x28(sp)           |     *(var_28h) = s1;
    0x000029dc sw s0, 0x24(sp)           |     *(var_24h) = s0;
    0x000029e0 mfhi s1                   |     __asm ("mfhi s1");
    0x000029e4 mflo s0                   |     __asm ("mflo s0");
    0x000029e8 mul a2, v1, v0            |     __asm ("mul a2, v1, v0");
    0x000029ec lw t9, -0x7fd8(gp)        |     t9 = *((gp - 8182));
    0x000029f0 sw gp, 0x18(sp)           |     *(var_18h) = gp;
    0x000029f4 sw s5, 0x38(sp)           |     *(var_38h) = s5;
    0x000029f8 sw s3, 0x30(sp)           |     *(var_30h) = s3;
    0x000029fc addu s1, a2, s1           |     s1 = a2 + s1;
    0x00002a00 sw s2, 0x2c(sp)           |     *(var_2ch) = s2;
    0x00002a04 sw ra, 0x3c(sp)           |     *(var_3ch) = ra;
    0x00002a08 sw s0, 0x10(sp)           |     *(var_10h) = s0;
    0x00002a0c sw s1, 0x14(sp)           |     *(var_14h) = s1;
    0x00002a10 move a2, s4               |     a2 = s4;
    0x00002a14 addiu t9, t9, 0x20f4      |     t9 += fcn.000020f4;
    0x00002a18 move s2, a3               |     s2 = a3;
    0x00002a1c move s3, a0               |     s3 = a0;
    0x00002a20 move s5, a1               |     s5 = a1;
    0x00002a24 bal 0x20f4                |     fcn_000020f4 ();
    0x00002a28 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x00002a2c lw v0, -0x7fdc(gp)        |     v0 = *((gp - 8183));
    0x00002a30 lw v0, 0x7204(v0)         |     v0 = *((v0 + 7297));
    0x00002a34 slti v0, v0, 2            |     v0 = (v0 < 2) ? 1 : 0;
    0x00002a38 lw t9, -0x7ea8(gp)        |     t9 = sym.imp.ext2fs_llseek;
                                         |     if (v0 == 0) {
    0x00002a3c bnez v0, 0x2a58           |         
    0x00002a40 lw t9, -0x7fd8(gp)        |         t9 = *((gp - 8182));
    0x00002a44 addiu t9, t9, 0x2320      |         t9 += fcn.00002320;
    0x00002a48 bal 0x2320                |         fcn_00002320 ();
    0x00002a4c nop                       |         
    0x00002a50 lw gp, 0x18(sp)           |         gp = *(var_18h);
    0x00002a54 lw t9, -0x7ea8(gp)        |         t9 = sym.imp.ext2fs_llseek;
                                         |     }
    0x00002a58 sw zero, 0x10(sp)         |     *(var_10h) = 0;
    0x00002a5c move a2, s0               |     a2 = s0;
    0x00002a60 move a3, s1               |     a3 = s1;
    0x00002a64 move a0, s3               |     a0 = s3;
    0x00002a68 jalr t9                   |     t9 ();
    0x00002a6c lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     if (v0 != s0) {
    0x00002a70 bne v0, s0, 0x2af4        |         goto label_0;
                                         |     }
    0x00002a74 lw v0, -0x7fdc(gp)        |     v0 = *((gp - 8183));
    0x00002a78 bne s1, v1, 0x2af8        |     
                                         |     while (1) {
    0x00002a7c lw t9, -0x7f44(gp)        |         t9 = sym.imp.write;
    0x00002a80 move a2, s4               |         a2 = s4;
    0x00002a84 move a1, s5               |         a1 = s5;
    0x00002a88 move a0, s3               |         a0 = s3;
    0x00002a8c jalr t9                   |         t9 ();
    0x00002a90 move s0, v0               |         s0 = v0;
    0x00002a94 lw gp, 0x18(sp)           |         gp = *(var_18h);
                                         |         if (v0 < 0) {
    0x00002a98 bltz v0, 0x2b30           |             goto label_1;
                                         |         }
    0x00002a9c andi v0, v0, 0x1ff        |         v0 &= 0x1ff;
    0x00002aa0 lw a2, -0x7fd8(gp)        |         a2 = *((gp - 8182));
                                         |         if (v0 != 0) {
    0x00002aa4 beqz v0, 0x2ac4           |             
    0x00002aa8 lw v0, -0x7ed0(gp)        |             v0 = *((gp - 8116));
    0x00002aac lw t9, -0x7f7c(gp)        |             t9 = sym.imp.__fprintf_chk
    0x00002ab0 lw a0, (v0)               |             a0 = *(v0);
    0x00002ab4 move a3, s0               |             a3 = s0;
    0x00002ab8 addiu a2, a2, 0x617c      |             a2 += str.Weird_value___ld__in_do_write_n;
    0x00002abc addiu a1, zero, 1         |             a1 = 1;
    0x00002ac0 jalr t9                   |             t9 ();
                                         |         }
    0x00002ac4 div zero, s0, s2          |         __asm ("div zero, s0, s2");
    0x00002ac8 teq s2, zero, 7           |         __asm ("teq s2, zero, 7");
    0x00002acc lw ra, 0x3c(sp)           |         ra = *(var_3ch);
    0x00002ad0 lw s5, 0x38(sp)           |         s5 = *(var_38h);
    0x00002ad4 lw s4, 0x34(sp)           |         s4 = *(var_34h);
    0x00002ad8 lw s3, 0x30(sp)           |         s3 = *(var_30h);
    0x00002adc lw s2, 0x2c(sp)           |         s2 = *(var_2ch);
    0x00002ae0 lw s1, 0x28(sp)           |         s1 = *(var_28h);
    0x00002ae4 lw s0, 0x24(sp)           |         s0 = *(var_24h);
    0x00002ae8 addiu sp, sp, 0x40        |         
    0x00002aec mflo v0                   |         __asm ("mflo v0");
    0x00002af0 jr ra                     |         return v0;
                                         | label_0:
    0x00002af4 lw v0, -0x7fdc(gp)        |         v0 = *((gp - 8183));
    0x00002af8 lw t9, -0x7f58(gp)        |         t9 = sym.imp.__errno_location;
    0x00002afc lw s0, 0x7020(v0)         |         s0 = *((v0 + 7176));
    0x00002b00 jalr t9                   |         t9 ();
    0x00002b04 lw gp, 0x18(sp)           |         gp = *(var_18h);
    0x00002b08 lw a1, (v0)               |         a1 = *(v0);
    0x00002b0c move a0, s0               |         a0 = s0;
    0x00002b10 lw a3, -0x7fd8(gp)        |         a3 = *((gp - 8182));
    0x00002b14 lw a2, -0x7fd8(gp)        |         a2 = *((gp - 8182));
    0x00002b18 lw t9, -0x7f08(gp)        |         t9 = sym.imp.com_err;
    0x00002b1c addiu a3, a3, 0x614c      |         a3 += str.during_seek;
    0x00002b20 addiu a2, a2, 0x6158      |         a2 += 0x6158;
    0x00002b24 jalr t9                   |         t9 ();
    0x00002b28 lw gp, 0x18(sp)           |         gp = *(var_18h);
    0x00002b2c b 0x2a7c                  |         
                                         |     }
                                         | label_1:
    0x00002b30 lw ra, 0x3c(sp)           |     ra = *(var_3ch);
    0x00002b34 lw s5, 0x38(sp)           |     s5 = *(var_38h);
    0x00002b38 lw s4, 0x34(sp)           |     s4 = *(var_34h);
    0x00002b3c lw s3, 0x30(sp)           |     s3 = *(var_30h);
    0x00002b40 lw s2, 0x2c(sp)           |     s2 = *(var_2ch);
    0x00002b44 lw s1, 0x28(sp)           |     s1 = *(var_28h);
    0x00002b48 lw s0, 0x24(sp)           |     s0 = *(var_24h);
    0x00002b4c move v0, zero             |     v0 = 0;
    0x00002b50 addiu sp, sp, 0x40        |     
    0x00002b54 jr ra                     |     return v0;
                                         | }
    ; assembly                           | /* r2dec pseudo code output */
                                         | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/badblocks @ 0x2b58 */
                                         | #include <stdint.h>
                                         |  
    ; (fcn) fcn.00002b58 ()              | void fcn_00002b58 () {
    0x00002b58 lui gp, 2                 |     
    0x00002b5c addiu gp, gp, -0x3b28     |     
    0x00002b60 addu gp, gp, t9           |     gp += t9;
    0x00002b64 addiu sp, sp, -0x38       |     
    0x00002b68 addiu v0, zero, -1        |     v0 = -1;
    0x00002b6c sw s2, 0x28(sp)           |     *(var_28h) = s2;
    0x00002b70 lw s2, -0x7ee0(gp)        |     s2 = *((gp - 8120));
    0x00002b74 sw gp, 0x10(sp)           |     *(var_10h) = gp;
    0x00002b78 sw s3, 0x2c(sp)           |     *(var_2ch) = s3;
    0x00002b7c lw v1, (s2)               |     v1 = *(s2);
    0x00002b80 sw s0, 0x20(sp)           |     *(var_20h) = s0;
    0x00002b84 sw ra, 0x34(sp)           |     *(var_34h) = ra;
    0x00002b88 sw s4, 0x30(sp)           |     *(var_30h) = s4;
    0x00002b8c sw s1, 0x24(sp)           |     *(var_24h) = s1;
    0x00002b90 move s0, a0               |     s0 = a0;
    0x00002b94 sw v1, 0x1c(sp)           |     *(var_1ch) = v1;
    0x00002b98 addu s3, a0, a2           |     s3 = a0 + a2;
                                         |     if (a1 == v0) {
    0x00002b9c beq a1, v0, 0x2cf4        |         goto label_5;
                                         |     }
    0x00002ba0 move s1, a1               |     s1 = a1;
                                         |     if (a1 == 0) {
    0x00002ba4 beqz a1, 0x2da4           |         goto label_6;
                                         |     }
    0x00002ba8 srl v0, a1, 8             |     v0 = a1 >> 8;
    0x00002bac sb a1, 0x18(sp)           |     *(var_18h) = a1;
                                         |     if (v0 == 0) {
    0x00002bb0 beqz v0, 0x2dac           |         goto label_7;
                                         |     }
    0x00002bb4 srl v1, a1, 0x10          |     v1 = a1 >> 0x10;
    0x00002bb8 sb v0, 0x19(sp)           |     *(var_19h) = v0;
                                         |     if (v1 == 0) {
    0x00002bbc beqz v1, 0x2db8           |         goto label_8;
                                         |     }
    0x00002bc0 srl s1, a1, 0x18          |     s1 = a1 >> 0x18;
    0x00002bc4 sb v1, 0x1a(sp)           |     *(var_1ah) = v1;
                                         |     if (s1 == 0) {
    0x00002bc8 beqz s1, 0x2dc4           |         goto label_9;
                                         |     }
    0x00002bcc sb s1, 0x1b(sp)           |     *(var_1bh) = s1;
    0x00002bd0 addiu s1, zero, 3         |     s1 = 3;
                                         | label_2:
    0x00002bd4 sltu v0, s0, s3           |     v0 = (s0 < s3) ? 1 : 0;
    0x00002bd8 move v0, s0               |     v0 = s0;
                                         |     if (v0 == 0) {
    0x00002bdc beqz v0, 0x2c14           |         goto label_10;
                                         |     }
    0x00002be0 move v1, s1               |     v1 = s1;
    0x00002be4 b 0x2bf4                  |     
                                         |     while (v1 != 0) {
    0x00002be8 addiu v0, v0, 1           |         v0++;
    0x00002bec addiu v1, v1, -1          |         v1 += -1;
                                         |         if (s3 == v0) {
    0x00002bf0 beq s3, v0, 0x2c14        |             goto label_10;
                                         |         }
                                         | label_0:
    0x00002bf4 addiu a0, sp, 0x20        |         a0 = sp + 0x20;
    0x00002bf8 addu a0, a0, v1           |         a0 += v1;
    0x00002bfc lbu a0, -8(a0)            |         a0 = *((a0 - 8));
    0x00002c00 sb a0, (v0)               |         *(v0) = a0;
    0x00002c04 bnez v1, 0x2be8           |         
                                         |     }
    0x00002c08 addiu v0, v0, 1           |     v0++;
    0x00002c0c move v1, s1               |     v1 = s1;
                                         |     if (s3 != v0) {
    0x00002c10 bne s3, v0, 0x2bf4        |         goto label_0;
                                         |     }
                                         | label_10:
    0x00002c14 lw v0, -0x7fdc(gp)        |     v0 = *((gp - 8183));
    0x00002c18 lw v1, -0x7fdc(gp)        |     v1 = *((gp - 8183));
    0x00002c1c lw v0, 0x71fc(v0)         |     v0 = *((v0 + 7295));
    0x00002c20 lw v1, 0x7204(v1)         |     v1 = *((v1 + 7297));
    0x00002c24 or v0, v0, v1             |     v0 |= v1;
    0x00002c28 lw s3, -0x7ed0(gp)        |     s3 = *((gp - 8116));
                                         |     if (v0 != 0) {
    0x00002c2c bnel v0, zero, 0x2c5c     |         
                                         | label_1:
    0x00002c30 lw v1, 0x1c(sp)           |         v1 = *(var_1ch);
    0x00002c34 lw v0, (s2)               |         v0 = *(s2);
    0x00002c38 lw ra, 0x34(sp)           |         ra = *(var_34h);
                                         |         if (v1 != v0) {
    0x00002c3c bne v1, v0, 0x2dd0        |             goto label_11;
                                         |         }
    0x00002c40 lw s4, 0x30(sp)           |         s4 = *(var_30h);
    0x00002c44 lw s3, 0x2c(sp)           |         s3 = *(var_2ch);
    0x00002c48 lw s2, 0x28(sp)           |         s2 = *(var_28h);
    0x00002c4c lw s1, 0x24(sp)           |         s1 = *(var_24h);
    0x00002c50 lw s0, 0x20(sp)           |         s0 = *(var_20h);
    0x00002c54 addiu sp, sp, 0x38        |         
    0x00002c58 jr ra                     |         return v1;
                                         |     }
    0x00002c5c lw a0, -0x7fd8(gp)        |     a0 = *((gp - 8182));
    0x00002c60 lw t9, -0x7f14(gp)        |     t9 = sym.imp.fwrite;
    0x00002c64 lw a3, (s3)               |     a3 = *(s3);
    0x00002c68 addiu a2, zero, 0x17      |     a2 = 0x17;
    0x00002c6c addiu a1, zero, 1         |     a1 = 1;
    0x00002c70 addiu a0, a0, 0x61bc      |     a0 += str.Testing_with_pattern_0x;
    0x00002c74 jalr t9                   |     t9 ();
    0x00002c78 lw gp, 0x10(sp)           |     gp = *(var_10h);
    0x00002c7c addiu s4, s0, 1           |     s4 = s0 + 1;
    0x00002c80 addu s4, s4, s1           |     s4 += s1;
    0x00002c84 lw s1, -0x7fd8(gp)        |     s1 = *((gp - 8182));
    0x00002c88 addiu s1, s1, 0x61d4      |     s1 += str._02x;
                                         |     do {
    0x00002c8c lw t9, -0x7f7c(gp)        |         t9 = sym.imp.__fprintf_chk
    0x00002c90 lbu a3, (s0)              |         a3 = *(s0);
    0x00002c94 lw a0, (s3)               |         a0 = *(s3);
    0x00002c98 move a2, s1               |         a2 = s1;
    0x00002c9c addiu a1, zero, 1         |         a1 = 1;
    0x00002ca0 addiu s0, s0, 1           |         s0++;
    0x00002ca4 jalr t9                   |         t9 ();
    0x00002ca8 lw gp, 0x10(sp)           |         gp = *(var_10h);
    0x00002cac bne s4, s0, 0x2c8c        |         
                                         |     } while (s4 != s0);
    0x00002cb0 lw v1, 0x1c(sp)           |     v1 = *(var_1ch);
    0x00002cb4 lw v0, (s2)               |     v0 = *(s2);
    0x00002cb8 lw a0, -0x7fd8(gp)        |     a0 = *((gp - 8182));
                                         |     if (v1 != v0) {
    0x00002cbc bne v1, v0, 0x2dd0        |         goto label_11;
                                         |     }
    0x00002cc0 lw a3, (s3)               |     a3 = *(s3);
    0x00002cc4 lw ra, 0x34(sp)           |     ra = *(var_34h);
    0x00002cc8 lw s4, 0x30(sp)           |     s4 = *(var_30h);
    0x00002ccc lw s3, 0x2c(sp)           |     s3 = *(var_2ch);
    0x00002cd0 lw s2, 0x28(sp)           |     s2 = *(var_28h);
    0x00002cd4 lw s1, 0x24(sp)           |     s1 = *(var_24h);
    0x00002cd8 lw s0, 0x20(sp)           |     s0 = *(var_20h);
    0x00002cdc lw t9, -0x7f14(gp)        |     t9 = sym.imp.fwrite;
    0x00002ce0 addiu a2, zero, 2         |     a2 = 2;
    0x00002ce4 addiu a1, zero, 1         |     a1 = 1;
    0x00002ce8 addiu a0, a0, 0x6450      |     a0 += 0x6450;
    0x00002cec addiu sp, sp, 0x38        |     
    0x00002cf0 jr t9                     |     t9 ();
                                         | label_5:
    0x00002cf4 sltu v0, a0, s3           |     v0 = (a0 < s3) ? 1 : 0;
    0x00002cf8 lw v0, -0x7fdc(gp)        |     v0 = *((gp - 8183));
                                         |     if (v0 == 0) {
    0x00002cfc beqz v0, 0x2d44           |         goto label_12;
                                         |     }
    0x00002d00 lui s1, 0x8000            |     s1 = 0x800000ff;
    0x00002d04 addiu s1, s1, 0xff        |     
    0x00002d08 addiu s4, zero, -0x100    |     s4 = -0x100;
    0x00002d0c lw t9, -0x7f84(gp)        |     t9 = sym.imp.random;
                                         |     do {
    0x00002d10 jalr t9                   |         t9 ();
    0x00002d14 nop                       |         
    0x00002d18 and v0, v0, s1            |         v0 &= s1;
    0x00002d1c lw gp, 0x10(sp)           |         gp = *(var_10h);
                                         |         if (v0 < 0) {
    0x00002d20 bgez v0, 0x2d30           |             
    0x00002d24 addiu v0, v0, -1          |             v0 += -1;
    0x00002d28 or v0, v0, s4             |             v0 |= s4;
    0x00002d2c addiu v0, v0, 1           |             v0++;
                                         |         }
    0x00002d30 sb v0, (s0)               |         *(s0) = v0;
    0x00002d34 addiu s0, s0, 1           |         s0++;
    0x00002d38 lw t9, -0x7f84(gp)        |         t9 = sym.imp.random;
    0x00002d3c bne s0, s3, 0x2d10        |         
                                         |     } while (s0 != s3);
    0x00002d40 lw v0, -0x7fdc(gp)        |     v0 = *((gp - 8183));
                                         | label_12:
    0x00002d44 lw v1, -0x7fdc(gp)        |     v1 = *((gp - 8183));
    0x00002d48 lw v0, 0x71fc(v0)         |     v0 = *((v0 + 7295));
    0x00002d4c lw v1, 0x7204(v1)         |     v1 = *((v1 + 7297));
    0x00002d50 or v0, v0, v1             |     v0 |= v1;
                                         |     if (v0 == 0) {
    0x00002d54 beqz v0, 0x2c30           |         goto label_1;
                                         |     }
    0x00002d58 nop                       |     
    0x00002d5c lw v1, 0x1c(sp)           |     v1 = *(var_1ch);
    0x00002d60 lw v0, (s2)               |     v0 = *(s2);
    0x00002d64 lw v0, -0x7ed0(gp)        |     v0 = *((gp - 8116));
                                         |     if (v1 == v0) {
    0x00002d68 bne v1, v0, 0x2dd0        |         
    0x00002d6c lw a0, -0x7fd8(gp)        |         a0 = *((gp - 8182));
    0x00002d70 lw ra, 0x34(sp)           |         ra = *(var_34h);
    0x00002d74 lw s4, 0x30(sp)           |         s4 = *(var_30h);
    0x00002d78 lw s3, 0x2c(sp)           |         s3 = *(var_2ch);
    0x00002d7c lw s2, 0x28(sp)           |         s2 = *(var_28h);
    0x00002d80 lw s1, 0x24(sp)           |         s1 = *(var_24h);
    0x00002d84 lw s0, 0x20(sp)           |         s0 = *(var_20h);
    0x00002d88 lw a3, (v0)               |         a3 = *(v0);
    0x00002d8c lw t9, -0x7f14(gp)        |         t9 = sym.imp.fwrite;
    0x00002d90 addiu a2, zero, 0x1d      |         a2 = 0x1d;
    0x00002d94 addiu a1, zero, 1         |         a1 = 1;
    0x00002d98 addiu a0, a0, 0x619c      |         a0 += str.Testing_with_random_pattern:_;
    0x00002d9c addiu sp, sp, 0x38        |         
    0x00002da0 jr t9                     |         t9 ();
                                         | label_6:
    0x00002da4 sb zero, 0x18(sp)         |         *(var_18h) = 0;
    0x00002da8 b 0x2bd4                  |         goto label_2;
                                         | label_7:
    0x00002dac addiu s1, zero, 1         |         s1 = 1;
    0x00002db0 addiu s1, s1, -1          |         s1 += -1;
    0x00002db4 b 0x2bd4                  |         goto label_2;
                                         | label_8:
    0x00002db8 addiu s1, zero, 2         |         s1 = 2;
    0x00002dbc addiu s1, s1, -1          |         s1 += -1;
    0x00002dc0 b 0x2bd4                  |         goto label_2;
                                         | label_9:
    0x00002dc4 addiu s1, zero, 3         |         s1 = 3;
    0x00002dc8 addiu s1, s1, -1          |         s1 += -1;
    0x00002dcc b 0x2bd4                  |         goto label_2;
                                         |     }
                                         | label_11:
    0x00002dd0 lw t9, -0x7f00(gp)        |     t9 = sym.imp.__stack_chk_fail;
    0x00002dd4 jalr t9                   |     t9 ();
    0x00002dd8 nop                       |     
    0x00002ddc lui gp, 2                 |     
    0x00002de0 addiu gp, gp, -0x3dac     |     
    0x00002de4 addu gp, gp, t9           |     gp += t9;
    0x00002de8 addiu sp, sp, -0x30       |     
    0x00002dec lw t9, -0x7f20(gp)        |     t9 = sym.imp.ext2fs_badblocks_list_test;
    0x00002df0 sw s1, 0x20(sp)           |     *(var_20h_2) = s1;
    0x00002df4 lw s1, -0x7fdc(gp)        |     s1 = *((gp - 8183));
    0x00002df8 sw s0, 0x1c(sp)           |     *(var_1ch_2) = s0;
    0x00002dfc move s0, a0               |     s0 = a0;
    0x00002e00 lw a0, 0x71c0(s1)         |     a0 = *((s1 + 7280));
    0x00002e04 sw gp, 0x10(sp)           |     *(var_10h_2) = gp;
    0x00002e08 sw s2, 0x24(sp)           |     *(var_24h_2) = s2;
    0x00002e0c sw ra, 0x2c(sp)           |     *(var_2ch_2) = ra;
    0x00002e10 sw s3, 0x28(sp)           |     *(var_28h_2) = s3;
    0x00002e14 move s2, a1               |     s2 = a1;
    0x00002e18 move a1, s0               |     a1 = s0;
    0x00002e1c jalr t9                   |     t9 ();
    0x00002e20 lw gp, 0x10(sp)           |     gp = *(var_10h_2);
                                         |     if (v0 == 0) {
    0x00002e24 beqz v0, 0x2e48           |         goto label_13;
                                         |     }
    0x00002e28 move v0, zero             |     v0 = 0;
                                         |     do {
                                         | label_3:
    0x00002e2c lw ra, 0x2c(sp)           |         ra = *(var_2ch_2);
    0x00002e30 lw s3, 0x28(sp)           |         s3 = *(var_28h_2);
    0x00002e34 lw s2, 0x24(sp)           |         s2 = *(var_24h_2);
    0x00002e38 lw s1, 0x20(sp)           |         s1 = *(var_20h_2);
    0x00002e3c lw s0, 0x1c(sp)           |         s0 = *(var_1ch_2);
    0x00002e40 addiu sp, sp, 0x30        |         
    0x00002e44 jr ra                     |         return v1;
                                         | label_13:
    0x00002e48 lw s3, -0x7fdc(gp)        |         s3 = *((gp - 8183));
    0x00002e4c lw a2, -0x7fd8(gp)        |         a2 = *((gp - 8182));
    0x00002e50 lw t9, -0x7f7c(gp)        |         t9 = sym.imp.__fprintf_chk
    0x00002e54 lw a0, 0x71bc(s3)         |         a0 = *((s3 + 7279));
    0x00002e58 move a3, s0               |         a3 = s0;
    0x00002e5c addiu a2, a2, 0x61dc      |         a2 += str._lu_n;
    0x00002e60 addiu a1, zero, 1         |         a1 = 1;
    0x00002e64 jalr t9                   |         t9 ();
    0x00002e68 lw gp, 0x10(sp)           |         gp = *(var_10h_2);
    0x00002e6c lw t9, -0x7ec8(gp)        |         t9 = sym.imp.fflush;
    0x00002e70 lw a0, 0x71bc(s3)         |         a0 = *((s3 + 7279));
    0x00002e74 jalr t9                   |         t9 ();
    0x00002e78 lw gp, 0x10(sp)           |         gp = *(var_10h_2);
    0x00002e7c lw a0, 0x71c0(s1)         |         a0 = *((s1 + 7280));
    0x00002e80 lw t9, -0x7f34(gp)        |         t9 = sym.imp.ext2fs_badblocks_list_add;
    0x00002e84 move a1, s0               |         a1 = s0;
    0x00002e88 jalr t9                   |         t9 ();
    0x00002e8c lw gp, 0x10(sp)           |         gp = *(var_10h_2);
                                         |         if (v0 != 0) {
    0x00002e90 bnez v0, 0x2f2c           |             goto label_14;
                                         |         }
    0x00002e94 lw v0, -0x7fdc(gp)        |         v0 = *((gp - 8183));
    0x00002e98 lw a0, 0x71b4(v0)         |         a0 = *((v0 + 7277));
                                         |         if (a0 != 0) {
    0x00002e9c beqz a0, 0x2eb8           |             
    0x00002ea0 nop                       |             
    0x00002ea4 lw a1, -0x7fdc(gp)        |             a1 = *((gp - 8183));
    0x00002ea8 lw v0, 0x71b8(a1)         |             v0 = *((a1 + 7278));
    0x00002eac sltu s0, s0, v0           |             s0 = (s0 < v0) ? 1 : 0;
    0x00002eb0 lw t9, -0x7f9c(gp)        |             t9 = sym.imp.ext2fs_badblocks_list_iterate;
                                         |             if (s0 != 0) {
    0x00002eb4 bnez s0, 0x2f1c           |                 goto label_15;
                                         |             }
                                         |         }
                                         | label_4:
    0x00002eb8 addiu v0, zero, 1         |         v0 = 1;
                                         |         if (s2 == 0) {
    0x00002ebc bnez s2, 0x2eec           |             
    0x00002ec0 lw a0, -0x7fdc(gp)        |             a0 = *((gp - 8183));
    0x00002ec4 lw ra, 0x2c(sp)           |             ra = *(var_2ch_2);
    0x00002ec8 lw s3, 0x28(sp)           |             s3 = *(var_28h_2);
    0x00002ecc lw v1, 0x71cc(a0)         |             v1 = *((a0 + 7283));
    0x00002ed0 lw s2, 0x24(sp)           |             s2 = *(var_24h_2);
    0x00002ed4 addiu v1, v1, 1           |             v1++;
    0x00002ed8 lw s1, 0x20(sp)           |             s1 = *(var_20h_2);
    0x00002edc lw s0, 0x1c(sp)           |             s0 = *(var_1ch_2);
    0x00002ee0 sw v1, 0x71cc(a0)         |             *((a0 + 7283)) = v1;
    0x00002ee4 addiu sp, sp, 0x30        |             
    0x00002ee8 jr ra                     |             return v1;
                                         |         }
    0x00002eec lw a0, -0x7fdc(gp)        |         a0 = *((gp - 8183));
                                         |         if (s2 == v0) {
    0x00002ef0 beq s2, v0, 0x2f08        |             goto label_16;
                                         |         }
    0x00002ef4 addiu v0, zero, 1         |         v0 = 1;
    0x00002ef8 lw v1, 0x71c4(a0)         |         v1 = *((a0 + 7281));
    0x00002efc addiu v1, v1, 1           |         v1++;
    0x00002f00 sw v1, 0x71c4(a0)         |         *((a0 + 7281)) = v1;
    0x00002f04 b 0x2e2c                  |         
                                         |     } while (1);
                                         | label_16:
    0x00002f08 lw a0, -0x7fdc(gp)        |     a0 = *((gp - 8183));
    0x00002f0c lw v1, 0x71c8(a0)         |     v1 = *((a0 + 7282));
    0x00002f10 addiu v1, v1, 1           |     v1++;
    0x00002f14 sw v1, 0x71c8(a0)         |     *((a0 + 7282)) = v1;
    0x00002f18 b 0x2e2c                  |     goto label_3;
                                         | label_15:
    0x00002f1c addiu a1, a1, 0x71b8      |     a1 += 0x71b8;
    0x00002f20 jalr t9                   |     t9 ();
    0x00002f24 lw gp, 0x10(sp)           |     gp = *(var_10h_2);
    0x00002f28 b 0x2eb8                  |     goto label_4;
                                         | label_14:
    0x00002f2c lw v1, -0x7fdc(gp)        |     v1 = *((gp - 8183));
    0x00002f30 lw a2, -0x7fd8(gp)        |     a2 = *((gp - 8182));
    0x00002f34 lw t9, -0x7f08(gp)        |     t9 = sym.imp.com_err;
    0x00002f38 lw a0, 0x7020(v1)         |     a0 = *((v1 + 7176));
    0x00002f3c addiu a2, a2, 0x61e4      |     a2 += str.adding_to_in_memory_bad_block_list;
    0x00002f40 move a1, v0               |     a1 = v0;
    0x00002f44 jalr t9                   |     t9 ();
    0x00002f48 lw gp, 0x10(sp)           |     gp = *(var_10h_2);
    0x00002f4c lw t9, -0x7f28(gp)        |     t9 = sym.imp.exit;
    0x00002f50 addiu a0, zero, 1         |     a0 = 1;
    0x00002f54 jalr t9                   |     return t9 ();
                                         | }
    ; assembly                           | /* r2dec pseudo code output */
                                         | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/badblocks @ 0x42b0 */
                                         | #include <stdint.h>
                                         |  
    ; (fcn) fcn.000042b0 ()              | void fcn_000042b0 () {
    0x000042b0 lui gp, 2                 |     
    0x000042b4 addiu gp, gp, -0x5280     |     
    0x000042b8 addu gp, gp, t9           |     gp += t9;
    0x000042bc addiu sp, sp, -0x80       |     
    0x000042c0 lw t9, -0x7fd8(gp)        |     t9 = *((gp - 8182));
    0x000042c4 sw gp, 0x18(sp)           |     *(var_18h) = gp;
    0x000042c8 sw ra, 0x7c(sp)           |     *(var_7ch) = ra;
    0x000042cc sw fp, 0x78(sp)           |     *(var_78h) = fp;
    0x000042d0 sw s5, 0x6c(sp)           |     *(var_6ch) = s5;
    0x000042d4 sw s0, 0x58(sp)           |     *(var_58h) = s0;
    0x000042d8 sw a0, 0x80(sp)           |     *(arg_80h) = a0;
    0x000042dc addiu t9, t9, 0x1f00      |     t9 += fcn.00001f00;
    0x000042e0 move a0, zero             |     a0 = 0;
    0x000042e4 sw s7, 0x74(sp)           |     *(var_74h) = s7;
    0x000042e8 sw s6, 0x70(sp)           |     *(var_70h) = s6;
    0x000042ec sw s4, 0x68(sp)           |     *(var_68h) = s4;
    0x000042f0 sw s3, 0x64(sp)           |     *(var_64h) = s3;
    0x000042f4 sw s2, 0x60(sp)           |     *(var_60h) = s2;
    0x000042f8 sw s1, 0x5c(sp)           |     *(var_5ch) = s1;
    0x000042fc move s5, a1               |     s5 = a1;
    0x00004300 move s0, a2               |     s0 = a2;
    0x00004304 move fp, a3               |     fp = a3;
    0x00004308 bal 0x1f00                |     fcn_00001f00 ();
    0x0000430c lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x00004310 lw v0, -0x7fdc(gp)        |     v0 = *((gp - 8183));
    0x00004314 lw t9, -0x7f6c(gp)        |     t9 = sym.imp.ext2fs_badblocks_list_iterate_begin;
    0x00004318 move v1, v0               |     v1 = v0;
    0x0000431c sw v0, 0x28(sp)           |     *(var_28h) = v0;
    0x00004320 lw v0, -0x7fdc(gp)        |     v0 = *((gp - 8183));
    0x00004324 addiu a1, v1, 0x71b4      |     a1 = v1 + 0x71b4;
    0x00004328 lw a0, 0x71c0(v0)         |     a0 = *((v0 + 7280));
    0x0000432c jalr t9                   |     t9 ();
    0x00004330 lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     if (v0 != 0) {
    0x00004334 bnez v0, 0x4888           |         goto label_13;
                                         |     }
    0x00004338 lw v0, -0x7fdc(gp)        |     v0 = *((gp - 8183));
    0x0000433c sw v0, 0x20(sp)           |     *(var_20h) = v0;
    0x00004340 addiu s1, v0, 0x71b8      |     s1 = v0 + 0x71b8;
    0x00004344 b 0x4354                  |     
                                         |     while (v0 != 0) {
    0x00004348 sltu v0, v0, fp           |         v0 = (v0 < fp) ? 1 : 0;
    0x0000434c lw v0, -0x7fdc(gp)        |         v0 = *((gp - 8183));
                                         |         if (v0 == 0) {
    0x00004350 beqz v0, 0x437c           |             goto label_14;
                                         |         }
    0x00004354 lw v0, 0x28(sp)           |         v0 = *(var_28h);
    0x00004358 lw t9, -0x7f9c(gp)        |         t9 = sym.imp.ext2fs_badblocks_list_iterate;
    0x0000435c move a1, s1               |         a1 = s1;
    0x00004360 lw a0, 0x71b4(v0)         |         a0 = *((v0 + 7277));
    0x00004364 jalr t9                   |         t9 ();
    0x00004368 lw v0, 0x20(sp)           |         v0 = *(var_20h);
    0x0000436c lw v0, 0x71b8(v0)         |         v0 = *((v0 + 7278));
    0x00004370 lw gp, 0x18(sp)           |         gp = *(var_18h);
    0x00004374 bnez v0, 0x4348           |         
                                         |     }
    0x00004378 lw v0, -0x7fdc(gp)        |     v0 = *((gp - 8183));
                                         | label_14:
    0x0000437c sw v0, 0x30(sp)           |     *(var_30h) = v0;
    0x00004380 lw s1, 0x71f4(v0)         |     s1 = *((v0 + 7293));
    0x00004384 lw v0, 0x90(sp)           |     v0 = *(arg_90h);
                                         |     if (s1 != 0) {
    0x00004388 bnez s1, 0x4638           |         goto label_15;
                                         |     }
    0x0000438c mul a0, v0, s0            |     __asm ("mul a0, v0, s0");
                                         | label_1:
    0x00004390 lw t9, -0x7fd8(gp)        |     t9 = *((gp - 8182));
    0x00004394 addiu t9, t9, 0x2044      |     t9 += fcn.00002044;
    0x00004398 bal 0x2044                |     fcn_00002044 ();
    0x0000439c nop                       |     
    0x000043a0 sw v0, 0x24(sp)           |     *(var_24h) = v0;
    0x000043a4 lw v0, 0x24(sp)           |     v0 = *(var_24h);
    0x000043a8 lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     if (v0 == 0) {
    0x000043ac beqz v0, 0x4850           |         goto label_16;
                                         |     }
    0x000043b0 lw v0, -0x7fdc(gp)        |     v0 = *((gp - 8183));
    0x000043b4 sw v0, 0x4c(sp)           |     *(var_4ch) = v0;
    0x000043b8 lw v0, 0x7204(v0)         |     v0 = *((v0 + 7297));
    0x000043bc addiu s2, s5, -1          |     s2 = s5 + -1;
                                         |     if (v0 != 0) {
    0x000043c0 bnez v0, 0x47d0           |         goto label_17;
                                         |     }
    0x000043c4 lw v0, -0x7ed0(gp)        |     v0 = *((gp - 8116));
    0x000043c8 sw v0, 0x44(sp)           |     *(var_44h) = v0;
                                         | label_10:
    0x000043cc lw v0, 0x24(sp)           |     v0 = *(var_24h);
    0x000043d0 mtlo v0                   |     __asm ("mtlo v0");
    0x000043d4 lw v0, 0x90(sp)           |     v0 = *(arg_90h);
    0x000043d8 madd v0, s0               |     __asm ("madd v0, s0");
    0x000043dc mflo v0                   |     __asm ("mflo v0");
    0x000043e0 sw v0, 0x48(sp)           |     *(var_48h) = v0;
                                         |     if (s1 != 0) {
    0x000043e4 bnez s1, 0x4784           |         goto label_18;
                                         |     }
                                         | label_9:
    0x000043e8 lw v0, -0x7fdc(gp)        |     v0 = *((gp - 8183));
    0x000043ec lw v0, 0x71e8(v0)         |     v0 = *((v0 + 7290));
    0x000043f0 lw v1, 0x30(sp)           |     v1 = *(var_30h);
                                         |     if (v0 != 0) {
    0x000043f4 beqz v0, 0x4410           |         
    0x000043f8 lw t9, -0x7fd8(gp)        |         t9 = *((gp - 8182));
    0x000043fc addiu t9, t9, 0x2f58      |         t9 += fcn.00002f58;
    0x00004400 bal 0x2f58                |         fcn_00002f58 ();
    0x00004404 nop                       |         
    0x00004408 lw gp, 0x18(sp)           |         gp = *(var_18h);
    0x0000440c lw v1, 0x30(sp)           |         v1 = *(var_30h);
                                         |     }
    0x00004410 lw v0, -0x7fdc(gp)        |     v0 = *((gp - 8183));
    0x00004414 lw s1, -0x7fdc(gp)        |     s1 = *((gp - 8183));
    0x00004418 lw s3, -0x7fdc(gp)        |     s3 = *((gp - 8183));
    0x0000441c lw a0, 0x71f4(v1)         |     a0 = *((v1 + 7293));
    0x00004420 sw v0, 0x50(sp)           |     *(var_50h) = v0;
    0x00004424 sw s2, 0x71d0(v0)         |     *((v0 + 7284)) = s2;
    0x00004428 sw s1, 0x54(sp)           |     *(var_54h) = s1;
    0x0000442c sw fp, 0x71d4(s3)         |     *((s3 + 7285)) = fp;
    0x00004430 lw v0, 0x71fc(s1)         |     v0 = *((s1 + 7295));
                                         |     if (a0 == 0) {
    0x00004434 bnez a0, 0x4474           |         
    0x00004438 lw v1, 0x4c(sp)           |         v1 = *(var_4ch);
    0x0000443c lw a0, 0x7204(v1)         |         a0 = *((v1 + 7297));
    0x00004440 or v0, v0, a0             |         v0 |= a0;
    0x00004444 addiu v0, zero, -1        |         v0 = -1;
                                         |         if (v0 == 0) {
    0x00004448 beqz v0, 0x4494           |             goto label_19;
                                         |         }
    0x0000444c lw v0, 0x44(sp)           |         v0 = *(var_44h);
    0x00004450 lw a0, -0x7fd8(gp)        |         a0 = *((gp - 8182));
    0x00004454 lw t9, -0x7f14(gp)        |         t9 = sym.imp.fwrite;
    0x00004458 lw a3, (v0)               |         a3 = *(v0);
    0x0000445c addiu a2, zero, 0x2a      |         a2 = 0x2a;
    0x00004460 addiu a1, zero, 1         |         a1 = 1;
    0x00004464 addiu a0, a0, 0x6428      |         a0 += str.Checking_for_bad_blocks__read_only_test_:_;
    0x00004468 jalr t9                   |         t9 ();
    0x0000446c lw gp, 0x18(sp)           |         gp = *(var_18h);
    0x00004470 lw v0, 0x71fc(s1)         |         v0 = *((s1 + 7295));
                                         |     }
    0x00004474 lw v0, 0x4c(sp)           |     v0 = *(var_4ch);
                                         |     if (v0 != 0) {
    0x00004478 beqz v0, 0x448c           |         
    0x0000447c lw v0, 0x7204(v0)         |         v0 = *((v0 + 7297));
    0x00004480 slti v0, v0, 2            |         v0 = (v0 < 2) ? 1 : 0;
    0x00004484 lw t9, -0x7fd8(gp)        |         t9 = *((gp - 8182));
                                         |         if (v0 != 0) {
    0x00004488 bnez v0, 0x4838           |             goto label_20;
                                         |         }
                                         |     }
    0x0000448c lw fp, 0x71d4(s3)         |     fp = *((s3 + 7285));
                                         | label_12:
    0x00004490 addiu v0, zero, -1        |     v0 = -1;
                                         | label_19:
    0x00004494 sw v0, 0x2c(sp)           |     *(var_2ch) = v0;
    0x00004498 lw v0, -0x7fdc(gp)        |     v0 = *((gp - 8183));
    0x0000449c lw s1, 0x90(sp)           |     s1 = *(arg_90h);
    0x000044a0 sw v0, 0x34(sp)           |     *(var_34h) = v0;
    0x000044a4 lw v0, -0x7fd8(gp)        |     v0 = *((gp - 8182));
    0x000044a8 move s4, zero             |     s4 = 0;
    0x000044ac addiu v0, v0, 0x26d8      |     v0 += 0x26d8;
    0x000044b0 sw v0, 0x38(sp)           |     *(var_38h) = v0;
    0x000044b4 lw v0, -0x7fd8(gp)        |     v0 = *((gp - 8182));
    0x000044b8 addiu v0, v0, 0x2ddc      |     v0 += 0x2ddc;
    0x000044bc sw v0, 0x3c(sp)           |     *(var_3ch) = v0;
                                         | label_4:
    0x000044c0 sltu v0, fp, s5           |     v0 = (fp < s5) ? 1 : 0;
                                         |     do {
    0x000044c4 lw v0, 0x54(sp)           |         v0 = *(var_54h);
                                         |         if (v0 == 0) {
    0x000044c8 beqz v0, 0x456c           |             goto label_21;
                                         |         }
                                         | label_0:
    0x000044cc lw v0, 0x34(sp)           |         v0 = *(var_34h);
    0x000044d0 lw v0, 0x7014(v0)         |         v0 = *((v0 + 7173));
    0x000044d4 sltu v0, s4, v0           |         v0 = (s4 < v0) ? 1 : 0;
    0x000044d8 lw v0, 0x20(sp)           |         v0 = *(var_20h);
                                         |         if (v0 == 0) {
    0x000044dc beqz v0, 0x4724           |             goto label_22;
                                         |         }
    0x000044e0 lw v1, 0x71b8(v0)         |         v1 = *((v0 + 7278));
    0x000044e4 addu v0, s1, fp           |         v0 = s1 + fp;
                                         |         if (v1 != 0) {
    0x000044e8 bnez v1, 0x4644           |             goto label_23;
                                         |         }
                                         | label_3:
    0x000044ec sltu v0, s5, v0           |         v0 = (s5 < v0) ? 1 : 0;
                                         | label_2:
    0x000044f0 subu s1, s5, fp           |         __asm ("subu s1, s5, fp");
                                         |         if (v0 != 0) {
    0x000044f4 bnel v0, zero, 0x44f8     |             
                                         |         }
    0x000044f8 lw a0, 0x80(sp)           |         a0 = *(arg_80h);
    0x000044fc lw a1, 0x24(sp)           |         a1 = *(var_24h);
    0x00004500 lw t9, 0x38(sp)           |         t9 = *(var_38h);
    0x00004504 sw fp, 0x10(sp)           |         *(var_10h) = fp;
    0x00004508 move a3, s0               |         a3 = s0;
    0x0000450c move a2, s1               |         a2 = s1;
    0x00004510 jalr t9                   |         t9 ();
    0x00004514 lw v1, 0x30(sp)           |         v1 = *(var_30h);
    0x00004518 lw gp, 0x18(sp)           |         gp = *(var_18h);
    0x0000451c move s7, v0               |         s7 = v0;
    0x00004520 lw a0, 0x71f4(v1)         |         a0 = *((v1 + 7293));
    0x00004524 lw s6, 0x71d4(s3)         |         s6 = *((s3 + 7285));
                                         |         if (a0 != 0) {
    0x00004528 bnez a0, 0x46a0           |             goto label_24;
                                         |         }
                                         | label_5:
    0x0000452c addiu v0, zero, 1         |         v0 = 1;
                                         |         if (s7 == 0) {
    0x00004530 bnez s7, 0x453c           |             
    0x00004534 addiu v0, s6, 1           |             v0 = s6 + 1;
                                         |             if (s1 == v0) {
    0x00004538 beq s1, v0, 0x4664        |                 goto label_25;
                                         |             }
                                         |         }
                                         | label_7:
    0x0000453c addu fp, s7, s6           |         fp = s7 + s6;
    0x00004540 sw fp, 0x71d4(s3)         |         *((s3 + 7285)) = fp;
                                         |         if (s1 != s7) {
    0x00004544 bne s1, s7, 0x4688        |             goto label_26;
                                         |         }
    0x00004548 lw v0, 0x2c(sp)           |         v0 = *(var_2ch);
    0x0000454c sltu v0, fp, s5           |         v0 = (fp < s5) ? 1 : 0;
    0x00004550 bne fp, v0, 0x44c4        |         
                                         |     } while (fp != v0);
    0x00004554 addiu v0, zero, -1        |     v0 = -1;
    0x00004558 sw v0, 0x2c(sp)           |     *(var_2ch) = v0;
    0x0000455c sltu v0, fp, s5           |     v0 = (fp < s5) ? 1 : 0;
    0x00004560 lw s1, 0x90(sp)           |     s1 = *(arg_90h);
                                         |     if (v0 != 0) {
    0x00004564 bnez v0, 0x44cc           |         goto label_0;
                                         |     }
    0x00004568 lw v0, 0x54(sp)           |     v0 = *(var_54h);
                                         | label_21:
    0x0000456c lw s0, 0x71fc(v0)         |     s0 = *((v0 + 7295));
    0x00004570 lw v0, 0x4c(sp)           |     v0 = *(var_4ch);
    0x00004574 lw v0, 0x7204(v0)         |     v0 = *((v0 + 7297));
    0x00004578 or s0, s0, v0             |     s0 |= v0;
                                         | label_11:
    0x0000457c lw v0, 0x50(sp)           |     v0 = *(var_50h);
    0x00004580 lw t9, -0x7efc(gp)        |     t9 = sym.imp.alarm;
    0x00004584 move a0, zero             |     a0 = 0;
    0x00004588 sw zero, 0x71d0(v0)       |     *((v0 + 7284)) = 0;
    0x0000458c jalr t9                   |     t9 ();
    0x00004590 lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     if (s0 != 0) {
    0x00004594 beqz s0, 0x45bc           |         
    0x00004598 lw v0, 0x44(sp)           |         v0 = *(var_44h);
    0x0000459c lw a0, -0x7fd8(gp)        |         a0 = *((gp - 8182));
    0x000045a0 lw t9, -0x7f14(gp)        |         t9 = sym.imp.fwrite;
    0x000045a4 lw a3, (v0)               |         a3 = *(v0);
    0x000045a8 addiu a2, zero, 0x36      |         a2 = 0x36;
    0x000045ac addiu a1, zero, 1         |         a1 = 1;
    0x000045b0 addiu a0, a0, 0x6364      |         a0 += str.done__________________________________________________n;
    0x000045b4 jalr t9                   |         t9 ();
    0x000045b8 lw gp, 0x18(sp)           |         gp = *(var_18h);
                                         |     }
                                         | label_8:
    0x000045bc lw v0, 0x44(sp)           |     v0 = *(var_44h);
    0x000045c0 lw t9, -0x7ec8(gp)        |     t9 = sym.imp.fflush;
    0x000045c4 lw a0, (v0)               |     a0 = *(v0);
    0x000045c8 jalr t9                   |     t9 ();
    0x000045cc lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x000045d0 lw t9, -0x7ed8(gp)        |     t9 = sym.imp.free;
    0x000045d4 lw a0, 0x24(sp)           |     a0 = *(var_24h);
    0x000045d8 jalr t9                   |     t9 ();
    0x000045dc lw v0, 0x28(sp)           |     v0 = *(var_28h);
    0x000045e0 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x000045e4 lw t9, -0x7f8c(gp)        |     t9 = sym.imp.ext2fs_badblocks_list_iterate_end;
    0x000045e8 lw a0, 0x71b4(v0)         |     a0 = *((v0 + 7277));
    0x000045ec jalr t9                   |     t9 ();
    0x000045f0 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x000045f4 lw t9, -0x7fd8(gp)        |     t9 = *((gp - 8182));
    0x000045f8 addiu t9, t9, 0x1fa8      |     t9 += fcn.00001fa8;
    0x000045fc bal 0x1fa8                |     fcn_00001fa8 ();
    0x00004600 nop                       |     
    0x00004604 lw ra, 0x7c(sp)           |     ra = *(var_7ch);
    0x00004608 move v0, s4               |     v0 = s4;
    0x0000460c lw fp, 0x78(sp)           |     fp = *(var_78h);
    0x00004610 lw s7, 0x74(sp)           |     s7 = *(var_74h);
    0x00004614 lw s6, 0x70(sp)           |     s6 = *(var_70h);
    0x00004618 lw s5, 0x6c(sp)           |     s5 = *(var_6ch);
    0x0000461c lw s4, 0x68(sp)           |     s4 = *(var_68h);
    0x00004620 lw s3, 0x64(sp)           |     s3 = *(var_64h);
    0x00004624 lw s2, 0x60(sp)           |     s2 = *(var_60h);
    0x00004628 lw s1, 0x5c(sp)           |     s1 = *(var_5ch);
    0x0000462c lw s0, 0x58(sp)           |     s0 = *(var_58h);
    0x00004630 addiu sp, sp, 0x80        |     
    0x00004634 jr ra                     |     return v1;
                                         | label_15:
    0x00004638 addiu a0, v0, 1           |     a0 = v0 + 1;
    0x0000463c mul a0, a0, s0            |     __asm ("mul a0, a0, s0");
    0x00004640 b 0x4390                  |     goto label_1;
                                         |     if (v1 == fp) {
                                         | label_23:
    0x00004644 beql v1, fp, 0x475c       |         goto label_27;
                                         |     }
    0x00004648 lw v0, 0x28(sp)           |     v0 = *(var_28h);
    0x0000464c sltu a0, v1, v0           |     a0 = (v1 < v0) ? 1 : 0;
                                         |     if (a0 == 0) {
    0x00004650 beql a0, zero, 0x44f0     |         goto label_2;
                                         |     }
    0x00004654 sltu v0, s5, v0           |     v0 = (s5 < v0) ? 1 : 0;
    0x00004658 subu s1, v1, fp           |     __asm ("subu s1, v1, fp");
    0x0000465c move v0, v1               |     v0 = v1;
    0x00004660 b 0x44ec                  |     goto label_3;
                                         | label_25:
    0x00004664 lw t9, 0x3c(sp)           |     t9 = *(var_3ch);
    0x00004668 move a0, s6               |     a0 = s6;
    0x0000466c move a1, zero             |     a1 = 0;
    0x00004670 sw v0, 0x71d4(s3)         |     *((s3 + 7285)) = v0;
    0x00004674 jalr t9                   |     t9 ();
    0x00004678 lw s6, 0x71d4(s3)         |     s6 = *((s3 + 7285));
    0x0000467c lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x00004680 addu s4, s4, v0           |     s4 += v0;
    0x00004684 move fp, s6               |     fp = s6;
                                         | label_26:
    0x00004688 lw v0, 0x2c(sp)           |     v0 = *(var_2ch);
    0x0000468c addiu v1, zero, -1        |     v1 = -1;
    0x00004690 lw v0, 0x90(sp)           |     v0 = *(arg_90h);
                                         |     if (v0 == v1) {
    0x00004694 beq v0, v1, 0x4714        |         goto label_28;
                                         |     }
    0x00004698 addiu s1, zero, 1         |     s1 = 1;
    0x0000469c b 0x44c0                  |     goto label_4;
                                         | label_24:
    0x000046a0 lw fp, 0x24(sp)           |     fp = *(var_24h);
                                         |     if (v0 <= 0) {
    0x000046a4 blez v0, 0x452c           |         goto label_5;
                                         |     }
    0x000046a8 sw s1, 0x40(sp)           |     *(var_40h) = s1;
    0x000046ac move s2, zero             |     s2 = 0;
    0x000046b0 move s1, fp               |     s1 = fp;
    0x000046b4 lw fp, 0x48(sp)           |     fp = *(var_48h);
    0x000046b8 b 0x46c8                  |     
                                         |     while (v0 == 0) {
    0x000046bc addiu s2, s2, 1           |         s2++;
    0x000046c0 addu s1, s1, s0           |         s1 += s0;
                                         |         if (s7 == s2) {
    0x000046c4 beq s7, s2, 0x470c        |             goto label_29;
                                         |         }
                                         | label_6:
    0x000046c8 lw t9, -0x7ef0(gp)        |         t9 = sym.imp.memcmp;
    0x000046cc move a2, s0               |         a2 = s0;
    0x000046d0 move a1, fp               |         a1 = fp;
    0x000046d4 move a0, s1               |         a0 = s1;
    0x000046d8 jalr t9                   |         t9 ();
    0x000046dc lw gp, 0x18(sp)           |         gp = *(var_18h);
    0x000046e0 beqz v0, 0x46bc           |         
                                         |     }
    0x000046e4 lw t9, 0x3c(sp)           |     t9 = *(var_3ch);
    0x000046e8 addu a0, s2, s6           |     a0 = s2 + s6;
    0x000046ec addiu a1, zero, 2         |     a1 = 2;
    0x000046f0 jalr t9                   |     t9 ();
    0x000046f4 addiu s2, s2, 1           |     s2++;
    0x000046f8 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x000046fc lw s6, 0x71d4(s3)         |     s6 = *((s3 + 7285));
    0x00004700 addu s4, s4, v0           |     s4 += v0;
    0x00004704 addu s1, s1, s0           |     s1 += s0;
                                         |     if (s7 != s2) {
    0x00004708 bne s7, s2, 0x46c8        |         goto label_6;
                                         |     }
                                         | label_29:
    0x0000470c lw s1, 0x40(sp)           |     s1 = *(var_40h);
    0x00004710 b 0x453c                  |     goto label_7;
                                         | label_28:
    0x00004714 addiu s1, zero, 1         |     s1 = 1;
    0x00004718 addu v0, v0, s6           |     v0 += s6;
    0x0000471c sw v0, 0x2c(sp)           |     *(var_2ch) = v0;
    0x00004720 b 0x44c0                  |     goto label_4;
                                         | label_22:
    0x00004724 lw s0, 0x54(sp)           |     s0 = *(var_54h);
    0x00004728 lw s1, 0x4c(sp)           |     s1 = *(var_4ch);
    0x0000472c lw v0, 0x71fc(s0)         |     v0 = *((s0 + 7295));
    0x00004730 lw v1, 0x7204(s1)         |     v1 = *((s1 + 7297));
    0x00004734 or v0, v0, v1             |     v0 |= v1;
    0x00004738 lw v0, 0x44(sp)           |     v0 = *(var_44h);
                                         |     if (v0 == 0) {
    0x0000473c bnez v0, 0x4808           |         
    0x00004740 lw v0, 0x50(sp)           |         v0 = *(var_50h);
    0x00004744 lw t9, -0x7efc(gp)        |         t9 = sym.imp.alarm;
    0x00004748 move a0, zero             |         a0 = 0;
    0x0000474c sw zero, 0x71d0(v0)       |         *((v0 + 7284)) = 0;
    0x00004750 jalr t9                   |         t9 ();
    0x00004754 lw gp, 0x18(sp)           |         gp = *(var_18h);
    0x00004758 b 0x45bc                  |         goto label_8;
                                         | label_27:
    0x0000475c lw t9, -0x7f9c(gp)        |         t9 = sym.imp.ext2fs_badblocks_list_iterate;
    0x00004760 lw a0, 0x71b4(v0)         |         a0 = *((v0 + 7277));
    0x00004764 lw v0, 0x20(sp)           |         v0 = *(var_20h);
    0x00004768 addiu a1, v0, 0x71b8      |         a1 = v0 + 0x71b8;
    0x0000476c jalr t9                   |         t9 ();
    0x00004770 lw fp, 0x71d4(s3)         |         fp = *((s3 + 7285));
    0x00004774 lw gp, 0x18(sp)           |         gp = *(var_18h);
    0x00004778 addiu fp, fp, 1           |         fp++;
    0x0000477c sw fp, 0x71d4(s3)         |         *((s3 + 7285)) = fp;
    0x00004780 b 0x44c0                  |         goto label_4;
                                         | label_18:
    0x00004784 lw v0, 0x44(sp)           |         v0 = *(var_44h);
    0x00004788 lw a0, -0x7fd8(gp)        |         a0 = *((gp - 8182));
    0x0000478c lw t9, -0x7f14(gp)        |         t9 = sym.imp.fwrite;
    0x00004790 lw a3, (v0)               |         a3 = *(v0);
    0x00004794 addiu a2, zero, 0x2a      |         a2 = 0x2a;
    0x00004798 addiu a1, zero, 1         |         a1 = 1;
    0x0000479c addiu a0, a0, 0x63fc      |         a0 += str.Checking_for_bad_blocks_in_read_only_mode_n;
    0x000047a0 jalr t9                   |         t9 ();
    0x000047a4 lw gp, 0x18(sp)           |         gp = *(var_18h);
    0x000047a8 lw a0, 0x48(sp)           |         a0 = *(var_48h);
    0x000047ac move a2, s0               |         a2 = s0;
    0x000047b0 lw v0, -0x7fdc(gp)        |         v0 = *((gp - 8183));
    0x000047b4 lw t9, -0x7fd8(gp)        |         t9 = *((gp - 8182));
    0x000047b8 lw v0, 0x71ec(v0)         |         v0 = *((v0 + 7291));
    0x000047bc addiu t9, t9, 0x2b58      |         t9 += fcn.00002b58;
    0x000047c0 lw a1, (v0)               |         a1 = *(v0);
    0x000047c4 bal 0x2b58                |         fcn_00002b58 ();
    0x000047c8 lw gp, 0x18(sp)           |         gp = *(var_18h);
    0x000047cc b 0x43e8                  |         goto label_9;
                                         | label_17:
    0x000047d0 lw v0, -0x7ed0(gp)        |         v0 = *((gp - 8116));
    0x000047d4 lw a2, -0x7fd8(gp)        |         a2 = *((gp - 8182));
    0x000047d8 lw t9, -0x7f7c(gp)        |         t9 = sym.imp.__fprintf_chk
    0x000047dc lw a0, (v0)               |         a0 = *(v0);
    0x000047e0 sw v0, 0x44(sp)           |         *(var_44h) = v0;
    0x000047e4 sw s2, 0x10(sp)           |         *(var_10h) = s2;
    0x000047e8 move a3, fp               |         a3 = fp;
    0x000047ec addiu a2, a2, 0x63e0      |         a2 += str.Checking_blocks__lu_to__lu_n;
    0x000047f0 addiu a1, zero, 1         |         a1 = 1;
    0x000047f4 jalr t9                   |         t9 ();
    0x000047f8 lw v0, 0x30(sp)           |         v0 = *(var_30h);
    0x000047fc lw gp, 0x18(sp)           |         gp = *(var_18h);
    0x00004800 lw s1, 0x71f4(v0)         |         s1 = *((v0 + 7293));
    0x00004804 b 0x43cc                  |         goto label_10;
                                         |     }
    0x00004808 lw a0, -0x7fd8(gp)        |     a0 = *((gp - 8182));
    0x0000480c lw t9, -0x7f14(gp)        |     t9 = sym.imp.fwrite;
    0x00004810 lw a3, (v0)               |     a3 = *(v0);
    0x00004814 addiu a2, zero, 0x23      |     a2 = 0x23;
    0x00004818 addiu a1, zero, 1         |     a1 = 1;
    0x0000481c addiu a0, a0, 0x631c      |     a0 += str.Too_many_bad_blocks__aborting_test_n;
    0x00004820 jalr t9                   |     t9 ();
    0x00004824 lw s0, 0x71fc(s0)         |     s0 = *((s0 + 7295));
    0x00004828 lw v0, 0x7204(s1)         |     v0 = *((s1 + 7297));
    0x0000482c lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x00004830 or s0, s0, v0             |     s0 |= v0;
    0x00004834 b 0x457c                  |     goto label_11;
                                         | label_20:
    0x00004838 addiu t9, t9, 0x2670      |     t9 += fcn.00002670;
    0x0000483c addiu a0, zero, 0xe       |     a0 = 0xe;
    0x00004840 bal 0x2670                |     fcn_00002670 ();
    0x00004844 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x00004848 lw fp, 0x71d4(s3)         |     fp = *((s3 + 7285));
    0x0000484c b 0x4490                  |     goto label_12;
                                         | label_16:
    0x00004850 lw v0, -0x7fdc(gp)        |     v0 = *((gp - 8183));
    0x00004854 lw a3, -0x7fd8(gp)        |     a3 = *((gp - 8182));
    0x00004858 lw a2, -0x7fd8(gp)        |     a2 = *((gp - 8182));
    0x0000485c lw a0, 0x7020(v0)         |     a0 = *((v0 + 7176));
    0x00004860 lw t9, -0x7f08(gp)        |     t9 = sym.imp.com_err;
    0x00004864 addiu a3, a3, 0x6250      |     a3 += str.while_allocating_buffers;
    0x00004868 addiu a2, a2, 0x6158      |     a2 += 0x6158;
    0x0000486c addiu a1, zero, 0xc       |     a1 = 0xc;
                                         |     do {
    0x00004870 jalr t9                   |         t9 ();
    0x00004874 nop                       |         
    0x00004878 lw gp, 0x18(sp)           |         gp = *(var_18h);
    0x0000487c lw t9, -0x7f28(gp)        |         t9 = sym.imp.exit;
    0x00004880 addiu a0, zero, 1         |         a0 = 1;
    0x00004884 jalr t9                   |         t9 ();
                                         | label_13:
    0x00004888 lw v1, -0x7fdc(gp)        |         v1 = *((gp - 8183));
    0x0000488c lw a3, -0x7fd8(gp)        |         a3 = *((gp - 8182));
    0x00004890 lw a2, -0x7fd8(gp)        |         a2 = *((gp - 8182));
    0x00004894 lw a0, 0x7020(v1)         |         a0 = *((v1 + 7176));
    0x00004898 lw t9, -0x7f08(gp)        |         t9 = sym.imp.com_err;
    0x0000489c addiu a3, a3, 0x6224      |         a3 += str.while_beginning_bad_block_list_iteration;
    0x000048a0 addiu a2, a2, 0x6158      |         a2 += 0x6158;
    0x000048a4 move a1, v0               |         a1 = v0;
    0x000048a8 b 0x4870                  |         
                                         |     } while (1);
                                         | }
    ; assembly                           | /* r2dec pseudo code output */
                                         | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/badblocks @ 0x10d0 */
                                         | #include <stdint.h>
                                         |  
    ; (fcn) main ()                      | int32_t main () {
                                         |     /* [13] -r-x section size 19264 named .text */
    0x000010d0 lui gp, 2                 |     
    0x000010d4 addiu gp, gp, -0x20a0     |     
    0x000010d8 addu gp, gp, t9           |     gp += t9;
    0x000010dc lw v0, -0x7ee0(gp)        |     v0 = *((gp - 8120));
    0x000010e0 addiu sp, sp, -0xa0       |     
    0x000010e4 lw v1, -0x7f5c(gp)        |     v1 = *((gp - 8151));
    0x000010e8 sw s2, 0x80(sp)           |     *(var_80h) = s2;
    0x000010ec sw v0, 0x5c(sp)           |     *(var_5ch) = v0;
    0x000010f0 lw s2, -0x7ed0(gp)        |     s2 = *((gp - 8116));
    0x000010f4 lw v0, (v0)               |     v0 = *(v0);
    0x000010f8 lw t9, -0x7eac(gp)        |     t9 = sym.imp.setbuf;
    0x000010fc sw s0, 0x78(sp)           |     *(var_78h) = s0;
    0x00001100 move s0, a0               |     s0 = a0;
    0x00001104 lw a0, (v1)               |     a0 = *(v1);
    0x00001108 sw ra, 0x9c(sp)           |     *(var_9ch) = ra;
    0x0000110c sw v1, 0x54(sp)           |     *(var_54h) = v1;
    0x00001110 sw gp, 0x20(sp)           |     *(var_20h) = gp;
    0x00001114 sw v0, 0x74(sp)           |     *(var_74h) = v0;
    0x00001118 sw s1, 0x7c(sp)           |     *(var_7ch) = s1;
    0x0000111c sw fp, 0x98(sp)           |     *(var_98h) = fp;
    0x00001120 sw s7, 0x94(sp)           |     *(var_94h) = s7;
    0x00001124 sw s6, 0x90(sp)           |     *(var_90h) = s6;
    0x00001128 sw s5, 0x8c(sp)           |     *(var_8ch) = s5;
    0x0000112c sw s4, 0x88(sp)           |     *(var_88h) = s4;
    0x00001130 sw s3, 0x84(sp)           |     *(var_84h) = s3;
    0x00001134 sw s2, 0x4c(sp)           |     *(var_4ch) = s2;
    0x00001138 move s1, a1               |     s1 = a1;
    0x0000113c move a1, zero             |     a1 = 0;
    0x00001140 jalr t9                   |     t9 ();
    0x00001144 lw gp, 0x20(sp)           |     gp = *(var_20h);
    0x00001148 lw a0, (s2)               |     a0 = *(s2);
    0x0000114c lw t9, -0x7eac(gp)        |     t9 = sym.imp.setbuf;
    0x00001150 move a1, zero             |     a1 = 0;
    0x00001154 jalr t9                   |     t9 ();
    0x00001158 lw gp, 0x20(sp)           |     gp = *(var_20h);
    0x0000115c lw t9, -0x7ee4(gp)        |     t9 = sym.imp.time;
    0x00001160 move a0, zero             |     a0 = 0;
    0x00001164 jalr t9                   |     t9 ();
    0x00001168 lw gp, 0x20(sp)           |     gp = *(var_20h);
    0x0000116c lw t9, -0x7ec4(gp)        |     t9 = sym.imp.srandom;
    0x00001170 move a0, v0               |     a0 = v0;
    0x00001174 jalr t9                   |     t9 ();
    0x00001178 lw gp, 0x20(sp)           |     gp = *(var_20h);
    0x0000117c lw t9, -0x7f04(gp)        |     t9 = sym.imp.sysconf;
    0x00001180 addiu a0, zero, 0x1e      |     a0 = 0x1e;
    0x00001184 jalr t9                   |     t9 ();
    0x00001188 lw gp, 0x20(sp)           |     gp = *(var_20h);
                                         |     if (v0 > 0) {
    0x0000118c blez v0, 0x1198           |         
    0x00001190 lw v1, -0x7fdc(gp)        |         v1 = *((gp - 8183));
    0x00001194 sw v0, 0x7010(v1)         |         *((v1 + 7172)) = v0;
                                         |     }
    0x00001198 lw v0, -0x7fdc(gp)        |     v0 = *((gp - 8183));
                                         |     if (s0 != 0) {
    0x0000119c beqz s0, 0x11b4           |         
    0x000011a0 lw v0, (s1)               |         v0 = *(s1);
    0x000011a4 lw v1, -0x7fdc(gp)        |         v1 = *((gp - 8183));
                                         |         if (v0 != 0) {
    0x000011a8 beqz v0, 0x11b0           |             
    0x000011ac sw v0, 0x7020(v1)         |             *((v1 + 7176)) = v0;
                                         |         }
    0x000011b0 lw v0, -0x7fdc(gp)        |         v0 = *((gp - 8183));
                                         |     }
    0x000011b4 lw s4, -0x7fd8(gp)        |     s4 = *((gp - 8182));
    0x000011b8 sw v0, 0x50(sp)           |     *(var_50h) = v0;
    0x000011bc lw v0, -0x7fd8(gp)        |     v0 = *((gp - 8182));
    0x000011c0 lw s2, -0x7fd8(gp)        |     s2 = *((gp - 8182));
    0x000011c4 addiu v0, v0, 0x48ac      |     v0 += fcn.000048ac;
    0x000011c8 sw v0, 0x2c(sp)           |     *(var_2ch) = v0;
    0x000011cc lw v0, -0x7fdc(gp)        |     v0 = *((gp - 8183));
    0x000011d0 lw s3, -0x7fd8(gp)        |     s3 = *((gp - 8182));
    0x000011d4 addiu s4, s4, 0x42b0      |     s4 += fcn.000042b0;
    0x000011d8 move s6, zero             |     s6 = 0;
    0x000011dc addiu s7, zero, 0x40      |     s7 = 0x40;
    0x000011e0 addiu s5, zero, 0x400     |     s5 = 0x400;
    0x000011e4 sw zero, 0x40(sp)         |     *(var_40h) = 0;
    0x000011e8 sw zero, 0x3c(sp)         |     *(var_3ch) = 0;
    0x000011ec sw zero, 0x44(sp)         |     *(var_44h) = 0;
    0x000011f0 sw v0, 0x38(sp)           |     *(var_38h) = v0;
    0x000011f4 lw t9, -0x7f48(gp)        |     t9 = sym.imp.getopt;
    0x000011f8 addiu a2, s2, 0x6534      |     a2 = s2 + str.b:d:e:fi:o:svwnc:p:h:t:BX;
    0x000011fc move a1, s1               |     a1 = s1;
    0x00001200 move a0, s0               |     a0 = s0;
    0x00001204 jalr t9                   |     t9 ();
    0x00001208 addiu v1, zero, -1        |     v1 = -1;
    0x0000120c lw gp, 0x20(sp)           |     gp = *(var_20h);
                                         |     if (v0 != v1) {
    0x00001210 beq v0, v1, 0x14bc        |         
    0x00001214 addiu v0, v0, -0x42       |         v0 += -0x42;
    0x00001218 sltiu v1, v0, 0x36        |         v1 = (v0 < 0x36) ? 1 : 0;
    0x0000121c sll v0, v0, 2             |         v0 <<= 2;
                                         |         if (v1 == 0) {
    0x00001220 beqz v1, 0x1b64           |             goto label_14;
                                         |         }
    0x00001224 addiu v1, s3, 0x6890      |         v1 = s3 + 0x6890;
    0x00001228 lwx v0, v0(v1)            |         __asm ("lwx v0, v0(v1)");
    0x0000122c addu v0, v0, gp           |         v0 += gp;
    0x00001230 jr v0                     |         v0 ();
    0x00001234 nop                       |         
                                         |     }
    0x000014bc lw s2, -0x7fdc(gp)        |     s2 = *((gp - 8183));
    0x000014c0 lw v1, 0x7200(s2)         |     v1 = *((s2 + 7296));
    0x000014c4 lw fp, -0x7ef8(gp)        |     fp = *((gp - 8126));
                                         |     if (v1 == 0) {
    0x000014c8 bnez v1, 0x14f8           |         
    0x000014cc lw v1, -0x7fdc(gp)        |         v1 = *((gp - 8183));
    0x000014d0 lw v1, 0x71f4(v1)         |         v1 = *((v1 + 7293));
    0x000014d4 slti v1, v1, 2            |         v1 = (v1 < 2) ? 1 : 0;
    0x000014d8 lw v1, -0x7fdc(gp)        |         v1 = *((gp - 8183));
                                         |         if (v1 == 0) {
    0x000014dc beqz v1, 0x1c34           |             goto label_15;
                                         |         }
    0x000014e0 lw v1, 0x71ec(v1)         |         v1 = *((v1 + 7291));
                                         |         if (v1 == 0) {
    0x000014e4 beql v1, zero, 0x14fc     |             goto label_16;
                                         |         }
    0x000014e8 lw s3, (fp)               |         s3 = *(fp);
    0x000014ec lw v1, (v1)               |         v1 = *(v1);
    0x000014f0 lw v0, -0x7fdc(gp)        |         v0 = *((gp - 8183));
                                         |         if (v1 == v0) {
    0x000014f4 beq v1, v0, 0x1d7c        |             goto label_17;
                                         |         }
                                         |     }
    0x000014f8 lw s3, (fp)               |     s3 = *(fp);
                                         | label_16:
    0x000014fc slt v0, s3, s0            |     v0 = (s3 < s0) ? 1 : 0;
    0x00001500 addiu v0, s3, 1           |     v0 = s3 + 1;
                                         |     if (v0 == 0) {
    0x00001504 beqz v0, 0x1b64           |         goto label_14;
                                         |     }
    0x00001508 sll s3, s3, 2             |     s3 <<= 2;
    0x0000150c slt a0, v0, s0            |     a0 = (v0 < s0) ? 1 : 0;
    0x00001510 sw v0, (fp)               |     *(fp) = v0;
    0x00001514 lwx s3, s3(s1)            |     __asm ("lwx s3, s3(s1)");
                                         |     if (a0 == 0) {
    0x00001518 beqz a0, 0x1860           |         goto label_18;
                                         |     }
    0x0000151c lw t9, -0x7f58(gp)        |     t9 = sym.imp.__errno_location;
    0x00001520 jalr t9                   |     t9 ();
    0x00001524 nop                       |     
    0x00001528 lw gp, 0x20(sp)           |     gp = *(var_20h);
    0x0000152c sw zero, (v0)             |     *(v0) = 0;
    0x00001530 lw a0, (fp)               |     a0 = *(fp);
    0x00001534 lw v0, -0x7fd8(gp)        |     v0 = *((gp - 8182));
    0x00001538 sll a0, a0, 2             |     a0 <<= 2;
    0x0000153c lw a1, -0x7fd8(gp)        |     a1 = *((gp - 8182));
    0x00001540 lwx a0, a0(s1)            |     __asm ("lwx a0, a0(s1)");
    0x00001544 addiu t9, v0, 0x48ac      |     t9 = v0 + fcn.000048ac;
    0x00001548 addiu a1, a1, 0x6634      |     a1 += str.last_block;
    0x0000154c sw t9, 0x2c(sp)           |     *(var_2ch) = t9;
    0x00001550 bal 0x48ac                |     fcn_000048ac ();
    0x00001554 lw a0, (fp)               |     a0 = *(fp);
    0x00001558 addiu a1, v0, 1           |     a1 = v0 + 1;
    0x0000155c addiu a0, a0, 1           |     a0++;
    0x00001560 sltu v0, a1, v0           |     v0 = (a1 < v0) ? 1 : 0;
    0x00001564 slt s0, a0, s0            |     s0 = (a0 < s0) ? 1 : 0;
    0x00001568 lw gp, 0x20(sp)           |     gp = *(var_20h);
    0x0000156c sw a1, 0x60(sp)           |     *(var_60h) = a1;
    0x00001570 sw v0, 0x64(sp)           |     *(var_64h) = v0;
    0x00001574 sw a0, (fp)               |     *(fp) = a0;
                                         |     if (s0 != 0) {
    0x00001578 bnez s0, 0x19e8           |         goto label_19;
                                         |     }
    0x0000157c move s1, zero             |     s1 = 0;
                                         | label_2:
    0x00001580 lw v1, -0x7fdc(gp)        |     v1 = *((gp - 8183));
                                         |     if (v0 != 0) {
    0x00001584 bnez v0, 0x1cb4           |         goto label_20;
                                         |     }
    0x00001588 lw v0, 0x7200(s2)         |     v0 = *((s2 + 7296));
                                         | label_3:
    0x0000158c lw t9, -0x7f10(gp)        |     t9 = sym.imp.ext2fs_check_if_mounted;
                                         |     if (v0 != 0) {
    0x00001590 bnez v0, 0x1950           |         goto label_21;
                                         |     }
                                         | label_7:
    0x00001594 lw a0, -0x7fdc(gp)        |     a0 = *((gp - 8183));
                                         | label_5:
    0x00001598 lw t9, -0x7ef4(gp)        |     t9 = sym.imp.gettimeofday;
                                         | label_6:
    0x0000159c move a1, zero             |     a1 = 0;
    0x000015a0 addiu a0, a0, 0x71d8      |     a0 += 0x71d8;
    0x000015a4 jalr t9                   |     t9 ();
    0x000015a8 lw gp, 0x20(sp)           |     gp = *(var_20h);
    0x000015ac lw s2, 0x7200(s2)         |     s2 = *((s2 + 7296));
    0x000015b0 addiu v1, zero, 0x2002    |     v1 = 0x2002;
    0x000015b4 addiu v0, zero, 0x2000    |     v0 = 0x2000;
                                         |     if (s2 == 0) {
    0x000015b8 movn v0, v1, s2           |         v0 = v1;
                                         |     }
    0x000015bc lw t9, -0x7ee8(gp)        |     t9 = sym.imp.__open_2;
    0x000015c0 move a1, v0               |     a1 = v0;
    0x000015c4 move a0, s3               |     a0 = s3;
    0x000015c8 move s2, v0               |     s2 = v0;
    0x000015cc addiu fp, zero, -1        |     fp = -1;
    0x000015d0 jalr t9                   |     t9 ();
    0x000015d4 move s0, v0               |     s0 = v0;
    0x000015d8 lw gp, 0x20(sp)           |     gp = *(var_20h);
                                         |     if (v0 == fp) {
    0x000015dc beq v0, fp, 0x1ce4        |         goto label_22;
                                         |     }
    0x000015e0 lw a0, 0x44(sp)           |     a0 = *(var_44h);
    0x000015e4 lw t9, -0x7ee8(gp)        |     t9 = sym.imp.__open_2;
                                         |     if (a0 == 0) {
    0x000015e8 beqz a0, 0x1a24           |         goto label_23;
                                         |     }
    0x000015ec move a1, s2               |     a1 = s2;
    0x000015f0 jalr t9                   |     t9 ();
    0x000015f4 lw gp, 0x20(sp)           |     gp = *(var_20h);
    0x000015f8 lw v1, -0x7fdc(gp)        |     v1 = *((gp - 8183));
    0x000015fc sw v0, 0x71ac(v1)         |     *((v1 + 7275)) = v0;
                                         |     if (v0 == fp) {
    0x00001600 beq v0, fp, 0x1d14        |         goto label_24;
                                         |     }
                                         | label_9:
    0x00001604 lw a0, 0x3c(sp)           |     a0 = *(var_3ch);
    0x00001608 lw t9, -0x7eb4(gp)        |     t9 = sym.imp.strcmp;
                                         |     if (a0 == 0) {
    0x0000160c beqz a0, 0x1a30           |         goto label_25;
                                         |     }
    0x00001610 lw a1, -0x7fd8(gp)        |     a1 = *((gp - 8182));
    0x00001614 addiu a1, a1, 0x67c0      |     a1 += 0x67c0;
    0x00001618 jalr t9                   |     t9 ();
    0x0000161c lw gp, 0x20(sp)           |     gp = *(var_20h);
                                         |     if (v0 != 0) {
    0x00001620 bnez v0, 0x1a38           |         goto label_26;
                                         |     }
    0x00001624 lw v0, -0x7f50(gp)        |     v0 = *((gp - 8148));
    0x00001628 lw s2, (v0)               |     s2 = *(v0);
                                         | label_10:
    0x0000162c lw a0, 0x40(sp)           |     a0 = *(var_40h);
    0x00001630 lw a1, -0x7fd8(gp)        |     a1 = *((gp - 8182));
                                         |     if (a0 != 0) {
    0x00001634 beqz a0, 0x164c           |         
    0x00001638 lw t9, -0x7eb4(gp)        |         t9 = sym.imp.strcmp;
    0x0000163c addiu a1, a1, 0x67c0      |         a1 += 0x67c0;
    0x00001640 jalr t9                   |         t9 ();
    0x00001644 lw gp, 0x20(sp)           |         gp = *(var_20h);
                                         |         if (v0 != 0) {
    0x00001648 bnez v0, 0x1a88           |             goto label_27;
                                         |         }
                                         |     }
    0x0000164c lw v0, 0x54(sp)           |     v0 = *(var_54h);
    0x00001650 lw v1, -0x7fdc(gp)        |     v1 = *((gp - 8183));
    0x00001654 lw v0, (v0)               |     v0 = *(v0);
    0x00001658 sw v1, 0x38(sp)           |     *(var_38h) = v1;
    0x0000165c sw v0, 0x71bc(v1)         |     *((v1 + 7279)) = v0;
                                         | label_11:
    0x00001660 lw v0, -0x7fdc(gp)        |     v0 = *((gp - 8183));
    0x00001664 lw t9, -0x7f2c(gp)        |     t9 = sym.imp.ext2fs_badblocks_list_create;
    0x00001668 sw v0, 0x2c(sp)           |     *(var_2ch) = v0;
    0x0000166c move a1, zero             |     a1 = 0;
    0x00001670 addiu a0, v0, 0x71c0      |     a0 = v0 + 0x71c0;
    0x00001674 jalr t9                   |     t9 ();
    0x00001678 lw gp, 0x20(sp)           |     gp = *(var_20h);
                                         |     if (v0 != 0) {
    0x0000167c bnez v0, 0x1ba4           |         goto label_28;
                                         |     }
    0x00001680 lw v0, -0x7fdc(gp)        |     v0 = *((gp - 8183));
                                         |     if (s2 != 0) {
    0x00001684 beqz s2, 0x16d4           |         
    0x00001688 lw fp, -0x7fd8(gp)        |         fp = *((gp - 8182));
    0x0000168c sw v0, 0x30(sp)           |         *(var_30h) = v0;
    0x00001690 addiu s3, sp, 0x68        |         s3 = sp + 0x68;
    0x00001694 addiu fp, fp, 0x67f4      |         fp += str._llu_n;
                                         | label_4:
    0x00001698 lw t9, -0x7f38(gp)        |         t9 = sym.imp.fscanf;
    0x0000169c move a2, s3               |         a2 = s3;
    0x000016a0 move a1, fp               |         a1 = fp;
    0x000016a4 move a0, s2               |         a0 = s2;
    0x000016a8 jalr t9                   |         t9 ();
    0x000016ac addiu v1, zero, -1        |         v1 = -1;
    0x000016b0 lw gp, 0x20(sp)           |         gp = *(var_20h);
                                         |         if (v0 != v1) {
    0x000016b4 bne v0, v1, 0x18f4        |             goto label_29;
                                         |         }
    0x000016b8 lw v0, -0x7f50(gp)        |         v0 = *((gp - 8148));
    0x000016bc lw v0, (v0)               |         v0 = *(v0);
    0x000016c0 lw t9, -0x7f70(gp)        |         t9 = sym.imp.fclose;
                                         |         if (v0 == s2) {
    0x000016c4 beq v0, s2, 0x16d4        |             goto label_30;
                                         |         }
    0x000016c8 move a0, s2               |         a0 = s2;
    0x000016cc jalr t9                   |         t9 ();
    0x000016d0 lw gp, 0x20(sp)           |         gp = *(var_20h);
                                         |     }
                                         | label_30:
    0x000016d4 lw v0, -0x7fdc(gp)        |     v0 = *((gp - 8183));
    0x000016d8 lw fp, -0x7fdc(gp)        |     fp = *((gp - 8183));
    0x000016dc sw v0, 0x2c(sp)           |     *(var_2ch) = v0;
    0x000016e0 lw v0, -0x7fdc(gp)        |     v0 = *((gp - 8183));
    0x000016e4 lw s3, -0x7fdc(gp)        |     s3 = *((gp - 8183));
    0x000016e8 sw v0, 0x30(sp)           |     *(var_30h) = v0;
    0x000016ec lw v0, -0x7fd8(gp)        |     v0 = *((gp - 8182));
    0x000016f0 move s2, zero             |     s2 = 0;
    0x000016f4 addiu v0, v0, 0x6840      |     v0 += str.Pass_completed___u_bad_blocks_found.___d__d__d_errors__n;
    0x000016f8 sw v0, 0x34(sp)           |     *(var_34h) = v0;
    0x000016fc b 0x1718                  |     
                                         |     while (v0 == 0) {
    0x00001700 lw v1, 0x7204(fp)         |         v1 = *(arg_7204h);
    0x00001704 addiu s2, s2, 1           |         s2++;
                                         |         if (v1 != 0) {
    0x00001708 bnez v1, 0x1748           |             goto label_31;
                                         |         }
                                         | label_0:
    0x0000170c slt v0, s2, s6            |         v0 = (s2 < s6) ? 1 : 0;
    0x00001710 lw t9, -0x7f98(gp)        |         t9 = sym.imp.close;
                                         |         if (v0 == 0) {
    0x00001714 beqz v0, 0x1794           |             goto label_32;
                                         |         }
                                         | label_1:
    0x00001718 lw a1, 0x60(sp)           |         a1 = *(var_60h);
    0x0000171c sw s7, 0x10(sp)           |         *(var_10h) = s7;
    0x00001720 move a3, s1               |         a3 = s1;
    0x00001724 move a2, s5               |         a2 = s5;
    0x00001728 move t9, s4               |         t9 = s4;
    0x0000172c move a0, s0               |         a0 = s0;
    0x00001730 jalr t9                   |         t9 ();
    0x00001734 lw gp, 0x20(sp)           |         gp = *(var_20h);
    0x00001738 beqz v0, 0x1700           |         
                                         |     }
    0x0000173c lw v1, 0x7204(fp)         |     v1 = *(arg_7204h);
    0x00001740 move s2, zero             |     s2 = 0;
                                         |     if (v1 == 0) {
    0x00001744 beqz v1, 0x170c           |         goto label_0;
                                         |     }
                                         | label_31:
    0x00001748 lw v1, 0x2c(sp)           |     v1 = *(var_2ch);
    0x0000174c lw a0, 0x4c(sp)           |     a0 = *(var_4ch);
    0x00001750 lw a2, 0x71c4(s3)         |     a2 = *((s3 + 7281));
    0x00001754 lw a1, 0x71c8(v1)         |     a1 = *((v1 + 7282));
    0x00001758 lw v1, 0x30(sp)           |     v1 = *(var_30h);
    0x0000175c lw a0, (a0)               |     a0 = *(a0);
    0x00001760 lw t9, -0x7f7c(gp)        |     t9 = sym.imp.__fprintf_chk
    0x00001764 lw v1, 0x71cc(v1)         |     v1 = *((v1 + 7283));
    0x00001768 sw a2, 0x18(sp)           |     *(var_18h) = a2;
    0x0000176c lw a2, 0x34(sp)           |     a2 = *(var_34h);
    0x00001770 sw a1, 0x14(sp)           |     *(var_14h) = a1;
    0x00001774 sw v1, 0x10(sp)           |     *(var_10h) = v1;
    0x00001778 move a3, v0               |     a3 = v0;
    0x0000177c addiu a1, zero, 1         |     a1 = 1;
    0x00001780 jalr t9                   |     t9 ();
    0x00001784 slt v0, s2, s6            |     v0 = (s2 < s6) ? 1 : 0;
    0x00001788 lw gp, 0x20(sp)           |     gp = *(var_20h);
                                         |     if (v0 != 0) {
    0x0000178c bnez v0, 0x1718           |         goto label_1;
                                         |     }
    0x00001790 lw t9, -0x7f98(gp)        |     t9 = sym.imp.close;
                                         | label_32:
    0x00001794 move a0, s0               |     a0 = s0;
    0x00001798 jalr t9                   |     t9 ();
    0x0000179c lw v0, 0x38(sp)           |     v0 = *(var_38h);
    0x000017a0 lw a0, 0x71bc(v0)         |     a0 = *((v0 + 7279));
    0x000017a4 lw v0, 0x54(sp)           |     v0 = *(var_54h);
    0x000017a8 lw v0, (v0)               |     v0 = *(v0);
    0x000017ac lw gp, 0x20(sp)           |     gp = *(var_20h);
                                         |     if (a0 != v0) {
    0x000017b0 beq a0, v0, 0x17c4        |         
    0x000017b4 lw t9, -0x7f70(gp)        |         t9 = sym.imp.fclose;
    0x000017b8 jalr t9                   |         t9 ();
    0x000017bc nop                       |         
    0x000017c0 lw gp, 0x20(sp)           |         gp = *(var_20h);
                                         |     }
    0x000017c4 lw v0, -0x7fdc(gp)        |     v0 = *((gp - 8183));
    0x000017c8 lw t9, -0x7ed8(gp)        |     t9 = sym.imp.free;
    0x000017cc lw a0, 0x71ec(v0)         |     a0 = *((v0 + 7291));
    0x000017d0 jalr t9                   |     t9 ();
    0x000017d4 lw v0, 0x5c(sp)           |     v0 = *(var_5ch);
    0x000017d8 lw a0, 0x74(sp)           |     a0 = *(var_74h);
    0x000017dc lw gp, 0x20(sp)           |     gp = *(var_20h);
    0x000017e0 lw v1, (v0)               |     v1 = *(v0);
    0x000017e4 move v0, zero             |     v0 = 0;
                                         |     if (a0 != v1) {
    0x000017e8 bne a0, v1, 0x1c4c        |         goto label_33;
                                         |     }
    0x000017ec lw ra, 0x9c(sp)           |     ra = *(var_9ch);
    0x000017f0 lw fp, 0x98(sp)           |     fp = *(var_98h);
    0x000017f4 lw s7, 0x94(sp)           |     s7 = *(var_94h);
    0x000017f8 lw s6, 0x90(sp)           |     s6 = *(var_90h);
    0x000017fc lw s5, 0x8c(sp)           |     s5 = *(var_8ch);
    0x00001800 lw s4, 0x88(sp)           |     s4 = *(var_88h);
    0x00001804 lw s3, 0x84(sp)           |     s3 = *(var_84h);
    0x00001808 lw s2, 0x80(sp)           |     s2 = *(var_80h);
    0x0000180c lw s1, 0x7c(sp)           |     s1 = *(var_7ch);
    0x00001810 lw s0, 0x78(sp)           |     s0 = *(var_78h);
    0x00001814 addiu sp, sp, 0xa0        |     
    0x00001818 jr ra                     |     return v0;
                                         | label_18:
    0x00001860 lw t9, -0x7f94(gp)        |     t9 = sym.imp.ext2fs_get_device_size2;
    0x00001864 move a0, s3               |     a0 = s3;
    0x00001868 addiu a2, sp, 0x60        |     a2 = sp + 0x60;
    0x0000186c move a1, s5               |     a1 = s5;
    0x00001870 jalr t9                   |     t9 ();
    0x00001874 lui a0, 0x7f2b            |     a0 = 0x7f2bb750;
    0x00001878 ori a0, a0, 0xb750        |     
    0x0000187c lw gp, 0x20(sp)           |     gp = *(var_20h);
                                         |     if (v0 == a0) {
    0x00001880 beq v0, a0, 0x1bdc        |         goto label_34;
                                         |     }
    0x00001884 lw v1, -0x7fdc(gp)        |     v1 = *((gp - 8183));
                                         |     if (v0 != 0) {
    0x00001888 bnez v0, 0x1c58           |         goto label_35;
                                         |     }
    0x0000188c lw v0, (fp)               |     v0 = *(fp);
    0x00001890 slt s0, v0, s0            |     s0 = (v0 < s0) ? 1 : 0;
    0x00001894 lw v0, -0x7fd8(gp)        |     v0 = *((gp - 8182));
                                         |     if (s0 != 0) {
    0x00001898 bnez s0, 0x19e0           |         goto label_36;
                                         |     }
    0x0000189c move s1, zero             |     s1 = 0;
                                         | label_8:
    0x000018a0 lw v0, 0x64(sp)           |     v0 = *(var_64h);
    0x000018a4 lw a1, 0x60(sp)           |     a1 = *(var_60h);
                                         |     if (v0 != 0) {
    0x000018a8 bnez v0, 0x1580           |         goto label_2;
                                         |     }
    0x000018ac sltu v0, s1, a1           |     v0 = (s1 < a1) ? 1 : 0;
    0x000018b0 lw v0, 0x7200(s2)         |     v0 = *((s2 + 7296));
                                         |     if (v0 != 0) {
    0x000018b4 bnez v0, 0x158c           |         goto label_3;
                                         |     }
    0x000018b8 lw v0, -0x7fdc(gp)        |     v0 = *((gp - 8183));
    0x000018bc lw a2, -0x7fd8(gp)        |     a2 = *((gp - 8182));
    0x000018c0 lw t9, -0x7f08(gp)        |     t9 = sym.imp.com_err;
    0x000018c4 lw a0, 0x7020(v0)         |     a0 = *((v0 + 7176));
    0x000018c8 sw a1, 0x18(sp)           |     *(var_18h) = a1;
    0x000018cc sw zero, 0x1c(sp)         |     *(var_1ch) = 0;
    0x000018d0 sw s1, 0x10(sp)           |     *(var_10h) = s1;
    0x000018d4 sw zero, 0x14(sp)         |     *(var_14h) = 0;
    0x000018d8 addiu a2, a2, 0x664c      |     a2 += str.invalid_starting_block___llu_:_must_be_less_than__llu;
    0x000018dc move a1, zero             |     a1 = 0;
    0x000018e0 jalr t9                   |     t9 ();
    0x000018e4 lw gp, 0x20(sp)           |     gp = *(var_20h);
    0x000018e8 lw t9, -0x7f28(gp)        |     t9 = sym.imp.exit;
    0x000018ec addiu a0, zero, 1         |     a0 = 1;
    0x000018f0 jalr t9                   |     t9 ();
                                         |     if (v0 == 0) {
                                         | label_29:
    0x000018f4 beql v0, zero, 0x1d68     |         goto label_37;
                                         |     }
    0x000018f8 lw v0, -0x7fdc(gp)        |     v0 = *((gp - 8183));
    0x000018fc lw a0, 0x6c(sp)           |     a0 = *(var_6ch);
    0x00001900 lw v0, 0x68(sp)           |     v0 = *(var_68h);
                                         |     if (a0 != 0) {
    0x00001904 bnez a0, 0x1d44           |         goto label_38;
                                         |     }
    0x00001908 lw v1, 0x2c(sp)           |     v1 = *(var_2ch);
    0x0000190c lw t9, -0x7f34(gp)        |     t9 = sym.imp.ext2fs_badblocks_list_add;
    0x00001910 move a1, v0               |     a1 = v0;
    0x00001914 lw a0, 0x71c0(v1)         |     a0 = *((v1 + 7280));
    0x00001918 lw v1, 0x30(sp)           |     v1 = *(var_30h);
    0x0000191c sw v0, 0x71b8(v1)         |     *((v1 + 7278)) = v0;
    0x00001920 jalr t9                   |     t9 ();
    0x00001924 lw gp, 0x20(sp)           |     gp = *(var_20h);
                                         |     if (v0 == 0) {
    0x00001928 beqz v0, 0x1698           |         goto label_4;
                                         |     }
    0x0000192c lw v1, -0x7fdc(gp)        |     v1 = *((gp - 8183));
    0x00001930 lw a3, -0x7fd8(gp)        |     a3 = *((gp - 8182));
    0x00001934 lw a2, -0x7fd8(gp)        |     a2 = *((gp - 8182));
    0x00001938 lw a0, 0x7020(v1)         |     a0 = *((v1 + 7176));
    0x0000193c lw t9, -0x7f08(gp)        |     t9 = sym.imp.com_err;
    0x00001940 addiu a3, a3, 0x6814      |     a3 += str.while_adding_to_in_memory_bad_block_list;
    0x00001944 addiu a2, a2, 0x6158      |     a2 += 0x6158;
    0x00001948 move a1, v0               |     a1 = v0;
    0x0000194c b 0x1bc4                  |     goto label_13;
                                         | label_21:
    0x00001950 addiu a1, sp, 0x68        |     a1 = sp + 0x68;
    0x00001954 move a0, s3               |     a0 = s3;
    0x00001958 jalr t9                   |     t9 ();
    0x0000195c lw gp, 0x20(sp)           |     gp = *(var_20h);
                                         |     if (v0 != 0) {
    0x00001960 bnez v0, 0x1b3c           |         goto label_39;
                                         |     }
    0x00001964 lw v0, 0x68(sp)           |     v0 = *(var_68h);
    0x00001968 andi v1, v0, 1            |     v1 = v0 & 1;
    0x0000196c andi v0, v0, 0x10         |     v0 &= 0x10;
                                         |     if (v1 != 0) {
    0x00001970 bnez v1, 0x1ae8           |         goto label_40;
                                         |     }
    0x00001974 lw a0, -0x7fdc(gp)        |     a0 = *((gp - 8183));
                                         |     if (v0 == 0) {
    0x00001978 beqz v0, 0x1598           |         goto label_5;
                                         |     }
    0x0000197c lw v0, -0x7fdc(gp)        |     v0 = *((gp - 8183));
    0x00001980 lw v0, 0x71e4(v0)         |     v0 = *((v0 + 7289));
    0x00001984 lw t9, -0x7ef4(gp)        |     t9 = sym.imp.gettimeofday;
                                         |     if (v0 != 0) {
    0x00001988 bnez v0, 0x159c           |         goto label_6;
                                         |     }
    0x0000198c lw s0, 0x4c(sp)           |     s0 = *(var_4ch);
    0x00001990 lw a2, -0x7fd8(gp)        |     a2 = *((gp - 8182));
    0x00001994 lw t9, -0x7f7c(gp)        |     t9 = sym.imp.__fprintf_chk
    0x00001998 lw a0, (s0)               |     a0 = *(s0);
    0x0000199c move a3, s3               |     a3 = s3;
    0x000019a0 addiu a2, a2, 0x6764      |     a2 += str._s_is_apparently_in_use_by_the_system__;
    0x000019a4 addiu a1, zero, 1         |     a1 = 1;
    0x000019a8 jalr t9                   |     t9 ();
    0x000019ac lw gp, 0x20(sp)           |     gp = *(var_20h);
    0x000019b0 lw v0, -0x7fdc(gp)        |     v0 = *((gp - 8183));
    0x000019b4 lw v0, 0x71f8(v0)         |     v0 = *((v0 + 7294));
    0x000019b8 lw t9, -0x7f14(gp)        |     t9 = sym.imp.fwrite;
                                         |     if (v0 == 0) {
    0x000019bc beqz v0, 0x1b74           |         goto label_41;
                                         |     }
    0x000019c0 lw a0, -0x7fd8(gp)        |     a0 = *((gp - 8182));
    0x000019c4 lw a3, (s0)               |     a3 = *(s0);
    0x000019c8 addiu a2, zero, 0x19      |     a2 = 0x19;
    0x000019cc addiu a1, zero, 1         |     a1 = 1;
    0x000019d0 addiu a0, a0, 0x678c      |     a0 += str.badblocks_forced_anyway._n;
    0x000019d4 jalr t9                   |     t9 ();
    0x000019d8 lw gp, 0x20(sp)           |     gp = *(var_20h);
    0x000019dc b 0x1594                  |     goto label_7;
                                         | label_36:
    0x000019e0 addiu v0, v0, 0x48ac      |     v0 += fcn.000048ac;
    0x000019e4 sw v0, 0x2c(sp)           |     *(var_2ch) = v0;
                                         | label_19:
    0x000019e8 lw t9, -0x7f58(gp)        |     t9 = sym.imp.__errno_location;
    0x000019ec jalr t9                   |     t9 ();
    0x000019f0 nop                       |     
    0x000019f4 lw gp, 0x20(sp)           |     gp = *(var_20h);
    0x000019f8 sw zero, (v0)             |     *(v0) = 0;
    0x000019fc lw a0, (fp)               |     a0 = *(fp);
    0x00001a00 lw a1, -0x7fd8(gp)        |     a1 = *((gp - 8182));
    0x00001a04 sll a0, a0, 2             |     a0 <<= 2;
    0x00001a08 lw t9, 0x2c(sp)           |     t9 = *(var_2ch);
    0x00001a0c lwx a0, a0(s1)            |     __asm ("lwx a0, a0(s1)");
    0x00001a10 addiu a1, a1, 0x6640      |     a1 += str.first_block;
    0x00001a14 jalr t9                   |     t9 ();
    0x00001a18 move s1, v0               |     s1 = v0;
    0x00001a1c lw gp, 0x20(sp)           |     gp = *(var_20h);
    0x00001a20 b 0x18a0                  |     goto label_8;
                                         | label_23:
    0x00001a24 lw v0, -0x7fdc(gp)        |     v0 = *((gp - 8183));
    0x00001a28 sw s0, 0x71ac(v0)         |     *((v0 + 7275)) = s0;
    0x00001a2c b 0x1604                  |     goto label_9;
                                         | label_25:
    0x00001a30 move s2, zero             |     s2 = 0;
    0x00001a34 b 0x162c                  |     goto label_10;
                                         | label_26:
    0x00001a38 lw a1, -0x7fd8(gp)        |     a1 = *((gp - 8182));
    0x00001a3c lw t9, -0x7ecc(gp)        |     t9 = sym.imp.fopen;
    0x00001a40 lw a0, 0x3c(sp)           |     a0 = *(var_3ch);
    0x00001a44 addiu a1, a1, 0x64d4      |     a1 += 0x64d4;
    0x00001a48 jalr t9                   |     t9 ();
    0x00001a4c move s2, v0               |     s2 = v0;
    0x00001a50 lw gp, 0x20(sp)           |     gp = *(var_20h);
                                         |     if (v0 != 0) {
    0x00001a54 bnez v0, 0x162c           |         goto label_10;
                                         |     }
    0x00001a58 lw v0, -0x7fdc(gp)        |     v0 = *((gp - 8183));
    0x00001a5c lw t9, -0x7f58(gp)        |     t9 = sym.imp.__errno_location;
    0x00001a60 lw s0, 0x7020(v0)         |     s0 = *((v0 + 7176));
    0x00001a64 jalr t9                   |     t9 ();
    0x00001a68 lw gp, 0x20(sp)           |     gp = *(var_20h);
    0x00001a6c lw a1, (v0)               |     a1 = *(v0);
    0x00001a70 move a0, s0               |     a0 = s0;
    0x00001a74 lw a2, -0x7fd8(gp)        |     a2 = *((gp - 8182));
    0x00001a78 lw t9, -0x7f08(gp)        |     t9 = sym.imp.com_err;
    0x00001a7c lw a3, 0x3c(sp)           |     a3 = *(var_3ch);
    0x00001a80 addiu a2, a2, 0x67a8      |     a2 += str.while_trying_to_open__s;
    0x00001a84 b 0x1bc4                  |     goto label_13;
                                         | label_27:
    0x00001a88 lw s3, -0x7fdc(gp)        |     s3 = *((gp - 8183));
    0x00001a8c lw a1, -0x7fd8(gp)        |     a1 = *((gp - 8182));
    0x00001a90 lw t9, -0x7ecc(gp)        |     t9 = sym.imp.fopen;
    0x00001a94 lw a0, 0x40(sp)           |     a0 = *(var_40h);
    0x00001a98 addiu a1, a1, 0x67c4      |     a1 += 0x67c4;
    0x00001a9c sw s3, 0x38(sp)           |     *(var_38h) = s3;
    0x00001aa0 jalr t9                   |     t9 ();
    0x00001aa4 sw v0, 0x71bc(s3)         |     *((s3 + 7279)) = v0;
    0x00001aa8 lw gp, 0x20(sp)           |     gp = *(var_20h);
                                         |     if (v0 != 0) {
    0x00001aac bnez v0, 0x1660           |         goto label_11;
                                         |     }
    0x00001ab0 lw v0, -0x7fdc(gp)        |     v0 = *((gp - 8183));
    0x00001ab4 lw t9, -0x7f58(gp)        |     t9 = sym.imp.__errno_location;
    0x00001ab8 lw s0, 0x7020(v0)         |     s0 = *((v0 + 7176));
    0x00001abc jalr t9                   |     t9 ();
    0x00001ac0 lw gp, 0x20(sp)           |     gp = *(var_20h);
    0x00001ac4 lw a1, (v0)               |     a1 = *(v0);
    0x00001ac8 move a0, s0               |     a0 = s0;
    0x00001acc lw a2, -0x7fd8(gp)        |     a2 = *((gp - 8182));
    0x00001ad0 lw t9, -0x7f08(gp)        |     t9 = sym.imp.com_err;
    0x00001ad4 lw a3, 0x40(sp)           |     a3 = *(var_40h);
    0x00001ad8 addiu a2, a2, 0x67a8      |     a2 += str.while_trying_to_open__s;
    0x00001adc b 0x1bc4                  |     goto label_13;
                                         | label_40:
    0x00001ae8 lw s0, 0x4c(sp)           |     s0 = *(var_4ch);
    0x00001aec lw a2, -0x7fd8(gp)        |     a2 = *((gp - 8182));
    0x00001af0 lw t9, -0x7f7c(gp)        |     t9 = sym.imp.__fprintf_chk
    0x00001af4 lw a0, (s0)               |     a0 = *(s0);
    0x00001af8 move a3, s3               |     a3 = s3;
    0x00001afc addiu a2, a2, 0x66f8      |     a2 += str._s_is_mounted__;
    0x00001b00 addiu a1, zero, 1         |     a1 = 1;
    0x00001b04 jalr t9                   |     t9 ();
    0x00001b08 lw gp, 0x20(sp)           |     gp = *(var_20h);
    0x00001b0c lw v0, -0x7fdc(gp)        |     v0 = *((gp - 8183));
    0x00001b10 lw v0, 0x71f8(v0)         |     v0 = *((v0 + 7294));
    0x00001b14 lw t9, -0x7f14(gp)        |     t9 = sym.imp.fwrite;
                                         |     if (v0 != 0) {
    0x00001b18 beqz v0, 0x1b74           |         
    0x00001b1c lw a0, -0x7fd8(gp)        |         a0 = *((gp - 8182));
    0x00001b20 lw a3, (s0)               |         a3 = *(s0);
    0x00001b24 addiu a2, zero, 0x37      |         a2 = 0x37;
    0x00001b28 addiu a1, zero, 1         |         a1 = 1;
    0x00001b2c addiu a0, a0, 0x6708      |         a0 += str.badblocks_forced_anyway.__Hope__etc_mtab_is_incorrect._n;
    0x00001b30 jalr t9                   |         t9 ();
    0x00001b34 lw gp, 0x20(sp)           |         gp = *(var_20h);
    0x00001b38 b 0x1594                  |         goto label_7;
                                         | label_39:
    0x00001b3c lw a2, -0x7fd8(gp)        |         a2 = *((gp - 8182));
    0x00001b40 lw a0, -0x7fd8(gp)        |         a0 = *((gp - 8182));
    0x00001b44 lw t9, -0x7f08(gp)        |         t9 = sym.imp.com_err;
    0x00001b48 move a3, s3               |         a3 = s3;
    0x00001b4c addiu a2, a2, 0x66b4      |         a2 += str.while_determining_whether__s_is_mounted.;
    0x00001b50 move a1, v0               |         a1 = v0;
    0x00001b54 addiu a0, a0, 0x66e0      |         a0 += str.ext2fs_check_if_mount;
    0x00001b58 jalr t9                   |         t9 ();
    0x00001b5c lw gp, 0x20(sp)           |         gp = *(var_20h);
    0x00001b60 b 0x1594                  |         goto label_7;
                                         | label_14:
    0x00001b64 lw t9, -0x7fd8(gp)        |         t9 = *((gp - 8182));
    0x00001b68 addiu t9, t9, 0x223c      |         t9 += fcn.0000223c;
    0x00001b6c bal 0x223c                |         fcn_0000223c ();
    0x00001b70 nop                       |         
                                         |     }
                                         | label_41:
    0x00001b74 lw v0, 0x4c(sp)           |     v0 = *(var_4ch);
    0x00001b78 lw a0, -0x7fd8(gp)        |     a0 = *((gp - 8182));
    0x00001b7c lw t9, -0x7f14(gp)        |     t9 = sym.imp.fwrite;
    0x00001b80 lw a3, (v0)               |     a3 = *(v0);
    0x00001b84 addiu a0, a0, 0x6740      |     a0 += str.its_not_safe_to_run_badblocks__n;
    0x00001b88 addiu a2, zero, 0x20      |     a2 = 0x20;
    0x00001b8c addiu a1, zero, 1         |     a1 = 1;
    0x00001b90 jalr t9                   |     t9 ();
    0x00001b94 lw gp, 0x20(sp)           |     gp = *(var_20h);
    0x00001b98 lw t9, -0x7f28(gp)        |     t9 = sym.imp.exit;
    0x00001b9c addiu a0, zero, 1         |     a0 = 1;
    0x00001ba0 jalr t9                   |     t9 ();
                                         | label_28:
    0x00001ba4 lw v1, -0x7fdc(gp)        |     v1 = *((gp - 8183));
    0x00001ba8 lw a3, -0x7fd8(gp)        |     a3 = *((gp - 8182));
    0x00001bac lw a2, -0x7fd8(gp)        |     a2 = *((gp - 8182));
    0x00001bb0 lw a0, 0x7020(v1)         |     a0 = *((v1 + 7176));
    0x00001bb4 lw t9, -0x7f08(gp)        |     t9 = sym.imp.com_err;
    0x00001bb8 addiu a3, a3, 0x67c8      |     a3 += 0x67c8;
    0x00001bbc addiu a2, a2, 0x6158      |     a2 += 0x6158;
    0x00001bc0 move a1, v0               |     a1 = v0;
                                         |     do {
                                         | label_13:
    0x00001bc4 jalr t9                   |         t9 ();
    0x00001bc8 nop                       |         
    0x00001bcc lw gp, 0x20(sp)           |         gp = *(var_20h);
    0x00001bd0 lw t9, -0x7f28(gp)        |         t9 = sym.imp.exit;
    0x00001bd4 addiu a0, zero, 1         |         a0 = 1;
    0x00001bd8 jalr t9                   |         t9 ();
                                         | label_34:
    0x00001bdc lw v0, -0x7fdc(gp)        |         v0 = *((gp - 8183));
    0x00001be0 lw a3, -0x7fd8(gp)        |         a3 = *((gp - 8182));
    0x00001be4 lw t9, -0x7f08(gp)        |         t9 = sym.imp.com_err;
    0x00001be8 lw a0, 0x7020(v0)         |         a0 = *((v0 + 7176));
    0x00001bec addiu a3, a3, 0x65c8      |         a3 += str.Couldnt_determine_device_size__you_must_specify_nthe_size_manually_n;
                                         | label_12:
    0x00001bf0 lw a2, -0x7fd8(gp)        |         a2 = *((gp - 8182));
    0x00001bf4 move a1, zero             |         a1 = 0;
    0x00001bf8 addiu a2, a2, 0x6158      |         a2 += 0x6158;
    0x00001bfc b 0x1bc4                  |         
                                         |     } while (1);
                                         | label_15:
    0x00001c34 lw v0, -0x7fdc(gp)        |     v0 = *((gp - 8183));
    0x00001c38 lw a3, -0x7fd8(gp)        |     a3 = *((gp - 8182));
    0x00001c3c lw t9, -0x7f08(gp)        |     t9 = sym.imp.com_err;
    0x00001c40 lw a0, 0x7020(v0)         |     a0 = *((v0 + 7176));
    0x00001c44 addiu a3, a3, 0x6550      |     a3 += str.Maximum_of_one_test_pattern_may_be_specified_in_read_only_mode;
    0x00001c48 b 0x1bf0                  |     goto label_12;
                                         | label_33:
    0x00001c4c lw t9, -0x7f00(gp)        |     t9 = sym.imp.__stack_chk_fail;
    0x00001c50 jalr t9                   |     t9 ();
    0x00001c54 nop                       |     
                                         | label_35:
    0x00001c58 lw a3, -0x7fd8(gp)        |     a3 = *((gp - 8182));
    0x00001c5c lw a2, -0x7fd8(gp)        |     a2 = *((gp - 8182));
    0x00001c60 lw a0, 0x7020(v1)         |     a0 = *((v1 + 7176));
    0x00001c64 lw t9, -0x7f08(gp)        |     t9 = sym.imp.com_err;
    0x00001c68 addiu a3, a3, 0x660c      |     a3 += str.while_trying_to_determine_device_size;
    0x00001c6c addiu a2, a2, 0x6158      |     a2 += 0x6158;
    0x00001c70 move a1, v0               |     a1 = v0;
    0x00001c74 b 0x1bc4                  |     goto label_13;
                                         | label_20:
    0x00001cb4 lw a2, -0x7fd8(gp)        |     a2 = *((gp - 8182));
    0x00001cb8 lw t9, -0x7f08(gp)        |     t9 = sym.imp.com_err;
    0x00001cbc lw a0, 0x7020(v1)         |     a0 = *((v1 + 7176));
    0x00001cc0 sw a1, 0x10(sp)           |     *(var_10h) = a1;
    0x00001cc4 sw v0, 0x14(sp)           |     *(var_14h) = v0;
    0x00001cc8 addiu a2, a2, 0x6684      |     a2 += str.invalid_end_block___llu_:_must_be_32_bit_value;
    0x00001ccc addiu a1, zero, 0x4f      |     a1 = 0x4f;
    0x00001cd0 jalr t9                   |     t9 ();
    0x00001cd4 lw gp, 0x20(sp)           |     gp = *(var_20h);
    0x00001cd8 lw t9, -0x7f28(gp)        |     t9 = sym.imp.exit;
    0x00001cdc addiu a0, zero, 1         |     a0 = 1;
    0x00001ce0 jalr t9                   |     t9 ();
                                         | label_22:
    0x00001ce4 lw v0, -0x7fdc(gp)        |     v0 = *((gp - 8183));
    0x00001ce8 lw t9, -0x7f58(gp)        |     t9 = sym.imp.__errno_location;
    0x00001cec lw s0, 0x7020(v0)         |     s0 = *((v0 + 7176));
    0x00001cf0 jalr t9                   |     t9 ();
    0x00001cf4 lw gp, 0x20(sp)           |     gp = *(var_20h);
    0x00001cf8 lw a1, (v0)               |     a1 = *(v0);
    0x00001cfc move a0, s0               |     a0 = s0;
    0x00001d00 lw a2, -0x7fd8(gp)        |     a2 = *((gp - 8182));
    0x00001d04 lw t9, -0x7f08(gp)        |     t9 = sym.imp.com_err;
    0x00001d08 move a3, s3               |     a3 = s3;
    0x00001d0c addiu a2, a2, 0x67a8      |     a2 += str.while_trying_to_open__s;
    0x00001d10 b 0x1bc4                  |     goto label_13;
                                         | label_24:
    0x00001d14 lw v0, -0x7fdc(gp)        |     v0 = *((gp - 8183));
    0x00001d18 lw t9, -0x7f58(gp)        |     t9 = sym.imp.__errno_location;
    0x00001d1c lw s0, 0x7020(v0)         |     s0 = *((v0 + 7176));
    0x00001d20 jalr t9                   |     t9 ();
    0x00001d24 lw gp, 0x20(sp)           |     gp = *(var_20h);
    0x00001d28 lw a1, (v0)               |     a1 = *(v0);
    0x00001d2c move a0, s0               |     a0 = s0;
    0x00001d30 lw a2, -0x7fd8(gp)        |     a2 = *((gp - 8182));
    0x00001d34 lw t9, -0x7f08(gp)        |     t9 = sym.imp.com_err;
    0x00001d38 lw a3, 0x44(sp)           |     a3 = *(var_44h);
    0x00001d3c addiu a2, a2, 0x67a8      |     a2 += str.while_trying_to_open__s;
    0x00001d40 b 0x1bc4                  |     goto label_13;
                                         | label_38:
    0x00001d44 lw v0, -0x7fdc(gp)        |     v0 = *((gp - 8183));
    0x00001d48 lw a3, -0x7fd8(gp)        |     a3 = *((gp - 8182));
    0x00001d4c lw a2, -0x7fd8(gp)        |     a2 = *((gp - 8182));
    0x00001d50 lw a0, 0x7020(v0)         |     a0 = *((v0 + 7176));
    0x00001d54 lw t9, -0x7f08(gp)        |     t9 = sym.imp.com_err;
    0x00001d58 addiu a3, a3, 0x6814      |     a3 += str.while_adding_to_in_memory_bad_block_list;
    0x00001d5c addiu a2, a2, 0x6158      |     a2 += 0x6158;
    0x00001d60 addiu a1, zero, 0x4f      |     a1 = 0x4f;
    0x00001d64 b 0x1bc4                  |     goto label_13;
                                         | label_37:
    0x00001d68 lw a3, -0x7fd8(gp)        |     a3 = *((gp - 8182));
    0x00001d6c lw t9, -0x7f08(gp)        |     t9 = sym.imp.com_err;
    0x00001d70 lw a0, 0x7020(v0)         |     a0 = *((v0 + 7176));
    0x00001d74 addiu a3, a3, 0x67fc      |     a3 += str.input_file___bad_format;
    0x00001d78 b 0x1bf0                  |     goto label_12;
                                         | label_17:
    0x00001d7c lw a3, -0x7fd8(gp)        |     a3 = *((gp - 8182));
    0x00001d80 lw t9, -0x7f08(gp)        |     t9 = sym.imp.com_err;
    0x00001d84 lw a0, 0x7020(v0)         |     a0 = *((v0 + 7176));
    0x00001d88 addiu a3, a3, 0x6590      |     a3 += str.Random_test_pattern_is_not_allowed_in_read_only_mode;
    0x00001d8c b 0x1bf0                  |     goto label_12;
                                         | }

[*] Function fprintf used 11 times badblocks