[*] Binary protection state of sar

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


[*] Function sprintf tear down of sar

    ; assembly                           | /* r2dec pseudo code output */
                                         | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/sar @ 0x3460 */
                                         | #include <stdint.h>
                                         |  
    ; (fcn) main ()                      | int32_t main () {
                                         |     /* [13] -r-x section size 122176 named .text */
    0x00003460 lui gp, 4                 |     
    0x00003464 addiu gp, gp, -0x5910     |     
    0x00003468 addu gp, gp, t9           |     gp += t9;
    0x0000346c lw v0, -0x7bf8(gp)        |     v0 = *((gp - 7934));
    0x00003470 addiu sp, sp, -0x878      |     
    0x00003474 lw t9, -0x7f0c(gp)        |     t9 = sym.get_kb_shift;
    0x00003478 sw v0, 0x30(sp)           |     *(var_30h) = v0;
    0x0000347c lw v0, (v0)               |     v0 = *(v0);
    0x00003480 sw ra, 0x874(sp)          |     *(var_874h) = ra;
    0x00003484 sw v0, 0x84c(sp)          |     *(var_84ch) = v0;
    0x00003488 addiu v0, zero, 1         |     v0 = 1;
    0x0000348c sw v0, 0x40(sp)           |     *(var_40h) = v0;
    0x00003490 sw gp, 0x18(sp)           |     *(var_18h) = gp;
    0x00003494 sw fp, 0x870(sp)          |     *(var_870h) = fp;
    0x00003498 sw s7, 0x86c(sp)          |     *(var_86ch) = s7;
    0x0000349c sw s6, 0x868(sp)          |     *(var_868h) = s6;
    0x000034a0 sw s5, 0x864(sp)          |     *(var_864h) = s5;
    0x000034a4 sw s4, 0x860(sp)          |     *(var_860h) = s4;
    0x000034a8 sw s3, 0x85c(sp)          |     *(var_85ch) = s3;
    0x000034ac sw s2, 0x858(sp)          |     *(var_858h) = s2;
    0x000034b0 sw s1, 0x854(sp)          |     *(var_854h) = s1;
    0x000034b4 sw s0, 0x850(sp)          |     *(var_850h) = s0;
    0x000034b8 move s4, a0               |     s4 = a0;
    0x000034bc move s3, a1               |     s3 = a1;
    0x000034c0 bal 0x1b154               |     sym_get_kb_shift ();
    0x000034c4 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x000034c8 sb zero, 0x24c(sp)        |     *(var_24ch) = 0;
    0x000034cc sb zero, 0x4c(sp)         |     *(var_4ch) = 0;
    0x000034d0 lw s0, -0x7f88(gp)        |     s0 = *(gp);
    0x000034d4 lw s1, -0x7f90(gp)        |     s1 = *(gp);
    0x000034d8 lw t9, -0x7f08(gp)        |     t9 = sym.init_colors;
    0x000034dc sw s0, 0x34(sp)           |     *(var_34h) = s0;
    0x000034e0 sw s1, 0x28(sp)           |     *(var_28h) = s1;
    0x000034e4 bal 0x1c520               |     sym_init_colors ();
    0x000034e8 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x000034ec sw zero, 0xc(s0)          |     *((s0 + 3)) = 0;
    0x000034f0 lw t9, -0x7f04(gp)        |     t9 = sym.allocate_bitmaps;
    0x000034f4 lw a0, -0x7fc8(gp)        |     a0 = *(gp);
    0x000034f8 sw zero, 0xc(s1)          |     *((s1 + 3)) = 0;
    0x000034fc bal 0x8534                |     sym_allocate_bitmaps ();
    0x00003500 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x00003504 lw s2, 0x40(sp)           |     s2 = *(var_40h);
    0x00003508 sw zero, 0x2c(sp)         |     *(var_2ch) = 0;
    0x0000350c lw v0, -0x7fd4(gp)        |     v0 = *(gp);
    0x00003510 lw s5, -0x7fd8(gp)        |     s5 = *(gp);
    0x00003514 lw s6, -0x7fd8(gp)        |     s6 = *(gp);
    0x00003518 sw zero, (v0)             |     *(v0) = 0;
    0x0000351c sw zero, 4(v0)            |     *((v0 + 1)) = 0;
    0x00003520 sw zero, 8(v0)            |     *((v0 + 2)) = 0;
    0x00003524 sw zero, 0xc(v0)          |     *((v0 + 3)) = 0;
    0x00003528 sw zero, 0x10(v0)         |     *((v0 + 4)) = 0;
    0x0000352c sw zero, 0x14(v0)         |     *((v0 + 5)) = 0;
    0x00003530 sw zero, 0x18(v0)         |     *((v0 + 6)) = 0;
    0x00003534 sw zero, 0x1c(v0)         |     *((v0 + 7)) = 0;
    0x00003538 sw zero, 0x20(v0)         |     *((v0 + 8)) = 0;
    0x0000353c sw zero, 0x24(v0)         |     *((v0 + 9)) = 0;
    0x00003540 sw zero, 0x28(v0)         |     *((v0 + 10)) = 0;
    0x00003544 sw zero, 0x2c(v0)         |     *((v0 + 11)) = 0;
    0x00003548 sw zero, 0x30(v0)         |     *((v0 + 12)) = 0;
    0x0000354c sw zero, 0x34(v0)         |     *((v0 + 13)) = 0;
    0x00003550 sw zero, 0x38(v0)         |     *((v0 + 14)) = 0;
    0x00003554 sw zero, 0x3c(v0)         |     *((v0 + 15)) = 0;
    0x00003558 sw zero, 0x40(v0)         |     *((v0 + 16)) = 0;
    0x0000355c sw zero, 0x44(v0)         |     *((v0 + 17)) = 0;
    0x00003560 lw fp, -0x7fd8(gp)        |     fp = *(gp);
    0x00003564 lw v0, -0x7fd8(gp)        |     v0 = *(gp);
    0x00003568 lw s7, -0x7fd8(gp)        |     s7 = *(gp);
                                         |     /* str.__sadc */
    0x0000356c addiu s5, s5, 0x20b8      |     s5 += 0x20b8;
                                         |     /* str.__dev */
    0x00003570 addiu s6, s6, 0x20c0      |     s6 += 0x20c0;
                                         |     /* str.__iface */
    0x00003574 addiu fp, fp, 0x20d0      |     fp += 0x20d0;
    0x00003578 sw v0, 0x24(sp)           |     *(var_24h) = v0;
                                         | label_0:
    0x0000357c slt v0, s2, s4            |     v0 = (s2 < s4) ? 1 : 0;
    0x00003580 addiu v0, zero, 1         |     v0 = 1;
                                         |     if (v0 == 0) {
    0x00003584 beqz v0, 0x3664           |         goto label_22;
                                         |     }
    0x00003588 sll s1, s2, 2             |     s1 = s2 << 2;
                                         |     do {
    0x0000358c addu s1, s3, s1           |         s1 = s3 + s1;
    0x00003590 lw t9, -0x7bd0(gp)        |         t9 = sym.imp.strcmp;
    0x00003594 lw s0, (s1)               |         s0 = *(s1);
    0x00003598 move a1, s5               |         a1 = s5;
    0x0000359c move a0, s0               |         a0 = s0;
    0x000035a0 jalr t9                   |         t9 ();
    0x000035a4 lw gp, 0x18(sp)           |         gp = *(var_18h);
                                         |         if (v0 == 0) {
    0x000035a8 beqz v0, 0x421c           |             goto label_23;
                                         |         }
    0x000035ac lw t9, -0x7cd8(gp)        |         t9 = sym.imp.strncmp;
    0x000035b0 addiu a2, zero, 6         |         a2 = 6;
    0x000035b4 move a1, s6               |         a1 = s6;
    0x000035b8 move a0, s0               |         a0 = s0;
    0x000035bc jalr t9                   |         t9 ();
    0x000035c0 lw gp, 0x18(sp)           |         gp = *(var_18h);
                                         |         if (v0 == 0) {
    0x000035c4 beqz v0, 0x3848           |             goto label_24;
                                         |         }
    0x000035c8 lw t9, -0x7cd8(gp)        |         t9 = sym.imp.strncmp;
    0x000035cc addiu a2, zero, 5         |         a2 = 5;
                                         |         /* str.__fs */
    0x000035d0 addiu a1, s7, 0x20c8      |         a1 = s7 + 0x20c8;
    0x000035d4 move a0, s0               |         a0 = s0;
    0x000035d8 jalr t9                   |         t9 ();
    0x000035dc lw gp, 0x18(sp)           |         gp = *(var_18h);
                                         |         if (v0 == 0) {
    0x000035e0 beqz v0, 0x389c           |             goto label_25;
                                         |         }
    0x000035e4 lw t9, -0x7cd8(gp)        |         t9 = sym.imp.strncmp;
    0x000035e8 addiu a2, zero, 8         |         a2 = 8;
    0x000035ec move a1, fp               |         a1 = fp;
    0x000035f0 move a0, s0               |         a0 = s0;
    0x000035f4 jalr t9                   |         t9 ();
    0x000035f8 lw gp, 0x18(sp)           |         gp = *(var_18h);
                                         |         if (v0 == 0) {
    0x000035fc beqz v0, 0x3964           |             goto label_26;
                                         |         }
    0x00003600 lw v0, 0x24(sp)           |         v0 = *(var_24h);
    0x00003604 lw t9, -0x7bd0(gp)        |         t9 = sym.imp.strcmp;
    0x00003608 addiu a1, v0, 0x20dc      |         a1 = v0 + 0x20dc;
    0x0000360c move a0, s0               |         a0 = s0;
    0x00003610 jalr t9                   |         t9 ();
    0x00003614 lw gp, 0x18(sp)           |         gp = *(var_18h);
                                         |         if (v0 == 0) {
    0x00003618 beqz v0, 0x4270           |             goto label_27;
                                         |         }
    0x0000361c lw a1, -0x7fd8(gp)        |         a1 = *(gp);
    0x00003620 lw t9, -0x7bd0(gp)        |         t9 = sym.imp.strcmp;
                                         |         /* str.__human */
    0x00003624 addiu a1, a1, 0x20e4      |         a1 += 0x20e4;
    0x00003628 move a0, s0               |         a0 = s0;
    0x0000362c jalr t9                   |         t9 ();
    0x00003630 lw gp, 0x18(sp)           |         gp = *(var_18h);
                                         |         if (v0 != 0) {
    0x00003634 bnez v0, 0x38d8           |             goto label_28;
                                         |         }
    0x00003638 lw v1, -0x7fac(gp)        |         v1 = *(gp);
    0x0000363c lui a0, 0x10              |         a0 = 0x100000;
    0x00003640 addiu s2, s2, 1           |         s2++;
    0x00003644 lw v0, (v1)               |         v0 = *(v1);
    0x00003648 sw s2, 0x40(sp)           |         *(var_40h) = s2;
    0x0000364c or v0, v0, a0             |         v0 |= a0;
    0x00003650 sw v0, (v1)               |         *(v1) = v0;
    0x00003654 slt v0, s2, s4            |         v0 = (s2 < s4) ? 1 : 0;
    0x00003658 sll s1, s2, 2             |         s1 = s2 << 2;
    0x0000365c bnel v0, zero, 0x358c     |         
                                         |     } while (v0 == 0);
    0x00003660 addiu v0, zero, 1         |     v0 = 1;
                                         | label_22:
    0x00003664 lw v0, -0x7fa0(gp)        |     v0 = *(gp);
                                         |     if (s4 == v0) {
    0x00003668 beq s4, v0, 0x382c        |         goto label_29;
                                         |     }
    0x0000366c lw v0, (v0)               |     v0 = *(v0);
    0x00003670 lw v0, -0x7fac(gp)        |     v0 = *(gp);
                                         |     if (v0 < 0) {
    0x00003674 bltz v0, 0x3814           |         goto label_30;
                                         |     }
    0x00003678 lw v0, (v0)               |     v0 = *(v0);
    0x0000367c andi v0, v0, 0x10         |     v0 &= 0x10;
    0x00003680 lb v1, 0x4c(sp)           |     v1 = *(var_4ch);
    0x00003684 bnel v0, zero, 0x3818     |     
                                         |     while (1) {
    0x00003688 lw v0, 0x28(sp)           |         v0 = *(var_28h);
    0x0000368c lw v0, 0xc(v0)            |         v0 = *((v0 + 3));
    0x00003690 lb v1, 0x4c(sp)           |         v1 = *(var_4ch);
                                         |         if (v0 != 0) {
    0x00003694 beqz v0, 0x36c0           |             
    0x00003698 lw a1, 0x34(sp)           |             a1 = *(var_34h);
                                         | label_1:
    0x0000369c lw v0, 0xc(a1)            |             v0 = *((a1 + 3));
    0x000036a0 lw v0, 0x28(sp)           |             v0 = *(var_28h);
                                         |             if (v0 == 0) {
    0x000036a4 beqz v0, 0x36c0           |                 goto label_31;
                                         |             }
    0x000036a8 lw a0, 8(a1)              |             a0 = *((a1 + 2));
    0x000036ac lw v0, 8(v0)              |             v0 = *((v0 + 2));
    0x000036b0 slt v0, a0, v0            |             v0 = (a0 < v0) ? 1 : 0;
    0x000036b4 addiu a0, a0, 0x18        |             a0 += 0x18;
                                         |             if (v0 == 0) {
    0x000036b8 beqz v0, 0x36c0           |                 goto label_31;
                                         |             }
    0x000036bc sw a0, 8(a1)              |             *((a1 + 2)) = a0;
                                         |         }
                                         |         if (v1 != 0) {
                                         | label_31:
    0x000036c0 beql v1, zero, 0x36d8     |             
    0x000036c4 lw s0, -0x7fac(gp)        |             s0 = *(gp);
    0x000036c8 lb v0, 0x24c(sp)          |             v0 = *(var_24ch);
                                         | label_2:
    0x000036cc lw v0, -0x7be8(gp)        |             v0 = *((gp - 7930));
                                         |             if (v0 != 0) {
    0x000036d0 bnez v0, 0x432c           |                 goto label_32;
                                         |             }
    0x000036d4 lw s0, -0x7fac(gp)        |             s0 = *(gp);
                                         |         }
                                         | label_8:
    0x000036d8 lw v0, (s0)               |         v0 = *(s0);
    0x000036dc ext v0, v0, 0x1c, 1       |         __asm ("ext v0, v0, 0x1c, 1");
    0x000036e0 lw t9, -0x7f00(gp)        |         t9 = sym.set_bitmaps;
                                         |         if (v0 != 0) {
    0x000036e4 bnez v0, 0x3d88           |             goto label_33;
                                         |         }
                                         | label_6:
    0x000036e8 lw v0, 0x28(sp)           |         v0 = *(var_28h);
    0x000036ec lw v1, (s0)               |         v1 = *(s0);
    0x000036f0 lw a0, 0xc(v0)            |         a0 = *((v0 + 3));
    0x000036f4 andi v0, v1, 0x10         |         v0 = v1 & 0x10;
    0x000036f8 or v0, v0, a0             |         v0 |= a0;
    0x000036fc lb v0, 0x4c(sp)           |         v0 = *(var_4ch);
                                         |         if (v0 == 0) {
    0x00003700 bnel v0, zero, 0x3cdc     |             goto label_34;
                                         |         }
    0x00003704 lw s1, -0x7fa0(gp)        |         s1 = *(gp);
    0x00003708 lw a0, (s1)               |         a0 = *(s1);
    0x0000370c lb v0, 0x24c(sp)          |         v0 = *(var_24ch);
                                         |         if (a0 != 0) {
    0x00003710 bnez a0, 0x3cf4           |             goto label_35;
                                         |         }
    0x00003714 lbu a0, 0x4c(sp)          |         a0 = *(var_4ch);
    0x00003718 or v0, v0, a0             |         v0 |= a0;
    0x0000371c seb v0, v0                |         __asm ("seb v0, v0");
    0x00003720 lw t9, -0x7efc(gp)        |         t9 = sym.usage;
                                         |         if (v0 != 0) {
    0x00003724 bnez v0, 0x3d08           |             goto label_16;
                                         |         }
                                         | label_3:
    0x00003728 andi v1, v1, 4            |         v1 &= 4;
                                         | label_4:
    0x0000372c lw t9, -0x7ef8(gp)        |         t9 = sym.get_devmap_major;
                                         |         if (v1 != 0) {
    0x00003730 bnez v1, 0x3d9c           |             goto label_36;
                                         |         }
                                         | label_7:
    0x00003734 lw s5, -0x7f7c(gp)        |         s5 = *(gp);
    0x00003738 lw v0, (s5)               |         v0 = *(s5);
    0x0000373c lw t9, -0x7ef4(gp)        |         t9 = sym.select_default_activity;
                                         |         if (v0 == 0) {
    0x00003740 bnez v0, 0x374c           |             
    0x00003744 addiu v0, zero, -1        |             v0 = -1;
    0x00003748 sw v0, (s5)               |             *(s5) = v0;
                                         |         }
    0x0000374c lw a0, -0x7fc8(gp)        |         a0 = *(gp);
    0x00003750 bal 0x8704                |         sym_select_default_activity ();
    0x00003754 nop                       |         
    0x00003758 lw gp, 0x18(sp)           |         gp = *(var_18h);
    0x0000375c lw t9, -0x7ef0(gp)        |         t9 = sym.is_iso_time_fmt;
    0x00003760 bal 0x1b668               |         sym_is_iso_time_fmt ();
    0x00003764 nop                       |         
    0x00003768 lw gp, 0x18(sp)           |         gp = *(var_18h);
                                         |         if (v0 == 0) {
    0x0000376c bnez v0, 0x377c           |             
    0x00003770 lw v0, (s0)               |             v0 = *(s0);
    0x00003774 ori v0, v0, 0x8000        |             v0 |= 0x8000;
    0x00003778 sw v0, (s0)               |             *(s0) = v0;
                                         |         }
    0x0000377c lb v0, 0x4c(sp)           |         v0 = *(var_4ch);
    0x00003780 lw t9, -0x7c98(gp)        |         t9 = sym.imp.pipe;
                                         |         if (v0 == 0) {
    0x00003784 beqz v0, 0x3d10           |             goto label_37;
                                         |         }
    0x00003788 lw v0, (s1)               |         v0 = *(s1);
    0x0000378c lw t9, -0x7eec(gp)        |         t9 = sym.read_stats_from_file;
                                         |         if (v0 < 0) {
    0x00003790 bgez v0, 0x379c           |             
    0x00003794 addiu v0, zero, 1         |             v0 = 1;
    0x00003798 sw v0, (s1)               |             *(s1) = v0;
                                         |         }
    0x0000379c addiu a0, sp, 0x4c        |         a0 = sp + 0x4c;
    0x000037a0 bal 0x5d08                |         sym_read_stats_from_file ();
    0x000037a4 lw gp, 0x18(sp)           |         gp = *(var_18h);
                                         | label_5:
    0x000037a8 lw a0, -0x7fc8(gp)        |         a0 = *(gp);
    0x000037ac lw t9, -0x7ee8(gp)        |         t9 = sym.free_bitmaps;
    0x000037b0 bal 0x8664                |         sym_free_bitmaps ();
    0x000037b4 nop                       |         
    0x000037b8 lw gp, 0x18(sp)           |         gp = *(var_18h);
    0x000037bc lw a0, -0x7fc8(gp)        |         a0 = *(gp);
    0x000037c0 lw t9, -0x7ee4(gp)        |         t9 = sym.free_structures;
    0x000037c4 bal 0x7270                |         sym_free_structures ();
    0x000037c8 nop                       |         
    0x000037cc lw v0, 0x30(sp)           |         v0 = *(var_30h);
    0x000037d0 lw a0, 0x84c(sp)          |         a0 = *(var_84ch);
    0x000037d4 lw gp, 0x18(sp)           |         gp = *(var_18h);
    0x000037d8 lw v1, (v0)               |         v1 = *(v0);
    0x000037dc move v0, zero             |         v0 = 0;
                                         |         if (a0 != v1) {
    0x000037e0 bne a0, v1, 0x4350        |             goto label_38;
                                         |         }
    0x000037e4 lw ra, 0x874(sp)          |         ra = *(var_874h);
    0x000037e8 lw fp, 0x870(sp)          |         fp = *(var_870h);
    0x000037ec lw s7, 0x86c(sp)          |         s7 = *(var_86ch);
    0x000037f0 lw s6, 0x868(sp)          |         s6 = *(var_868h);
    0x000037f4 lw s5, 0x864(sp)          |         s5 = *(var_864h);
    0x000037f8 lw s4, 0x860(sp)          |         s4 = *(var_860h);
    0x000037fc lw s3, 0x85c(sp)          |         s3 = *(var_85ch);
    0x00003800 lw s2, 0x858(sp)          |         s2 = *(var_858h);
    0x00003804 lw s1, 0x854(sp)          |         s1 = *(var_854h);
    0x00003808 lw s0, 0x850(sp)          |         s0 = *(var_850h);
    0x0000380c addiu sp, sp, 0x878       |         
    0x00003810 jr ra                     |         return v0;
                                         | label_30:
    0x00003814 lb v1, 0x4c(sp)           |         v1 = *(var_4ch);
    0x00003818 lw v0, 0x28(sp)           |         v0 = *(var_28h);
                                         |         if (v1 != 0) {
    0x0000381c bnez v1, 0x3ca8           |             goto label_39;
                                         |         }
    0x00003820 lb v0, 0x24c(sp)          |         v0 = *(var_24ch);
    0x00003824 lw v0, 0x28(sp)           |         v0 = *(var_28h);
                                         |         if (v0 != 0) {
    0x00003828 bnez v0, 0x3fb4           |             goto label_40;
                                         |         }
                                         | label_29:
    0x0000382c lw t9, -0x7ee0(gp)        |         t9 = sym.set_default_file;
    0x00003830 lw a1, 0x2c(sp)           |         a1 = *(var_2ch);
    0x00003834 addiu a2, zero, -1        |         a2 = -1;
    0x00003838 addiu a0, sp, 0x4c        |         a0 = sp + 0x4c;
    0x0000383c bal 0x6a38                |         sym_set_default_file ();
    0x00003840 lw gp, 0x18(sp)           |         gp = *(var_18h);
    0x00003844 b 0x3688                  |         
                                         |     }
                                         | label_24:
    0x00003848 lw t9, -0x7f68(gp)        |     t9 = sym.get_activity_position;
    0x0000384c lw a0, -0x7fc8(gp)        |     a0 = *(gp);
    0x00003850 addiu a1, zero, 0xb       |     a1 = 0xb;
    0x00003854 addiu a2, zero, 1         |     a2 = 1;
    0x00003858 bal 0x67c0                |     sym_get_activity_position ();
    0x0000385c lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x00003860 lw a0, 0x40(sp)           |     a0 = *(var_40h);
    0x00003864 sll v0, v0, 2             |     v0 <<= 2;
    0x00003868 sll a0, a0, 2             |     a0 <<= 2;
    0x0000386c lw a1, -0x7fc8(gp)        |     a1 = *(gp);
    0x00003870 lwx a0, a0(s3)            |     __asm ("lwx a0, a0(s3)");
    0x00003874 lw t9, -0x7edc(gp)        |     t9 = sym.parse_sa_devices;
    0x00003878 lwx a1, v0(a1)            |     __asm ("lwx a1, v0(a1)");
    0x0000387c addiu v0, zero, 6         |     v0 = 6;
                                         |     do {
    0x00003880 sw v0, 0x10(sp)           |         *(var_10h) = v0;
    0x00003884 addiu a3, sp, 0x40        |         a3 = sp + 0x40;
    0x00003888 addiu a2, zero, 0x80      |         a2 = 0x80;
    0x0000388c bal 0xb5d8                |         sym_parse_sa_devices ();
    0x00003890 lw gp, 0x18(sp)           |         gp = *(var_18h);
    0x00003894 lw s2, 0x40(sp)           |         s2 = *(var_40h);
    0x00003898 b 0x357c                  |         goto label_0;
                                         | label_25:
    0x0000389c lw t9, -0x7f68(gp)        |         t9 = sym.get_activity_position;
    0x000038a0 lw a0, -0x7fc8(gp)        |         a0 = *(gp);
    0x000038a4 addiu a1, zero, 0x25      |         a1 = 0x25;
    0x000038a8 addiu a2, zero, 1         |         a2 = 1;
    0x000038ac bal 0x67c0                |         sym_get_activity_position ();
    0x000038b0 lw gp, 0x18(sp)           |         gp = *(var_18h);
    0x000038b4 lw a0, 0x40(sp)           |         a0 = *(var_40h);
    0x000038b8 sll v0, v0, 2             |         v0 <<= 2;
    0x000038bc lw a1, -0x7fc8(gp)        |         a1 = *(gp);
    0x000038c0 sll a0, a0, 2             |         a0 <<= 2;
    0x000038c4 lw t9, -0x7edc(gp)        |         t9 = sym.parse_sa_devices;
    0x000038c8 lwx a1, v0(a1)            |         __asm ("lwx a1, v0(a1)");
    0x000038cc lwx a0, a0(s3)            |         __asm ("lwx a0, a0(s3)");
    0x000038d0 addiu v0, zero, 5         |         v0 = 5;
    0x000038d4 b 0x3880                  |         
                                         |     } while (1);
                                         | label_28:
    0x000038d8 lw a1, -0x7fd8(gp)        |     a1 = *(gp);
    0x000038dc lw t9, -0x7cd8(gp)        |     t9 = sym.imp.strncmp;
    0x000038e0 addiu a2, zero, 6         |     a2 = 6;
                                         |     /* str.__dec */
    0x000038e4 addiu a1, a1, 0x20ec      |     a1 += 0x20ec;
    0x000038e8 move a0, s0               |     a0 = s0;
    0x000038ec jalr t9                   |     t9 ();
    0x000038f0 lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     if (v0 == 0) {
    0x000038f4 bnez v0, 0x3910           |         
    0x000038f8 lw t9, -0x7c68(gp)        |         t9 = sym.imp.strlen;
    0x000038fc move a0, s0               |         a0 = s0;
    0x00003900 jalr t9                   |         t9 ();
    0x00003904 addiu v1, zero, 7         |         v1 = 7;
    0x00003908 lw gp, 0x18(sp)           |         gp = *(var_18h);
                                         |         if (v0 == v1) {
    0x0000390c beq v0, v1, 0x3ac8        |             goto label_41;
                                         |         }
                                         |     }
    0x00003910 lw a1, -0x7fd8(gp)        |     a1 = *(gp);
    0x00003914 lw t9, -0x7bd0(gp)        |     t9 = sym.imp.strcmp;
                                         |     /* esilref: '-I' */
    0x00003918 addiu a1, a1, 0x20f4      |     a1 += 0x20f4;
    0x0000391c move a0, s0               |     a0 = s0;
    0x00003920 jalr t9                   |     t9 ();
    0x00003924 lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     if (v0 != 0) {
    0x00003928 beqz v0, 0x3aa0           |         
    0x0000392c lw a1, -0x7fd8(gp)        |         a1 = *(gp);
    0x00003930 lw t9, -0x7bd0(gp)        |         t9 = sym.imp.strcmp;
                                         |         /* esilref: '-D' */
    0x00003934 addiu a1, a1, 0x20f8      |         a1 += 0x20f8;
    0x00003938 move a0, s0               |         a0 = s0;
    0x0000393c jalr t9                   |         t9 ();
    0x00003940 lw gp, 0x18(sp)           |         gp = *(var_18h);
                                         |         if (v0 == 0) {
    0x00003944 bnez v0, 0x39fc           |             
    0x00003948 lw v1, -0x7fac(gp)        |             v1 = *(gp);
    0x0000394c addiu s2, s2, 1           |             s2++;
    0x00003950 sw s2, 0x40(sp)           |             *(var_40h) = s2;
    0x00003954 lw v0, (v1)               |             v0 = *(v1);
    0x00003958 ori v0, v0, 0x400         |             v0 |= 0x400;
    0x0000395c sw v0, (v1)               |             *(v1) = v0;
    0x00003960 b 0x357c                  |             goto label_0;
                                         | label_26:
    0x00003964 lw t9, -0x7f68(gp)        |             t9 = sym.get_activity_position;
    0x00003968 lw a0, -0x7fc8(gp)        |             a0 = *(gp);
    0x0000396c addiu a2, zero, 1         |             a2 = 1;
    0x00003970 addiu a1, zero, 0xc       |             a1 = 0xc;
    0x00003974 bal 0x67c0                |             sym_get_activity_position ();
    0x00003978 lw gp, 0x18(sp)           |             gp = *(var_18h);
    0x0000397c lw a0, 0x40(sp)           |             a0 = *(var_40h);
    0x00003980 sll v0, v0, 2             |             v0 <<= 2;
    0x00003984 lw s0, -0x7fc8(gp)        |             s0 = *(gp);
    0x00003988 sll a0, a0, 2             |             a0 <<= 2;
    0x0000398c addu s1, s0, v0           |             s1 = s0 + v0;
    0x00003990 lwx a0, a0(s3)            |             __asm ("lwx a0, a0(s3)");
    0x00003994 lw t9, -0x7edc(gp)        |             t9 = sym.parse_sa_devices;
    0x00003998 lw a1, (s1)               |             a1 = *(s1);
    0x0000399c addiu v0, zero, 8         |             v0 = 8;
    0x000039a0 addiu a3, sp, 0x40        |             a3 = sp + 0x40;
    0x000039a4 addiu a2, zero, 0x10      |             a2 = 0x10;
    0x000039a8 sw v0, 0x10(sp)           |             *(var_10h) = v0;
    0x000039ac bal 0xb5d8                |             sym_parse_sa_devices ();
    0x000039b0 lw gp, 0x18(sp)           |             gp = *(var_18h);
    0x000039b4 addiu a1, zero, 0xd       |             a1 = 0xd;
    0x000039b8 move a0, s0               |             a0 = s0;
    0x000039bc lw t9, -0x7f68(gp)        |             t9 = sym.get_activity_position;
    0x000039c0 addiu a2, zero, 1         |             a2 = 1;
    0x000039c4 bal 0x67c0                |             sym_get_activity_position ();
    0x000039c8 sll v0, v0, 2             |             v0 <<= 2;
    0x000039cc lw a0, (s1)               |             a0 = *(s1);
    0x000039d0 lwx v0, v0(s0)            |             __asm ("lwx v0, v0(s0)");
    0x000039d4 lw gp, 0x18(sp)           |             gp = *(var_18h);
    0x000039d8 lw a1, 0x40(a0)           |             a1 = *((a0 + 16));
    0x000039dc lw v1, 4(v0)              |             v1 = *((v0 + 1));
    0x000039e0 lw a0, 0x44(a0)           |             a0 = *((a0 + 17));
    0x000039e4 ori v1, v1, 0x100         |             v1 |= aav.0x00000100;
    0x000039e8 lw s2, 0x40(sp)           |             s2 = *(var_40h);
    0x000039ec sw a1, 0x40(v0)           |             *((v0 + 16)) = a1;
    0x000039f0 sw a0, 0x44(v0)           |             *((v0 + 17)) = a0;
    0x000039f4 sw v1, 4(v0)              |             *((v0 + 1)) = v1;
    0x000039f8 b 0x357c                  |             goto label_0;
                                         |         }
    0x000039fc lw a1, -0x7fd8(gp)        |         a1 = *(gp);
    0x00003a00 lw t9, -0x7bd0(gp)        |         t9 = sym.imp.strcmp;
                                         |         /* esilref: '-P' */
    0x00003a04 addiu a1, a1, 0x20fc      |         a1 += 0x20fc;
    0x00003a08 move a0, s0               |         a0 = s0;
    0x00003a0c jalr t9                   |         t9 ();
    0x00003a10 lw gp, 0x18(sp)           |         gp = *(var_18h);
                                         |         if (v0 == 0) {
    0x00003a14 beqz v0, 0x3bc0           |             goto label_42;
                                         |         }
    0x00003a18 lw a1, -0x7fd8(gp)        |         a1 = *(gp);
    0x00003a1c lw t9, -0x7bd0(gp)        |         t9 = sym.imp.strcmp;
                                         |         /* esilref: '-o' */
    0x00003a20 addiu a1, a1, 0x2100      |         a1 += 0x2100;
    0x00003a24 move a0, s0               |         a0 = s0;
    0x00003a28 jalr t9                   |         t9 ();
    0x00003a2c lw gp, 0x18(sp)           |         gp = *(var_18h);
                                         |         if (v0 != 0) {
    0x00003a30 bnez v0, 0x3b00           |             goto label_43;
                                         |         }
    0x00003a34 lb v0, 0x24c(sp)          |         v0 = *(var_24ch);
    0x00003a38 lw t9, -0x7efc(gp)        |         t9 = sym.usage;
                                         |         if (v0 != 0) {
    0x00003a3c bnez v0, 0x3d08           |             goto label_16;
                                         |         }
    0x00003a40 lw s0, 4(s1)              |         s0 = *((s1 + 1));
    0x00003a44 addiu s1, s2, 1           |         s1 = s2 + 1;
    0x00003a48 sw s1, 0x40(sp)           |         *(var_40h) = s1;
                                         |         if (s0 != 0) {
    0x00003a4c beqz s0, 0x3a90           |             
    0x00003a50 lbu v1, (s0)              |             v1 = *(s0);
    0x00003a54 addiu v0, zero, 0x2d      |             v0 = 0x2d;
    0x00003a58 lw a1, -0x7fd8(gp)        |             a1 = *(gp);
                                         |             if (v1 == v0) {
    0x00003a5c beq v1, v0, 0x3a90        |                 goto label_44;
                                         |             }
    0x00003a60 lw t9, -0x7cec(gp)        |             t9 = sym.imp.strspn;
                                         |             /* str.0123456789 */
    0x00003a64 addiu a1, a1, 0x2104      |             a1 += 0x2104;
    0x00003a68 move a0, s0               |             a0 = s0;
    0x00003a6c jalr t9                   |             t9 ();
    0x00003a70 lw gp, 0x18(sp)           |             gp = *(var_18h);
    0x00003a74 move a0, s0               |             a0 = s0;
    0x00003a78 lw t9, -0x7c68(gp)        |             t9 = sym.imp.strlen;
    0x00003a7c sw v0, 0x38(sp)           |             *(var_38h) = v0;
    0x00003a80 jalr t9                   |             t9 ();
    0x00003a84 lw v1, 0x38(sp)           |             v1 = *(var_38h);
    0x00003a88 lw gp, 0x18(sp)           |             gp = *(var_18h);
                                         |             if (v1 != v0) {
    0x00003a8c bne v1, v0, 0x3f8c        |                 goto label_45;
                                         |             }
                                         |         }
                                         | label_44:
    0x00003a90 addiu v0, zero, 0x2d      |         v0 = 0x2d;
    0x00003a94 sh v0, 0x24c(sp)          |         *(var_24ch) = v0;
    0x00003a98 move s2, s1               |         s2 = s1;
    0x00003a9c b 0x357c                  |         goto label_0;
                                         |     }
    0x00003aa0 lw t9, -0x7ed8(gp)        |     t9 = sym.parse_sar_I_opt;
    0x00003aa4 lw a3, -0x7fc8(gp)        |     a3 = *(gp);
    0x00003aa8 lw a2, -0x7fac(gp)        |     a2 = *(gp);
                                         |     do {
                                         | label_9:
    0x00003aac addiu a1, sp, 0x40        |         a1 = sp + 0x40;
    0x00003ab0 move a0, s3               |         a0 = s3;
    0x00003ab4 jalr t9                   |         t9 ();
    0x00003ab8 lw gp, 0x18(sp)           |         gp = *(var_18h);
                                         |         if (v0 != 0) {
    0x00003abc bnez v0, 0x3d04           |             goto label_11;
                                         |         }
    0x00003ac0 lw s2, 0x40(sp)           |         s2 = *(var_40h);
    0x00003ac4 b 0x357c                  |         goto label_0;
                                         | label_41:
    0x00003ac8 lw t9, -0x7ce0(gp)        |         t9 = sym.imp.strtol;
    0x00003acc addiu a0, s0, 6           |         a0 = s0 + 6;
    0x00003ad0 addiu a2, zero, 0xa       |         a2 = 0xa;
    0x00003ad4 move a1, zero             |         a1 = 0;
    0x00003ad8 jalr t9                   |         t9 ();
    0x00003adc lw gp, 0x18(sp)           |         gp = *(var_18h);
    0x00003ae0 sltiu v1, v0, 3           |         v1 = (v0 < 3) ? 1 : 0;
    0x00003ae4 lw a0, -0x7ed4(gp)        |         a0 = *(gp);
    0x00003ae8 sw v0, (a0)               |         *(a0) = v0;
                                         |         if (v1 == 0) {
    0x00003aec beqz v1, 0x3d04           |             goto label_11;
                                         |         }
                                         | label_18:
    0x00003af0 lw s2, 0x40(sp)           |         s2 = *(var_40h);
    0x00003af4 addiu s2, s2, 1           |         s2++;
    0x00003af8 sw s2, 0x40(sp)           |         *(var_40h) = s2;
    0x00003afc b 0x357c                  |         goto label_0;
                                         | label_43:
    0x00003b00 lw a1, -0x7fd8(gp)        |         a1 = *(gp);
    0x00003b04 lw t9, -0x7bd0(gp)        |         t9 = sym.imp.strcmp;
                                         |         /* esilref: '-f' */
    0x00003b08 addiu a1, a1, 0x2110      |         a1 += 0x2110;
    0x00003b0c move a0, s0               |         a0 = s0;
    0x00003b10 jalr t9                   |         t9 ();
    0x00003b14 lw gp, 0x18(sp)           |         gp = *(var_18h);
                                         |         if (v0 != 0) {
    0x00003b18 bnez v0, 0x3bd0           |             goto label_46;
                                         |         }
    0x00003b1c lb v0, 0x4c(sp)           |         v0 = *(var_4ch);
    0x00003b20 lw v0, 0x2c(sp)           |         v0 = *(var_2ch);
                                         |         if (v0 != 0) {
    0x00003b24 bnez v0, 0x3d04           |             goto label_11;
                                         |         }
    0x00003b28 addiu v0, s2, 1           |         v0 = s2 + 1;
                                         |         if (v0 != 0) {
    0x00003b2c bnez v0, 0x3d04           |             goto label_11;
                                         |         }
    0x00003b30 lw s0, 4(s1)              |         s0 = *((s1 + 1));
    0x00003b34 sw v0, 0x40(sp)           |         *(var_40h) = v0;
                                         |         if (s0 == 0) {
    0x00003b38 beqz s0, 0x3cbc           |             goto label_47;
                                         |         }
    0x00003b3c lbu v1, (s0)              |         v1 = *(s0);
    0x00003b40 addiu v0, zero, 0x2d      |         v0 = 0x2d;
    0x00003b44 lw a1, -0x7fd8(gp)        |         a1 = *(gp);
                                         |         if (v1 == v0) {
    0x00003b48 beq v1, v0, 0x3cbc        |             goto label_47;
                                         |         }
    0x00003b4c lw t9, -0x7cec(gp)        |         t9 = sym.imp.strspn;
                                         |         /* str.0123456789 */
    0x00003b50 addiu a1, a1, 0x2104      |         a1 += 0x2104;
    0x00003b54 move a0, s0               |         a0 = s0;
    0x00003b58 jalr t9                   |         t9 ();
    0x00003b5c lw gp, 0x18(sp)           |         gp = *(var_18h);
    0x00003b60 move a0, s0               |         a0 = s0;
    0x00003b64 lw t9, -0x7c68(gp)        |         t9 = sym.imp.strlen;
    0x00003b68 move s1, v0               |         s1 = v0;
    0x00003b6c jalr t9                   |         t9 ();
    0x00003b70 lw gp, 0x18(sp)           |         gp = *(var_18h);
                                         |         if (s1 == v0) {
    0x00003b74 beq s1, v0, 0x3cbc        |             goto label_47;
                                         |         }
    0x00003b78 lw t9, -0x7c88(gp)        |         t9 = sym.imp.strncpy;
    0x00003b7c addiu v1, sp, 0x4c        |         v1 = sp + 0x4c;
    0x00003b80 addiu s2, s2, 2           |         s2 += 2;
    0x00003b84 move a0, v1               |         a0 = v1;
    0x00003b88 addiu a2, zero, 0x200     |         a2 = aav.0x00000200;
    0x00003b8c move a1, s0               |         a1 = s0;
    0x00003b90 sw s2, 0x40(sp)           |         *(var_40h) = s2;
    0x00003b94 jalr t9                   |         t9 ();
    0x00003b98 lw gp, 0x18(sp)           |         gp = *(var_18h);
    0x00003b9c addiu a2, zero, -1        |         a2 = -1;
    0x00003ba0 move a1, zero             |         a1 = 0;
    0x00003ba4 lw t9, -0x7ed0(gp)        |         t9 = sym.check_alt_sa_dir;
    0x00003ba8 move a0, v0               |         a0 = v0;
    0x00003bac sb zero, 0x24b(sp)        |         *(var_24bh) = 0;
    0x00003bb0 bal 0x6bfc                |         sym_check_alt_sa_dir ();
    0x00003bb4 lw gp, 0x18(sp)           |         gp = *(var_18h);
    0x00003bb8 lw s2, 0x40(sp)           |         s2 = *(var_40h);
    0x00003bbc b 0x357c                  |         goto label_0;
                                         | label_42:
    0x00003bc0 lw t9, -0x7ecc(gp)        |         t9 = sym.parse_sa_P_opt;
    0x00003bc4 lw a3, -0x7fc8(gp)        |         a3 = *(gp);
    0x00003bc8 lw a2, -0x7fac(gp)        |         a2 = *(gp);
    0x00003bcc b 0x3aac                  |         
                                         |     } while (1);
                                         | label_46:
    0x00003bd0 lw a1, -0x7fd8(gp)        |     a1 = *(gp);
    0x00003bd4 lw t9, -0x7bd0(gp)        |     t9 = sym.imp.strcmp;
                                         |     /* esilref: '-s' */
    0x00003bd8 addiu a1, a1, 0x2114      |     a1 += 0x2114;
    0x00003bdc move a0, s0               |     a0 = s0;
    0x00003be0 jalr t9                   |     t9 ();
    0x00003be4 lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     if (v0 == 0) {
    0x00003be8 beqz v0, 0x3fdc           |         goto label_48;
                                         |     }
    0x00003bec lw a1, -0x7fd8(gp)        |     a1 = *(gp);
    0x00003bf0 lw t9, -0x7bd0(gp)        |     t9 = sym.imp.strcmp;
                                         |     /* esilref: '-e' */
    0x00003bf4 addiu a1, a1, 0x2124      |     a1 += 0x2124;
    0x00003bf8 move a0, s0               |     a0 = s0;
    0x00003bfc jalr t9                   |     t9 ();
    0x00003c00 lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     if (v0 == 0) {
    0x00003c04 beqz v0, 0x3fc8           |         goto label_49;
                                         |     }
    0x00003c08 lw a1, -0x7fd8(gp)        |     a1 = *(gp);
    0x00003c0c lw t9, -0x7bd0(gp)        |     t9 = sym.imp.strcmp;
                                         |     /* esilref: '-i' */
    0x00003c10 addiu a1, a1, 0x2134      |     a1 += 0x2134;
    0x00003c14 move a0, s0               |     a0 = s0;
    0x00003c18 jalr t9                   |     t9 ();
    0x00003c1c lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     if (v0 != 0) {
    0x00003c20 bnez v0, 0x4018           |         goto label_50;
                                         |     }
    0x00003c24 lw s0, 4(s1)              |     s0 = *((s1 + 1));
    0x00003c28 addiu v0, s2, 1           |     v0 = s2 + 1;
    0x00003c2c sw v0, 0x40(sp)           |     *(var_40h) = v0;
                                         |     if (s0 == 0) {
    0x00003c30 beqz s0, 0x3d04           |         goto label_11;
                                         |     }
    0x00003c34 lw a1, -0x7fd8(gp)        |     a1 = *(gp);
    0x00003c38 lw t9, -0x7cec(gp)        |     t9 = sym.imp.strspn;
                                         |     /* str.0123456789 */
    0x00003c3c addiu a1, a1, 0x2104      |     a1 += 0x2104;
    0x00003c40 move a0, s0               |     a0 = s0;
    0x00003c44 jalr t9                   |     t9 ();
    0x00003c48 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x00003c4c move a0, s0               |     a0 = s0;
    0x00003c50 lw t9, -0x7c68(gp)        |     t9 = sym.imp.strlen;
    0x00003c54 move s1, v0               |     s1 = v0;
    0x00003c58 jalr t9                   |     t9 ();
    0x00003c5c lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     if (s1 != v0) {
    0x00003c60 bne s1, v0, 0x3d04        |         goto label_11;
                                         |     }
    0x00003c64 lw t9, -0x7ce0(gp)        |     t9 = sym.imp.strtol;
    0x00003c68 addiu s2, s2, 2           |     s2 += 2;
    0x00003c6c addiu a2, zero, 0xa       |     a2 = 0xa;
    0x00003c70 move a1, zero             |     a1 = 0;
    0x00003c74 move a0, s0               |     a0 = s0;
    0x00003c78 sw s2, 0x40(sp)           |     *(var_40h) = s2;
    0x00003c7c jalr t9                   |     t9 ();
    0x00003c80 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x00003c84 lw v1, -0x7fa0(gp)        |     v1 = *(gp);
    0x00003c88 sw v0, (v1)               |     *(v1) = v0;
                                         |     if (v0 <= 0) {
    0x00003c8c blez v0, 0x3d04           |         goto label_11;
                                         |     }
    0x00003c90 lw v1, -0x7fac(gp)        |     v1 = *(gp);
    0x00003c94 lw s2, 0x40(sp)           |     s2 = *(var_40h);
    0x00003c98 lw v0, (v1)               |     v0 = *(v1);
    0x00003c9c ori v0, v0, 0x10          |     v0 |= 0x10;
    0x00003ca0 sw v0, (v1)               |     *(v1) = v0;
    0x00003ca4 b 0x357c                  |     goto label_0;
                                         | label_39:
    0x00003ca8 lw v0, 0xc(v0)            |     v0 = *((v0 + 3));
    0x00003cac lw a1, 0x34(sp)           |     a1 = *(var_34h);
                                         |     if (v0 != 0) {
    0x00003cb0 bnez v0, 0x369c           |         goto label_1;
                                         |     }
    0x00003cb4 lb v0, 0x24c(sp)          |     v0 = *(var_24ch);
    0x00003cb8 b 0x36cc                  |     goto label_2;
                                         | label_47:
    0x00003cbc lw t9, -0x7ee0(gp)        |     t9 = sym.set_default_file;
    0x00003cc0 addiu a2, zero, -1        |     a2 = -1;
    0x00003cc4 move a1, zero             |     a1 = 0;
    0x00003cc8 addiu a0, sp, 0x4c        |     a0 = sp + 0x4c;
    0x00003ccc bal 0x6a38                |     sym_set_default_file ();
    0x00003cd0 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x00003cd4 lw s2, 0x40(sp)           |     s2 = *(var_40h);
    0x00003cd8 b 0x357c                  |     goto label_0;
                                         | label_34:
    0x00003cdc lw v0, -0x7be8(gp)        |     v0 = *((gp - 7930));
                                         |     if (v0 == 0) {
    0x00003ce0 beqz v0, 0x435c           |         goto label_51;
                                         |     }
    0x00003ce4 lw s1, -0x7fa0(gp)        |     s1 = *(gp);
    0x00003ce8 lw v0, (s1)               |     v0 = *(s1);
    0x00003cec lb v0, 0x24c(sp)          |     v0 = *(var_24ch);
                                         |     if (v0 == 0) {
    0x00003cf0 beqz v0, 0x3d04           |         goto label_11;
                                         |     }
                                         | label_35:
    0x00003cf4 lw v0, 0x2c(sp)           |     v0 = *(var_2ch);
                                         |     if (v0 == 0) {
    0x00003cf8 beqz v0, 0x3728           |         goto label_3;
                                         |     }
    0x00003cfc andi v1, v1, 4            |     v1 &= 4;
                                         |     if (v0 == 0) {
    0x00003d00 beqz v0, 0x372c           |         goto label_4;
                                         |     }
                                         |     do {
                                         | label_11:
    0x00003d04 lw t9, -0x7efc(gp)        |         t9 = sym.usage;
                                         | label_16:
    0x00003d08 lw a0, (s3)               |         a0 = *(s3);
    0x00003d0c bal 0x4558                |         sym_usage ();
                                         | label_37:
    0x00003d10 addiu a0, sp, 0x44        |         a0 = sp + 0x44;
    0x00003d14 jalr t9                   |         t9 ();
    0x00003d18 addiu s2, zero, -1        |         s2 = -1;
    0x00003d1c lw gp, 0x18(sp)           |         gp = *(var_18h);
                                         |         if (v0 == s2) {
    0x00003d20 beq v0, s2, 0x4374        |             goto label_52;
                                         |         }
    0x00003d24 lw t9, -0x7cb4(gp)        |         t9 = sym.imp.fork;
    0x00003d28 jalr t9                   |         t9 ();
    0x00003d2c nop                       |         
    0x00003d30 lw gp, 0x18(sp)           |         gp = *(var_18h);
                                         |         if (v0 == s2) {
    0x00003d34 beq v0, s2, 0x4384        |             goto label_53;
                                         |         }
    0x00003d38 lw t9, -0x7bc4(gp)        |         t9 = sym.imp.dup2;
                                         |         if (v0 != 0) {
    0x00003d3c beqz v0, 0x3db4           |             
    0x00003d40 lw a0, 0x44(sp)           |             a0 = *(var_44h);
    0x00003d44 move a1, zero             |             a1 = 0;
    0x00003d48 jalr t9                   |             t9 ();
    0x00003d4c lw gp, 0x18(sp)           |             gp = *(var_18h);
                                         |             if (v0 < 0) {
    0x00003d50 bltz v0, 0x431c           |                 goto label_54;
                                         |             }
    0x00003d54 lw t9, -0x7ce4(gp)        |             t9 = sym.imp.close;
    0x00003d58 lw a0, 0x44(sp)           |             a0 = *(var_44h);
    0x00003d5c jalr t9                   |             t9 ();
    0x00003d60 lw gp, 0x18(sp)           |             gp = *(var_18h);
    0x00003d64 lw t9, -0x7ce4(gp)        |             t9 = sym.imp.close;
    0x00003d68 lw a0, 0x48(sp)           |             a0 = *(var_48h);
    0x00003d6c jalr t9                   |             t9 ();
    0x00003d70 lw gp, 0x18(sp)           |             gp = *(var_18h);
    0x00003d74 lw t9, -0x7ec8(gp)        |             t9 = sym.read_stats;
    0x00003d78 bal 0x647c                |             sym_read_stats ();
    0x00003d7c nop                       |             
    0x00003d80 lw gp, 0x18(sp)           |             gp = *(var_18h);
    0x00003d84 b 0x37a8                  |             goto label_5;
                                         | label_33:
    0x00003d88 lw a0, -0x7fc8(gp)        |             a0 = *(gp);
    0x00003d8c move a1, s0               |             a1 = s0;
    0x00003d90 bal 0xb208                |             sym_set_bitmaps ();
    0x00003d94 lw gp, 0x18(sp)           |             gp = *(var_18h);
    0x00003d98 b 0x36e8                  |             goto label_6;
                                         | label_36:
    0x00003d9c bal 0x1b53c               |             sym_get_devmap_major ();
    0x00003da0 nop                       |             
    0x00003da4 lw gp, 0x18(sp)           |             gp = *(var_18h);
    0x00003da8 lw v1, -0x7ec4(gp)        |             v1 = *(gp);
    0x00003dac sw v0, (v1)               |             *(v1) = v0;
    0x00003db0 b 0x3734                  |             goto label_7;
                                         |         }
    0x00003db4 lw a0, 0x48(sp)           |         a0 = *(var_48h);
    0x00003db8 addiu a1, zero, 1         |         a1 = 1;
    0x00003dbc jalr t9                   |         t9 ();
    0x00003dc0 lw gp, 0x18(sp)           |         gp = *(var_18h);
                                         |         if (v0 < 0) {
    0x00003dc4 bltz v0, 0x431c           |             goto label_54;
                                         |         }
    0x00003dc8 lw t9, -0x7ce4(gp)        |         t9 = sym.imp.close;
    0x00003dcc lw s4, -0x7fd8(gp)        |         s4 = *(gp);
    0x00003dd0 lw a0, 0x44(sp)           |         a0 = *(var_44h);
    0x00003dd4 jalr t9                   |         t9 ();
    0x00003dd8 lw gp, 0x18(sp)           |         gp = *(var_18h);
    0x00003ddc lw t9, -0x7ce4(gp)        |         t9 = sym.imp.close;
    0x00003de0 lw s2, -0x7ec0(gp)        |         s2 = sym.salloc;
    0x00003de4 lw a0, 0x48(sp)           |         a0 = *(var_48h);
    0x00003de8 jalr t9                   |         t9 ();
                                         |         /* esilref: 'sadc' */
    0x00003dec addiu a1, s4, 0x1f74      |         a1 = s4 + 0x1f74;
    0x00003df0 move t9, s2               |         t9 = s2;
    0x00003df4 move a0, zero             |         a0 = 0;
    0x00003df8 bal 0x485c                |         sym_salloc ();
    0x00003dfc lw v0, (s1)               |         v0 = *(s1);
    0x00003e00 lw gp, 0x18(sp)           |         gp = *(var_18h);
    0x00003e04 bltz v0, 0x3d04           |         
                                         |     } while (v0 < 0);
    0x00003e08 lw a3, -0x7fd8(gp)        |     a3 = *(gp);
                                         |     if (v0 != 0) {
    0x00003e0c bnez v0, 0x3ff0           |         goto label_55;
                                         |     }
    0x00003e10 addiu v0, zero, 0x31      |     v0 = 0x31;
    0x00003e14 addiu s1, sp, 0x44c       |     s1 = sp + 0x44c;
    0x00003e18 move a1, s1               |     a1 = s1;
    0x00003e1c addiu a0, zero, 1         |     a0 = 1;
    0x00003e20 sh v0, 0x44c(sp)          |     *(var_44ch) = v0;
    0x00003e24 move t9, s2               |     t9 = s2;
    0x00003e28 addiu s6, zero, 2         |     s6 = 2;
    0x00003e2c bal 0x485c                |     sym_salloc ();
                                         | label_10:
    0x00003e30 move a1, s1               |     a1 = s1;
    0x00003e34 move t9, s2               |     t9 = s2;
    0x00003e38 move a0, s6               |     a0 = s6;
    0x00003e3c bal 0x485c                |     sym_salloc ();
    0x00003e40 lw v0, (s5)               |     v0 = *(s5);
    0x00003e44 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x00003e48 addiu s3, s6, 1           |     s3 = s6 + 1;
                                         |     if (v0 >= 0) {
    0x00003e4c bltz v0, 0x3e90           |         
    0x00003e50 lw a3, -0x7fd8(gp)        |         a3 = *(gp);
    0x00003e54 lw t9, -0x7d00(gp)        |         t9 = sym.imp.__sprintf_chk
    0x00003e58 addiu v0, v0, 1           |         v0++;
                                         |         /* esilref: '&ld' */
    0x00003e5c addiu a3, a3, 0x21c0      |         a3 += 0x21c0;
    0x00003e60 addiu a2, zero, 0x400     |         a2 = 0x400;
    0x00003e64 addiu a1, zero, 1         |         a1 = 1;
    0x00003e68 move a0, s1               |         a0 = s1;
    0x00003e6c sw v0, 0x10(sp)           |         *(var_10h) = v0;
    0x00003e70 jalr t9                   |         t9 ();
    0x00003e74 move a0, s3               |         a0 = s3;
    0x00003e78 move a1, s1               |         a1 = s1;
    0x00003e7c move t9, s2               |         t9 = s2;
    0x00003e80 addiu s6, s6, 2           |         s6 += 2;
    0x00003e84 bal 0x485c                |         sym_salloc ();
    0x00003e88 lw gp, 0x18(sp)           |         gp = *(var_18h);
    0x00003e8c move s3, s6               |         s3 = s6;
                                         |     }
    0x00003e90 lw a1, -0x7fd8(gp)        |     a1 = *(gp);
    0x00003e94 move a0, s3               |     a0 = s3;
    0x00003e98 move t9, s2               |     t9 = s2;
                                         |     /* esilref: '-Z' */
    0x00003e9c addiu a1, a1, 0x21c4      |     a1 += 0x21c4;
    0x00003ea0 bal 0x485c                |     sym_salloc ();
    0x00003ea4 lb v0, 0x24c(sp)          |     v0 = *(var_24ch);
    0x00003ea8 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x00003eac addiu s5, s3, 1           |     s5 = s3 + 1;
                                         |     if (v0 == 0) {
    0x00003eb0 beqz v0, 0x4084           |         goto label_56;
                                         |     }
    0x00003eb4 lw v0, (s0)               |     v0 = *(s0);
    0x00003eb8 andi v0, v0, 0x400        |     v0 &= 0x400;
    0x00003ebc lw a1, -0x7fd8(gp)        |     a1 = *(gp);
                                         |     if (v0 == 0) {
    0x00003ec0 bnel v0, zero, 0x4150     |         goto label_57;
                                         |     }
                                         | label_15:
    0x00003ec4 lw a1, -0x7fd8(gp)        |     a1 = *(gp);
    0x00003ec8 move a0, s5               |     a0 = s5;
    0x00003ecc move t9, s2               |     t9 = s2;
                                         |     /* esilref: '-S' */
    0x00003ed0 addiu a1, a1, 0x21c8      |     a1 += 0x21c8;
    0x00003ed4 bal 0x485c                |     sym_salloc ();
    0x00003ed8 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x00003edc addiu a0, s5, 1           |     a0 = s5 + 1;
    0x00003ee0 move t9, s2               |     t9 = s2;
    0x00003ee4 lw a1, -0x7fd8(gp)        |     a1 = *(gp);
    0x00003ee8 addiu s3, s5, 3           |     s3 = s5 + 3;
                                         |     /* str.XALL */
    0x00003eec addiu a1, a1, 0x21cc      |     a1 += 0x21cc;
    0x00003ef0 bal 0x485c                |     sym_salloc ();
    0x00003ef4 addiu a1, sp, 0x24c       |     a1 = sp + 0x24c;
    0x00003ef8 move t9, s2               |     t9 = s2;
    0x00003efc addiu a0, s5, 2           |     a0 = s5 + 2;
    0x00003f00 bal 0x485c                |     sym_salloc ();
    0x00003f04 lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         | label_13:
    0x00003f08 lw s0, -0x7fd0(gp)        |     s0 = *(gp);
    0x00003f0c sll s3, s3, 2             |     s3 <<= 2;
    0x00003f10 lw a0, -0x7fd8(gp)        |     a0 = *(gp);
    0x00003f14 addu v0, s0, s3           |     v0 = s0 + s3;
    0x00003f18 lw t9, -0x7c74(gp)        |     t9 = sym.imp.execv;
    0x00003f1c move a1, s0               |     a1 = s0;
                                         |     /* str._usr_libexec_sa_sadc */
    0x00003f20 addiu a0, a0, 0x1f64      |     a0 += 0x1f64;
    0x00003f24 sw zero, (v0)             |     *(v0) = 0;
    0x00003f28 jalr t9                   |     t9 ();
    0x00003f2c lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x00003f30 move a1, s0               |     a1 = s0;
    0x00003f34 lw t9, -0x7c1c(gp)        |     t9 = sym.imp.execvp;
                                         |     /* esilref: 'sadc' */
    0x00003f38 addiu a0, s4, 0x1f74      |     a0 = s4 + 0x1f74;
    0x00003f3c jalr t9                   |     t9 ();
    0x00003f40 lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     /* esilref: 'sadc' */
    0x00003f44 addiu a3, s4, 0x1f74      |     a3 = s4 + 0x1f74;
    0x00003f48 addiu a1, zero, 1         |     a1 = 1;
    0x00003f4c lw v0, -0x7be8(gp)        |     v0 = *((gp - 7930));
    0x00003f50 lw a2, -0x7fd8(gp)        |     a2 = *(gp);
    0x00003f54 lw t9, -0x7ccc(gp)        |     t9 = sym.imp.__fprintf_chk;
    0x00003f58 lw a0, (v0)               |     a0 = *(v0);
                                         |     /* str.Cannot_find_the_data_collector___s__n */
    0x00003f5c addiu a2, a2, 0x21d4      |     a2 += 0x21d4;
    0x00003f60 jalr t9                   |     t9 ();
    0x00003f64 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x00003f68 lw a0, -0x7fd8(gp)        |     a0 = *(gp);
    0x00003f6c lw t9, -0x7c30(gp)        |     t9 = sym.imp.perror;
                                         |     /* str.exec */
    0x00003f70 addiu a0, a0, 0x21fc      |     a0 += 0x21fc;
                                         | label_20:
    0x00003f74 jalr t9                   |     t9 ();
    0x00003f78 nop                       |     
    0x00003f7c lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x00003f80 lw t9, -0x7c54(gp)        |     t9 = sym.imp.exit;
    0x00003f84 addiu a0, zero, 4         |     a0 = 4;
    0x00003f88 jalr t9                   |     t9 ();
                                         | label_45:
    0x00003f8c lw t9, -0x7c88(gp)        |     t9 = sym.imp.strncpy;
    0x00003f90 addiu s2, s2, 2           |     s2 += 2;
    0x00003f94 addiu a2, zero, 0x200     |     a2 = aav.0x00000200;
    0x00003f98 move a1, s0               |     a1 = s0;
    0x00003f9c addiu a0, sp, 0x24c       |     a0 = sp + 0x24c;
    0x00003fa0 sw s2, 0x40(sp)           |     *(var_40h) = s2;
    0x00003fa4 jalr t9                   |     t9 ();
    0x00003fa8 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x00003fac sb zero, 0x44b(sp)        |     *(var_44bh) = 0;
    0x00003fb0 b 0x357c                  |     goto label_0;
                                         | label_40:
    0x00003fb4 lw v0, 0xc(v0)            |     v0 = *((v0 + 3));
    0x00003fb8 lw a1, 0x34(sp)           |     a1 = *(var_34h);
                                         |     if (v0 != 0) {
    0x00003fbc bnez v0, 0x369c           |         goto label_1;
                                         |     }
    0x00003fc0 lw s0, -0x7fac(gp)        |     s0 = *(gp);
    0x00003fc4 b 0x36d8                  |     goto label_8;
                                         | label_49:
    0x00003fc8 lw a3, -0x7fd8(gp)        |     a3 = *(gp);
    0x00003fcc lw t9, -0x7ebc(gp)        |     t9 = sym.parse_timestamp;
    0x00003fd0 lw a2, -0x7f88(gp)        |     a2 = *(gp);
                                         |     /* str.18:00:00 */
    0x00003fd4 addiu a3, a3, 0x2128      |     a3 += 0x2128;
    0x00003fd8 b 0x3aac                  |     goto label_9;
                                         | label_48:
    0x00003fdc lw a3, -0x7fd8(gp)        |     a3 = *(gp);
    0x00003fe0 lw t9, -0x7ebc(gp)        |     t9 = sym.parse_timestamp;
    0x00003fe4 lw a2, -0x7f90(gp)        |     a2 = *(gp);
                                         |     /* str.08:00:00 */
    0x00003fe8 addiu a3, a3, 0x2118      |     a3 += 0x2118;
    0x00003fec b 0x3aac                  |     goto label_9;
                                         | label_55:
    0x00003ff0 lw t9, -0x7d00(gp)        |     t9 = sym.imp.__sprintf_chk
    0x00003ff4 addiu s1, sp, 0x44c       |     s1 = sp + 0x44c;
    0x00003ff8 sw v0, 0x10(sp)           |     *(var_10h) = v0;
                                         |     /* esilref: '&ld' */
    0x00003ffc addiu a3, a3, 0x21c0      |     a3 += 0x21c0;
    0x00004000 addiu a2, zero, 0x400     |     a2 = 0x400;
    0x00004004 addiu a1, zero, 1         |     a1 = 1;
    0x00004008 move a0, s1               |     a0 = s1;
    0x0000400c jalr t9                   |     t9 ();
    0x00004010 addiu s6, zero, 1         |     s6 = 1;
    0x00004014 b 0x3e30                  |     goto label_10;
                                         | label_50:
    0x00004018 lw a1, -0x7fd8(gp)        |     a1 = *(gp);
    0x0000401c lw t9, -0x7bd0(gp)        |     t9 = sym.imp.strcmp;
                                         |     /* esilref: '-m' */
    0x00004020 addiu a1, a1, 0x2138      |     a1 += 0x2138;
    0x00004024 move a0, s0               |     a0 = s0;
    0x00004028 jalr t9                   |     t9 ();
    0x0000402c lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     if (v0 == 0) {
    0x00004030 beqz v0, 0x4138           |         goto label_58;
                                         |     }
    0x00004034 lw a1, -0x7fd8(gp)        |     a1 = *(gp);
    0x00004038 lw t9, -0x7bd0(gp)        |     t9 = sym.imp.strcmp;
                                         |     /* esilref: '-n' */
    0x0000403c addiu a1, a1, 0x213c      |     a1 += 0x213c;
    0x00004040 move a0, s0               |     a0 = s0;
    0x00004044 jalr t9                   |     t9 ();
    0x00004048 lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     if (v0 != 0) {
    0x0000404c bnez v0, 0x4170           |         goto label_59;
                                         |     }
    0x00004050 lw v0, 4(s1)              |     v0 = *((s1 + 1));
    0x00004054 addiu s2, s2, 1           |     s2++;
    0x00004058 sw s2, 0x40(sp)           |     *(var_40h) = s2;
                                         |     if (v0 == 0) {
    0x0000405c beqz v0, 0x3d04           |         goto label_11;
                                         |     }
    0x00004060 lw t9, -0x7eb8(gp)        |     t9 = sym.parse_sar_n_opt;
                                         | label_14:
    0x00004064 lw a2, -0x7fc8(gp)        |     a2 = *(gp);
    0x00004068 addiu a1, sp, 0x40        |     a1 = sp + 0x40;
    0x0000406c move a0, s3               |     a0 = s3;
    0x00004070 jalr t9                   |     t9 ();
    0x00004074 lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     if (v0 != 0) {
    0x00004078 bnez v0, 0x3d04           |         goto label_11;
                                         |     }
    0x0000407c lw s2, 0x40(sp)           |     s2 = *(var_40h);
    0x00004080 b 0x357c                  |     goto label_0;
                                         | label_56:
    0x00004084 lw a1, -0x7fd8(gp)        |     a1 = *(gp);
    0x00004088 move a0, s5               |     a0 = s5;
    0x0000408c move t9, s2               |     t9 = s2;
                                         |     /* esilref: '-S' */
    0x00004090 addiu a1, a1, 0x21c8      |     a1 += 0x21c8;
    0x00004094 bal 0x485c                |     sym_salloc ();
    0x00004098 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x0000409c lui v0, 0x554e            |     v0 = 0x554e5f41;
    0x000040a0 addiu v0, v0, 0x5f41      |     
    0x000040a4 lw s0, -0x7fc8(gp)        |     s0 = *(gp);
    0x000040a8 sw v0, 0x44c(sp)          |     *(var_44ch) = v0;
    0x000040ac addiu v0, zero, 0x4c4c    |     v0 = 0x4c4c;
    0x000040b0 addiu s6, s3, 2           |     s6 = s3 + 2;
    0x000040b4 sh v0, 4(s1)              |     *(var_4h) = v0;
    0x000040b8 sb zero, 6(s1)            |     *(var_6h) = 0;
    0x000040bc addiu fp, s0, 0x9c        |     fp = s0 + 0x9c;
    0x000040c0 addiu s5, zero, 0x2c      |     s5 = 0x2c;
    0x000040c4 b 0x40d4                  |     goto label_60;
                                         | label_12:
    0x000040c8 addiu s0, s0, 4           |     s0 += 4;
                                         |     do {
    0x000040cc move a1, s1               |         a1 = s1;
                                         |         if (fp == s0) {
    0x000040d0 beq fp, s0, 0x4120        |             goto label_61;
                                         |         }
                                         | label_60:
    0x000040d4 lw s7, (s0)               |         s7 = *(s0);
    0x000040d8 lw v0, 4(s7)              |         v0 = *((s7 + 1));
    0x000040dc andi v0, v0, 2            |         v0 &= 2;
    0x000040e0 beql v0, zero, 0x40cc     |         
                                         |     } while (v0 == 0);
    0x000040e4 addiu s0, s0, 4           |     s0 += 4;
    0x000040e8 lw t9, -0x7c68(gp)        |     t9 = sym.imp.strlen;
    0x000040ec move a0, s1               |     a0 = s1;
    0x000040f0 jalr t9                   |     t9 ();
    0x000040f4 addu v0, s1, v0           |     v0 = s1 + v0;
    0x000040f8 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x000040fc sb s5, (v0)               |     *(v0) = s5;
    0x00004100 sb zero, 1(v0)            |     *(var_1h) = 0;
    0x00004104 lw a1, 0x50(s7)           |     a1 = *((s7 + 20));
    0x00004108 lw t9, -0x7ca4(gp)        |     t9 = sym.imp.__strcpy_chk;
    0x0000410c addiu a2, zero, 0x400     |     a2 = 0x400;
    0x00004110 addiu a0, v0, 1           |     a0 = v0 + 1;
    0x00004114 jalr t9                   |     t9 ();
    0x00004118 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x0000411c b 0x40c8                  |     goto label_12;
                                         | label_61:
    0x00004120 move t9, s2               |     t9 = s2;
    0x00004124 move a0, s6               |     a0 = s6;
    0x00004128 bal 0x485c                |     sym_salloc ();
    0x0000412c addiu s3, s3, 3           |     s3 += 3;
    0x00004130 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x00004134 b 0x3f08                  |     goto label_13;
                                         | label_58:
    0x00004138 lw v0, 4(s1)              |     v0 = *((s1 + 1));
    0x0000413c addiu s2, s2, 1           |     s2++;
    0x00004140 sw s2, 0x40(sp)           |     *(var_40h) = s2;
                                         |     if (v0 == 0) {
    0x00004144 beqz v0, 0x3d04           |         goto label_11;
                                         |     }
    0x00004148 lw t9, -0x7eb4(gp)        |     t9 = sym.parse_sar_m_opt;
    0x0000414c b 0x4064                  |     goto label_14;
                                         | label_57:
    0x00004150 move a0, s5               |     a0 = s5;
    0x00004154 addiu s3, s3, 2           |     s3 += 2;
    0x00004158 move t9, s2               |     t9 = s2;
                                         |     /* esilref: '-D' */
    0x0000415c addiu a1, a1, 0x20f8      |     a1 += 0x20f8;
    0x00004160 bal 0x485c                |     sym_salloc ();
    0x00004164 move s5, s3               |     s5 = s3;
    0x00004168 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x0000416c b 0x3ec4                  |     goto label_15;
                                         | label_59:
    0x00004170 lw t9, -0x7c68(gp)        |     t9 = sym.imp.strlen;
    0x00004174 move a0, s0               |     a0 = s0;
    0x00004178 jalr t9                   |     t9 ();
    0x0000417c move s1, v0               |     s1 = v0;
    0x00004180 addiu v0, v0, -2          |     v0 += -2;
    0x00004184 sltiu v0, v0, 2           |     v0 = (v0 < 2) ? 1 : 0;
    0x00004188 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x0000418c lbu a0, (s0)              |     a0 = *(s0);
                                         |     if (v0 == 0) {
    0x00004190 beqz v0, 0x4228           |         goto label_62;
                                         |     }
    0x00004194 addiu v0, zero, 0x2d      |     v0 = 0x2d;
    0x00004198 lw a1, -0x7fd8(gp)        |     a1 = *(gp);
                                         |     if (a0 == v0) {
    0x0000419c beq a0, v0, 0x42b4        |         goto label_63;
                                         |     }
    0x000041a0 lw v0, -0x7fa0(gp)        |     v0 = *(gp);
                                         | label_17:
    0x000041a4 lw a1, -0x7fd8(gp)        |     a1 = *(gp);
    0x000041a8 lw t9, -0x7cec(gp)        |     t9 = sym.imp.strspn;
    0x000041ac lw a2, (v0)               |     a2 = *(v0);
                                         |     /* str.0123456789 */
    0x000041b0 addiu a1, a1, 0x2104      |     a1 += 0x2104;
    0x000041b4 sw a2, 0x3c(sp)           |     *(var_3ch) = a2;
    0x000041b8 move a0, s0               |     a0 = s0;
    0x000041bc sw v0, 0x38(sp)           |     *(var_38h) = v0;
    0x000041c0 jalr t9                   |     t9 ();
    0x000041c4 lw a2, 0x3c(sp)           |     a2 = *(var_3ch);
    0x000041c8 lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     if (a2 < 0) {
    0x000041cc bltz a2, 0x427c           |         goto label_64;
                                         |     }
    0x000041d0 lw t9, -0x7efc(gp)        |     t9 = sym.usage;
                                         |     if (s1 != v0) {
    0x000041d4 bne s1, v0, 0x3d08        |         goto label_16;
                                         |     }
                                         |     if (a2 == 0) {
    0x000041d8 beqz a2, 0x3d08           |         goto label_16;
                                         |     }
    0x000041dc nop                       |     
    0x000041e0 lw s1, -0x7f7c(gp)        |     s1 = *(gp);
    0x000041e4 lw v0, (s1)               |     v0 = *(s1);
    0x000041e8 addiu s2, s2, 1           |     s2++;
                                         |     if (v0 != 0) {
    0x000041ec bnez v0, 0x3d04           |         goto label_11;
                                         |     }
    0x000041f0 lw t9, -0x7ce0(gp)        |     t9 = sym.imp.strtol;
    0x000041f4 addiu a2, zero, 0xa       |     a2 = 0xa;
    0x000041f8 move a1, zero             |     a1 = 0;
    0x000041fc move a0, s0               |     a0 = s0;
    0x00004200 sw s2, 0x40(sp)           |     *(var_40h) = s2;
    0x00004204 jalr t9                   |     t9 ();
    0x00004208 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x0000420c sw v0, (s1)               |     *(s1) = v0;
                                         |     if (v0 <= 0) {
    0x00004210 blez v0, 0x3d04           |         goto label_11;
                                         |     }
    0x00004214 lw s2, 0x40(sp)           |     s2 = *(var_40h);
    0x00004218 b 0x357c                  |     goto label_0;
                                         | label_23:
    0x0000421c lw t9, -0x7eb0(gp)        |     t9 = sym.which_sadc;
    0x00004220 bal 0x4774                |     sym_which_sadc ();
    0x00004224 nop                       |     
                                         | label_62:
    0x00004228 addiu v0, zero, 0x2d      |     v0 = 0x2d;
    0x0000422c lw v0, -0x7fa0(gp)        |     v0 = *(gp);
                                         |     if (a0 != v0) {
    0x00004230 bne a0, v0, 0x41a4        |         goto label_17;
                                         |     }
                                         | label_19:
    0x00004234 lw t9, -0x7eac(gp)        |     t9 = sym.parse_sar_opt;
    0x00004238 lw a3, -0x7fac(gp)        |     a3 = *(gp);
    0x0000423c lw a2, -0x7fc8(gp)        |     a2 = *(gp);
    0x00004240 sw zero, 0x10(sp)         |     *(var_10h) = 0;
    0x00004244 addiu a1, sp, 0x40        |     a1 = sp + 0x40;
    0x00004248 move a0, s3               |     a0 = s3;
    0x0000424c bal 0x9efc                |     sym_parse_sar_opt ();
    0x00004250 lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     if (v0 == 0) {
    0x00004254 beqz v0, 0x3af0           |         goto label_18;
                                         |     }
    0x00004258 addiu v1, zero, 1         |     v1 = 1;
    0x0000425c lw t9, -0x7efc(gp)        |     t9 = sym.usage;
                                         |     if (v0 == v1) {
    0x00004260 beq v0, v1, 0x3d08        |         goto label_16;
                                         |     }
                                         | label_21:
    0x00004264 lw t9, -0x7c54(gp)        |     t9 = sym.imp.exit;
    0x00004268 addiu a0, zero, 1         |     a0 = 1;
    0x0000426c jalr t9                   |     t9 ();
                                         | label_27:
    0x00004270 lw t9, -0x7ea8(gp)        |     t9 = sym.display_help;
    0x00004274 lw a0, (s3)               |     a0 = *(s3);
    0x00004278 bal 0x45c4                |     sym_display_help ();
                                         | label_64:
    0x0000427c addiu s2, s2, 1           |     s2++;
                                         |     if (s1 != v0) {
    0x00004280 bne s1, v0, 0x3d04        |         goto label_11;
                                         |     }
    0x00004284 lw t9, -0x7ce0(gp)        |     t9 = sym.imp.strtol;
    0x00004288 addiu a2, zero, 0xa       |     a2 = 0xa;
    0x0000428c move a1, zero             |     a1 = 0;
    0x00004290 move a0, s0               |     a0 = s0;
    0x00004294 sw s2, 0x40(sp)           |     *(var_40h) = s2;
    0x00004298 jalr t9                   |     t9 ();
    0x0000429c lw v1, 0x38(sp)           |     v1 = *(var_38h);
    0x000042a0 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x000042a4 sw v0, (v1)               |     *(v1) = v0;
                                         |     if (v0 < 0) {
    0x000042a8 bltz v0, 0x3d04           |         goto label_11;
                                         |     }
    0x000042ac lw s2, 0x40(sp)           |     s2 = *(var_40h);
    0x000042b0 b 0x357c                  |     goto label_0;
                                         | label_63:
    0x000042b4 lw t9, -0x7cec(gp)        |     t9 = sym.imp.strspn;
    0x000042b8 addiu s0, s0, 1           |     s0++;
                                         |     /* str.0123456789 */
    0x000042bc addiu a1, a1, 0x2104      |     a1 += 0x2104;
    0x000042c0 move a0, s0               |     a0 = s0;
    0x000042c4 jalr t9                   |     t9 ();
    0x000042c8 xori v1, s1, 2            |     v1 = s1 ^ 2;
    0x000042cc addiu a1, zero, 1         |     a1 = 1;
    0x000042d0 addiu a0, zero, 2         |     a0 = 2;
                                         |     if (v1 != 0) {
    0x000042d4 movz a0, a1, v1           |         a0 = a1;
                                         |     }
    0x000042d8 lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     if (v0 != a0) {
    0x000042dc bne v0, a0, 0x4234        |         goto label_19;
                                         |     }
    0x000042e0 lb v0, 0x4c(sp)           |     v0 = *(var_4ch);
    0x000042e4 lw v0, 0x2c(sp)           |     v0 = *(var_2ch);
                                         |     if (v0 != 0) {
    0x000042e8 bnez v0, 0x3d04           |         goto label_11;
                                         |     }
    0x000042ec addiu s2, s2, 1           |     s2++;
                                         |     if (v0 != 0) {
    0x000042f0 bnez v0, 0x3d04           |         goto label_11;
                                         |     }
    0x000042f4 lw t9, -0x7ce0(gp)        |     t9 = sym.imp.strtol;
    0x000042f8 sw s2, 0x40(sp)           |     *(var_40h) = s2;
    0x000042fc addiu a2, zero, 0xa       |     a2 = 0xa;
    0x00004300 move a1, zero             |     a1 = 0;
    0x00004304 move a0, s0               |     a0 = s0;
    0x00004308 jalr t9                   |     t9 ();
    0x0000430c sw v0, 0x2c(sp)           |     *(var_2ch) = v0;
    0x00004310 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x00004314 lw s2, 0x40(sp)           |     s2 = *(var_40h);
    0x00004318 b 0x357c                  |     goto label_0;
                                         | label_54:
    0x0000431c lw a0, -0x7fd8(gp)        |     a0 = *(gp);
    0x00004320 lw t9, -0x7c30(gp)        |     t9 = sym.imp.perror;
                                         |     /* str.dup2 */
    0x00004324 addiu a0, a0, 0x21b8      |     a0 += 0x21b8;
    0x00004328 b 0x3f74                  |     goto label_20;
                                         | label_32:
    0x0000432c lw a0, -0x7fd8(gp)        |     a0 = *(gp);
    0x00004330 lw t9, -0x7c34(gp)        |     t9 = sym.imp.fwrite;
    0x00004334 lw a3, (v0)               |     a3 = *(v0);
                                         |     /* str._f_and__o_options_are_mutually_exclusive_n */
    0x00004338 addiu a0, a0, 0x2140      |     a0 += 0x2140;
    0x0000433c addiu a2, zero, 0x29      |     a2 = 0x29;
                                         |     do {
    0x00004340 addiu a1, zero, 1         |         a1 = 1;
    0x00004344 jalr t9                   |         t9 ();
    0x00004348 lw gp, 0x18(sp)           |         gp = *(var_18h);
    0x0000434c b 0x4264                  |         goto label_21;
                                         | label_38:
    0x00004350 lw t9, -0x7c10(gp)        |         t9 = sym.imp.__stack_chk_fail;
    0x00004354 jalr t9                   |         t9 ();
    0x00004358 nop                       |         
                                         | label_51:
    0x0000435c lw a0, -0x7fd8(gp)        |         a0 = *(gp);
    0x00004360 lw t9, -0x7c34(gp)        |         t9 = sym.imp.fwrite;
    0x00004364 lw a3, (v0)               |         a3 = *(v0);
                                         |         /* str.Not_reading_from_a_system_activity_file__use__f_option__n */
    0x00004368 addiu a0, a0, 0x216c      |         a0 += 0x216c;
    0x0000436c addiu a2, zero, 0x38      |         a2 = 0x38;
    0x00004370 b 0x4340                  |         
                                         |     } while (1);
                                         | label_52:
    0x00004374 lw a0, -0x7fd8(gp)        |     a0 = *(gp);
    0x00004378 lw t9, -0x7c30(gp)        |     t9 = sym.imp.perror;
                                         |     /* str.pipe */
    0x0000437c addiu a0, a0, 0x21a8      |     a0 += 0x21a8;
    0x00004380 b 0x3f74                  |     goto label_20;
                                         | label_53:
    0x00004384 lw a0, -0x7fd8(gp)        |     a0 = *(gp);
    0x00004388 lw t9, -0x7c30(gp)        |     t9 = sym.imp.perror;
                                         |     /* str.fork */
    0x0000438c addiu a0, a0, 0x21b0      |     a0 += 0x21b0;
    0x00004390 b 0x3f74                  |     goto label_20;
                                         | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/sar @ 0x1d8bc */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) sym.ioc_init ()                  | void ioc_init () {
    0x0001d8bc lui gp, 2                     |     
    0x0001d8c0 addiu gp, gp, 0x294           |     
    0x0001d8c4 addu gp, gp, t9               |     gp += t9;
    0x0001d8c8 lw v0, -0x7bf8(gp)            |     v0 = *((gp - 7934));
    0x0001d8cc addiu sp, sp, -0x248          |     
    0x0001d8d0 lw t9, -0x7be4(gp)            |     t9 = sym.imp.fopen;
    0x0001d8d4 sw s1, 0x224(sp)              |     *(var_224h) = s1;
    0x0001d8d8 sw s0, 0x220(sp)              |     *(var_220h) = s0;
    0x0001d8dc lw s1, -0x7fd8(gp)            |     s1 = *(gp);
    0x0001d8e0 lw s0, -0x7fd8(gp)            |     s0 = *(gp);
    0x0001d8e4 sw v0, 0x50(sp)               |     *(var_50h) = v0;
    0x0001d8e8 lw v0, (v0)                   |     v0 = *(v0);
    0x0001d8ec sw gp, 0x30(sp)               |     *(var_30h) = gp;
    0x0001d8f0 sw ra, 0x244(sp)              |     *(var_244h) = ra;
    0x0001d8f4 sw fp, 0x240(sp)              |     *(var_240h) = fp;
    0x0001d8f8 sw s7, 0x23c(sp)              |     *(var_23ch) = s7;
    0x0001d8fc sw s6, 0x238(sp)              |     *(var_238h) = s6;
    0x0001d900 sw s5, 0x234(sp)              |     *(var_234h) = s5;
    0x0001d904 sw s4, 0x230(sp)              |     *(var_230h) = s4;
    0x0001d908 sw s3, 0x22c(sp)              |     *(var_22ch) = s3;
    0x0001d90c sw s2, 0x228(sp)              |     *(var_228h) = s2;
    0x0001d910 addiu a1, s1, 0x34ac          |     a1 = s1 + 0x34ac;
                                             |     /* str._etc_sysconfig_sysstat.ioconf */
    0x0001d914 addiu a0, s0, 0x36cc          |     a0 = s0 + 0x36cc;
    0x0001d918 sw v0, 0x21c(sp)              |     *(var_21ch) = v0;
    0x0001d91c jalr t9                       |     t9 ();
    0x0001d920 nop                           |     
    0x0001d924 lw gp, 0x30(sp)               |     gp = *(var_30h);
                                             |     if (v0 == 0) {
    0x0001d928 beqz v0, 0x1e08c              |         goto label_13;
                                             |     }
    0x0001d92c lw t9, -0x7c88(gp)            |     t9 = sym.imp.strncpy;
    0x0001d930 addiu s7, sp, 0xdc            |     s7 = sp + 0xdc;
    0x0001d934 addiu a2, zero, 0x40          |     a2 = 0x40;
                                             |     /* str._etc_sysconfig_sysstat.ioconf */
    0x0001d938 addiu a1, s0, 0x36cc          |     a1 = s0 + 0x36cc;
    0x0001d93c move a0, s7                   |     a0 = s7;
    0x0001d940 move s6, v0                   |     s6 = v0;
    0x0001d944 jalr t9                       |     t9 ();
    0x0001d948 lw gp, 0x30(sp)               |     gp = *(var_30h);
                                             | label_12:
    0x0001d94c lw v0, -0x7d80(gp)            |     v0 = *((gp - 8032));
    0x0001d950 lw t9, -0x7c7c(gp)            |     t9 = sym.imp.memset;
    0x0001d954 addiu v0, v0, -0x529c         |     v0 += -0x529c;
    0x0001d958 sw v0, 0x4c(sp)               |     *(var_4ch) = v0;
    0x0001d95c addiu a2, zero, 0x800         |     a2 = 0x800;
    0x0001d960 move a1, zero                 |     a1 = 0;
    0x0001d964 move a0, v0                   |     a0 = v0;
    0x0001d968 sb zero, 0x11b(sp)            |     *(var_11bh) = 0;
    0x0001d96c jalr t9                       |     t9 ();
    0x0001d970 lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0001d974 move s2, zero                 |     s2 = 0;
    0x0001d978 move s0, zero                 |     s0 = 0;
    0x0001d97c lw v0, -0x7fd8(gp)            |     v0 = *(gp);
    0x0001d980 sw zero, 0x48(sp)             |     *(var_48h) = 0;
    0x0001d984 sw v0, 0x3c(sp)               |     *(var_3ch) = v0;
    0x0001d988 lw v0, -0x7d80(gp)            |     v0 = *((gp - 8032));
    0x0001d98c addiu fp, sp, 0x11c           |     fp = sp + 0x11c;
    0x0001d990 addiu v0, v0, -0x4a9c         |     v0 += -0x4a9c;
    0x0001d994 sw v0, 0x40(sp)               |     *(var_40h) = v0;
    0x0001d998 lw v0, -0x7fd8(gp)            |     v0 = *(gp);
                                             |     /* str._s:_Indirect_record__u:_u:_u:..._references_not_yet_seen_major__u_n */
    0x0001d99c addiu v0, v0, 0x375c          |     v0 += 0x375c;
    0x0001d9a0 sw v0, 0x5c(sp)               |     *(var_5ch) = v0;
    0x0001d9a4 lw v0, -0x7fd8(gp)            |     v0 = *(gp);
    0x0001d9a8 sw v0, 0x54(sp)               |     *(var_54h) = v0;
    0x0001d9ac lw v0, -0x7fd8(gp)            |     v0 = *(gp);
    0x0001d9b0 addiu v0, v0, 0x21a4          |     v0 += 0x21a4;
    0x0001d9b4 sw v0, 0x58(sp)               |     *(var_58h) = v0;
                                             |     do {
                                             | label_2:
    0x0001d9b8 lw t9, -0x7bfc(gp)            |         t9 = sym.imp.fgets;
                                             | label_0:
    0x0001d9bc move a2, s6                   |         a2 = s6;
    0x0001d9c0 addiu a1, zero, 0xff          |         a1 = 0xff;
    0x0001d9c4 move a0, fp                   |         a0 = fp;
    0x0001d9c8 jalr t9                       |         t9 ();
    0x0001d9cc lw gp, 0x30(sp)               |         gp = *(var_30h);
                                             |         if (v0 == 0) {
    0x0001d9d0 beqz v0, 0x1dc38              |             goto label_14;
                                             |         }
                                             | label_1:
    0x0001d9d4 lb v0, 0x11c(sp)              |         v0 = *(var_11ch);
    0x0001d9d8 addiu a0, zero, 0x23          |         a0 = 0x23;
    0x0001d9dc addiu a0, zero, 0xa           |         a0 = 0xa;
    0x0001d9e0 beq v0, a0, 0x1d9b8           |         
                                             |     } while (v0 == a0);
    0x0001d9e4 lw t9, -0x7bfc(gp)            |     t9 = sym.imp.fgets;
                                             |     if (v0 == a0) {
    0x0001d9e8 beq v0, a0, 0x1d9bc           |         goto label_0;
                                             |     }
    0x0001d9ec lw t9, -0x7c44(gp)            |     t9 = sym.imp.malloc;
                                             |     if (s2 == 0) {
    0x0001d9f0 beqz s2, 0x1ddec              |         goto label_15;
                                             |     }
                                             | label_5:
    0x0001d9f4 lw t9, -0x7c44(gp)            |     t9 = sym.imp.malloc;
                                             |     if (s0 == 0) {
    0x0001d9f8 beqz s0, 0x1dd88              |         goto label_16;
                                             |     }
                                             | label_3:
    0x0001d9fc lw t9, -0x7c7c(gp)            |     t9 = sym.imp.memset;
    0x0001da00 addiu a2, zero, 0xf0          |     a2 = 0xf0;
    0x0001da04 move a1, zero                 |     a1 = 0;
    0x0001da08 move a0, s2                   |     a0 = s2;
    0x0001da0c jalr t9                       |     t9 ();
    0x0001da10 lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0001da14 lw v0, 0x3c(sp)               |     v0 = *(var_3ch);
    0x0001da18 addiu s4, s0, 4               |     s4 = s0 + 4;
    0x0001da1c lw t9, -0x7c78(gp)            |     t9 = sym.imp.__isoc99_sscanf;
    0x0001da20 addiu s5, sp, 0x68            |     s5 = sp + 0x68;
    0x0001da24 addiu s3, sp, 0x64            |     s3 = sp + 0x64;
    0x0001da28 addiu s1, sp, 0x9c            |     s1 = sp + 0x9c;
    0x0001da2c sw zero, (s0)                 |     *(s0) = 0;
    0x0001da30 sw zero, 4(s0)                |     *((s0 + 1)) = 0;
    0x0001da34 sw zero, 8(s0)                |     *((s0 + 2)) = 0;
    0x0001da38 sw zero, 0xc(s0)              |     *((s0 + 3)) = 0;
    0x0001da3c sw zero, 0x10(s0)             |     *((s0 + 4)) = 0;
    0x0001da40 move a0, fp                   |     a0 = fp;
    0x0001da44 move a3, s5                   |     a3 = s5;
    0x0001da48 sw s1, 0x14(sp)               |     *(var_14h) = s1;
    0x0001da4c sw s4, 0x10(sp)               |     *(var_10h) = s4;
    0x0001da50 move a2, s3                   |     a2 = s3;
    0x0001da54 addiu a1, v0, 0x3700          |     a1 = v0 + 0x3700;
    0x0001da58 jalr t9                       |     t9 ();
    0x0001da5c addiu a0, zero, 4             |     a0 = 4;
    0x0001da60 lw gp, 0x30(sp)               |     gp = *(var_30h);
                                             |     if (v0 == a0) {
    0x0001da64 beq v0, a0, 0x1dcb8           |         goto label_17;
                                             |     }
    0x0001da68 lw a1, -0x7fd8(gp)            |     a1 = *(gp);
    0x0001da6c lw t9, -0x7c78(gp)            |     t9 = sym.imp.__isoc99_sscanf;
    0x0001da70 move a0, fp                   |     a0 = fp;
    0x0001da74 sw s4, 0x10(sp)               |     *(var_10h) = s4;
    0x0001da78 move a3, s5                   |     a3 = s5;
    0x0001da7c move a2, s3                   |     a2 = s3;
                                             |     /* str._u:_u:_u */
    0x0001da80 addiu a1, a1, 0x370c          |     a1 += 0x370c;
    0x0001da84 jalr t9                       |     t9 ();
    0x0001da88 addiu a0, v0, -3              |     a0 = v0 + -3;
    0x0001da8c sltiu a0, a0, 2               |     a0 = (a0 < 2) ? 1 : 0;
    0x0001da90 lw gp, 0x30(sp)               |     gp = *(var_30h);
                                             |     if (a0 != 0) {
    0x0001da94 bnez a0, 0x1dcbc              |         goto label_18;
                                             |     }
    0x0001da98 addiu v0, sp, 0x8c            |     v0 = sp + 0x8c;
    0x0001da9c move v1, v0                   |     v1 = v0;
    0x0001daa0 lw a1, -0x7fd8(gp)            |     a1 = *(gp);
    0x0001daa4 sw v0, 0x44(sp)               |     *(var_44h) = v0;
    0x0001daa8 addiu v0, s2, 0x7c            |     v0 = s2 + 0x7c;
    0x0001daac lw t9, -0x7c78(gp)            |     t9 = sym.imp.__isoc99_sscanf;
    0x0001dab0 addiu a0, s2, 0x80            |     a0 = s2 + 0x80;
    0x0001dab4 sw v0, 0x1c(sp)               |     *(var_1ch) = v0;
    0x0001dab8 addiu s5, sp, 0x6c            |     s5 = sp + 0x6c;
    0x0001dabc addiu v0, sp, 0x7c            |     v0 = sp + 0x7c;
    0x0001dac0 sw a0, 0x24(sp)               |     *(var_24h) = a0;
    0x0001dac4 sw s1, 0x28(sp)               |     *(var_28h) = s1;
    0x0001dac8 move a0, fp                   |     a0 = fp;
    0x0001dacc sw v1, 0x20(sp)               |     *(var_20h) = v1;
    0x0001dad0 sw v0, 0x18(sp)               |     *(var_18h) = v0;
    0x0001dad4 sw s4, 0x14(sp)               |     *(var_14h) = s4;
    0x0001dad8 sw s5, 0x10(sp)               |     *(var_10h) = s5;
    0x0001dadc move a3, s2                   |     a3 = s2;
    0x0001dae0 move a2, s3                   |     a2 = s3;
                                             |     /* str._u:__:_:__:_:_u:__:_:_u:__:_:_u:_s */
    0x0001dae4 addiu a1, a1, 0x37a4          |     a1 += 0x37a4;
    0x0001dae8 jalr t9                       |     t9 ();
    0x0001daec addiu a0, zero, 9             |     a0 = 9;
    0x0001daf0 lw gp, 0x30(sp)               |     gp = *(var_30h);
                                             |     if (v0 != a0) {
    0x0001daf4 bne v0, a0, 0x1de44           |         goto label_19;
                                             |     }
    0x0001daf8 lw a1, 0x64(sp)               |     a1 = *(var_64h);
    0x0001dafc addiu v0, a1, -1              |     v0 = a1 + -1;
    0x0001db00 sltiu v0, v0, 0x1fe           |     v0 = (v0 < 0x1fe) ? 1 : 0;
    0x0001db04 lb v0, 0x6c(sp)               |     v0 = *(var_6ch);
                                             |     if (v0 == 0) {
    0x0001db08 beqz v0, 0x1df90              |         goto label_20;
                                             |     }
    0x0001db0c addiu a0, zero, 0x78          |     a0 = 0x78;
    0x0001db10 lw v1, 0x40(sp)               |     v1 = *(var_40h);
                                             |     if (v0 == a0) {
    0x0001db14 beq v0, a0, 0x1dee8           |         goto label_21;
                                             |     }
    0x0001db18 addiu a1, zero, 0x2a          |     a1 = 0x2a;
    0x0001db1c addiu a0, s2, 0x20            |     a0 = s2 + 0x20;
                                             |     if (v0 == a1) {
    0x0001db20 beq v0, a1, 0x1dfc8           |         goto label_22;
                                             |     }
    0x0001db24 lw a3, -0x7fd8(gp)            |     a3 = *(gp);
    0x0001db28 lw t9, -0x7d00(gp)            |     t9 = sym.imp.__sprintf_chk
    0x0001db2c sw s5, 0x14(sp)               |     *(var_14h) = s5;
    0x0001db30 sw s2, 0x10(sp)               |     *(var_10h) = s2;
                                             |     /* str._s_s__d */
    0x0001db34 addiu a3, a3, 0x389c          |     a3 += 0x389c;
    0x0001db38 addiu a2, zero, 0x33          |     a2 = 0x33;
    0x0001db3c addiu a1, zero, 1             |     a1 = 1;
    0x0001db40 jalr t9                       |     t9 ();
    0x0001db44 lw v0, 0x78(s2)               |     v0 = *((s2 + 30));
    0x0001db48 lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0001db4c addiu v0, v0, 1               |     v0++;
    0x0001db50 sw v0, 0x78(s2)               |     *((s2 + 30)) = v0;
    0x0001db54 lb v0, 0x7c(sp)               |     v0 = *(var_7ch);
    0x0001db58 addiu a0, zero, 0x61          |     a0 = 0x61;
    0x0001db5c sb zero, 0x53(s2)             |     *((s2 + 83)) = 0;
                                             |     if (v0 == a0) {
    0x0001db60 beq v0, a0, 0x1dff0           |         goto label_23;
                                             |     }
                                             | label_8:
    0x0001db64 addiu a0, zero, 0x64          |     a0 = 0x64;
    0x0001db68 addiu a3, s2, 0x53            |     a3 = s2 + 0x53;
                                             |     if (v0 == a0) {
    0x0001db6c beq v0, a0, 0x1e064           |         goto label_24;
                                             |     }
    0x0001db70 addiu a0, zero, 0x25          |     a0 = 0x25;
    0x0001db74 lw t9, -0x7c88(gp)            |     t9 = sym.imp.strncpy;
                                             |     if (v0 == a0) {
    0x0001db78 beq v0, a0, 0x1e048           |         goto label_25;
                                             |     }
                                             | label_9:
    0x0001db7c lb a1, 0x8c(sp)               |     a1 = *(var_8ch);
    0x0001db80 addiu v0, zero, 0x2a          |     v0 = 0x2a;
    0x0001db84 addiu a0, s2, 0x63            |     a0 = s2 + 0x63;
                                             |     if (a1 == v0) {
    0x0001db88 beq a1, v0, 0x1dfc0           |         goto label_26;
                                             |     }
    0x0001db8c lw v0, 0x44(sp)               |     v0 = *(var_44h);
                                             | label_7:
    0x0001db90 lw a3, -0x7fd8(gp)            |     a3 = *(gp);
    0x0001db94 lw t9, -0x7d00(gp)            |     t9 = sym.imp.__sprintf_chk
    0x0001db98 addiu a1, zero, 1             |     a1 = 1;
    0x0001db9c sw v0, 0x10(sp)               |     *(var_10h) = v0;
                                             |     /* str._s__d */
    0x0001dba0 addiu a3, a3, 0x38a4          |     a3 += 0x38a4;
    0x0001dba4 addiu a2, zero, 0x12          |     a2 = 0x12;
    0x0001dba8 jalr t9                       |     t9 ();
    0x0001dbac lw a0, 0x64(sp)               |     a0 = *(var_64h);
    0x0001dbb0 lw v1, 0x40(sp)               |     v1 = *(var_40h);
    0x0001dbb4 sll v0, a0, 2                 |     v0 = a0 << 2;
    0x0001dbb8 addu v0, v0, v1               |     v0 += v1;
    0x0001dbbc addiu a1, zero, 1             |     a1 = 1;
    0x0001dbc0 lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0001dbc4 sw s2, 0x10(s0)               |     *((s0 + 4)) = s2;
    0x0001dbc8 sw a1, (s0)                   |     *(s0) = a1;
    0x0001dbcc sw zero, 0xc(s0)              |     *((s0 + 3)) = 0;
    0x0001dbd0 sw a0, 8(s0)                  |     *((s0 + 2)) = a0;
    0x0001dbd4 sw s0, (v0)                   |     *(v0) = s0;
    0x0001dbd8 addiu s2, s2, 0x84            |     s2 += 0x84;
                                             |     do {
    0x0001dbdc lw a2, (s1)                   |         a2 = *(s1);
    0x0001dbe0 lw a1, 4(s1)                  |         a1 = *(var_4h);
    0x0001dbe4 lw a0, 8(s1)                  |         a0 = *(var_8h);
    0x0001dbe8 lw v0, 0xc(s1)                |         v0 = *(var_ch);
    0x0001dbec addiu s1, s1, 0x10            |         s1 += 0x10;
    0x0001dbf0 sw a2, (s2)                   |         *(s2) = a2;
    0x0001dbf4 sw a1, 4(s2)                  |         *((s2 + 1)) = a1;
    0x0001dbf8 sw a0, 8(s2)                  |         *((s2 + 2)) = a0;
    0x0001dbfc sw v0, 0xc(s2)                |         *((s2 + 3)) = v0;
    0x0001dc00 addiu s2, s2, 0x10            |         s2 += 0x10;
    0x0001dc04 bne s1, s7, 0x1dbdc           |         
                                             |     } while (s1 != s7);
    0x0001dc08 lw v0, 0x48(sp)               |     v0 = *(var_48h);
    0x0001dc0c lw t9, -0x7bfc(gp)            |     t9 = sym.imp.fgets;
    0x0001dc10 addiu v0, v0, 1               |     v0++;
    0x0001dc14 sw v0, 0x48(sp)               |     *(var_48h) = v0;
    0x0001dc18 move a2, s6                   |     a2 = s6;
    0x0001dc1c addiu a1, zero, 0xff          |     a1 = 0xff;
    0x0001dc20 move a0, fp                   |     a0 = fp;
    0x0001dc24 jalr t9                       |     t9 ();
    0x0001dc28 move s2, zero                 |     s2 = 0;
    0x0001dc2c move s0, zero                 |     s0 = 0;
    0x0001dc30 lw gp, 0x30(sp)               |     gp = *(var_30h);
                                             |     if (v0 != 0) {
    0x0001dc34 bnez v0, 0x1d9d4              |         goto label_1;
                                             |     }
                                             | label_14:
    0x0001dc38 lw t9, -0x7cc4(gp)            |     t9 = sym.imp.fclose;
    0x0001dc3c move a0, s6                   |     a0 = s6;
    0x0001dc40 jalr t9                       |     t9 ();
    0x0001dc44 lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0001dc48 lw t9, -0x7bf0(gp)            |     t9 = sym.imp.free;
    0x0001dc4c move a0, s2                   |     a0 = s2;
    0x0001dc50 jalr t9                       |     t9 ();
    0x0001dc54 lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0001dc58 lw t9, -0x7bf0(gp)            |     t9 = sym.imp.free;
    0x0001dc5c move a0, s0                   |     a0 = s0;
    0x0001dc60 jalr t9                       |     t9 ();
    0x0001dc64 lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0001dc68 addiu a0, zero, 1             |     a0 = 1;
    0x0001dc6c lw v0, 0x48(sp)               |     v0 = *(var_48h);
    0x0001dc70 lw v1, -0x7d80(gp)            |     v1 = *((gp - 8032));
    0x0001dc74 sw a0, -0x429c(v1)            |     *((v1 - 4263)) = a0;
                                             | label_4:
    0x0001dc78 lw v1, 0x50(sp)               |     v1 = *(var_50h);
    0x0001dc7c lw a0, 0x21c(sp)              |     a0 = *(var_21ch);
    0x0001dc80 lw v1, (v1)                   |     v1 = *(v1);
    0x0001dc84 lw ra, 0x244(sp)              |     ra = *(var_244h);
                                             |     if (a0 != v1) {
    0x0001dc88 bne a0, v1, 0x1e12c           |         goto label_27;
                                             |     }
    0x0001dc8c lw fp, 0x240(sp)              |     fp = *(var_240h);
    0x0001dc90 lw s7, 0x23c(sp)              |     s7 = *(var_23ch);
    0x0001dc94 lw s6, 0x238(sp)              |     s6 = *(var_238h);
    0x0001dc98 lw s5, 0x234(sp)              |     s5 = *(var_234h);
    0x0001dc9c lw s4, 0x230(sp)              |     s4 = *(var_230h);
    0x0001dca0 lw s3, 0x22c(sp)              |     s3 = *(var_22ch);
    0x0001dca4 lw s2, 0x228(sp)              |     s2 = *(var_228h);
    0x0001dca8 lw s1, 0x224(sp)              |     s1 = *(var_224h);
    0x0001dcac lw s0, 0x220(sp)              |     s0 = *(var_220h);
    0x0001dcb0 addiu sp, sp, 0x248           |     
    0x0001dcb4 jr ra                         |     return v0;
                                             | label_17:
    0x0001dcb8 addiu v0, zero, 4             |     v0 = 4;
                                             | label_18:
    0x0001dcbc lw a1, 0x68(sp)               |     a1 = *(var_68h);
    0x0001dcc0 sltiu a0, a1, 0x200           |     a0 = (a1 < aav.0x00000200) ? 1 : 0;
                                             |     if (a1 == 0) {
    0x0001dcc4 beqz a1, 0x1d9b8              |         goto label_2;
                                             |     }
    0x0001dcc8 lw a2, 0x64(sp)               |     a2 = *(var_64h);
                                             |     if (a0 == 0) {
    0x0001dccc beqz a0, 0x1df38              |         goto label_28;
                                             |     }
    0x0001dcd0 sltiu a0, a2, 0x200           |     a0 = (a2 < aav.0x00000200) ? 1 : 0;
    0x0001dcd4 lw v1, 0x40(sp)               |     v1 = *(var_40h);
                                             |     if (a0 == 0) {
    0x0001dcd8 beqz a0, 0x1df64              |         goto label_29;
                                             |     }
    0x0001dcdc sll a0, a1, 2                 |     a0 = a1 << 2;
    0x0001dce0 lwx a3, a0(v1)                |     __asm ("lwx a3, a0(v1)");
    0x0001dce4 addiu t0, zero, 3             |     t0 = 3;
                                             |     if (a3 == 0) {
    0x0001dce8 beqz a3, 0x1e0cc              |         goto label_30;
                                             |     }
                                             |     if (v0 == t0) {
    0x0001dcec beql v0, t0, 0x1e010          |         goto label_31;
                                             |     }
    0x0001dcf0 lw v0, 0x10(a3)               |     v0 = *((a3 + 4));
    0x0001dcf4 lw v0, 0xc(s0)                |     v0 = *((s0 + 3));
    0x0001dcf8 lw t9, -0x7c44(gp)            |     t9 = sym.imp.malloc;
                                             |     if (v0 == 0) {
    0x0001dcfc beqz v0, 0x1de74              |         goto label_32;
                                             |     }
                                             |     do {
                                             | label_6:
    0x0001dd00 lw a3, (s1)                   |         a3 = *(s1);
    0x0001dd04 lw a2, 4(s1)                  |         a2 = *(var_4h);
    0x0001dd08 lw a1, 8(s1)                  |         a1 = *(var_8h);
    0x0001dd0c lw a0, 0xc(s1)                |         a0 = *(var_ch);
    0x0001dd10 swl a3, 3(v0)                 |         __asm ("swl a3, 3(v0)");
    0x0001dd14 swr a3, (v0)                  |         __asm ("swr a3, (v0)");
    0x0001dd18 swl a2, 7(v0)                 |         __asm ("swl a2, 7(v0)");
    0x0001dd1c swr a2, 4(v0)                 |         __asm ("swr a2, 4(v0)");
    0x0001dd20 swl a1, 0xb(v0)               |         __asm ("swl a1, 0xb(v0)");
    0x0001dd24 swr a1, 8(v0)                 |         __asm ("swr a1, 8(v0)");
    0x0001dd28 swl a0, 0xf(v0)               |         __asm ("swl a0, 0xf(v0)");
    0x0001dd2c addiu s1, s1, 0x10            |         s1 += 0x10;
    0x0001dd30 swr a0, 0xc(v0)               |         __asm ("swr a0, 0xc(v0)");
    0x0001dd34 addiu v0, v0, 0x10            |         v0 += 0x10;
    0x0001dd38 bne s1, s7, 0x1dd00           |         
                                             |     } while (s1 != s7);
    0x0001dd3c lw a1, 0x68(sp)               |     a1 = *(var_68h);
    0x0001dd40 lw a2, 0x64(sp)               |     a2 = *(var_64h);
    0x0001dd44 sll a0, a1, 2                 |     a0 = a1 << 2;
                                             | label_10:
    0x0001dd48 lw v0, 0x40(sp)               |     v0 = *(var_40h);
    0x0001dd4c sll a2, a2, 2                 |     a2 <<= 2;
    0x0001dd50 addu a2, v0, a2               |     a2 = v0 + a2;
    0x0001dd54 lw v1, 0x4c(sp)               |     v1 = *(var_4ch);
    0x0001dd58 sw s0, (a2)                   |     *(a2) = s0;
    0x0001dd5c addu a3, v1, a0               |     a3 = v1 + a0;
    0x0001dd60 lwx a0, a0(v0)                |     __asm ("lwx a0, a0(v0)");
    0x0001dd64 lw v0, (a3)                   |     v0 = *(a3);
    0x0001dd68 sw a1, 8(s0)                  |     *((s0 + 2)) = a1;
    0x0001dd6c lw a0, 0x10(a0)               |     a0 = *((a0 + 4));
    0x0001dd70 addiu v0, v0, 1               |     v0++;
    0x0001dd74 sw a0, 0x10(s0)               |     *((s0 + 4)) = a0;
    0x0001dd78 sw zero, (s0)                 |     *(s0) = 0;
    0x0001dd7c sw v0, (a3)                   |     *(a3) = v0;
    0x0001dd80 move s0, zero                 |     s0 = 0;
    0x0001dd84 b 0x1d9b8                     |     goto label_2;
                                             | label_16:
    0x0001dd88 addiu a0, zero, 0x14          |     a0 = 0x14;
    0x0001dd8c jalr t9                       |     t9 ();
    0x0001dd90 move s0, v0                   |     s0 = v0;
    0x0001dd94 lw gp, 0x30(sp)               |     gp = *(var_30h);
                                             |     if (v0 != 0) {
    0x0001dd98 bnez v0, 0x1d9fc              |         goto label_3;
                                             |     }
    0x0001dd9c lw a0, -0x7fd8(gp)            |     a0 = *(gp);
    0x0001dda0 lw t9, -0x7c30(gp)            |     t9 = sym.imp.perror;
                                             |     /* str.malloc */
    0x0001dda4 addiu a0, a0, 0x1fc0          |     a0 += 0x1fc0;
    0x0001dda8 jalr t9                       |     t9 ();
    0x0001ddac lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0001ddb0 lw t9, -0x7fd8(gp)            |     t9 = *(gp);
                                             |     /* fcn.0001d7d8 */
    0x0001ddb4 addiu t9, t9, -0x2828         |     t9 += -0x2828;
    0x0001ddb8 bal 0x1d7d8                   |     fcn_0001d7d8 ();
    0x0001ddbc nop                           |     
    0x0001ddc0 lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0001ddc4 lw t9, -0x7cc4(gp)            |     t9 = sym.imp.fclose;
    0x0001ddc8 move a0, s6                   |     a0 = s6;
    0x0001ddcc jalr t9                       |     t9 ();
    0x0001ddd0 lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0001ddd4 lw t9, -0x7bf0(gp)            |     t9 = sym.imp.free;
    0x0001ddd8 move a0, s2                   |     a0 = s2;
    0x0001dddc jalr t9                       |     t9 ();
    0x0001dde0 lw gp, 0x30(sp)               |     gp = *(var_30h);
                                             | label_11:
    0x0001dde4 move v0, zero                 |     v0 = 0;
    0x0001dde8 b 0x1dc78                     |     goto label_4;
                                             | label_15:
    0x0001ddec addiu a0, zero, 0xf0          |     a0 = 0xf0;
    0x0001ddf0 jalr t9                       |     t9 ();
    0x0001ddf4 move s2, v0                   |     s2 = v0;
    0x0001ddf8 lw gp, 0x30(sp)               |     gp = *(var_30h);
                                             |     if (v0 != 0) {
    0x0001ddfc bnez v0, 0x1d9f4              |         goto label_5;
                                             |     }
    0x0001de00 lw a0, -0x7fd8(gp)            |     a0 = *(gp);
    0x0001de04 lw t9, -0x7c30(gp)            |     t9 = sym.imp.perror;
                                             |     /* str.malloc */
    0x0001de08 addiu a0, a0, 0x1fc0          |     a0 += 0x1fc0;
    0x0001de0c jalr t9                       |     t9 ();
    0x0001de10 lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0001de14 lw t9, -0x7fd8(gp)            |     t9 = *(gp);
                                             |     /* fcn.0001d7d8 */
    0x0001de18 addiu t9, t9, -0x2828         |     t9 += -0x2828;
    0x0001de1c bal 0x1d7d8                   |     fcn_0001d7d8 ();
    0x0001de20 nop                           |     
    0x0001de24 lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0001de28 lw t9, -0x7cc4(gp)            |     t9 = sym.imp.fclose;
    0x0001de2c move a0, s6                   |     a0 = s6;
    0x0001de30 jalr t9                       |     t9 ();
    0x0001de34 lw gp, 0x30(sp)               |     gp = *(var_30h);
                                             |     if (s0 != 0) {
    0x0001de38 bnez s0, 0x1ded0              |         goto label_33;
                                             |     }
    0x0001de3c move v0, zero                 |     v0 = 0;
    0x0001de40 b 0x1dc78                     |     goto label_4;
                                             | label_19:
    0x0001de44 lw a0, -0x7be8(gp)            |     a0 = *((gp - 7930));
    0x0001de48 lw a2, -0x7fd8(gp)            |     a2 = *(gp);
    0x0001de4c lw t9, -0x7ccc(gp)            |     t9 = sym.imp.__fprintf_chk;
    0x0001de50 lw a0, (a0)                   |     a0 = *(a0);
    0x0001de54 move a3, s7                   |     a3 = s7;
    0x0001de58 sw fp, 0x14(sp)               |     *(var_14h) = fp;
    0x0001de5c sw v0, 0x10(sp)               |     *(var_10h) = v0;
                                             |     /* str._s:_Malformed__u_field_record:__s_n */
    0x0001de60 addiu a2, a2, 0x37cc          |     a2 += 0x37cc;
    0x0001de64 addiu a1, zero, 1             |     a1 = 1;
    0x0001de68 jalr t9                       |     t9 ();
    0x0001de6c lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0001de70 b 0x1d9b8                     |     goto label_2;
                                             | label_32:
    0x0001de74 addiu a0, zero, 0x40          |     a0 = 0x40;
    0x0001de78 jalr t9                       |     t9 ();
    0x0001de7c lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0001de80 sw v0, 0xc(s0)                |     *((s0 + 3)) = v0;
                                             |     if (v0 != 0) {
    0x0001de84 bnez v0, 0x1dd00              |         goto label_6;
                                             |     }
    0x0001de88 lw a0, -0x7fd8(gp)            |     a0 = *(gp);
    0x0001de8c lw t9, -0x7c30(gp)            |     t9 = sym.imp.perror;
                                             |     /* str.malloc */
    0x0001de90 addiu a0, a0, 0x1fc0          |     a0 += 0x1fc0;
    0x0001de94 jalr t9                       |     t9 ();
    0x0001de98 lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0001de9c lw t9, -0x7fd8(gp)            |     t9 = *(gp);
                                             |     /* fcn.0001d7d8 */
    0x0001dea0 addiu t9, t9, -0x2828         |     t9 += -0x2828;
    0x0001dea4 bal 0x1d7d8                   |     fcn_0001d7d8 ();
    0x0001dea8 nop                           |     
    0x0001deac lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0001deb0 lw t9, -0x7cc4(gp)            |     t9 = sym.imp.fclose;
    0x0001deb4 move a0, s6                   |     a0 = s6;
    0x0001deb8 jalr t9                       |     t9 ();
    0x0001debc lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0001dec0 lw t9, -0x7bf0(gp)            |     t9 = sym.imp.free;
    0x0001dec4 move a0, s2                   |     a0 = s2;
    0x0001dec8 jalr t9                       |     t9 ();
    0x0001decc lw gp, 0x30(sp)               |     gp = *(var_30h);
                                             | label_33:
    0x0001ded0 lw t9, -0x7bf0(gp)            |     t9 = sym.imp.free;
    0x0001ded4 move a0, s0                   |     a0 = s0;
    0x0001ded8 jalr t9                       |     t9 ();
    0x0001dedc lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0001dee0 move v0, zero                 |     v0 = 0;
    0x0001dee4 b 0x1dc78                     |     goto label_4;
                                             | label_21:
    0x0001dee8 sll v0, a1, 2                 |     v0 = a1 << 2;
    0x0001deec lwx v0, v0(v1)                |     __asm ("lwx v0, v0(v1)");
                                             |     if (v0 == 0) {
    0x0001def0 beql v0, zero, 0x1e104        |         goto label_34;
                                             |     }
    0x0001def4 lw v0, -0x7be8(gp)            |     v0 = *((gp - 7930));
    0x0001def8 lw s1, 0x10(v0)               |     s1 = *((v0 + 4));
    0x0001defc lw v0, 0xe8(s1)               |     v0 = *((s1 + 58));
                                             |     if (v0 == 0) {
    0x0001df00 beql v0, zero, 0x1e01c        |         goto label_35;
                                             |     }
    0x0001df04 lw v0, 4(s0)                  |     v0 = *((s0 + 1));
    0x0001df08 lw v0, -0x7be8(gp)            |     v0 = *((gp - 7930));
    0x0001df0c lw a2, -0x7fd8(gp)            |     a2 = *(gp);
    0x0001df10 lw t9, -0x7ccc(gp)            |     t9 = sym.imp.__fprintf_chk;
    0x0001df14 lw a0, (v0)                   |     a0 = *(v0);
    0x0001df18 move a3, s7                   |     a3 = s7;
    0x0001df1c sw a1, 0x10(sp)               |     *(var_10h) = a1;
    0x0001df20 sw fp, 0x14(sp)               |     *(var_14h) = fp;
                                             |     /* str._s:_duplicate_x_record_for_major__u___ignored_ninput_line:__s_n */
    0x0001df24 addiu a2, a2, 0x3858          |     a2 += 0x3858;
    0x0001df28 addiu a1, zero, 1             |     a1 = 1;
    0x0001df2c jalr t9                       |     t9 ();
    0x0001df30 lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0001df34 b 0x1d9b8                     |     goto label_2;
                                             | label_28:
    0x0001df38 lw v0, -0x7be8(gp)            |     v0 = *((gp - 7930));
    0x0001df3c lw a2, -0x7fd8(gp)            |     a2 = *(gp);
    0x0001df40 lw t9, -0x7ccc(gp)            |     t9 = sym.imp.__fprintf_chk;
    0x0001df44 lw a0, (v0)                   |     a0 = *(v0);
    0x0001df48 move a3, s7                   |     a3 = s7;
    0x0001df4c sw a1, 0x10(sp)               |     *(var_10h) = a1;
                                             |     /* str._s:_Indirect_major__u_out_of_range_n */
    0x0001df50 addiu a2, a2, 0x3718          |     a2 += 0x3718;
    0x0001df54 addiu a1, zero, 1             |     a1 = 1;
    0x0001df58 jalr t9                       |     t9 ();
    0x0001df5c lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0001df60 b 0x1d9b8                     |     goto label_2;
                                             | label_29:
    0x0001df64 lw v0, -0x7be8(gp)            |     v0 = *((gp - 7930));
    0x0001df68 sw a2, 0x10(sp)               |     *(var_10h) = a2;
    0x0001df6c lw t9, -0x7ccc(gp)            |     t9 = sym.imp.__fprintf_chk;
    0x0001df70 lw a0, (v0)                   |     a0 = *(v0);
    0x0001df74 lw v0, 0x54(sp)               |     v0 = *(var_54h);
    0x0001df78 move a3, s7                   |     a3 = s7;
    0x0001df7c addiu a2, v0, 0x3740          |     a2 = v0 + 0x3740;
    0x0001df80 addiu a1, zero, 1             |     a1 = 1;
    0x0001df84 jalr t9                       |     t9 ();
    0x0001df88 lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0001df8c b 0x1d9b8                     |     goto label_2;
                                             | label_20:
    0x0001df90 lw v0, -0x7be8(gp)            |     v0 = *((gp - 7930));
    0x0001df94 lw a3, -0x7fd8(gp)            |     a3 = *(gp);
    0x0001df98 lw a2, -0x7fd8(gp)            |     a2 = *(gp);
    0x0001df9c lw t9, -0x7ccc(gp)            |     t9 = sym.imp.__fprintf_chk;
    0x0001dfa0 lw a0, (v0)                   |     a0 = *(v0);
                                             |     /* str.ioc_init */
    0x0001dfa4 addiu a3, a3, 0x38c0          |     a3 += 0x38c0;
    0x0001dfa8 sw a1, 0x10(sp)               |     *(var_10h) = a1;
                                             |     /* str._s:_major__u_out_of_range_n */
    0x0001dfac addiu a2, a2, 0x37f0          |     a2 += 0x37f0;
    0x0001dfb0 addiu a1, zero, 1             |     a1 = 1;
    0x0001dfb4 jalr t9                       |     t9 ();
    0x0001dfb8 lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0001dfbc b 0x1d9b8                     |     goto label_2;
                                             | label_26:
    0x0001dfc0 lw v0, 0x58(sp)               |     v0 = *(var_58h);
    0x0001dfc4 b 0x1db90                     |     goto label_7;
                                             | label_22:
    0x0001dfc8 lw t9, -0x7c88(gp)            |     t9 = sym.imp.strncpy;
    0x0001dfcc addiu a2, zero, 0x32          |     a2 = 0x32;
    0x0001dfd0 move a1, s2                   |     a1 = s2;
    0x0001dfd4 jalr t9                       |     t9 ();
    0x0001dfd8 lb v0, 0x7c(sp)               |     v0 = *(var_7ch);
    0x0001dfdc addiu a0, zero, 0x61          |     a0 = 0x61;
    0x0001dfe0 lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0001dfe4 sb zero, 0x52(s2)             |     *((s2 + 82)) = 0;
    0x0001dfe8 sb zero, 0x53(s2)             |     *((s2 + 83)) = 0;
                                             |     if (v0 != a0) {
    0x0001dfec bne v0, a0, 0x1db64           |         goto label_8;
                                             |     }
                                             | label_23:
    0x0001dff0 lw a0, -0x7d2c(gp)            |     a0 = sym.ioc_ito26;
    0x0001dff4 sb zero, 0x55(s2)             |     *((s2 + 85)) = 0;
    0x0001dff8 sw a0, 0xc4(s2)               |     *((s2 + 49)) = a0;
    0x0001dffc addiu a0, zero, 0x25          |     a0 = 0x25;
    0x0001e000 sb a0, 0x53(s2)               |     *((s2 + 83)) = a0;
    0x0001e004 addiu a0, zero, 0x73          |     a0 = 0x73;
    0x0001e008 sb a0, 0x54(s2)               |     *((s2 + 84)) = a0;
    0x0001e00c b 0x1db7c                     |     goto label_9;
                                             | label_31:
    0x0001e010 addiu v0, v0, 0x84            |     v0 += 0x84;
    0x0001e014 sw v0, 0xc(s0)                |     *((s0 + 3)) = v0;
    0x0001e018 b 0x1dd48                     |     goto label_10;
                                             | label_35:
    0x0001e01c lw t9, -0x7c88(gp)            |     t9 = sym.imp.strncpy;
    0x0001e020 sw v0, 0xec(s1)               |     *((s1 + 59)) = v0;
    0x0001e024 addiu a2, zero, 0x20          |     a2 = 0x20;
    0x0001e028 move a1, s2                   |     a1 = s2;
    0x0001e02c addiu a0, s1, 0xc8            |     a0 = s1 + 0xc8;
    0x0001e030 jalr t9                       |     t9 ();
    0x0001e034 addiu v0, zero, 1             |     v0 = 1;
    0x0001e038 lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0001e03c sb zero, 0xe7(s1)             |     *((s1 + 231)) = 0;
    0x0001e040 sw v0, 0xe8(s1)               |     *((s1 + 58)) = v0;
    0x0001e044 b 0x1d9b8                     |     goto label_2;
                                             | label_25:
    0x0001e048 addiu a3, s2, 0x53            |     a3 = s2 + 0x53;
    0x0001e04c move a0, a3                   |     a0 = a3;
    0x0001e050 addiu a2, zero, 0xf           |     a2 = 0xf;
    0x0001e054 addiu a1, sp, 0x7d            |     a1 = sp + 0x7d;
    0x0001e058 jalr t9                       |     t9 ();
    0x0001e05c lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0001e060 move a3, v0                   |     a3 = v0;
                                             | label_24:
    0x0001e064 lw v0, -0x7d28(gp)            |     v0 = sym.ioc_ito10;
    0x0001e068 lw a1, -0x7fd8(gp)            |     a1 = *(gp);
    0x0001e06c lw t9, -0x7bbc(gp)            |     t9 = sym.imp.__strcat_chk;
    0x0001e070 sw v0, 0xc4(s2)               |     *((s2 + 49)) = v0;
    0x0001e074 addiu a2, zero, 0x10          |     a2 = 0x10;
                                             |     /* esilref: '&s' */
    0x0001e078 addiu a1, a1, 0x37c8          |     a1 += 0x37c8;
    0x0001e07c move a0, a3                   |     a0 = a3;
    0x0001e080 jalr t9                       |     t9 ();
    0x0001e084 lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0001e088 b 0x1db7c                     |     goto label_9;
                                             | label_13:
    0x0001e08c lw s0, -0x7fd8(gp)            |     s0 = *(gp);
    0x0001e090 lw t9, -0x7be4(gp)            |     t9 = sym.imp.fopen;
    0x0001e094 addiu a1, s1, 0x34ac          |     a1 = s1 + 0x34ac;
                                             |     /* str.._sysstat.ioconf */
    0x0001e098 addiu a0, s0, 0x36ec          |     a0 = s0 + 0x36ec;
    0x0001e09c jalr t9                       |     t9 ();
    0x0001e0a0 move s6, v0                   |     s6 = v0;
    0x0001e0a4 lw gp, 0x30(sp)               |     gp = *(var_30h);
                                             |     if (v0 == 0) {
    0x0001e0a8 beqz v0, 0x1dde4              |         goto label_11;
                                             |     }
    0x0001e0ac lw t9, -0x7c88(gp)            |     t9 = sym.imp.strncpy;
    0x0001e0b0 addiu s7, sp, 0xdc            |     s7 = sp + 0xdc;
    0x0001e0b4 addiu a2, zero, 0x40          |     a2 = 0x40;
                                             |     /* str.._sysstat.ioconf */
    0x0001e0b8 addiu a1, s0, 0x36ec          |     a1 = s0 + 0x36ec;
    0x0001e0bc move a0, s7                   |     a0 = s7;
    0x0001e0c0 jalr t9                       |     t9 ();
    0x0001e0c4 lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0001e0c8 b 0x1d94c                     |     goto label_12;
                                             | label_30:
    0x0001e0cc lw a0, -0x7be8(gp)            |     a0 = *((gp - 7930));
    0x0001e0d0 sw a2, 0x1c(sp)               |     *(var_1ch) = a2;
    0x0001e0d4 lw v0, 4(s0)                  |     v0 = *((s0 + 1));
    0x0001e0d8 lw a0, (a0)                   |     a0 = *(a0);
    0x0001e0dc lw t9, -0x7ccc(gp)            |     t9 = sym.imp.__fprintf_chk;
    0x0001e0e0 sw a2, 0x10(sp)               |     *(var_10h) = a2;
    0x0001e0e4 lw a2, 0x5c(sp)               |     a2 = *(var_5ch);
    0x0001e0e8 sw a1, 0x14(sp)               |     *(var_14h) = a1;
    0x0001e0ec sw v0, 0x18(sp)               |     *(var_18h) = v0;
    0x0001e0f0 move a3, s7                   |     a3 = s7;
    0x0001e0f4 addiu a1, zero, 1             |     a1 = 1;
    0x0001e0f8 jalr t9                       |     t9 ();
    0x0001e0fc lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0001e100 b 0x1d9b8                     |     goto label_2;
                                             | label_34:
    0x0001e104 lw a2, -0x7fd8(gp)            |     a2 = *(gp);
    0x0001e108 lw t9, -0x7ccc(gp)            |     t9 = sym.imp.__fprintf_chk;
    0x0001e10c lw a0, (v0)                   |     a0 = *(v0);
    0x0001e110 move a3, s7                   |     a3 = s7;
    0x0001e114 sw a1, 0x10(sp)               |     *(var_10h) = a1;
                                             |     /* str._s:_type_x_record_for_major__u_must_follow_the_base_record___ignored_n */
    0x0001e118 addiu a2, a2, 0x380c          |     a2 += 0x380c;
    0x0001e11c addiu a1, zero, 1             |     a1 = 1;
    0x0001e120 jalr t9                       |     t9 ();
    0x0001e124 lw gp, 0x30(sp)               |     gp = *(var_30h);
    0x0001e128 b 0x1d9b8                     |     goto label_2;
                                             | label_27:
    0x0001e12c lw t9, -0x7c10(gp)            |     t9 = sym.imp.__stack_chk_fail;
    0x0001e130 jalr t9                       |     t9 ();
    0x0001e134 nop                           |     
                                             | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/sar @ 0x1e138 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) sym.ioc_name ()                  | void ioc_name () {
    0x0001e138 lui gp, 2                     |     
    0x0001e13c addiu gp, gp, -0x5e8          |     
    0x0001e140 addu gp, gp, t9               |     gp += t9;
    0x0001e144 sltiu v0, a0, 0x200           |     v0 = (a0 < aav.0x00000200) ? 1 : 0;
                                             |     if (v0 == 0) {
    0x0001e148 beqz v0, 0x1e3e0              |         goto label_1;
                                             |     }
    0x0001e14c nop                           |     
    0x0001e150 lui v0, 0x10                  |     v0 = 0x100000;
    0x0001e154 sltu v0, a1, v0               |     v0 = (a1 < v0) ? 1 : 0;
                                             |     if (v0 == 0) {
    0x0001e158 beqz v0, 0x1e3e0              |         goto label_1;
                                             |     }
    0x0001e15c nop                           |     
    0x0001e160 lw v0, -0x7d80(gp)            |     v0 = *((gp - 8032));
    0x0001e164 addiu sp, sp, -0x40           |     
    0x0001e168 lw v0, -0x429c(v0)            |     v0 = *((v0 - 4263));
    0x0001e16c sw gp, 0x18(sp)               |     *(var_18h) = gp;
    0x0001e170 sw s1, 0x24(sp)               |     *(var_24h) = s1;
    0x0001e174 sw s0, 0x20(sp)               |     *(var_20h) = s0;
    0x0001e178 sw ra, 0x3c(sp)               |     *(var_3ch) = ra;
    0x0001e17c sw s6, 0x38(sp)               |     *(var_38h) = s6;
    0x0001e180 sw s5, 0x34(sp)               |     *(var_34h) = s5;
    0x0001e184 sw s4, 0x30(sp)               |     *(var_30h) = s4;
    0x0001e188 sw s3, 0x2c(sp)               |     *(var_2ch) = s3;
    0x0001e18c sw s2, 0x28(sp)               |     *(var_28h) = s2;
    0x0001e190 move s1, a1                   |     s1 = a1;
    0x0001e194 move s0, a0                   |     s0 = a0;
    0x0001e198 beqz v0, 0x1e2e8              |     
                                             |     while (v0 != 0) {
    0x0001e19c lw s4, -0x7d80(gp)            |         s4 = *((gp - 8032));
    0x0001e1a0 sll s0, s0, 2                 |         s0 <<= 2;
    0x0001e1a4 addiu s4, s4, -0x4a9c         |         s4 += -0x4a9c;
    0x0001e1a8 lwx s5, s0(s4)                |         __asm ("lwx s5, s0(s4)");
    0x0001e1ac andi v0, s1, 0xff             |         v0 = s1 & 0xff;
                                             |         if (s5 == 0) {
    0x0001e1b0 beqz s5, 0x1e328              |             goto label_2;
                                             |         }
    0x0001e1b4 lw a3, 0x10(s5)               |         a3 = *((s5 + 4));
    0x0001e1b8 lw a0, 0x7c(a3)               |         a0 = *((a3 + 31));
    0x0001e1bc lw s2, 0x80(a3)               |         s2 = *((a3 + 32));
    0x0001e1c0 mul v1, a0, s2                |         __asm ("mul v1, a0, s2");
    0x0001e1c4 sltu v1, v0, v1               |         v1 = (v0 < v1) ? 1 : 0;
                                             |         if (v1 == 0) {
    0x0001e1c8 beql v1, zero, 0x1e32c        |             goto label_3;
                                             |         }
    0x0001e1cc lw a0, -0x7d80(gp)            |         a0 = *((gp - 8032));
    0x0001e1d0 lw v1, 0xe8(a3)               |         v1 = *((a3 + 58));
                                             |         if (v1 != 0) {
    0x0001e1d4 beql v1, zero, 0x1e1ec        |             
    0x0001e1d8 lw t0, 4(s5)                  |             t0 = *((s5 + 1));
    0x0001e1dc lw v1, 0xec(a3)               |             v1 = *((a3 + 59));
                                             |             if (v1 == s1) {
    0x0001e1e0 beql v1, s1, 0x1e3e8          |                 goto label_4;
                                             |             }
    0x0001e1e4 lw s0, -0x7d80(gp)            |             s0 = *((gp - 8032));
    0x0001e1e8 lw t0, 4(s5)                  |             t0 = *((s5 + 1));
                                             |         }
    0x0001e1ec sltiu v1, s1, 0x100           |         v1 = (s1 < aav.0x00000100) ? 1 : 0;
    0x0001e1f0 mul a2, a0, t0                |         __asm ("mul a2, a0, t0");
                                             |         if (v1 == 0) {
    0x0001e1f4 bnez v1, 0x1e220              |             
    0x0001e1f8 lw v1, 8(s5)                  |             v1 = *((s5 + 2));
    0x0001e1fc srl a1, s1, 8                 |             a1 = s1 >> 8;
    0x0001e200 sll t1, v1, 2                 |             t1 = v1 << 2;
    0x0001e204 lw v1, -0x7d80(gp)            |             v1 = *((gp - 8032));
    0x0001e208 mul a0, a1, a0                |             __asm ("mul a0, a1, a0");
    0x0001e20c addiu v1, v1, -0x529c         |             v1 += -0x529c;
    0x0001e210 lwx v1, t1(v1)                |             __asm ("lwx v1, t1(v1)");
    0x0001e214 addiu v1, v1, 1               |             v1++;
    0x0001e218 mul a1, v1, a0                |             __asm ("mul a1, v1, a0");
    0x0001e21c addu a2, a1, a2               |             a2 = a1 + a2;
                                             |         }
    0x0001e220 divu zero, v0, s2             |         __asm ("divu zero, v0, s2");
    0x0001e224 teq s2, zero, 7               |         __asm ("teq s2, zero, 7");
    0x0001e228 lw v1, 0x78(a3)               |         v1 = *((a3 + 30));
    0x0001e22c mflo s2                       |         __asm ("mflo s2");
                                             |         if (v1 == 0) {
    0x0001e230 beqz v1, 0x1e36c              |             goto label_5;
                                             |         }
                                             | label_0:
    0x0001e234 lw s3, -0x7d80(gp)            |         s3 = *((gp - 8032));
    0x0001e238 lw t9, -0x7d00(gp)            |         t9 = sym.imp.__sprintf_chk
    0x0001e23c addiu a3, a3, 0x20            |         a3 += 0x20;
    0x0001e240 addiu a2, zero, 0x30          |         a2 = 0x30;
    0x0001e244 addiu a1, zero, 1             |         a1 = 1;
    0x0001e248 sw t0, 0x10(sp)               |         *(var_10h) = t0;
    0x0001e24c addiu a0, s3, -0x52e0         |         a0 = s3 + -0x52e0;
    0x0001e250 jalr t9                       |         t9 ();
    0x0001e254 lw gp, 0x18(sp)               |         gp = *(var_18h);
    0x0001e258 addiu a0, s3, -0x52e0         |         a0 = s3 + -0x52e0;
    0x0001e25c lw t9, -0x7c68(gp)            |         t9 = sym.imp.strlen;
    0x0001e260 addiu s3, s3, -0x52e0         |         s3 += -0x52e0;
    0x0001e264 jalr t9                       |         t9 ();
    0x0001e268 lw s6, 0x10(s5)               |         s6 = *((s5 + 4));
    0x0001e26c move a0, s2                   |         a0 = s2;
    0x0001e270 lw t9, 0xc4(s6)               |         t9 = *((s6 + 49));
    0x0001e274 move s2, v0                   |         s2 = v0;
    0x0001e278 jalr t9                       |         t9 ();
    0x0001e27c lw gp, 0x18(sp)               |         gp = *(var_18h);
    0x0001e280 sw v0, 0x10(sp)               |         *(var_10h) = v0;
    0x0001e284 addiu a3, s6, 0x53            |         a3 = s6 + 0x53;
    0x0001e288 lw t9, -0x7d00(gp)            |         t9 = sym.imp.__sprintf_chk
    0x0001e28c addiu a2, zero, -1            |         a2 = -1;
    0x0001e290 addiu a1, zero, 1             |         a1 = 1;
    0x0001e294 addu a0, s3, s2               |         a0 = s3 + s2;
    0x0001e298 jalr t9                       |         t9 ();
    0x0001e29c lwx s0, s0(s4)                |         __asm ("lwx s0, s0(s4)");
    0x0001e2a0 lw v0, 0x10(s0)               |         v0 = *((s0 + 4));
    0x0001e2a4 lw v0, 0x80(v0)               |         v0 = *((v0 + 32));
    0x0001e2a8 divu zero, s1, v0             |         __asm ("divu zero, s1, v0");
    0x0001e2ac teq v0, zero, 7               |         __asm ("teq v0, zero, 7");
    0x0001e2b0 mfhi v0                       |         __asm ("mfhi v0");
    0x0001e2b4 lw gp, 0x18(sp)               |         gp = *(var_18h);
                                             |         if (v0 != 0) {
    0x0001e2b8 bnez v0, 0x1e374              |             goto label_6;
                                             |         }
    0x0001e2bc lw ra, 0x3c(sp)               |         ra = *(var_3ch);
    0x0001e2c0 move v0, s3                   |         v0 = s3;
    0x0001e2c4 lw s6, 0x38(sp)               |         s6 = *(var_38h);
    0x0001e2c8 lw s5, 0x34(sp)               |         s5 = *(var_34h);
    0x0001e2cc lw s4, 0x30(sp)               |         s4 = *(var_30h);
    0x0001e2d0 lw s3, 0x2c(sp)               |         s3 = *(var_2ch);
    0x0001e2d4 lw s2, 0x28(sp)               |         s2 = *(var_28h);
    0x0001e2d8 lw s1, 0x24(sp)               |         s1 = *(var_24h);
    0x0001e2dc lw s0, 0x20(sp)               |         s0 = *(var_20h);
    0x0001e2e0 addiu sp, sp, 0x40            |         
    0x0001e2e4 jr ra                         |         return v0;
    0x0001e2e8 lw t9, -0x7d24(gp)            |         t9 = sym.ioc_init;
    0x0001e2ec bal 0x1d8bc                   |         sym_ioc_init ();
    0x0001e2f0 nop                           |         
    0x0001e2f4 lw gp, 0x18(sp)               |         gp = *(var_18h);
    0x0001e2f8 bnez v0, 0x1e19c              |         
                                             |     }
    0x0001e2fc lw ra, 0x3c(sp)               |     ra = *(var_3ch);
    0x0001e300 lw s6, 0x38(sp)               |     s6 = *(var_38h);
    0x0001e304 lw s5, 0x34(sp)               |     s5 = *(var_34h);
    0x0001e308 lw s4, 0x30(sp)               |     s4 = *(var_30h);
    0x0001e30c lw s3, 0x2c(sp)               |     s3 = *(var_2ch);
    0x0001e310 lw s2, 0x28(sp)               |     s2 = *(var_28h);
    0x0001e314 lw s1, 0x24(sp)               |     s1 = *(var_24h);
    0x0001e318 lw s0, 0x20(sp)               |     s0 = *(var_20h);
    0x0001e31c move v0, zero                 |     v0 = 0;
    0x0001e320 addiu sp, sp, 0x40            |     
    0x0001e324 jr ra                         |     return v0;
                                             | label_2:
    0x0001e328 lw a0, -0x7d80(gp)            |     a0 = *((gp - 8032));
                                             | label_3:
    0x0001e32c lui v1, 0x6564                |     v1 = 0x65646f6e;
    0x0001e330 addiu v1, v1, 0x6f6e          |     
    0x0001e334 addiu v0, a0, -0x52e0         |     v0 = a0 + -0x52e0;
    0x0001e338 sw v1, -0x52e0(a0)            |     *((a0 - 5304)) = v1;
    0x0001e33c addiu v1, zero, 0x76          |     v1 = 0x76;
    0x0001e340 sh v1, 4(v0)                  |     *((v0 + 2)) = v1;
                                             |     do {
    0x0001e344 lw ra, 0x3c(sp)               |         ra = *(var_3ch);
    0x0001e348 lw s6, 0x38(sp)               |         s6 = *(var_38h);
    0x0001e34c lw s5, 0x34(sp)               |         s5 = *(var_34h);
    0x0001e350 lw s4, 0x30(sp)               |         s4 = *(var_30h);
    0x0001e354 lw s3, 0x2c(sp)               |         s3 = *(var_2ch);
    0x0001e358 lw s2, 0x28(sp)               |         s2 = *(var_28h);
    0x0001e35c lw s1, 0x24(sp)               |         s1 = *(var_24h);
    0x0001e360 lw s0, 0x20(sp)               |         s0 = *(var_20h);
    0x0001e364 addiu sp, sp, 0x40            |         
    0x0001e368 jr ra                         |         return v0;
                                             | label_5:
    0x0001e36c addu s2, a2, s2               |         s2 = a2 + s2;
    0x0001e370 b 0x1e234                     |         goto label_0;
                                             | label_6:
    0x0001e374 lw t9, -0x7c68(gp)            |         t9 = sym.imp.strlen;
    0x0001e378 move a0, s3                   |         a0 = s3;
    0x0001e37c jalr t9                       |         t9 ();
    0x0001e380 lw v1, 0x10(s5)               |         v1 = *((s5 + 4));
    0x0001e384 lw gp, 0x18(sp)               |         gp = *(var_18h);
    0x0001e388 addu a0, s3, v0               |         a0 = s3 + v0;
    0x0001e38c lw a1, 0x80(v1)               |         a1 = *((v1 + 32));
    0x0001e390 lw t9, -0x7d00(gp)            |         t9 = sym.imp.__sprintf_chk
    0x0001e394 divu zero, s1, a1             |         __asm ("divu zero, s1, a1");
    0x0001e398 teq a1, zero, 7               |         __asm ("teq a1, zero, 7");
    0x0001e39c addiu a3, v1, 0x63            |         a3 = v1 + 0x63;
    0x0001e3a0 addiu a2, zero, -1            |         a2 = -1;
    0x0001e3a4 addiu a1, zero, 1             |         a1 = 1;
    0x0001e3a8 mfhi s1                       |         __asm ("mfhi s1");
    0x0001e3ac sw s1, 0x10(sp)               |         *(var_10h) = s1;
    0x0001e3b0 jalr t9                       |         t9 ();
    0x0001e3b4 lw ra, 0x3c(sp)               |         ra = *(var_3ch);
    0x0001e3b8 move v0, s3                   |         v0 = s3;
    0x0001e3bc lw s6, 0x38(sp)               |         s6 = *(var_38h);
    0x0001e3c0 lw s5, 0x34(sp)               |         s5 = *(var_34h);
    0x0001e3c4 lw s4, 0x30(sp)               |         s4 = *(var_30h);
    0x0001e3c8 lw s3, 0x2c(sp)               |         s3 = *(var_2ch);
    0x0001e3cc lw s2, 0x28(sp)               |         s2 = *(var_28h);
    0x0001e3d0 lw s1, 0x24(sp)               |         s1 = *(var_24h);
    0x0001e3d4 lw s0, 0x20(sp)               |         s0 = *(var_20h);
    0x0001e3d8 addiu sp, sp, 0x40            |         
    0x0001e3dc jr ra                         |         return v0;
                                             | label_1:
    0x0001e3e0 move v0, zero                 |         v0 = 0;
    0x0001e3e4 jr ra                         |         return v0;
                                             | label_4:
    0x0001e3e8 lw t9, -0x7c88(gp)            |         t9 = sym.imp.strncpy;
    0x0001e3ec addiu a0, s0, -0x52e0         |         a0 = s0 + -0x52e0;
    0x0001e3f0 addiu s0, s0, -0x52e0         |         s0 += -0x52e0;
    0x0001e3f4 addiu a2, zero, 0x30          |         a2 = 0x30;
    0x0001e3f8 addiu a1, a3, 0xc8            |         a1 = a3 + 0xc8;
    0x0001e3fc jalr t9                       |         t9 ();
    0x0001e400 move v0, s0                   |         v0 = s0;
    0x0001e404 sb zero, 0x2f(s0)             |         *((s0 + 47)) = 0;
    0x0001e408 b 0x1e344                     |         
                                             |     } while (1);
                                             | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/sar @ 0x5a40 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) sym.read_header_data ()          | void read_header_data () {
    0x00005a40 lui gp, 4                     |     
    0x00005a44 addiu gp, gp, -0x7ef0         |     
    0x00005a48 addu gp, gp, t9               |     gp += t9;
    0x00005a4c addiu sp, sp, -0xd8           |     
    0x00005a50 addiu a1, zero, 0x4c          |     a1 = 0x4c;
    0x00005a54 sw s6, 0xcc(sp)               |     *(var_cch) = s6;
    0x00005a58 lw s6, -0x7bf8(gp)            |     s6 = *((gp - 7934));
    0x00005a5c sw s4, 0xc4(sp)               |     *(var_c4h) = s4;
    0x00005a60 lw s4, -0x7f74(gp)            |     s4 = sym.sa_read;
    0x00005a64 lw v0, (s6)                   |     v0 = *(s6);
    0x00005a68 sw gp, 0x20(sp)               |     *(var_20h) = gp;
    0x00005a6c sw ra, 0xd4(sp)               |     *(var_d4h) = ra;
    0x00005a70 sw s1, 0xb8(sp)               |     *(var_b8h) = s1;
    0x00005a74 sw s0, 0xb4(sp)               |     *(var_b4h) = s0;
    0x00005a78 addiu a0, sp, 0x50            |     a0 = sp + 0x50;
    0x00005a7c move t9, s4                   |     t9 = s4;
    0x00005a80 sw s7, 0xd0(sp)               |     *(var_d0h) = s7;
    0x00005a84 sw s5, 0xc8(sp)               |     *(var_c8h) = s5;
    0x00005a88 sw s3, 0xc0(sp)               |     *(var_c0h) = s3;
    0x00005a8c sw s2, 0xbc(sp)               |     *(var_bch) = s2;
    0x00005a90 sw v0, 0xac(sp)               |     *(var_ach) = v0;
    0x00005a94 addiu s0, sp, 0x9c            |     s0 = sp + 0x9c;
    0x00005a98 bal 0x51b8                    |     sym_sa_read ();
    0x00005a9c lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x00005aa0 lbu a2, 0x57(sp)              |     a2 = *(var_57h);
    0x00005aa4 lbu a1, 0x56(sp)              |     a1 = *(var_56h);
    0x00005aa8 lbu a0, 0x55(sp)              |     a0 = *(var_55h);
    0x00005aac lw a3, -0x7fd8(gp)            |     a3 = *(gp);
    0x00005ab0 lbu v1, 0x54(sp)              |     v1 = *(var_54h);
    0x00005ab4 lw t9, -0x7d00(gp)            |     t9 = sym.imp.__sprintf_chk
    0x00005ab8 sw a2, 0x1c(sp)               |     *(var_1ch) = a2;
    0x00005abc sw a1, 0x18(sp)               |     *(var_18h) = a1;
    0x00005ac0 nop                           |     
    0x00005ac4 sw v1, 0x10(sp)               |     *(var_10h) = v1;
                                             |     /* str._d._d._d._d */
    0x00005ac8 addiu a3, a3, 0x2064          |     a3 += 0x2064;
    0x00005acc addiu a2, zero, 0x10          |     a2 = 0x10;
    0x00005ad0 addiu a1, zero, 1             |     a1 = 1;
    0x00005ad4 move a0, s0                   |     a0 = s0;
    0x00005ad8 move s1, v0                   |     s1 = v0;
    0x00005adc jalr t9                       |     t9 ();
    0x00005ae0 lbu v0, 0x57(sp)              |     v0 = *(var_57h);
    0x00005ae4 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 == 0) {
    0x00005ae8 bnez v0, 0x5b08               |         
    0x00005aec lw t9, -0x7c68(gp)            |         t9 = sym.imp.strlen;
    0x00005af0 move a0, s0                   |         a0 = s0;
    0x00005af4 jalr t9                       |         t9 ();
    0x00005af8 addiu v1, sp, 0xb0            |         v1 = sp + 0xb0;
    0x00005afc addu v0, v1, v0               |         v0 = v1 + v0;
    0x00005b00 lw gp, 0x20(sp)               |         gp = *(var_20h);
    0x00005b04 sb zero, -0x16(v0)            |         *((v0 - 22)) = 0;
                                             |     }
    0x00005b08 lui v0, 0x2175                |     v0 = 0x21750000;
                                             |     if (s1 != 0) {
    0x00005b0c bnez s1, 0x5ce4               |         goto label_0;
                                             |     }
    0x00005b10 lw v1, 0x50(sp)               |     v1 = *(var_50h);
    0x00005b14 ori v0, v0, 0xd596            |     v0 |= 0xd596;
    0x00005b18 lw a1, -0x7fd8(gp)            |     a1 = *(gp);
                                             |     if (v1 != v0) {
    0x00005b1c bne v1, v0, 0x5cb0            |         goto label_1;
                                             |     }
    0x00005b20 lw t9, -0x7bd0(gp)            |     t9 = sym.imp.strcmp;
                                             |     /* str.12.1.6 */
    0x00005b24 addiu a1, a1, 0x2070          |     a1 += 0x2070;
    0x00005b28 move a0, s0                   |     a0 = s0;
    0x00005b2c jalr t9                       |     t9 ();
    0x00005b30 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 != 0) {
    0x00005b34 bnez v0, 0x5cb0               |         goto label_1;
                                             |     }
    0x00005b38 lw a0, -0x7f5c(gp)            |     a0 = *(gp);
    0x00005b3c move t9, s4                   |     t9 = s4;
    0x00005b40 addiu a1, zero, 0x148         |     a1 = aav.0x00000148;
    0x00005b44 bal 0x51b8                    |     sym_sa_read ();
    0x00005b48 move s0, v0                   |     s0 = v0;
    0x00005b4c lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 != 0) {
    0x00005b50 bnez v0, 0x5cf0               |         goto label_2;
                                             |     }
    0x00005b54 lw s3, -0x7f5c(gp)            |     s3 = *(gp);
    0x00005b58 lw a0, 0x14(s3)               |     a0 = *((s3 + 5));
    0x00005b5c sltiu v0, a0, 0x28            |     v0 = (a0 < 0x28) ? 1 : 0;
    0x00005b60 addiu v0, zero, 0x24          |     v0 = 0x24;
                                             |     if (v0 == 0) {
    0x00005b64 beqz v0, 0x5ce4               |         goto label_0;
                                             |     }
    0x00005b68 lw v1, 0x34(s3)               |     v1 = *((s3 + 13));
    0x00005b6c addiu v0, zero, 0x18          |     v0 = 0x18;
                                             |     if (v1 != v0) {
    0x00005b70 bne v1, v0, 0x5ce4            |         goto label_0;
                                             |     }
    0x00005b74 lw v1, 0x38(s3)               |     v1 = *((s3 + 14));
    0x00005b78 lw t9, -0x7f70(gp)            |     t9 = sym.print_read_error;
                                             |     if (v1 != v0) {
    0x00005b7c bne v1, v0, 0x5ce8            |         goto label_3;
                                             |     }
    0x00005b80 lw s5, -0x7fcc(gp)            |     s5 = *(gp);
                                             |     if (a0 == 0) {
    0x00005b84 beqz a0, 0x5c4c               |         goto label_4;
                                             |     }
    0x00005b88 lw s2, -0x7fc8(gp)            |     s2 = *(gp);
    0x00005b8c move s1, s5                   |     s1 = s5;
    0x00005b90 addiu s7, sp, 0x2c            |     s7 = sp + 0x2c;
                                             |     do {
    0x00005b94 addiu a1, zero, 0x24          |         a1 = 0x24;
    0x00005b98 move t9, s4                   |         t9 = s4;
    0x00005b9c move a0, s7                   |         a0 = s7;
    0x00005ba0 bal 0x51b8                    |         sym_sa_read ();
    0x00005ba4 lw gp, 0x20(sp)               |         gp = *(var_20h);
                                             |         if (v0 != 0) {
    0x00005ba8 bnez v0, 0x5cf0               |             goto label_2;
                                             |         }
    0x00005bac lw t9, -0x7f68(gp)            |         t9 = sym.get_activity_position;
    0x00005bb0 lw a1, 0x2c(sp)               |         a1 = *(var_2ch_3);
    0x00005bb4 move a2, zero                 |         a2 = 0;
    0x00005bb8 move a0, s2                   |         a0 = s2;
    0x00005bbc bal 0x67c0                    |         sym_get_activity_position ();
    0x00005bc0 lw gp, 0x20(sp)               |         gp = *(var_20h);
                                             |         if (v0 < 0) {
    0x00005bc4 bltz v0, 0x5ce4               |             goto label_0;
                                             |         }
    0x00005bc8 sll v0, v0, 2                 |         v0 <<= 2;
    0x00005bcc lw v1, 0x40(sp)               |         v1 = *(var_40h_4);
    0x00005bd0 lwx v0, v0(s2)                |         __asm ("lwx v0, v0(s2)");
    0x00005bd4 lw a0, 0x8c(v0)               |         a0 = *((v0 + 35));
    0x00005bd8 lw v1, 0x44(sp)               |         v1 = *(var_44h_2);
                                             |         if (a0 != v1) {
    0x00005bdc bne a0, v1, 0x5ce4            |             goto label_0;
                                             |         }
    0x00005be0 lw a0, 0x54(v0)               |         a0 = *((v0 + 21));
    0x00005be4 lw v1, 0x48(sp)               |         v1 = *(var_48h_2);
                                             |         if (a0 != v1) {
    0x00005be8 bne a0, v1, 0x5ce4            |             goto label_0;
                                             |         }
    0x00005bec lw a0, 0x58(v0)               |         a0 = *((v0 + 22));
    0x00005bf0 lw v1, 0x4c(sp)               |         v1 = *(var_4ch_3);
                                             |         if (a0 != v1) {
    0x00005bf4 bne a0, v1, 0x5ce4            |             goto label_0;
                                             |         }
    0x00005bf8 lw a0, 0x5c(v0)               |         a0 = *((v0 + 23));
    0x00005bfc lw a1, 0x34(sp)               |         a1 = *(var_34h_3);
                                             |         if (a0 != v1) {
    0x00005c00 bne a0, v1, 0x5ce4            |             goto label_0;
                                             |         }
    0x00005c04 lw v1, 0x38(sp)               |         v1 = *(var_38h_3);
                                             |         if (a1 <= 0) {
    0x00005c08 blez a1, 0x5ce4               |             goto label_0;
                                             |         }
    0x00005c0c lw a0, 0x30(sp)               |         a0 = *(var_30h_3);
                                             |         if (v1 <= 0) {
    0x00005c10 blez v1, 0x5ce4               |             goto label_0;
                                             |         }
    0x00005c14 lw a2, 8(v0)                  |         a2 = *((v0 + 2));
    0x00005c18 addiu s0, s0, 1               |         s0++;
                                             |         if (a2 != a0) {
    0x00005c1c bne a2, a0, 0x5ce4            |             goto label_0;
                                             |         }
    0x00005c20 lw a0, 0x14(s3)               |         a0 = *((s3 + 5));
    0x00005c24 lw a3, 0x2c(sp)               |         a3 = *(var_2ch_3);
    0x00005c28 sltu a2, s0, a0               |         a2 = (s0 < a0) ? 1 : 0;
    0x00005c2c sw a3, (s1)                   |         *(s1) = a3;
    0x00005c30 sw a1, 0x70(v0)               |         *((v0 + 28)) = a1;
    0x00005c34 sw v1, 0x74(v0)               |         *((v0 + 29)) = v1;
    0x00005c38 addiu s1, s1, 4               |         s1 += 4;
    0x00005c3c bnez a2, 0x5b94               |         
                                             |     } while (a2 != 0);
    0x00005c40 slti v0, s0, 0x27             |     v0 = (s0 < 0x27) ? 1 : 0;
    0x00005c44 lw t9, -0x7f48(gp)            |     t9 = sym.reverse_check_act;
                                             |     if (v0 == 0) {
    0x00005c48 beqz v0, 0x5c6c               |         goto label_5;
                                             |     }
                                             | label_4:
    0x00005c4c sll v0, s0, 2                 |     v0 = s0 << 2;
    0x00005c50 addu s5, s5, v0               |     s5 += v0;
    0x00005c54 addiu v0, zero, 0x27          |     v0 = 0x27;
                                             |     do {
    0x00005c58 addiu s0, s0, 1               |         s0++;
    0x00005c5c sw zero, (s5)                 |         *(s5) = 0;
    0x00005c60 addiu s5, s5, 4               |         s5 += 4;
    0x00005c64 bne s0, v0, 0x5c58            |         
                                             |     } while (s0 != v0);
    0x00005c68 lw t9, -0x7f48(gp)            |     t9 = sym.reverse_check_act;
                                             | label_5:
    0x00005c6c bal 0x4964                    |     sym_reverse_check_act ();
    0x00005c70 nop                           |     
    0x00005c74 lw v1, 0xac(sp)               |     v1 = *(var_ach);
    0x00005c78 lw v0, (s6)                   |     v0 = *(s6);
    0x00005c7c lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v1 == v0) {
    0x00005c80 bne v1, v0, 0x5cfc            |         
    0x00005c84 lw ra, 0xd4(sp)               |         ra = *(var_d4h);
    0x00005c88 lw s7, 0xd0(sp)               |         s7 = *(var_d0h);
    0x00005c8c lw s6, 0xcc(sp)               |         s6 = *(var_cch);
    0x00005c90 lw s5, 0xc8(sp)               |         s5 = *(var_c8h);
    0x00005c94 lw s4, 0xc4(sp)               |         s4 = *(var_c4h);
    0x00005c98 lw s3, 0xc0(sp)               |         s3 = *(var_c0h);
    0x00005c9c lw s2, 0xbc(sp)               |         s2 = *(var_bch);
    0x00005ca0 lw s1, 0xb8(sp)               |         s1 = *(var_b8h);
    0x00005ca4 lw s0, 0xb4(sp)               |         s0 = *(var_b4h);
    0x00005ca8 addiu sp, sp, 0xd8            |         
    0x00005cac jr ra                         |         return v0;
                                             | label_1:
    0x00005cb0 lhu v1, 0x50(sp)              |         v1 = *(var_50h);
    0x00005cb4 ori v0, zero, 0xd596          |         v0 = 0xd596;
    0x00005cb8 lw t9, -0x7f70(gp)            |         t9 = sym.print_read_error;
                                             |         if (v1 == v0) {
    0x00005cbc bne v1, v0, 0x5ce8            |             
    0x00005cc0 lw v0, -0x7be8(gp)            |             v0 = *((gp - 7930));
    0x00005cc4 lw a0, -0x7fd8(gp)            |             a0 = *(gp);
    0x00005cc8 lw t9, -0x7c34(gp)            |             t9 = sym.imp.fwrite;
    0x00005ccc lw a3, (v0)                   |             a3 = *(v0);
    0x00005cd0 addiu a2, zero, 0x3e          |             a2 = 0x3e;
    0x00005cd4 addiu a1, zero, 1             |             a1 = 1;
                                             |             /* str.Using_a_wrong_data_collector_from_a_different_sysstat_version_n */
    0x00005cd8 addiu a0, a0, 0x2078          |             a0 += 0x2078;
    0x00005cdc jalr t9                       |             t9 ();
    0x00005ce0 lw gp, 0x20(sp)               |             gp = *(var_20h);
                                             | label_0:
    0x00005ce4 lw t9, -0x7f70(gp)            |             t9 = sym.print_read_error;
                                             |         }
                                             | label_3:
    0x00005ce8 addiu a0, zero, 2             |         a0 = 2;
    0x00005cec bal 0x48f8                    |         sym_print_read_error ();
                                             | label_2:
    0x00005cf0 lw t9, -0x7f70(gp)            |         t9 = sym.print_read_error;
    0x00005cf4 addiu a0, zero, 1             |         a0 = 1;
    0x00005cf8 bal 0x48f8                    |         sym_print_read_error ();
                                             |     }
    0x00005cfc lw t9, -0x7c10(gp)            |     t9 = sym.imp.__stack_chk_fail;
    0x00005d00 jalr t9                       |     t9 ();
    0x00005d04 nop                           |     
                                             | }
    ; assembly                           | /* r2dec pseudo code output */
                                         | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/sar @ 0x51b8 */
                                         | #include <stdint.h>
                                         |  
    ; (fcn) sym.sa_read ()               | void sa_read () {
    0x000051b8 lui gp, 4                 |     
    0x000051bc addiu gp, gp, -0x7668     |     
    0x000051c0 addu gp, gp, t9           |     gp += t9;
                                         |     if (a1 == 0) {
    0x000051c4 beqz a1, 0x5248           |         goto label_0;
                                         |     }
    0x000051c8 nop                       |     
    0x000051cc addiu sp, sp, -0x28       |     
    0x000051d0 sw gp, 0x10(sp)           |     *(var_10h_2) = gp;
    0x000051d4 sw s1, 0x20(sp)           |     *(var_20h_2) = s1;
    0x000051d8 sw s0, 0x1c(sp)           |     *(var_1ch_2) = s0;
    0x000051dc sw ra, 0x24(sp)           |     *(var_24h) = ra;
    0x000051e0 move s0, a1               |     s0 = a1;
    0x000051e4 move s1, a0               |     s1 = a0;
    0x000051e8 b 0x51f4                  |     
                                         |     while (v0 != 0) {
    0x000051ec addu s1, s1, v0           |         s1 += v0;
                                         |         if (s0 == 0) {
    0x000051f0 beqz s0, 0x5230           |             goto label_1;
                                         |         }
    0x000051f4 lw t9, -0x7bd8(gp)        |         t9 = sym.imp.read;
    0x000051f8 move a2, s0               |         a2 = s0;
    0x000051fc move a1, s1               |         a1 = s1;
    0x00005200 move a0, zero             |         a0 = 0;
    0x00005204 jalr t9                   |         t9 ();
    0x00005208 lw gp, 0x10(sp)           |         gp = *(var_10h_2);
                                         |         if (v0 < 0) {
    0x0000520c bltz v0, 0x5250           |             goto label_2;
                                         |         }
    0x00005210 subu s0, s0, v0           |         __asm ("subu s0, s0, v0");
    0x00005214 bnez v0, 0x51ec           |         
                                         |     }
    0x00005218 lw ra, 0x24(sp)           |     ra = *(var_24h);
    0x0000521c lw s1, 0x20(sp)           |     s1 = *(var_20h_2);
    0x00005220 lw s0, 0x1c(sp)           |     s0 = *(var_1ch_2);
    0x00005224 addiu v0, zero, 1         |     v0 = 1;
    0x00005228 addiu sp, sp, 0x28        |     
    0x0000522c jr ra                     |     return v1;
                                         | label_1:
    0x00005230 lw ra, 0x24(sp)           |     ra = *(var_24h);
    0x00005234 lw s1, 0x20(sp)           |     s1 = *(var_20h_2);
    0x00005238 lw s0, 0x1c(sp)           |     s0 = *(var_1ch_2);
    0x0000523c move v0, zero             |     v0 = 0;
    0x00005240 addiu sp, sp, 0x28        |     
    0x00005244 jr ra                     |     return v1;
                                         | label_0:
    0x00005248 move v0, zero             |     v0 = 0;
    0x0000524c jr ra                     |     return v1;
                                         | label_2:
    0x00005250 lw a0, -0x7fd8(gp)        |     a0 = *(gp);
    0x00005254 lw t9, -0x7c30(gp)        |     t9 = sym.imp.perror;
                                         |     /* str.read */
    0x00005258 addiu a0, a0, 0x201c      |     a0 += 0x201c;
    0x0000525c jalr t9                   |     t9 ();
    0x00005260 lw gp, 0x10(sp)           |     gp = *(var_10h_2);
    0x00005264 lw t9, -0x7c54(gp)        |     t9 = sym.imp.exit;
    0x00005268 addiu a0, zero, 2         |     a0 = 2;
    0x0000526c jalr t9                   |     t9 ();
    0x00005270 lui gp, 4                 |     
    0x00005274 addiu gp, gp, -0x7720     |     
    0x00005278 addu gp, gp, t9           |     gp += t9;
    0x0000527c addiu sp, sp, -0x78       |     
    0x00005280 lw a1, -0x7fd8(gp)        |     a1 = *(gp);
    0x00005284 sw s1, 0x70(sp)           |     *(var_70h) = s1;
    0x00005288 lw s1, -0x7bf8(gp)        |     s1 = *((gp - 7934));
    0x0000528c sw s0, 0x6c(sp)           |     *(var_6ch) = s0;
    0x00005290 lw s0, 0x8c(sp)           |     s0 = *(var_8ch);
    0x00005294 lw v0, (s1)               |     v0 = *(s1);
    0x00005298 lw t9, -0x7ca8(gp)        |     t9 = sym.imp.__printf_chk;
    0x0000529c sw ra, 0x74(sp)           |     *(var_74h) = ra;
    0x000052a0 sw gp, 0x18(sp)           |     *(var_18h_2) = gp;
    0x000052a4 move a2, a3               |     a2 = a3;
                                         |     /* str._n__11s */
    0x000052a8 addiu a1, a1, 0x2024      |     a1 += 0x2024;
    0x000052ac addiu a0, zero, 1         |     a0 = 1;
    0x000052b0 sw v0, 0x64(sp)           |     *(var_64h) = v0;
    0x000052b4 jalr t9                   |     t9 ();
    0x000052b8 nop                       |     
    0x000052bc lw v1, 0x10(s0)           |     v1 = *((s0 + 4));
    0x000052c0 lw gp, 0x18(sp)           |     gp = *(var_18h_2);
    0x000052c4 sltiu v0, v1, 2           |     v0 = (v1 < 2) ? 1 : 0;
    0x000052c8 addiu a0, zero, 2         |     a0 = 2;
                                         |     if (v0 != 0) {
    0x000052cc movz a0, v1, v0           |         a0 = v1;
                                         |     }
    0x000052d0 lw a3, -0x7fd8(gp)        |     a3 = *(gp);
    0x000052d4 addiu v0, a0, -1          |     v0 = a0 + -1;
    0x000052d8 lw t9, -0x7d00(gp)        |     t9 = sym.imp.__sprintf_chk
    0x000052dc addiu s0, sp, 0x24        |     s0 = sp + 0x24;
                                         |     /* str.__LINUX_RESTART_t__d_CPU__n */
    0x000052e0 addiu a3, a3, 0x202c      |     a3 += 0x202c;
    0x000052e4 addiu a2, zero, 0x40      |     a2 = 0x40;
    0x000052e8 addiu a1, zero, 1         |     a1 = 1;
    0x000052ec move a0, s0               |     a0 = s0;
    0x000052f0 sw v0, 0x10(sp)           |     *(var_10h_3) = v0;
    0x000052f4 jalr t9                   |     t9 ();
    0x000052f8 lw gp, 0x18(sp)           |     gp = *(var_18h_2);
    0x000052fc move a2, s0               |     a2 = s0;
    0x00005300 addiu a0, zero, 2         |     a0 = 2;
    0x00005304 lw a1, -0x7fd8(gp)        |     a1 = *(gp);
    0x00005308 lw t9, -0x7f78(gp)        |     t9 = sym.cprintf_s;
                                         |     /* esilref: '&s' */
    0x0000530c addiu a1, a1, 0x37c8      |     a1 += 0x37c8;
    0x00005310 bal 0x1d268               |     sym_cprintf_s ();
    0x00005314 lw v1, 0x64(sp)           |     v1 = *(var_64h);
    0x00005318 lw v0, (s1)               |     v0 = *(s1);
    0x0000531c lw gp, 0x18(sp)           |     gp = *(var_18h_2);
                                         |     if (v1 == v0) {
    0x00005320 bne v1, v0, 0x5338        |         
    0x00005324 lw ra, 0x74(sp)           |         ra = *(var_74h);
    0x00005328 lw s1, 0x70(sp)           |         s1 = *(var_70h);
    0x0000532c lw s0, 0x6c(sp)           |         s0 = *(var_6ch);
    0x00005330 addiu sp, sp, 0x78        |         
    0x00005334 jr ra                     |         return v1;
                                         |     }
    0x00005338 lw t9, -0x7c10(gp)        |     t9 = sym.imp.__stack_chk_fail;
    0x0000533c jalr t9                   |     t9 ();
    0x00005340 nop                       |     
    0x00005344 lui gp, 4                 |     
    0x00005348 addiu gp, gp, -0x77f4     |     
    0x0000534c addu gp, gp, t9           |     gp += t9;
    0x00005350 addiu sp, sp, -0x20       |     
    0x00005354 lw a1, -0x7fd8(gp)        |     a1 = *(gp);
    0x00005358 lw t9, -0x7ca8(gp)        |     t9 = sym.imp.__printf_chk;
    0x0000535c move a2, a3               |     a2 = a3;
    0x00005360 sw s0, 0x18(sp)           |     *(var_18h_3) = s0;
    0x00005364 sw ra, 0x1c(sp)           |     *(var_1ch_3) = ra;
    0x00005368 sw gp, 0x10(sp)           |     *(var_10h_4) = gp;
                                         |     /* str.__11s */
    0x0000536c addiu a1, a1, 0x2048      |     a1 += 0x2048;
    0x00005370 addiu a0, zero, 1         |     a0 = 1;
    0x00005374 lw s0, 0x34(sp)           |     s0 = *(var_34h_2);
    0x00005378 jalr t9                   |     t9 ();
    0x0000537c lw gp, 0x10(sp)           |     gp = *(var_10h_4);
    0x00005380 lw ra, 0x1c(sp)           |     ra = *(var_1ch_3);
    0x00005384 move a2, s0               |     a2 = s0;
    0x00005388 lw a1, -0x7fd8(gp)        |     a1 = *(gp);
    0x0000538c lw s0, 0x18(sp)           |     s0 = *(var_18h_3);
    0x00005390 lw t9, -0x7f78(gp)        |     t9 = sym.cprintf_s;
                                         |     /* str.__COM__s_n */
    0x00005394 addiu a1, a1, 0x2050      |     a1 += 0x2050;
    0x00005398 addiu a0, zero, 3         |     a0 = 3;
    0x0000539c addiu sp, sp, 0x20        |     
    0x000053a0 b 0x1d268                 |     return void (*0x1d268)() ();
                                         | }
    ; assembly                                           | /* r2dec pseudo code output */
                                                         | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/sar @ 0xb978 */
                                                         | #include <stdint.h>
                                                         |  
    ; (fcn) sym.set_record_timestamp_string ()           | void set_record_timestamp_string () {
    0x0000b978 lui gp, 3                                 |     
    0x0000b97c addiu gp, gp, 0x21d8                      |     
    0x0000b980 addu gp, gp, t9                           |     gp += t9;
    0x0000b984 addiu sp, sp, -0x38                       |     
    0x0000b988 andi v0, a0, 0x80                         |     v0 = a0 & 0x80;
    0x0000b98c sw gp, 0x18(sp)                           |     *(var_18h) = gp;
    0x0000b990 sw s4, 0x30(sp)                           |     *(var_30h) = s4;
    0x0000b994 sw s3, 0x2c(sp)                           |     *(var_2ch) = s3;
    0x0000b998 sw s2, 0x28(sp)                           |     *(var_28h) = s2;
    0x0000b99c sw s1, 0x24(sp)                           |     *(var_24h) = s1;
    0x0000b9a0 sw s0, 0x20(sp)                           |     *(var_20h) = s0;
    0x0000b9a4 sw ra, 0x34(sp)                           |     *(var_34h) = ra;
    0x0000b9a8 move s0, a0                               |     s0 = a0;
    0x0000b9ac move s1, a2                               |     s1 = a2;
    0x0000b9b0 move s4, a3                               |     s4 = a3;
    0x0000b9b4 lw s2, 0x48(sp)                           |     s2 = *(arg_48h);
    0x0000b9b8 lw s3, 0x4c(sp)                           |     s3 = *(arg_4ch);
                                                         |     if (v0 != 0) {
    0x0000b9bc beqz v0, 0xba14                           |         
    0x0000b9c0 lw t9, -0x7d00(gp)                        |         t9 = sym.imp.__sprintf_chk
                                                         |         if (a2 == 0) {
    0x0000b9c4 beqz a2, 0xba38                           |             goto label_0;
                                                         |         }
    0x0000b9c8 lw v1, 0xc(a1)                            |         v1 = *((a1 + 3));
    0x0000b9cc lw v0, 8(a1)                              |         v0 = *((a1 + 2));
    0x0000b9d0 lw a3, -0x7fd8(gp)                        |         a3 = *(gp);
    0x0000b9d4 sw v1, 0x14(sp)                           |         *(var_14h) = v1;
    0x0000b9d8 move a0, s4                               |         a0 = s4;
    0x0000b9dc sw v0, 0x10(sp)                           |         *(var_10h) = v0;
                                                         |         /* esilref: '&llu' */
    0x0000b9e0 addiu a3, a3, 0x32c4                      |         a3 += 0x32c4;
    0x0000b9e4 addiu a2, zero, -1                        |         a2 = -1;
    0x0000b9e8 addiu a1, zero, 1                         |         a1 = 1;
    0x0000b9ec jalr t9                                   |         t9 ();
    0x0000b9f0 sb zero, (s1)                             |         *(s1) = 0;
    0x0000b9f4 lw ra, 0x34(sp)                           |         ra = *(var_34h);
    0x0000b9f8 lw s4, 0x30(sp)                           |         s4 = *(var_30h);
    0x0000b9fc lw s3, 0x2c(sp)                           |         s3 = *(var_2ch);
    0x0000ba00 lw s2, 0x28(sp)                           |         s2 = *(var_28h);
    0x0000ba04 lw s1, 0x24(sp)                           |         s1 = *(var_24h);
    0x0000ba08 lw s0, 0x20(sp)                           |         s0 = *(var_20h);
    0x0000ba0c addiu sp, sp, 0x38                        |         
    0x0000ba10 jr ra                                     |         return v0;
                                                         |     }
    0x0000ba14 lw a2, -0x7fd8(gp)                        |     a2 = *(gp);
                                                         |     if (a2 != 0) {
    0x0000ba18 beqz a2, 0xba38                           |         
    0x0000ba1c lw t9, -0x7c60(gp)                        |         t9 = sym.imp.strftime;
    0x0000ba20 move a3, s3                               |         a3 = s3;
                                                         |         /* str._Y__m__d */
    0x0000ba24 addiu a2, a2, 0x3014                      |         a2 += 0x3014;
    0x0000ba28 move a1, s2                               |         a1 = s2;
    0x0000ba2c move a0, s1                               |         a0 = s1;
    0x0000ba30 jalr t9                                   |         t9 ();
    0x0000ba34 lw gp, 0x18(sp)                           |         gp = *(var_18h);
                                                         |     }
                                                         | label_0:
    0x0000ba38 andi s0, s0, 0x8000                       |     s0 &= 0x8000;
    0x0000ba3c lw t9, -0x7c60(gp)                        |     t9 = sym.imp.strftime;
    0x0000ba40 move a3, s3                               |     a3 = s3;
                                                         |     if (s0 == 0) {
    0x0000ba44 bnez s0, 0xba78                           |         
    0x0000ba48 lw a2, -0x7fd8(gp)                        |         a2 = *(gp);
    0x0000ba4c lw ra, 0x34(sp)                           |         ra = *(var_34h);
    0x0000ba50 lw s3, 0x2c(sp)                           |         s3 = *(var_2ch);
    0x0000ba54 lw s1, 0x24(sp)                           |         s1 = *(var_24h);
    0x0000ba58 lw s0, 0x20(sp)                           |         s0 = *(var_20h);
    0x0000ba5c move a1, s2                               |         a1 = s2;
    0x0000ba60 move a0, s4                               |         a0 = s4;
    0x0000ba64 lw s2, 0x28(sp)                           |         s2 = *(var_28h);
    0x0000ba68 lw s4, 0x30(sp)                           |         s4 = *(var_30h);
                                                         |         /* str._H:_M:_S */
    0x0000ba6c addiu a2, a2, 0x3024                      |         a2 += 0x3024;
    0x0000ba70 addiu sp, sp, 0x38                        |         
    0x0000ba74 jr t9                                     |         t9 ();
                                                         |     }
    0x0000ba78 lw a2, -0x7fd8(gp)                        |     a2 = *(gp);
    0x0000ba7c lw ra, 0x34(sp)                           |     ra = *(var_34h);
    0x0000ba80 lw s3, 0x2c(sp)                           |     s3 = *(var_2ch);
    0x0000ba84 lw s1, 0x24(sp)                           |     s1 = *(var_24h);
    0x0000ba88 lw s0, 0x20(sp)                           |     s0 = *(var_20h);
    0x0000ba8c move a1, s2                               |     a1 = s2;
    0x0000ba90 move a0, s4                               |     a0 = s4;
    0x0000ba94 lw s2, 0x28(sp)                           |     s2 = *(var_28h);
    0x0000ba98 lw s4, 0x30(sp)                           |     s4 = *(var_30h);
                                                         |     /* esilref: '&X' */
    0x0000ba9c addiu a2, a2, 0x3020                      |     a2 += 0x3020;
    0x0000baa0 addiu sp, sp, 0x38                        |     
    0x0000baa4 jr t9                                     |     t9 ();
                                                         | }

[*] Function sprintf used 11 times sar